Technology

Page last edited 3,730 days ago
From Artisan
Jump to navigation Jump to search

NVidia's latest graphics cards can do real-time raytracing and fluid simulation. Using even outmoded desktop or mobile technology, GPUs are now capable of 3D physical modeling and rendering at incredible speeds. This means that it is now feasible to create video games that employ realistic physics models to create totally custom geometry and texturing for objects that really interact physically with their environment. NVIDIA Kepler demo from 2012

This **may** be the very first game on the market to center on fully customizable and interactive user-made objects that are actually crafted within the game itself.

Lest you think the technical aspects are too challenging, I have done some research and found that the vast majority of the problems in physical simulation have already been solved - they simply haven't been employed to give video games a creative edge beyond mere special effects and scenery. NVidia Physically-based simulation demos Most of the physics actually comes for free with libraries like NVidia's and game engines like UDK (see below)! Possible approaches for modeling unique items in-game:

  1. Voxel editing - really easy and straightforward; basically just a 3D pixelated Paint program (like Minecraft)
  2. 3D modeling - there are a number of cheap and free 3D modeling programs out there that let you point and click and edit 3D objects. While it isn't physically based, the basic features are simple to implement and allow for a high degree of geometric customization (see the freeware Anim8or.com). Point-and-click polygon creation could be easily implemented well within the course of a semester.
  3. Sculptris.com has invented something they call "Digital Sculpting" which is a lot like Photoshop, but for 3D objects: http://pixologic.com/sculptris/ The geometry and math required for this approach are quite a bit more challenging, but many well-published and well-documented algorithms exist for solving this type of problem interactively.
  4. Approximate physically based modeling - This approach is even more realistic but is still an oversimplification of physical reality. It is not particularly hard to implement, for example, a spring-body system where particles in a "solid" object have a basic shape but employ some amount of deformability. The main challenge here is to tweak the system so that it approximates real objects to a sufficient degree of accuracy. The complexity of this system could be highly variable depending on how accurate or detailed we want it to be. Many surveys and papers have been published detailing these approaches and their pros and cons: https://graphics.stanford.edu/courses/cs448b-00-winter/papers/TR97-19.pdf
  5. Exact physical modeling - in this type of system, certain laws of physics are employed with the highest degree of exactness available. Benefits are high fidelity and close correspondence to real-world systems, but drawbacks include greatly increased computational complexity so we are not likely to attempt this approach.

We can choose anywhere within or beyond or outside this spectrum and still be doing something innovative that few, if any, other games have done.

NVidia and other companies offer several programming SDKs that leverage the extremely parallel processing power of modern GPUs and actually support a very wide range of consumer hardware: NVidia CUDA