This week I worked on decorating the map with the sprites Raul provided and learning about more particle steering behaviors, such as avoiding obstacles and flowing inside flow fields.
A flow field is like an area with wind. Once a particle is in that area, its moving behavior will be impacted by the direction and strength of the wind. In Finding Nemo, there is a memorable scene in which the protagonists, along with many sea turtles, ride the ocean current to Australia. My goal is to create such currents in my game in order to tell the players where to go, so that they won’t wander aimlessly. Currents can also break the monotony of the game, adding speedy, exhilarating rides.
As usual, I implemented a basic flow field in p5js. The field is formed by an array of vectors in the shape of the sine wave. When the particle moves in the field, it moves in the form of the sine wave. https://editor.p5js.org/hzhou17/sketches/2YqT79Udm However, so far I have only been able to create such very orderly flow fields — I don’t know how to just draw a free-form curve and then let the particles be propelled along the curve. Last year, I worked on a curve-y terrain generation for a snowball to roll on. Maybe I can use the same technique to create curve meshes and get the direction of the curve by calculating its slope.
To my surprise, I found a video tutorial on The Coding Train channel exactly about generating a path and following the path. I’ve been learning a lot from this channel. It is wonderful resource. https://www.youtube.com/watch?v=2qGsBClh3hE
A Unity tutorial on following bezier curve. https://www.youtube.com/watch?v=11ofnLOE8pw
In terms of decorating the map with art assets, I realized that Raul’s map is not vertically deep/high enough as soon as I started to work on it. After all, I told Raul to work on a 16 by 9 map. I need to contact Raul and set up communication through a chat-based app, such as Teams and Discord. Email doesn’t work well with frequent discussions.