Summer 2022 Repeat Journal /
Week 2 : 27/06 - 03/07

Planned work

This week, I have to work on

  • Research procedural terrain generation (est. 4h)
  • Implement procedural terrain generation (est. 4h)
  • Research and implement a blizzard effect when a fight starts (est. 4h)
  • Research Poisson Disc Sampling (est. 2h)
  • Research Poisson Disc Sampling (est. 2h)

Update 1 : 27/06

I watched Sebastian Lague's introduction video to Procedural Terrain Generation (link) and updated the portfolio to talk about the failed attempt at layout generation and explain how terrain generation works (4h).

Update 2 : 28/06

I started implementing Sebastian Lague's Procedural Terrain Generation (4h). Somehow, I hadn't taken into account the duration of the video tutorials whilst estimating the time each task would take, meaning this would have to span over multiple days. Other than that, I haven't encountered any issues.

Update 3 : 29/06

I continued the Procedural Terrain Generation implementation (6h). This took longer than expected as the tutorials were using the Standard Render Pipeline, meaning the shader code using Cg didn't work with the Universal Render Pipeline. To remedy this, I had to spend time recreating the shaders in ShaderGraph. Fortunately, I found a thread on the Unity Forum started by someone who followed this exact tutorial and encountered the same issue. I also added triplanar mapping on a separate shader. Later during refactoring, the generation stopped working for me. I lost a lot of time trying to fix it before realizing one of the values was set to zero. Once that was set to a positive value, it worked fine again.

Update 4 : 30/06

I finished implementing Procedural Terrain Generation, cleaned up the code, re-enabled the possibility to use a falloff map and added a shader which uses multiple textures and tints to paint the terrain based on the height of the various layers (6h). I didn't encounter any major issues.

Update 5 : 01/07

I researched and implemented Poisson Disc Sampling based on a tutorial by Sebastian Lague (4h). I also implemented a scriptable object to store sampling settings. After doing a bit of research, I couldn't find a way to create a blizzard effect, so I'll put this task off for later.