I'll start this off with a section of a forum post I wrote a while back:
It happened by chance as most of my non-crappy ideas do. I was playing around with ways to tie this book setup I did a while back into the game:
That is all rendered in real-time and is using a camera view to render the illustration onto the page (it's the same camera that was originally rendering my title screen). I liked it but something was definitely missing and the aesthetics of it all felt detached from the rest of the game.
Above is a 3D book that is animated in real-time that is also rendering a real-time camera view to use as the illustration for the pages. At the point I created this, Book Ends didn't have a title, it didn't have much of a story, and there was no Story Island to travel to. When I feel I am simultaneously on to something and also far astray from what that something is, I tend to step away and let it simmer on the ol' noggin for a while.
In late January I revisited the idea and ended up adding my ocean prefab to the scene on whim:
I wish the process that led to what I am about to share was more exciting, but in all honesty it was literally the following: I was staring at said book, didn't like the black background surrounding it, and thought about what I could put there that wouldn't distract from the book itself but wasn't just empty space. The first thing I tried was the ocean prefab I had set up for sailing. So I threw in the ocean...
If I'm being honest, what follows could all technically be contributed to the fact that the game camera was in the scene at the time and was also at the default location for gameplay. This view, combined with the book floating in water, gave me the idea of allowing the player to walk on its pages. In fact, my initial though was to just make all of the pages the same color as the grass and drop props onto it.
This proved my concept: if I place 3D props onto a page that looks like it could be the ground, the combination of the two allows 3D models to serve as the book illustration without having to render the camera to the page itself. I decided to press forward, made an adjustment to the page texture so the entire page wasn't green but looked more like a page in a book.
This was enough to make me confident that putting in the effort to make it so the player and AI characters could walk on the pages would be worth it. I need both a NavMesh and an AStar grid to exist on the page in order for both the player characters and AI characters to be able to move on it as though the paper is the ground. Below is an example of one of my first tests with AStar which resulted in the two crows being able to patrol the page the way they do during normal gameplay.
It didn't take me long to realize that i had a bit of a problem in that if I turn the page, as the animation of the page itself nears completion, all of my props are sticking up through it. I wouldn't be able to have text on the next page, it would have to be an illustration and be one very similar to the illustration before it.
Rather than give up on the idea of allowing real-time page turn animations, I went through several ideas and eventually landed on a pop-up effect in which the 2D illustration on the page itself matches the 3D models in the scene; this allows me to fold up the objects from their default state up lying flat against the page and give the impression that the illustration itself just became a part of the 3D world of the game. This allowed me to use the sailing set up I had created earlier to create the following:
The idea behind all of this is to allow for the book itself to aide in progressing the story, while also keeping the players disbelief suspended by making the book itself a part of the game world. In playing through the sequence I never had that moment in which I felt like things had changed drastically enough to feel as though I was removed from the game, which is a concept that is pretty important to me. This sequence allows me to both have this game take place in a story and highlight that fact while also keeping the player within this game world at the same time.
I have several things I will be playing around with in the near future. I would like to design a system that allows me to - at any point during gameplay - have the camera pull back from the game world, revealing that the default camera view is in fact the illustration on the page of the book after all. During this transition, the world itself would be a 3D view rendered onto the flat page, and this would become more obvious as the camera moved further back; on the other hand, the player would remain static with regards to the camera movement, thus pulling the character out of the page as the camera moves outward. When done, my goal is to have a smooth transition that would allow the opposite page to serve as the main menu. So, although I like the sailing set up, it may not be used in the end, at least not for the purposes it was originally intended.
I have been continuing to adjust my lighting and post-processing settings to improve the overall look of the game, and while I am still making progress, I am still a ways from having my final result. This process has been one I work on for a short period of time every day, starting my day by looking at the latest result and seeing what first catches my eye as a bit off. I tweak, I leave it be, rinse and then repeat. Below is a screen that shows how drastic the changes are for even a small fraction of the props, and I am looking forward to when I have some time off to incorporate these changes to the main levels since they are still using the old lighting settings (baking those lightmaps is going to be an all-day affair).