Posted October 04, 2024 by RenMok
#platform #mechanics #friction #synchronization
Current Stage of Development: In this stage of development, I've been focused on refining the platform movement system and ensuring smooth interaction between moving platforms and the player's character. Initially, I was experiencing two primary issues: jittering when the character stood on moving platforms, and platforms slipping out from under the character during movement. These issues needed addressing to improve both player experience and the overall polish of the game’s mechanics.
One of the early problems I faced was jittering when the character stood on a moving platform. The platform’s movement wasn’t smoothly synchronized with the player’s position, causing noticeable jitter, which broke immersion and affected the player experience.
transform
, which conflicted with the physics-based movement of the character's Rigidbody
.
Rigidbody
-based system. Using Rigidbody.MovePosition
instead of transform.Translate
ensured that the platform moved smoothly within the physics engine, which worked seamlessly with the character's physics-based movement.
Once I resolved the jitter, I encountered another issue: the platform would often slide out from under the character. This was problematic, especially during fast movements or when multiple platforms were involved.
Rigidbody
is moved by the platform’s delta, ensuring the character moves in sync with the platform. This allowed for smooth movement without the need for complex parenting or transform manipulations.
As an optional step, I experimented with physics materials to increase the friction between the character and the platform. While increasing the friction did help "stick" the character to slower-moving platforms, it wasn't sufficient for faster-moving ones. Therefore, I opted to stick with the movement delta approach, as it gave the most consistent results. Additionally, it created this effect that felt almost like the player was trudging through mud, and that did not feel good to play. Although, this would be good to keep in mind for other puzzles, as it definitely made platforming more challenging, but in this situation, I had already designed the course to be difficult enough that I did not need to throw in any more challenges for the player.
Rigidbody
and allowing the character to deal with applying the delta, I was able to achieve seamless, jitter-free platforming mechanics.
Moving forward, my focus will be on refining the overall gameplay experience with moving platforms. Specifically, I’ll be looking into:
This stage of development has been all about refining the character’s interaction with moving platforms. I’m pleased with the progress so far, and the solutions implemented have drastically improved the feel of the platforming mechanics. There’s still more to be done, but this feels like a significant step forward in creating smooth, engaging movement for the player.
Stay tuned for more updates as my development journey evolves!