Halcyon Night, my senior thesis project from undergrad, was created as a solo development project in Unity 2019. I created all assets, code, and shaders used in the final game. Halcyon Night is available for download at https://grant-doney.itch.io/halcyon-night.
I was inspired by effects exploring an alternative reality through a 2D surface, creating another 3D scene with unique lighting, models, and effects only accessibly through a window in space. Creating visual distinction in realities was also an opportunity to explore different lighting styles, creating detailed and more realistic environments, and diving into shader creation and post processing.
The portal, environment, and mechanics went through multiple iterations before the finished product. The portal itself began by attempting to create a stencil buffer, but this posed difficulties in creating a unique lighting and shadow system. I ended up creating multiple versions of the environment with a second camera mirroring the player’s movement that rendered to a render texture. From there, pulling objects through the portal became about matching transforms, deactivating renderers, and multiple ray casts. The main issue presented by having multiple environments was performance, which suffered greatly especially in the large Great Hall with 5 time zones. To combat this, lighting was baked in individual scenes for each time zone, meshes were reduced, and scenes were loaded when needed, though framerate is still impacted.