I am hoping to persuade my school to go for Level 3 BTEC Computing next year instead of A-Level Computing, we only teach GCSE at the moment. (I have researched the course and many of the Russell Group universities accept the BTEC, as does our local uni, so I don't see the problem.) The reason I want to do the BTEC is because of the optional Game Design unit which suggests using Unreal Engine which I have always wanted to learn. 🙂
If I am to teach Unreal Engine to my students in a couple of years time, I better learn how to use it! To that end I have decided to create a VR breakout clone as a proof of concept.
Learning UE, as well as Blender which I needed in order to make the assets, has been a blast!
Stage 1 Begun 28th July 2017 Developed assets using Blender and Paint.net; learned about Unreal Engine's Blueprints; learned about meshes and UVs (how textures are applied to 3D meshes) updated image
Removed 'ghost scoring' bug which was a bit of a faff due to my ignorance; I really wasn't sure what was going on BUT after a bit of forum bothering I sussed it. What was happening was that when a block actor was destroyed after being hit by the projectile - the score updated for each component that made up the block actor. How the projectile impacted the block also affected how much of the block was destroyed at the point of impact which was why the scoring wasn't constent. The fix: a DoOne function, which turned out to be proper useful.
Other updates: Brightened up the walls; added levels; fixed physics of the projectile balls so they have mirror like deflection. For this I simply added a projectile component to the ball Blueprints.
I also added three modes of play: platform only, shields only and platform and shield where the projectile has full range of motion on the latter mode. Level 1 is platform only, L2 is shields only and L3 is both. I am not happy with L3 because the projectile bounces uncontrollably and look/sounds pretty grim.
Particle effects were added to the projectiles and the blocks and I made the shields activate only when the grip buttons are pressed.
At this stage I feel more than confident to teach UE to sixth formers. Without a doubt I now know and understand far more than what would ever be required for the course and should be a good few chapters ahead of the students!
Next stage: Tweak the platform and shield mode by applying a supressor on the the projectile's Z axis to prevent it bouncing uncontrollably. Add music and more levels. Animate shield activation. Remove the need for the shield to be activated to fire the projectiles. Add transitions between stages.
RL and work has taken up a lot of time so I have only achieved half of my list for this stage. I was quite pleased with the result of the shield so I let it pass. I also made a number of levels so my daughter could play. 🙂
The shield went through a number of iterations and workarounds. I wanted impact marks on the shield where the projectile hits it. There were a number of tutorials how to do this but they all required a material completely covering a mesh. I wanted my shield to look as polygonal as possible, so it didn't work well. I also wanted my shield to look like it was generated from some form of repulser field which needed the custom particle emitter.
I initially tried to get around the problem by adding a number of collision zones throughout the shield but the projector would trigger all of them that it passed through so you ended up with more than one bounce effect firing. I tried to set up Bool variables which prevented other bounce animations from firing as soon as one was triggered but it still didn't look right. The bounce locations were located around ten positions across the shield but it still looked fake when they were hit; just off where you thought the projectile had hit.
In the end I decided to look at what I could do and design and work around what I had. I simplified the collision zone, setting up five zones along the shield's x axis which made the section glow when hit. I am quite pleased with the effect because I think it looks thematic and because the whole verticle slice lights up, I think it looks mroe accurate.
I wanted the shield to look like a torus with the energy field being generated inside the ring. I applied what I had learned from blender to make a hollow ring as opposed to a flatterned sphere. I made the material for the shield's mesh highly reflective and for the particle emitter I set the outer edge glow. I think the end result is pretty effective.
I am tempted to remove those odd particles that fly into the centre of the shield, just leaving the looping animation so that it looks less noisy.
I also experimented with adding images to materials and applying them to meshes; for this I used my school's logo.