Taxonomy of Virtual Spaces
In my previous blog post, I replicated the visuo-spatial configuration of Ultimate Play the Game's Knight Lore (1984, ZX Spectrum game) in 3-D geometry. Now, I need to add a player avatar to replicate its player affordances in order to create a simulacrum of the "Filmation" spatial paradigm that I've defined previously.
This aspect of the project is a first step toward creating a tool for analyzing different spatial paradigms as intentional aesthetic styles, where the types of projection and avatar movement may be set to different parameters while playing.
The Player Avatar
Our hero in a test scene |
I needed a simple, animated, humanoid player character to use as a sample avatar. I own a license for the "Everyday Motion Pack" assets by Gizmozman and opted to start with the male character model and animations included in that pack. If time permits, I may include options to customize the player character and include a female character as well.
I created a new animator controller and wrote some player controller scripts to closely mimic the simple "tank" style controls seen in games like Knight Lore.
The Environment
The Filmation style of environment, as exemplified by Knight Lore, consists of a series of interconnected rooms and corridors and often takes place in an enclosed environment (such as a castle or a large starship). The game world is explored one room at a time, using a "page flip" style of frame mobility when moving from one screen to another.*
* The Filmation II engine allowed for smooth-scrolling frame mobility across the game environment, allowing for open streets and enclosed buildings (see Nightshade and Gunfright).
Initial test environment of 16 rooms |
I built an initial test environment of 16 near-identical rooms with doorways connecting them, as seen above. However, the bottom half of the image doesn't match the expected play experience. The player should only see one room at a time.
A single room with player start |
Each room is enclosed in a trigger volume (with yellow grid material) that is invisible to the game camera. All geometry in the room is parented under the trigger volume object. By default, no environmental geometry is rendered at game start. Whenever the player character enters a room (including at game start), a script on the trigger renders all geometry in the current room and sends an "EnterRoom" message to an overall Game Manager script. The Game Manager sets the camera position to the new room and sends the previous room the player was in to disable its visibility.
Player Avatar Navigating the Virtual Environment
It works! This closely matches the experience of older Filmation style games, with a "pixel dimetric" projection method to display the environment.
Next, to make the camera's projection methods dynamic during gameplay.
No comments:
Post a Comment