• Mike

Dissertation Diary: Weapon Swapping, Particle Sea Tweeted By MediaTonic, New Enemy & SlowMo


Hiya everyone!


I got a lot of updates for you today, wanna see? 👀 Then take a little peak down below to find out more!


 

Recording in Widescreen


Big news - I've at last managed to get a recording done that isn't in the awkward phone-format, hooray!


I originally wanted to use the Oculus developer mode to be able to use third-party software to change the resolution, but for whatever reason, the Oculus app refuses to let me use developer mode on my Quest. It was happy for me to enable it for the Rift, and sadly Facebook's support team weren't of any help in getting this fixed. Thank you, Zuckerberg.


Luckily, a workaround presented itself using the "OculusMirror" app which, combined with OBS, allows me to get footage like the following:

There's a few new things being shown here, so I will break them down into sections.

 

Particle Sea


First up, I've been exploring ways of creating the ocean component of my beach level that I am designing. Initially, I considered a few different options. Shader graphs were an obvious choice, particularly since I have already created a basic water shader in another Unity project, however it didn't feel like I could really get it to "feel" like an authentic synth ocean. The next idea I had was to try manipulating a custom mesh that had enough subdivisions to make a low-poly water mesh, and manipulate the surface using Perlin noise, however I couldn't get it to work as quickly as I was hoping and it was costing me decent time.


Then I stumbled upon an image online that showed a wave made of particles. Curious, I read through the page that had this image, and shortly thereafter I had generated my own equivalent! I think this is quite a nice effect, and it is different to the typical water styles seen in games, so I am going to try using it and see how it fairs. With a bit of post-processing and bloom added, it comes out very nice. Each particle changes colour based on the height and uses a colour gradient to determine the values, of which I have made several colour gradients to play around with. This one feels water-like enough that it could also get away with using some more neon-y colours:

I even managed to get the above clip shared by some of the MediaTonic staff over on Twitter! Alongside many other talented people's works, you can view the Tweet here: https://twitter.com/TonicU_learn/status/1367940131387236352


 

Weapon Swapping


A whole new mechanic is now in the game: weapon swapping! Its primitive, but it does the job I feel: you can switch between your main gun and a shield by moving the controller up, above and slightly behind your head. As seen in the footage, it is a little tricky at times to perfectly switch when you want to, so it still needs some kinks ironed out. There's also a need to debug an issue where enemy projectiles should be destroyed upon collision with the shield, so there is still work to be done!


 

S l o w M o Z o n e


Another new mechanic, a slow motion zone has been added to the scenes! Right now, when an enemy projectile enters the given area, it's speed gets reduced so that the player has a chance to dodge the incoming shots. It is hard to see this effect in the video, which suggests that tweaking of parameters is still needed - such as slowing down the bullets even more and perhaps increasing the radius of the zone that triggers the effect to assist with game balancing. The effect is only applied to bullets, so I am researching ways of potentially making this effect everything but the player's movements to make it possibly more fluid.


 

A New Challenger Approaches!


Last but not least, I've gone ahead and begun work on creating new enemies!


I want to retain the blocky styling since it meshes perfectly with the overall theme of the game, as opposed to having a more high-end enemy model. Originally, I was thinking of using software like Maya or Blender to achieve this, although it has been a good year since I last properly used these programs, so I would need to remind myself of things.


Then I had an idea: in a shaders assignment (the same one I mentioned earlier regarding the water shader), I had imported something called a voxel model from the Unity Asset Store. This was, in essence, like a model that was made in something like Minecraft and used blocks for all aspects of it. Curious, I looked into what 'voxel' is, and eventually discovered an opensource piece of software called "MagicaVoxel". After looking into the documentation and messing around with it, I've started to get the hang of it, and did a few different iterations of a blocky enemy before pursuing further with this current look:


My first iteration of a new enemy using MagicaVoxel
My first iteration of a new enemy using MagicaVoxel

This is by no means the final design, but I like the concept of one big ominous eye. I'm still working out what the final look might be, but this is our current enemy. Something more interesting than primitive shapes at least!


I'm thinking of possibly duplicating this model and giving it a more "dead" appearance so that the dead model replaces the alive one once it loses all it's health. I think the idea of there being a random chance for a different death animation to play could be quite a cool little feature in the game, so will see how that goes!


 

Closing Thoughts


So, that's mostly it for now! I have also been messing around with custom terrain generation using my own heightmaps to help make some nice terrain for the beach, but I am still uncertain which appearance I want to use. I will make an update on the terrain at a later date once I have decided on the heightmap I plan to use.


Right then, its midnight, so I will be going to sleep now - I hope you enjoyed reading this update, and I'll see you in the next blog! Buh-bye! :)

14 views0 comments