Prime Engine
I developed Prime Engine based on the codebase provided by our professer Artem. Combined with Maya, I modify C++ and lua codes to make features for game scenes.
I also coded Bounding volumes and culling, Physics Collision, and Win Effect.
In my final project, I completed the feature Navigation mesh.
Results showcases:
Random waypoints and animation for NPCs:
I code the lua and C++ scripts to allow NPCs to randomly choose waypoints. And based on the events in the lua script. They will play either walk, run or shoot animation.Random waypoints
Culling:
I purposely shrink the size of the camera view frustum, so that we can see how the meshes disappears. You can also see the FPS changes.Culling
Physics:
The NPCs are attached sphere collider while the other objects has box collider. The NPCs will slide away if they collide with boxes. At the end, you can also see how gravity influences NPCs.Physics
Win Effect:
For wind effects, I also need to manage how datas are sent from CPU to GPD(D3D9). And I need to write HLSL codes. I also add sin(gameTime) wave and smoothTriangle wave to make the mesh more plant-like (altough it is a monster mesh).Wind Effect
Navigation Mesh:
1. Overall plan
I planned to make navimesh and apply path-finding algorithm in M1. And I planned to make smooth path and make dynamic path in M2.2. What I did in M1
I made several maps with different navimeshes and changed the soldier movement logic to work with the path-finding algorithm.3. What I did in M2
I made the path smoother and added the feature to dynamically find the path.4. Result
The soldier's movement logic is changed to work with the new features.The imrod static meshes can block some vertices of the navimesh and the soldier can respond to it dynamically.
I also make the path smoother, and the parameters of the curve can be adjusted.
5. others
If you only want to look at the result, go directly to the last 10 seconds.The features can still work in many complex scenes. I wanted to make my demo easy to understand, so I made this simple open scene and rendered lots of points and lines.
Navigation Mesh