Video Game Design/Programming/Framework/2D vs 3D
Graphics is the common name for the visual presentation of the game environment and also of each visual representation its components. Creating these visual environments begin generally with the concept artist, that in accordance to the game concept creates visual representation not only of the game characters, objects but also how the environments will look like or even the as the visual expansion of the game creator imagination. That part of work is mostly done outside of the game, with third party software dedicated to those distinct tasks and data.
A games graphics are not restricted to in game art, but also in font design, logos and advertisings for marketing purposes, they also can have a great impact on other types of merchandising like t-shits or toys, or other product spin-offs like animation series or even live action movies based on the game concept.
Vision is the most important sense in humans. Presenting a visually stunning product will trump most other aspects, in attracting players and guarantee initial sales, we already the covered how an attractive presentation is important.
Since today it is not uncommon to have a multi-monitor setup, as prices continue to fall and image technology increase multi-monitor support in games will also become common. A multi-monitor setup can also easily expand a normal view to into a mosaic without no special consideration from the game creator, but having distinct screens is extremely interesting for strategy games and simulations as it is not uncommon for the game-play to permit the player to visualize a large number of distinct data.
2D or 3D
Most modern games until recently seemed entrenched in the 3D craze, until the mobile phone brought back the market for a return to simpler visuals and good old 2D creativity and innovation. 2D had been mostly relegated to emulators and reimplementation of old game models.
After the initial advances in 3D and the development of good 3D hardware, 3D soon started to be mostly a marketing gimmick, a sell point and a way to hide the frailty of the game concept with good visual, where each new inch gained in performance or visual realism was heralded as a revolutionary must see discovery. Remember what we said about presentation, that is mostly how it is used. Most games do not know how to use it in a way that complements game-play and game design.
A good 3D game uses dynamic composition of scenes and environments, in most the same way movies do, with the express purpose of showing off the game design and engaging the player's imagination, but with unwavering respect for game-play.
The game engine should be debugged and tested with more primitive environments and models particularly with game consoles. What the game calls the graphics engine is used to manipulate the games animations scripts characters position in an environment and memory allocation for graphics rendering. Other data such as physics, AI and the game scripts are handled by other engines. There is a large misunderstanding with the general public in that a game is made with only one "engine".
While most game engine intend only in simulate the simulative of depth and a depth environment alien with other graphics artifacts real 3D only recently started to become popular in games. There are several techniques to produce and display 3D moving pictures. At the core there is the requirement to display offset images that are filtered separately to the left and right eye, hence providing independent focus therefore depth to the scene that is being observed. Two strategies have been used to accomplish this: have the viewer wear eyeglasses to filter the separately offset images to each eye, or have the light source split the images directionally into the viewer's eyes (no glasses required). The issue so far was in the CPU or video card to the generate the required similar but distinct images and the software that would generate those vies, the rise of the GPU and the adoption of 3D TVs has finally permitted general use of this 3D view even if there is not a great number of implementation for games.
In science and medicine the concept of point cloud data started to get importance due to the high detail it permits with imagining equipment (magnetic, lazer). An Australian company Euclideon has made claims of and advance in 3D scene rendering using points in place of polygon, therefore an increment in the possible level of detail based on Sparse Voxel Octree Graphics. Others are also working on the this type of technique like Atomontage Engine (hybrid approach) or the Voxlap engine by Ken Silverman (that also wrote the Build engine, used in Duke Nukem 3D).
The user interface (UI) is a very important component of any game because this is usually the first thing a new player will see when starting up your game. It is also (in most games) always visible to the player, so it is wise to put some effort into making an interface that is intuitive, easy to use and that looks good! There is nothing like a badly designed interface to put someone off a potentially great game.
A user interface consists of:
- Graphics - Buttons, info panels, maps, etc.)
- Layout - Where those things are placed on the screen
- Interaction - How these things respond to user input; do they bring up a map? your inventory? access settings?
2D and 3D
UIs can be rendered in 2D or 3D, the interface itself is in most cases independent from the game-engine, at most it serves as a I/O interface from the player to the game world. Many of the primitives on a UI render will not be present of a game-engine, especially if one is relying on packaged engine.
2D games can have 3D UIs and 3D games can have 2D UIs. The choice is only on design and presentation. Note that computationally 3D UIs will take more resources away from the game and flashy UIs tend to cause only an impact on first contact if there is not deeper integration with the game-play. The UI should also not outshine the game itself, at best it should aim to be useful and informative.
- Autodesk Scaleform (http://www.scaleform.com/) - a vector graphics rendering engine used to display Adobe Flash-based user interfaces as middleware for use in the video game industry. HUDs, and animated textures for games for Microsoft Windows, Mac OS X, Linux, as well as Xbox 360, PlayStation 2, PlayStation Portable, PlayStation 3, PSVITA, 3DS, Wii, iOS, and Android platforms.