This is the final blog post, here is the trailer of our game:
This week I did A bunch, trying to catch up with the time I lost trying the geometry shader which does not work in webgl. Apparently. So I made an improvement to my previous terrain from heightmap loader and it now looks decent enough and has no cpu impact whatsoever.
I also worked on my tunnel fixing my uv’s still not quite there but already making progress.
I also added settings, lot’s and lot’s off settings:
Sound volume, Effect Volume, Mute, FOV, Render distance, VSync, AA, Resolution, Full screen and, by importing a Standalone browser and playing with it, a Background Music File Loader.
These are all functional in both webGL and the Editor except for the resolution… since webGL does not allow unity to read the resolution data it gathers. A litte video showing the UI with settings.
This week was a slow one, I worked a lot on other courses so I did not have the most time for this one. I started working on the environment terrain, making a script to load heightmaps to a terrain and making the terrain move along with the player I have a simple cityscape render, I still need to look into the heightmap making it procedural and such and having it change the terrain at runtime, now it just loads once and it finishes.
Example photo of the terrain with the heightmap that created it:
This week I was more invested in some other courses but I worked on making the tunnel we fly through a single mesh so we have no more seams in between the different tunnel compartments like we used to, I also started working on a Scoreboard, so I implemented some simple ui to have a username and end tally for the player. There is still some work on the tunnel and I have to look into the geometry shader for the environment, but that will be for next week. Below is an example of the generated tunnel mesh(at runtime).
This week I set a task to fix the lag problems we had with the game, most of it was code-based so I went ahead and edited the most source tacking parts, we now have an increase of 20 fps! I also made the environment more random so it does not feel like you are going through an endless city that does not change. e.g. below:
This week was a productive one. We had a bottleneck on the spawning of our objects on our spline, since we spawned all objets at once there was an fps drop every reset and at startup. To fix this I have made trhe spawning of the walls work so it continuously creates and deletes the objects that are in a cenrtain range of the player. This makes it less heavy for unity to reneder the eleements and has the nice added effect of having particles fade/in correctly. We found the environment with just a skybox a bit empty so I added an envi9ronment spawner, this makes it feel a lot less empty and adds the arcade feel we wanted even more. Th eenvironment uses randomization to generate certain city-skyline meshes around the spline. This little gif below shows off the spawn and respawn of the objects and the city folowing the spline.
I also update the soundManager to get rid of a bugthat kept playing sound when muted and added a Volume for later use in the options screen.
Hello again, previous week was a bit packed so did not really add a whole lot, am preparing to make a new spline generator which is going to change a whole lot of the way the game looks, but will also mess with a lot of code, so that’s for tomorrow. Right now I have made a soundmanager, this enables us to play all sounds on 1 object, making it programmer and artist friendly and adding a bit of flavour to the game. I also tested some new materials for the sides of the tunnel and now without the rings it looks like a decent doctor who timewarp tunnel! :p
Now that we have free movement in the “tunnel” I have made a “deathzone” where you gradually loze live untill you die, you can move away from the zone if you do not want to though. I have remade the automatic rotation so the plane looks at the next point on the spline. I have remade the spline reset so it now resets when it is about to go through a circle, this makes for a more fluid reset.
So I was a little silent last week, but this week it’s full force again, I have updated the spline generation so the values have more influence, and updated a bunch of variables to automatically work with the spline. I have made lazers, which are a representation of the field in which the player can move, once the player hits one of these they will get damaged and pushed back. As per request of the teachers movement restriction along the spline has now been removed.
The improved Spline: