The Digital Amusement Network


Our imagination becomes your reality.

What this is all about | Site features | Past columns/articles | Who's currently involved

DA contains factual, fictional, and theoretical content. It's all about creating good ideas and building upon them. DA proposes an idea, members and users alike build upon them, and someone steals the idea. You could be that someone. That's the point, do something useful with a good idea.
DA INSIDE
Forums
Past ideas
FAQ
About DA
Crackhead
Game dev

GET OUTSIDE
What's going on?
Distractions
Friends of DA





DA NEWS
THU 4-17-2003 11PM
Tomorrow, the new column goes up!! That's right, after the longest stretch ever, a new DA column is embraced. And by DA's first contributor!
ADVANCEMENT
Taking Digital Realism to the Next Level
 By Tadau
Many people, including myself, are beginning to ask: "My PC/machine is fast enough to handle just about anything - so why do I need the newest bestest hardware when my PC/machine's performance has gone beyond practicality?" To add extra realism to games, of course. :)

Upcoming games, primarily such as Doom3, are raising the bar on environmental realism in a game. More realism means more performance requirements. Graphics beyond the upcoming generation are near obsolete. Minor, but very complex tweaks, are required to improve todays' visual graphic qualities. A huge factor in making these suttle improvements are correctly controlling behavioral aspects in an objects' movement.

However, in a game, there are many other environmental improvements in addition to character movement behavior that need attention to achieve the next level of realism. The concepts I'm proposing are generations away (as usual), and also (as usual) I'm reminded that current hardware is not up to the task of handing these advanced new features without serious performance degradation. So, in addition to suggesting the methods that will take digital realism to the next level, I've also theorized the hardware that will efficiently handle the tasks. I amaze even myself!



An example of how sound textures can affect environmental sound.
Sound textures (hardware: soundcard)
 *
ambient sound is taken to the next level
 *
walls/ solid objects have sound dampening/ reflecting attributes
 *
the soundcard would need to know the map environment
 *
instead of graphic textures the soundcard will use sound textures
 *
sounds carry according to pitch, volume
 *
sound can travel through walls, but dampening level will affect pitch, volume of sound
 *
dampening acts as a bandpass; frequencies up to x hertz can be heard through the object
 *
reflecting and dampening possessing is handled by the soundcard
 *
the soundcard may require a new type of slot (similar to an AGP slot for a video card) to sustain the high bandwidth and low latency to give real time results
 *
perhaps the upcoming 64bit PC systems will be best suited to handle a new sound bus without needing a new slot? dedicated sound slot would still be optimal
 *
a sound source with a direct line of sight, say in a hallway, would be heard with and without echo; echoes are generally quieter than the source so the echo would be more like background noise, depends on dampening of course
 *
depth of echo complexity
 *
should the soundcard process one reflection, two reflections, more? how many sound paths? level of sound detail
 *
distance should also be factored; sound travels at 700mph+- which is about 1000 feet a second, or 100 feet in a tenth of a second (so you can see the relevance); meaning if someone fires a gun 250 feet away, it should take 250ms before you hear it, of course factoring in volume so in some cases the sound may be almost 0 decibels by the time it reaches you

* you can see now why I'm asking for a sound bus, PCI bus would puke

Notes on sound textures:
Of course some wiseguy will flame away with "well if the soundcard gets it's own bus, then why not the ethernet card too? or the modem? or the second video card?" Because creating more buses is a ridiculous thought. It's expensive, requires more dedicated hardware, reduces compatibility, etc. But, do you not see the importance of sound in a game? Apparently game designers do, which is why the Gamecube, and XBox have built in 5.1 sound, and which is why Doom3 will be one of the first PC games to fully support 5.1 sound. If game makers understand that better sound means a better gaming experience (which equates to more $$$) then would it make sense to improve the sound architecture? Yes, of course it would. Would you dare throw away your AGP graphics card and go with a PCI video card for gaming? Not a chance. Sound advancement is the next frontier of gaming. Wait until your new Audigy card looks like a PCI Voodoo 2, then you'll understand the difference.



AI awareness (hardware: cpu)
 *
advanced object recognition
 *
a monster's object awareness is based on a percentage of something that needs to be visible for it to either check it out or take action upon the object, or until the object reaches the monster's interest level
 *
monster has x amount of interest which affects how much a monster will to check out new places, look around, pursue object before losing interest; if a monster has very low interest you might expect it to move/act linearly (like a low quality zombie)
 *
fading knowledge of known area
 *
monster sees hallway, remembers what it saw up to it's visibility range for x amount of time; the area it is viewing causes its time to forget not to increment; area not visible to monster causes x to increment; x reaches limit, monster no longer remembers anything relevant about area, except possibly paths for navigation; navigation memory also fades but probably at a much slower rate
 *
number or objects a monster may be interested in at any one time
 *
causes cluefulness; a object on the ground causes interest, blood trail nearby causes related interest, monster could put 1 and 1 together and follow the path that both objects create, until interest runs out
 *
aggressiveness
 *
how much effort a monster will put into reaching it's goal
 *
more aggressiveness could cause a monster to try to access normally unaccessible areas, like a room behind a door and attempting brute force entry

AI notes:
It looks like this added AI will take a bunch more CPU than is available, so see the proposed idea at bottom which helps this situation. Additional processing hardware dedicated to this task should clean up the depth of processing needed.




Example 3D graph representing a type of smell. The color of the center dot represents the combined RGB value of the three properties, measured from 0-255. The graph is kind of cheesy but at least you get some understanding.
Scent of smell (new concept; hardware: cpu)
 *
