Showing posts with label perspectival. Show all posts
Showing posts with label perspectival. Show all posts

Monday, August 19, 2024

Completing the World of Super C

Taxonomy of Virtual Spaces Part II

I completed adding environmental geometry and gameplay functionality into my recreation of Area 1, Fort Firestorm from Super C (Konami, 1988).

Ramps


The biggest hurdle to recreating this world was the existence of ramps. The platformer character controller script I wrote was based on the controls for Super Mario Bros. That game has no sloped surfaces that the player can walk on at all. All surfaces are sheer walls, floors, and ceilings. When I first tried to use my character controller on a sloped surface, my character just slid uncontrollably down the slope.

The SMB team did plan to incorporate sloped surfaces, just like in Donkey Kong [source: Satoru Iwata looks over some early SMB development documents and says, "Looking at these specs, it says, 'Add refinements focusing on Donkey Kong's slopes, lifts, conveyor belts and ladders...'" Of that list, only lifts made it into the final SMB game. (Nintendo, 2010, "Volume 5: Original Super Mario Bros. Developers," Iwata Asks: Super Mario Bros. 25th Anniversaryhttps://iwataasks.nintendo.com/interviews/wii/mario25th/4/2/)]. The team decided to simplify things by making the game worlds out of rectangular blocks instead. Slopes were not introduced to the SMB game series until Super Mario Bros. 3 (JP: 1988, US: 1990).

Debug images show the character's velocity vector as a cyan-colored line

My platformer character controller needed to be modified so that the avatar could run up or down a slope without it affecting their running speed or their ability to jump. In short, I added a new "ground" collision layer named "ramp." When standing on flat ground, they may run directly to the left or right. When standing on a ramp, all of their movement vectors are rotated to be relative to the ground plane of said ramp. Running left or right moves the player parallel to the ramp's surface. When the player jumps, the surface of the ramp is ignored and all movement is calculated just as if the player character stood on flat ground.

Background Towers



Several different types of towers are seen in the near background of the level. Note the graphic difference between the large towers in the original game and the ones in my project. These buildings serve to showcase two aspects of my research:

- Multiplanar Space

The towers are in the background of the player's plane of action and cannot be used by the player for navigation (the player avatar cannot jump onto the towers and cannot enter the doorways). However, enemy characters can use the towers and as vantage points and spawn points, as seen in the image above. Implied enemy soldiers even throw grenades from behind some towers (not shown).

The player avatar can indirectly affect this background layer by shooting. Bullets strike any target within the plane of projection, whether they are in the primary plane of action or in the background layer. The player avatar can collide with and be shot by background enemies as well.

In actuality, the enemy characters are always on the same plane of action as the player avatar. The background towers and walls serve as parts of the environment that only enemies can stand on. These rules, combined with the way the towers are drawn on the screen, create the illusion of a multiplanar environment.

- Hybrid Visuo-Spatial Projections

The towers serve as a good example of the hybrid nature of digital game graphics. This is a subject I've written about many times and it serves as a core feature of my Taxonomy of Virtual Spaces system.

Digital games, like all digital media, are hybrid in nature. Various symbols appear on the screen, sometimes using different means of projection or perspective, yet the player views all the disparate objects as part of a cohesive whole. (Source)
All video game imagery is a hybrid collection of smaller images displayed and moved around a screen in order to generate a complete picture of the agents and environment of a virtual world. Those hybrid images may be "seen" from different angles from each other, yet we still understand the image as projecting a single, virtual space. (Source)

The two different towers shown in the image are projected by different methods. The smaller, boxy towers use the same cabinet oblique projection as much of the rest of the environment. This is a paraline projection where receding lines are all in parallel (see the yellow lines in the image). The larger towers on girders use a naive perspective projection that is similar to 1-point perspective, but the receding lines do not quite converge on the same vanishing point (see the cyan lines in the image). The roof is approximately in 1-point perspective, but the floor uses an oblique projection. The two combine into a naive perspective with opposite oblique projections that approximate receding lines that converge in the distance. This is why the larger towers look strange in my project when rendered in cabinet oblique projection.

Dream of the Palace (Giotto di Bondone, 1297-1300)

Naive perspective is often seen in western art before Alberti published Della Pittura (1435), detailing the methods of linear perspective developed by Brunelleschi during the Italian Renaissance. Artists like Giotto painted buildings with roughly converging receding lines (or orthogonals) to approximate a perspectival view.

Art and Representation (Willats, John, 1997, pg. 64)

As seen in John Willats' analysis above, there is a sense of a horizon line near the center of Giotto's palace, where the receding lines are horizontal on the picture plane. Each floor of the palace is painted at an oblique angle tilted toward that horizon line. These receding lines do not converge and do not form a linear perspective.

Level End and Beyond

The end of the level leads into a large building through what appears to be a breeched garage door. This serves as a transition to Area 2, First Base in which the view becomes planometric naive perspective (with a bird's eye view looking down at the floor). Area 3, Jungle changes again with an elevation vertical oblique projection. Area 4, Inner Base starts with elevation cabinet oblique right projection followed by elevation naive perspective. Area 5, The Cliff starts at elevation vertical oblique projection, then switches to elevation cabinet oblique right projection (note that Area 1 is left projection). All of the first five levels of this game use different projection methods for their environment art assets.

A question that may be asked here is why? There are several possible reasons. One may be a desire for visual variety. This makes sense with the variety of navigational gameplay in different levels (horizontal side scrolling elevation view, vertical scrolling elevation view, vertical scrolling planometric view). Another possibility is that different artists worked on different levels (although I think that Setsu Muraki was the only artist for game graphics).

Wednesday, August 7, 2024

Changing Projections Mid-Game

Taxonomy of Virtual Spaces Part II

My latest update added functionality of varying levels of importance to my project. First, the level will reset if the player character falls off of the screen, adding some challenge of avoiding the "death fall" pits in the game world. Second, I can now take screen shots from the editor play window by pressing the "I" key. Most importantly, third, the game's projection method can be dynamically changed during play

This represents a "minimum viable product" of my project for visualizing different visuo-spatial configurations within the same game world. The following examples are taken from my "family tree" of projection methods that define the graphic techniques used to render images onto the screen. All of the following projection methods may be cycled through without interrupting gameplay.

Orthogonal Projections

Orthographic Projection

2-Faced Oblique Projections

Vertical Oblique Projection

Horizontal Oblique Projection

Elevation Oblique Projections

Cabinet Oblique Right Projection

Cabinet Oblique Left Projection

Cavalier Oblique Right Projection

Cavalier Oblique Left Projection

Perspectival (Linear) Projection 

One-Point Perspective


Wednesday, July 10, 2024

(Not) Game Genres, pt. 14: John Nesky's 2D Game Solid Boundary Types

Taxonomy of Virtual Spaces

In 2022, John Nesky (Feel Engineer on Journey (Thatgamecompany, 2012)) wrote Twitter thread analyzing various stylistic choices a game artist may make when designing the boundaries of a 2-D game (like many 2-D platformer games). He preserved the thread as a Google document and in pdf format for easy reference.

2D Game Solid Boundary Types by John Nesky

Nesky's analysis of visual styles has some crossover with my current work in analyzing the spatial paradigms of many platformer games. Each example image (see illustration above) features Samus Aran from Super Metroid (Nintendo, 1994) in an environment constructed by Nesky according to these different stylistic techniques. His design study tends to focus on 2-D platformers, but he also shows how the techniques work for other types of games.

2D Game Solid Boundary Types

Nesky defines 10 different art styles used convey the "fourth wall" through which the player views the game environment. The world is often presented as if in an architectural cross-sectional view, using the game's plane of action as the cutting plane. The navigable area of the game's environment is clearly rendered, but the internal structure of that environment (inside the walls, floors, and ceilings) may be abstracted (surface layer), hidden (silhouette), or stylistically presented (wide open spaces).

  1. Modular Blocks
  2. Flat Façade
  3. Jutting Floor
  4. Surface Layer
  5. Deep Shadows
  6. Silhouette
  7. Perspective
  8. Fake Perspective
  9. Wide Open Spaces
  10. Thin Walls

Most of these styles are designed around the capabilities of tile-based environment graphics, like those seen in earlier game consoles like NES, SMS, SNES, and Genesis. These styles do not take foreground or background elements into consideration. They only focus on the environment along the game's plane of action.

Analyzing the Analysis

There are three types of projection methods here that line up with my Taxonomy of Virtual Spaces.

Modular Blocks by John Nesky

Orthographic (Modular Blocks, Flat Façade, Jutting Floor, Surface Layer, Deep Shadows, Silhouette, Wide Open Spaces, Thin Walls)

For my purposes of analyzing spatiality, most of the the styles here are different methods of orthographic projection. The examples above all use a side elevation projection for the environment. Styles like Wide Open Spaces and Jutting Floor do convey a small sense of depth, as if the floors or environmental elements break through space into a foreground layer. However, this projection method tends to convey to the viewer that this is a flat space.

Fake Perspective by John Nesky

Oblique (various) (Fake Perspective)

Nesky's Fake Perspective examples each show the receding lines of the game environment's ground plane (or in the case of The Legend of Zelda: A Link to the Past, the dungeon walls). There are several different projection techniques in these examples.

Yoshi's Island uses a vertical oblique projection, where the side face of the front "wall" is flatly rendered orthogonally and the receding lines of the floor plane are rendered vertically (compare to Yo! Noid on my previous post).

Two games use different oblique projections to render a naive perspective view and a sense of depth: Yoshi's Story (elevation oblique) and Link to the Past (planometric oblique). The receding oblique lines in Yoshi's Story are mirrored left and right, creating an illusion that the lines are converging towards the horizon line. Link to the Past similarly mirrors its oblique lines at the corners of the room to convey a similar illusion. These are not true perspective renderings, though they use some of the same visual cues of a perspective projection.

Nesky's own example is also naive perspective, but the receding lines of the short wall in front of the player avatar appears to be inverted naive perspective: the receding lines diverge into the background instead of converging.

Perspective by John Nesky

Perspectival (usually 1-point) (Perspective)

Curiously, Nesky's first example is a vertical oblique projection and is not truly perspectival at all. This is a paraline projection and receding lines do not coverge in the distance.

Nesky's other Perspective examples are presented in 1-point perspectiveMetroid Dread and Link Between Worlds both use full 3-D environments with the camera perpendicular to the back wall (Metroid) or the floor (Zelda). Both games usually retain a fairly flat view of their environments to mirror the gameplay standards of earlier 2-D games in their respective series. Being fully 3-D environments, the camera is also free to tilt and pivot to more dramatic angles as needed, breaking into 2-point or 3-point perspective.

The other example is Contra III, a game I referenced in my previous post). This scene also uses 1-point perspective, although this Super Nintendo title uses a tiled background and no true 3-D models. Another Twitter user joined Nesky's thread and asked, "Why isn't the Contra III example here Fake Perspective?"

Contrast the receding lines of Contra III and Link to the Past environments

I responded to the question with the above altered screen shots and stated that one can trace the receding lines of the environment to see if they converge. Contra III's lines converge almost perfectly on the center of the screen. Each line is projected at a different angle. In contrast, Link to the Past uses a naive perspective technique with the receding lines of each corner of the environment projected obliquely at about 45° from the horizontal. This offers a convincing sense of depth and is fully in line with the art style of the original Legend of Zelda, but it is not a true 1-point perspective.

Odds and Ends

Nesky also gives several separate games as examples of specific uses of these techniques that I think are worth mentioning as they overlap with my research (especially since these are two of my favorite games).

The Legend of Zelda: A Link to the Past

Nesky notes that Link to the Past uses different projection methods for indoor and outdoor environments. He refers to outdoor projection as orthographic, which I define as orthogonal (a classic "top down" view as opposed to a direct overhead view). He does note the unusual fact that you can see the horizon from the pyramid, something that should be impossible from a planometric projection! This is another example where the conceptual image plane of the background is rendered differently from the environment (see here and here).

Horizontal oblique projection in Flashback

Nesky also notes that Flashback's projection is "angled sideways," or in what is called a horizontal oblique projection. As he states, "This visually preserves precise vertical distances while adding depth to the world. Door frames and platform railings are rendered in front of the avatar." There are many doors in Flashback and this aspect is important to making them look like doors instead of walls.

Conclusion

Nesky is not an expert on the technical details of different projection methods, and he fully admits that is the case. But this was never the point of his study. His study focuses on the specific stylistic choices that game artists use (especially those making tile-based "pixel art" games) to define that invisible fourth wall that is coplanar to the player's screen. He has created another method of defining and grouping games by their aesthetic choices rather than purely by technical or genre classifications and I applaud his work.

Friday, July 14, 2023

Planar Geometric Projections

Taxonomy of Virtual Spaces

Part of my research is in defining a framework and vocabulary for analyzing and describing the concept of spatiality in digital media (especially in digital game environments). This "Taxonomy of Virtual Spaces" (Rowe, unpublished) is one of the tools for recognizing and clearly defining the aesthetic styles of digital games that I call spatial paradigms. How are these virtual spaces of the game world projected as 2-D images onto the display screen?

"Projection" is used here in the sense of a virtual 3-D object or scene that is projected (transformed) into a 2-D image on a screen. This may be accomplished by a computer rendering 3-D object data into a 2-D graphics matrix or a human artist drawing a 2-D game image (such as a sprite or a tile) using techniques that may give an object visual depth cues (such as axonometric or oblique drawing methods).

This system was initially based on the pioneering work by Dominic Arsenault, Audrey Larochelle, and other researchers at the University of Montreal that led to their "Game FAVR" system of analyzing digital game graphics ("The Game FAVR: A Framework for the Analysis of Visual Representation in Video Games" by Dominic Arsenault, Pierre-Marc Côté, and Audrey Larochelle (2015) Loading…Journal of the Canadian Game Studies Association, vol.9, no.14). I briefly wrote about Game FAVR on this blog before. It is a system that takes the inherently hybrid nature of all video game imagery into account, but it is specifically a means of analyzing the construction of graphic images, not game spatiality.

Game FAVR divides a video game image into three conceptual "image planes:" the characters and interactive elements (agents), the environment, and the background/foreground elements. Each of these different frames may be (and often are) rendered to the screen in different methods. I adapted the Game FAVR system to analyzing projected spatiality (since game space is presented graphically) and refined the categories of graphic techniques (planar geometric projections) used in games.

My latest update to my "family tree" of rendering methods is as follows:

Planar Geometric Projections from "A Taxonomy of Virtual Spaces" by Tony A. Rowe (unpublished)

This chart is only a current revision and is not meant to be exhaustive. It does not include curvilinear perspective, cartoon structures), divergent perspective ("reverse perspective"), or stereographic projection (usually used in cartography). I may expand the chart with these other methods, if needed. This may be more categories than I need for my study, but I would rather start with more details than I need and trim back later (for example, the vertical/horizontal oblique and vertical/horizontal orthogonal projections are almost identical).

The terms above are not universally agreed upon in the English-speaking world. I listed alternate or more specific terms (in gray italics) under each category, as appropriate. Different words may have different meanings to different disciplines and in different contexts. Game developers and journalists are also known for adapting and using terminology in an ad-hoc manner. There are many different graphic methods or camera angles that may all be described as "isometric," "3/4 view," "2.5-D," or "top-down" by different people. From my own studio work, I thought that "hit spang" (the visual effect of a projectile colliding with an object) was a standard visual effect term. Not so, it seems to have been a term that was adapted by my team and carried forward on later projects.

Take the term "axonometric," for example. I recently went through the work of defining what axonometric means, writing an overview of the history of axonometric drawing, and finally determined there are multiple ways of understanding the geometry behind a projection, or drawing, of an object. In the end, I adapted the "primary geometry" method of classifying graphic projections, as that is the standard method used in computer graphics for decades. However, I have noted a "secondary geometry" relationship between the three axonometric and some oblique projections in my chart, above (see the dashed line box). These are all methods of "pictorial" drawing (to use a term from engineering) and may otherwise be defined as "axonometric."

In addition to the projection methods, the three conceptual image planes (agents, environment, background/foreground) are classified by projection angle (the "camera angle" on the object). There are also examples of image planes that are "rendered" by other methods, such as symbols or text description.

The projection methods are just one factor of my taxonomy method. A game's spaces are further classified by its frame mobility (how the "camera" moves across the environment), the topology of the game world, the dimensionality of navigable game space, and other details like gravity.

A game's spatiality goes hand-in-hand with a game player's affordances to navigate that space to create what I call a spatial paradigm.

Spatial Models: Discrete vs. Continuous

Taxonomy of Virtual Spaces Wardrip-Fruin, Noah. (2020).   How Pac-Man Eats . Cambridge, Massachusetts: The MIT Press. Today, I return to the...