In preparation for an upcoming jam, I'm prototyping some basic systems for a point and click adventure game. This is my first experience with a project in this genre, and it's been a lot of fun so far!
Movement
Since there's usually no twitch action sequences in adventure games, they're a perfect candidate for Unity's nav mesh system.
Cameras
I'm using Cinemachine for one of my first times in this project. So far, I like the flexibility and how easy it is to set up transitions.
Interaction
Instead of using interfaces, I'm trying to implement a more component based framework for this project. Combined with Unity Events, this approach has led to a very modular interaction system.
Shader
For a variety of reasons, I want the player to be able to move behind objects between them and the camera, without losing sight of themself.
It's a bit clunky, as I have to attach a helper script to each object that I want to be 'maskable', to feed player and camera position to the shader. I'm sure that it's not optimally performant, as well. The shader uses a procedural texture mask and alpha clipping to make the pixels transparent.