Originally AOS was going to be a strictly top down Diablo style game. After my friend Nathan started testing out my game builds the first thing he said is you need WASD! And I just groaned and said it is supposed to be a Diablo clone. Anyway, long story short – you can play both ways at the same time now.
After salivating over the nice first person vistas using the new HDR+Bloom capabilities in Unity 3.5, and learning a lot about some cool scene design from the Big Environment Pack by Jacal, and just needing a reason to play with auto LOD and Occlusion Culling, I have officially transformed AOS to work in both an overhead Diablo style perspective using point and click movement, and a first person WOW like WASD driven MMO perspective and anything in-between based on personal preference.
Another reason for choosing to do the dual mode camera is that inside structures or other constrained areas the camera is forced into a first person mode. This makes it much easier to implement interiors like dungeons and helps to provide a more intimate first person aspect to the game where needed.
The description of the camera controls from my working/draft “Player’s Manual”:
“The movement of the main character can be done through the mouse or keyboard. You can use either method at anytime.
To use the mouse simply click on the ground with the LMB where the character should go. Click and hold the LMB to continuously direct the character’s movement. To look around simply press and hold the RMB and drag the mouse around on the screen. Dragging up and down tilts the view and dragging left or right rotates it.
To use the keyboard for movement simply press the W key to move forward and the A and D keys to turn left or right. Also you can press the Q or E keys to rotate the view left or right. While pressing the W key, using the RMB as described above turns the character in the corresponding direction instead of rotating the camera.
Zoom in and out using the mouse wheel or the + and – keys. Press the X key to instantly toggle between a first person view and an overhead view.
As your character moves, the camera only periodically follows where your character is going. This allows you to move the character within the view area without the camera constantly adjusting to be behind the character. This is ideal for providing a nice static Diablo style overhead view of a battle. If your character is running longer distances the camera follows and adjust appropriately so you generally have a view of where you are heading.
As the character moves and the vantage point changes, the view can intersect with things like trees or rocks or other obstructions that could potentially block your sight. In these situations the view automatically zooms in and tilts up until it no longer is obscured and provides a higher overhead display. As the character is moved away from the obstruction, the view returns to the original vantage point.
Inside buildings and dungeons the camera behaves similarly except there is no tilting of the view due to obstructions, the zoom is simply adjusted to a position inside the structure that is closest to the desired zoom. Unless there is space the camera is pretty much a first person view and the WASD controls are the easiest to use in these situations.”
This is kind of a boring description so here is a video that shows the capabilities of the hybrid camera and it also shows some of the work I have been doing.
Well, I hope you enjoyed the video! The scene in the video is part of a prototype region that I am doing to represent the capabilities of the framework and show the look and feel of the game. I should be making more in the future to show off the framework and the game.