Tuesday, August 22, 2023

Reconstructing the Virtual Spatial Configuration

Taxonomy of Virtual Spaces

In my last blog post, I took a close reading of Ultimate Play the Game's Knight Lore (1984, ZX Spectrum game) and pre-visualized what the game's spaces would look like in Unity. The next steps are to replicate its visuo-spatial configuration in 3-D geometry and add a player avatar to replicate its player affordances. These two aspects together represent the "Filmation" spatial paradigm that I've defined in the previous post.

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.

Space

As previously seen in my last blog post, I chose the cauldron room from Knight Lore as an initial target for my project (this is the room where the player must bring certain spell components to the wizard so that he may remove the player's curse of lycanthropy). Once I manage to emulate one room in the Filmation paradigm, I can begin to change the visuo-spatial settings (means of projection, to start with) and show the same environment as rendered under different aesthetic qualities.

Knight Lore cauldron room

Cauldron room visualization target

Cauldron room in 3-D geometry, but projection is not true isometric

The simple geometry was easy to create using Unity's ProBuilder modeling tool. I created a gridded "prototype" material for the level geometry, keeping a similar look to the original Kenney Isometric Prototype Tile assets that I used for the previsualization.

The camera settings are more challenging than I'd like them to be. Any change to the size of the projection (in order to incorporate the entire room on the screen) also changes the angle of the projection. I have the correct angles to use, in part thanks to Cartesio, but this isn't just a matter of plugging in the right numbers to get the exact visuals. The the key is keeping the orthographic camera Size and Far Clipping Plane values in synch. If you double one value, you must also double the other value. Looking through the code, the Camera Perspective Editor tool I am using uses the Far Clipping Plane when determining the effect of its "Lens Shift" adjustments, as needed for this visual.

A new problem has arisen. The camera settings seen in the bottom half of the third image are using the tool developer's "True Isometric" camera settings. However, in a true isometric projection, the white cube in the corner of the room (outlined in magenta, above) should form an equilateral hexagon. It does not. The vertical edges of the hexagon outline are notably longer than the angled edges, which means that this projection is not as advertised. These projectors are oblique when they should be orthogonal to the projection screen.

Corrections

I still plan to use the Camera Perspective Editor tool for oblique and other projections, but I can simply use Unity's built-in "orthographic" camera settings for correct orthogonal projections. Here are two corrected projections of the same environment.

True isometric projection (35° downward angle)

The outline of the cube in the corner of the image above creates a true equilateral hexagon (each edge measures 74 pixels), so this projection is correct.

2:1 "pixel" dimetric projection (30° downward angle)

In this next image, the gray floor tiles are projected twice as wide as they are tall (64 x 128 pixels), making this match the 2:1 "pixel" dimetric projection.

Trimetric (1:1, 1:3) projection (35° downward, 30° oblique to front face)

This final image is close to the "pixel" trimetric (1:1, 1:4) projection of Crystal Castles that I analyzed before, but the camera angle I calculated with the Cartesio tool (3
3.5° downward) did not give the correct results in Unity. I will have to further revise the camera settings for use with the Unity project.








No comments:

Post a Comment

New Game Launched and Summer 2024 Research Review

Summer 2024 Review Taxonomy of Virtual Spaces Click here to play the new Taxonomy of Virtual Spaces - Expanded Edition interactive project...