"Next Gen" game engine design

Started by
64 comments, last by ccanan 17 years, 4 months ago
So a lot of you may own a 360 (I don't lol) and you may have seen all the videos for ps3. One thing that I notice about these consoles is the amazing amount of detail in the game environments. Take gears of war for this example, the ground may have cracked bricks and moss growing on them with lots of plants and weed coming out everywhere, even lots of bricks and rocks just laying around (i,m not sure if these are independant objects from the levels static geometry). The walls can be broken and smashed up and have vegitation growing around them. The actual architecture of buildings can be massive and is extremely detailed. The actual levels may have thousands of interactive objects, like cars, bins, wood thats been smashed etc etc. Now I was just wondering if anyone knows of the kind of tecniques these games are using to implement all this stuff in the engine? I don't mean fancy particle effects or per pixel lighting etc, just the detail. I was thinking it seems to me like the artists are just making much more complex models and textures. Would they still just be using classical methods like octree and occlusion culling etc? I know the hardware is so much more powerful and can through more polys about while having fancy lighting etc. What about creation? Do you think these are still made in max or mya, what about the levels? Now for a new project I am starting (notice people start another engine all the time without finishing the old one?) I was thinking just let the artist create the whole geometry for the level in max/mya and use a plugin that allows them to apply materials that will be used in game. They would then import this into a custom level editor where they can place all the dynamic objects that the player can interact with including enemies, lights and triggers etc. The engine would use normal methods for space partitioning and culling and with todays hardware would probably render it all with no problem (yeah I know I made that sound easy and am aware of the REAL problems but for now just work with me lol) So the point I am making is, is there anything really new here or are the artists just extremely talented and getting paid really well? I have other questions about animation and rendering methods but i'll let this discussion make way just now.
Advertisement
You might check out the 3D Engine Design section of the six ShaderX books that are available. Many of them show how game engines are build. A good book is 3D Game Engine design from Dave Eberly.

- Wolfgang

P.S: sounds more like a beginner question, maybe better to move / ask it in the beginner forum?
I wasn't meaning it to be a begginners question, I do know what goes in to engine development, I have also got 3d game engine programming book and have developed a few engines (not all finished lol)

I was just meaning for a discussion about maybe any new techniques people are aware of in next gen engines.

Destructible environments are nothing new, they've been around for years now.
I can tell you that most _really_ good "next gen" engines, use trick of old engines.

Basic stuff like good scene managment, Smart use of BSP or quad trees.
But also things like a tasked based design, so muilty threaded job processing can be done.

tricks like offline processing fo meshes to platform specific forms. Ie make VB in a tool.

But to make it really awsome, its about giving power to people who can use it. IE designers, artists and level builders doing most of the work.
Armand -------------------------It is a good day to code.
I dont think this is a "beginner" question. My thoughts on modern engine design..

1) no BSP or portal etc.... all geometry is manged by octrees, with occlusion culling. No precalculated visibility.
2) No lightmapping, all lighting is done per-pixel with shadow-mapping
3) Instancing plays a big part of mesh rendering
4) agressive LOD systems using billboard imposters
5) Game specific editors are limited to placing meshes and such, all geoemtry is created in external 3D modelling applications like Max or Maya
6) General purpose algorithms are employed where possible, special cases are reduced..surface shading is done via shader fragments, allowing for complex variations of effects.

The biggest difference in 'next gen' games is the content. While Unreal Engine 3 looks fantastic and has nice features from an engineering standpoint, Gears of War is mostly the art. One could use Ogre3d and create visuals as good as that, but that level of art takes alot of time and talent. The art requirements for 'next gen' are the main part that have taken a huge leap in time, cost, and effort.

BSP, lightmapping, precalculated visibility is alive and well in modern engines.
shaders is the keyword for next-gen engines. lots of game company started to use special artists to get correct shader codes and values. and some optimize differences with old engines, because of the increasing of texture sizes, polygon count..etc while the content is bigger and more active, some algorithms getting unuseful(and i think BSP for rendering is one of these). and of course CPU-GPU(-PPU) usages are more stabilizated, just like making GPGPU.
+-+-+-+-+-STR
Yep, it's mostly some really good art, with enough support from the engine to avoid overly constraining the art.

Although there are lots of new tricks, the old ones are still alive and kicking. It might surprise you, for example, to find out that certain "next gen" titles are using static vertex colors for lighting of some geometry.
I think games are starting to make a big move from precalculated to calculated. I mean textures that satisfy on the latest engines are huge, used to be they were relativly small and gave a result that looked better than procedural techniques. Now we're moving towards the position of having procedural textures that look as good as those created by artists:
http://www.bit-tech.net/gaming/2006/11/09/Procedural_Textures_Future_Gam/1.html

Artists used to have to create every animation for their 'actors', now we have physics that calculates some of these, especially death with rag dolls.

I think as games move on we'll see more and more dynamic procedural content, from textures to maybe even certain sounds. Perhaps one day we'll be able to generate voices that don't sound like, well crap. I think models will start to be animated procedurally, and perhaps even an element of dynamic story generation (though not too much, that would make the whole exercise pointless IMHO).

This topic is closed to new replies.

Advertisement