For week 10, I prototyped different perspective shifting techniques and tested a few small technical and aesthetic things.
I played with a new type of transition that captures and records the positional relationship between the player’s camera and the object at which they are looking. It then cuts to a different scene, positions the camera in a different direction (this is the perspective shift) and positions the object using that same relationship. What happens is, the player has the same view the whole time, from the first scene to the next. The object can then be locked to the environment, and the camera control can be returned to the player, so that they realize they are not looking in one direction anymore, but another. The technical problem with this is gaining enough control over the camera with a pre-made Unity fps controller. I have achieved this effect only for the second before something in the pre-written code automatically snaps the camera somewhere else.
This effect can be used for any perspective shift based on direction, but is best for up to down or down to up shifts because of its reliance on views that don’t have anything in them (eg.: of a flat sky) or of two views that look the same (eg.: a reflection of the sky and the sky)
Another thing I prototyped was a space that grew as you turned and walked around inside it. I thought it would be as simple as making a lot of location and view triggers, but I didn’t realize that these triggers would intersect with each other and need to be very carefully positioned. It does give a cool effect of be in a confined space and then suddenly be in an open space. If I were to make this prototype again, I would use triggers not to see where you were looking but where you weren’t looking.
I also tried moving the player through code toward a building to achieve a “far to close” perspective shift, but the effect wasn’t that interesting, and the sudden lack of control over movement would probably be annoying to the player.
I added on to my last prototype (the one I made with the classroom and hallway). Now, as the player enters their room, they will have the opportunity to pour some soup from a flask and make some tea. The food will calm them enough to be distracted by their imagination and their book again.
If the player puts their curser over the kettle, its material switches to a shader with an outline and some text will pop-up, asking the player to engage with it. If they press a key, the text will change. I put a view trigger over the soup and a location trigger in front of it. If both of these triggers are triggered, the player camera’s depth of field will decrease until they have a zoomed-in view of the bowl. The scene will then change to one where the player is now very small, looking out a blimp floating above a round lake with a raft in it. They can walk around the blimp and look out the windows to see the rest of the lake. They can also jump out and see a house take form on the raft as it is viewed from the side rather than the top (where it blends into the raft, looking like a cracker).
This sequence is a perspective shift that goes from close to far and from being big to small.
Finally, I played with limited colour palettes and gradients to try to make beautiful, visually interesting environments. For this purple mountain environment, I added the gradient with texture mapping in Blender. It fades to dark purple that matches the purple of the ground plane that the mountain plane grows out of. That dark purple is also the sky colour I set in Unity, so the environment seems to move out infinitely. I wanted to create the effect of feeling isolated. The main effect I got out of it was motion sickness, because of how slowly it felt to climb the mountains (because their texture changes so gradually, it doesn’t feel like you’re going anywhere).
The mountains look better from far away. I may address this motion sickness issue by making the mountains a non-explorable aspect of the environment (e.g. a view from a tower).