represented as 3d graph to player, monster
 *
3d graph - pleasant to nasty (aroma), weak to strong (intensity), and chemical composition
 *
view of spectral depth of type of chemicals, i.e. stink is of methane - composition moves to a certain value, another room smells of food (maybe even type of food) composition moves to another value; all composition values blend into each other
 *
smell of object has ambient levels of scent, intensity
 *
ambience may increase/decrease based how long the source scent has lingered
 *
scent can raise awareness of the environment
 *
difference between pleasant and nasty is relative to the character/creature

Scent notes:
Wow. If you've ever envisioned smell-o-vision, I've just created it for you, without the multimillion dollar investment. My graph needs some serious tweaking, but it's the best I could come up with for now. The part that will take some research would be to accurately represent the composition in a meaningful manner.

With smell, factors such as airflow and wind direction/velocity take on a whole new meaning. Image having to figure out that you are standing upwind which is causing all the monsters to find you, because they can smell you. Or you finding their nest by following the stench in the air. Freaky...



Character behavior (hardware: cpu)
I've been attempting to figure out what would work far better than just motion capture, or "move this vertex to this point" kind of motion. Current CG and 3d animation are lacking general physics like friction and power. For example, you say "ok object, to remain in this position you must exert so much power to this other object, else you fall limp and are subject to gravity's full effect".

A better aspect of power is stamina - how long can the object exert x amount of force? Of course, all this require lots of calculating to do, and the proper math formulas... One more thing on power since I'm thinking about it. It gets more complicated as you would feed it something like "in this amount of time, you have to send x amount of power pulses to this object with each pulse giving x amount of strength with respect to time between pulses, then deplete stamina as power is given". Frantic and excited objects would have shorter times between pulses. That would create more lifelike little movements found in nature.

There's a simple but addicting 2d/3d game I played for a while called "bridge builder". Neat things happened when you pulled out random support beams. Kind of like ragdoll physics. Unreal Tournament 2003 and Metroid Prime sport characters with ragdoll physics. However, creating lifelike movement is much much harder than letting limp objects fall as they want.



The "thinking chip"
I would like to propose the creation of a new piece of hardware dedicated to secondary processing. Perhaps it would be a secondary cpu-type motherboard insertable chip (like the old math-co processors in 486's), or a PCI card (at worst). I would call it a thinking chip/board. Its purpose would be to subprocess data, for dedicated tasks, freeing up CPU time. Example purposes that it could handle would be like being a watchdog over other processes, AI control, handling collision data, handling timing events, anything that requires redundant processing and would benefit from a dedicated processor to the task (I'm not talking about standard distributed SMP dual/quad processing). This may help deviate away from some limitations of a straight x86 architecture and allow for more hardware flexibility.

Wouldn't it be neat if you could drop a Transmeta Crusoe type chip onto your PC motherboard, and emulate whatever hardware environment you wanted to, relaxing the stress on your CPU? That may also introduce cooler case temperatures being that the CPU is no longer working so hard. I theorize: maybe the CPU would have a pass-through instruction to the thinking chip? Even desktop apps could benefit, such as recovering from a crash with a watchdog OS keeping the CPU alive from the thinking chip. If the industry hasn't thought of having a thinking chip, let me introduce it to the idea. x86 architecture is beyond its time, but an expansion like this could easily improve it's situation by retaining backwards compatibility, and allowing the programmer to essentially create his own hardware environment to optimize software performance via low-level multitasking. The thinking chip shouldn't talk directly to anything but the CPU, as the CPU is essentially offloading some of its load onto the thinking chip, and talking to the other buses may cause conflicts.

I wrote an article a while back on features I would have liked to see in the upcoming Doom3. They're mostly gameplay related, and amazingly enough many of those features have already been picked up in other games, such as Urban Terror using hit zones, bleeding ailments, climbing, and serious movement penalties when shot in the legs, etc. which add to the realism effect greatly. Other games have incorporated some of the weirder features, like fear.

It's good to see that those features have shown up in under 2 years time, which means it may be possible that the ideas that I have proposed today may already be on the drawing board...

INTERACTIVE FEEDBACK
Spawn an idea based on this one | Rate this idea | Submit links, references, and related material | Idea comments | Forums


<-- previous idea (Professional Snowball Fighting) next idea (Change is Good, Utility is Better) -->
 
  realtime worthiness
  Users rating

Rating submission and graph statistics (you vote here!)
Refresh for updated graph
Total current votes:

Remember, vote again as often as you want, and keep up with the Flack to make your decision!

colaborated bred ideas
Spawned material

None yet - spawn an idea!


sources beyond the original
Links / Related material

Tadau writes:
The Micheal Jordan superbowl commercial...

A huge problem with current CG visual realism is skin translucency. You can perfect lighting, but in motion, something still won't look right. This new skin translucency shader will no doubt propagate, resulting in much more realistic CG characters. I've been waiting - someone has finally done it. Heh, and starting with creating a young MJ is an ambitious start.

Read the rest of this comment!


talk the talk
Comments

Frost says:
Even something simple to us like the stability and balance of bi-peds is a very difficult and EXPENSIVE endeavor (Hell, it takes us months as babies just to learn to crawl... try doing that with something that can't really learn and adjust). In a virtual world you could test your model a million different ways in the time it would take to build a physical prototype and test it.

Read the rest of this comment!



d i g i t a l   a m u s e m e n t   2 0 0 3