It Will Find You - Devlog 6: Interactivity PT2
So part 2 of the interaction discussion that I began a few weeks ago. I’ve already gone over the basics of how the system works, with picking up, throwing and rotating objects, and the highlighting system.
Since I wrote that part a few elements have changed to better improve the immersive quality of the system and prevent obvious graphical errors.
One of the elements I had always thought was missing in the interaction system was reactivity to the environment, as in version 1 the object would just clip through anything it encountered while being held.
It felt bad and looked worse, so this was an obvious area for improvement.
This improvement began with a simple change, altering the Rigidbody mechanics associated with the interaction event. In version 1 I would simply set the Rigibody to kinematic when an object was picked up, preventing forces from acting on the object, hence the lack of reactivity. As this was clearly the initial problem, a simple rework to instead toggle whether the Rigidbody was affected by gravity or not, rather than kinematic, meant that the object could collide with the environment and would behave much more naturally (though collision between certain layers had to be set as ignored to prevent glitches e.g. colliding with the player). A bool-controlled lerp then kept the object in place, while allowing it to drift when the object collided with objects, meaning they could come off centre if they became stuck, and would reset when freed, vastly improving the realism of the system.
As collisions are not 100% accurate 100% of the time though, clipping could still occur. To fix this, alternate layers were used when an object was picked up that were not rendered by the main camera, but rather a secondary depth camera, meaning they always appeared to be in front of the object, as oppose to glitching through it.
These changes have improved the visual and game-play elements of the interactivity system drastically, and created a more realistic environment for each interaction to take place in.
So, onto the exceptions to the standard interaction systems. To allow for certain game mechanics, or narrative progression, 3 core exceptions were created for the interactions system: Books, Static Objects and Attached Items.
Books we’re the first obvious exception to the rule, as they had to be readable for both game-play and realism reasons. Initially I had considered physically creating books that could open with individual pages legible within, but this proved to be more than my 3D modelling skills could handle, and the results were fairly illegible regardless. The next option was to create a UI system to supplement the interaction system, and this was what I ended up choosing, using Book – Page Curl from the asset store, modified to fit my needs. Now when picking up a book, you could open a fully interactive reading experience that was clear to read, and easy to modify, giving me a variety of game-play options.
This has already gone on a long time again thanks to the new additions, so I’ll finish the final 2 exceptions and any new changes in part 3!
Until next time, thanks for tuning in!
Get Captive Audience
Leave a comment
Log in with itch.io to leave a comment.