Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Beyond3D Interview January 9th, 2006
01-10-2006, 03:09 PM,
#1
Beyond3D Interview January 9th, 2006
-> Interview

Bethesda's Morrowind was one of the "big three" computer roleplaying games released in 2002, along with Dungeon Siege and Neverwinter Nights. Sporting an advanced engine many high end systems buckled under the pressure and gamers delighted at what they saw. The game went on to win multiple awards and warranted two expansions and re-releases. Bethesda is close to finishing the latest in the Elder Scrolls series: Oblivion and its renderer looks to be no push over either even for today's monster cards if you choose to pump up the detail settings. Being released for the PC and the Xbox 360 we asked the developers what was under the hood graphically as well as some of the inroad they have been doing with regards to artificial intelligence and physics. Gavin Carter was kind enough to answer our questions for the Beyond3D readership.


black[/hr]

Could you discuss the dynamic shadow technique you're using? They appear to be a form of shadow maps.

They are a form of shadow maps, though the technique we?re using currently differs from the one we showed at E3. Our initial shadow tests were done using cube maps on every surface, but after extensive testing we found them to be too slow overall to use as a general solution. We have switched to doing single shadow maps directed at characters. The system supports full self-shadowing and we do multiple samples and depth comparisons to provide a soft-shadowing effect. The net effect we?ve achieved is a system general enough to handle Oblivion?s diverse environments while still providing great visuals and good performance.

Are your dynamic shadow implementation a feature across all supported systems, perhaps scaling the detail on low-end machines, or are they a high-end only checkbox? How would you describe the qualitative jump from Morrowind?

They will be supported across all systems. We will have options to toggle features like self-shadowing and the softening effect, as well as to adjust the number of characters receiving shadows to improve performance for lower end machines. The jump from Morrowind is significant. Since we aren?t doing stencil shadows anymore, our current system is more accurate while using less fill cost. Also, shadows use world space coordinates instead of Morrowind?s screen space coordinates, allowing us to do more dramatic effects like fading out and softening the shadows over distances.

Are you using any kind of pre-computed shadow technique for static shadows? If so, how well will they blend with the dynamic shadows?

We are not using any pre-computed techniques. The main reasons are that pre-computed shadow maps don?t mesh well with our dynamic time-of-day system. Also, relying on a completely dynamic solution allows much more flexibility for the artists to create whatever environment they want in an entirely WYSIWYG work environment.

In a recent interview you have revealed Oblivion's engine is capable of sophisticated lighting across surfaces (normal mapping and parallax mapping, for instance). How would you characterise your experience with parallax mapping and its junction and texture warping problems?

We avoid texture warping on high-end cards by doing the eye vector calculation per-pixel instead of per-vertex. Some amount of texture warping is inherent to the system no matter what card you?re using, but overall we find it to be virtually a non-issue in game unless you?ve got the camera mashed up against the textures. The artists quickly learned the limits of range in the displacement for what looks good and what looks bad. T-junctions are a problem for just about any lighting calculation, so these are mostly avoided in the art creation stage by being smart about how we construct objects.

Oblivion will probably be one of the first games with integrated HDR lighting at release time. Could you describe to us the specific solution used? Will it use fp blending or will there be an option to blend in the pixel shader? Does Oblivion make use of floating point textures?

Oblivion?s HDR solution does make use of floating point textures to give greater accuracy and precision for the effect and uses floating point buffer blending. Blending in the pixel shader would end up being prohibitively expensive given the complexity of our scenes.

Could you tell us what Shader Model range you're aiming for? In a recent interview you mentioned that you make use of SM 3.0; is this shader model used for a performance increase only or do you make use of SM 3.0-specific features like texture fetches in the vertex shader?

Shader model 2.0 to 3.0 is the targeted range. For shader model 3.0 effects, we do take advantage of some looping and branching, but mostly we use it for performance increases. In 3.0 we are able to do all lighting in a single pass, as well as full lighting on blended objects.

Related to the above, how would you describe your experience in having to write the same effect across different Shader Model versions?

For the most part, our shaders were initially written with the 2.0 spec in mind. So rewriting them for shader model 3.0 was more fun than a chore, since we were able to speed things up and combine passes. Going the opposite direction would have been more of a pain, but luckily we were able to avoid that in most cases.

With a world as detailed as the one shown in screenshots, determining visibility must be an important focus for you. Could you shed some light in this matter? Are you using any advanced portal culling technique?

We rely heavily on LOD models to scale down lighting, geometry, and shaders once objects drop below certain thresholds of distance or visibility. We also do a simple, fast occlusion culling technique for interiors. Again, we try to optimize our systems in ways that don?t impede artist freedoms.

In previous interviews you've mentioned using multi-threading to help speed up streaming new areas. How important are you finding the other, less visible, system parts like memory speeds, CPU L2 cache, AGP/PCIe speeds, etc. in this regard?

We?ve found it?s definitely a total picture situation as far as optimization goes. For instance, we?ve spent some time optimizing our code to prevent L2 cache misses and made some gains there. We try and take optimal advantage of every hardware component, so any extra speed we can get out of any part factors into the overall picture.

We're also curious about any figures you care to divulge about average triangle and vertex loads per scene. Approximately how many pixel shaders will the game have, and if you can answer how many instructions on average do your pixel and vertex shaders have?

Suffice to say that our triangle and vertex counts are on the high side, but in line with what Microsoft and the major video card companies recommend for next-gen development. For pixel shaders, if you take into account all the different configurations that result from compiling for different cards, there are hundreds. However, there are probably about 25 major shader effects that are utilized in general situations. The instruction count scales with shader model, so our lower-end 2.0 shaders are kept pretty compact while the 3.0 lighting shaders are quite long and will appreciate a fast video card.

Could you briefly touch upon what changes will there be for Oblivion modders compared to Morrowind?

The editor has received a host of changes ranging from small to large. Many are brand new tools such as the heightfield generation tool, and the region generation tool to populate a large area with objects quickly. The dialogue and quest system has been redone to improve the workflow and tools have been added to better allow Havok objects to be manipulated in the editor. Modders will also have access to the entire range of AI functionality that we have at our disposal.

As a PC and Xbox 360 developer how have you been finding Microsoft's XNA? Other developers praise its profiling tools and impressive multi-platform integration. What do you like best?

XNA Studio still isn?t released, but the tools they have provided for development and profiling on the Xbox 360 are outstanding. The PIX tool for performance profiling is particularly fantastic and it?s something we use on a daily basis around here.

How different is developing for the PC and Xbox 360 now compared to the PC and original Xbox when you were creating Morrowind?

It?s quite a bit different considering that the original Xbox was fundamentally very similar to PC architecture. The 360 is much more like a traditional game console, in that it is tuned first and foremost for gaming. The differences in things like the multicore architecture and unified memory systems do create some technical challenges, but that is the nature of cross-platform development. The support we?ve received from Microsoft has been tremendous, even better than it was for the original Xbox.

Physics is the new buzzword and with such a rich environment how have you been balancing that with other high CPU utilization subsystems (like A.I. or even the renderer)? Do you think nowadays developers treat physics as a first-class citizen? Should they?

We?ve worked closely with Havok to make sure our implementation of physics is as optimal as possible. I think anyone who?s played Half-Life 2 realizes that physics can add a ton of great gameplay to a game. Developers have definitely taken notice of the importance of physics in games and it?s pretty rare that you see a game without them anymore. I look forward to the advances in gameplay that they?ll bring.

While we're on the subject, although you've mentioned you're quite happy with Havok, is a PhysX/Novodex path later on as a patch a possible expectation for Oblivion?

We certainly always have our eye on new technology that might make good additions to our games. As far as physics goes, Havok is the market leader and for good reason. It?s proven itself in well over 100 games and the amount of support they?ve provided us in implementing and optimizing their system for Oblivion has been invaluable. Either way, I think adding support for an entirely new physics system is far beyond the scope of a patch.

One of Oblivion's great features is the A.I. How are you scaling the complexity of the A.I. routines? Is it tied to visibility (i.e. scale down when actor is not in view, distance-based, etc.)?

It?s mostly based on visibility and the relative location of NPCs to the player. We engage a whole host of optimizations for characters that aren?t being rendered.

Could you reveal your secret on how you can have A.I. actors with 24 hour schedules and a huge world and not have the whole engine halt in its tracks? Are you doing snapshot updates at zone/cell boundaries?

As above, we mostly leverage the amount of processing time based on distance. We have multiple processing levels that control the range and amount of activity an NPC will engage in. Characters far away from the player will engage in less complex behaviours and update themselves less often than characters that a player is likely to encounter in the near term.
¤ How to add images or files to your post ¤ Silgrad's UBBCode
My pet peeve: huge images in img code. I reserve the right to make any such image into a clickeable thumbnail whenever I see it.
Angel mired in filth
[Image: SignatureBannerRazorwing.jpg]
01-10-2006, 03:57 PM,
#2
 
Wow. This is a very interesting bit of information that they decided to share. I think this may answer a few questions that may be plagueing the minds of model and texturer artists... None for me, really, because I didn't really understand any of that technical mumbo-jumbo...
Honorary Member of Silgrad Tower

Buy a Silgrad T-Shirt*
*not sold anywhere
01-11-2006, 04:27 AM,
#3
 
Hehe... trust me, it's all mumbo-jumbo to me too.

Oh and here's a new preview from 1up, dated Jan. 10th. (not worth reading, but still)
¤ How to add images or files to your post ¤ Silgrad's UBBCode
My pet peeve: huge images in img code. I reserve the right to make any such image into a clickeable thumbnail whenever I see it.
Angel mired in filth
[Image: SignatureBannerRazorwing.jpg]
01-18-2006, 07:33 AM,
#4
 
German preview on gamecaptain.de, posted January 16th. But word on the grapevine is that it doesn't have any new info at all, and don't ask me where they got the information about Oblivion going gold unless they made it up themselves.
¤ How to add images or files to your post ¤ Silgrad's UBBCode
My pet peeve: huge images in img code. I reserve the right to make any such image into a clickeable thumbnail whenever I see it.
Angel mired in filth
[Image: SignatureBannerRazorwing.jpg]
01-18-2006, 01:53 PM,
#5
 
auwwww :eek:

i think i understand 3%
i will gladly sacrafice u 4 oblivon
(im still traying to bark dont worry)
01-18-2006, 05:06 PM,
#6
 
Hehe, I understand about 100%. Wink

Nope there is definitely nothing new in this article and they claim they got the fact that

Quote:Oblivion ist Gold!

from "reliable sources" (whatever this might mean Big Grin ).

One German game magazine (just don't ask me which one) released a list, the 50 most important games in 2006. Guess which game got on place #1 ... yep, Oblivion.

Greetings

Quentin
That's what a ship is, you know. It's not just a keel and a hull and a deck and sails, that's what a ship needs, but what a ship is - what the Black Pearl really is - is freedom.
01-18-2006, 05:09 PM,
#7
 
Quote:Originally posted by Quentin Fortune

Quote:Oblivion ist Gold!

from "reliable sources" (whatever this might mean Big Grin ).

probebly some one like you or me
i will gladly sacrafice u 4 oblivon
(im still traying to bark dont worry)
01-18-2006, 06:23 PM,
#8
 
dwemer lizard: Yeah. Maybe they saw the info about the game going gold posted by some fan on ESF Wink
¤ How to add images or files to your post ¤ Silgrad's UBBCode
My pet peeve: huge images in img code. I reserve the right to make any such image into a clickeable thumbnail whenever I see it.
Angel mired in filth
[Image: SignatureBannerRazorwing.jpg]
01-18-2006, 07:25 PM,
#9
 
he he :brew:
in imagenatsion i can see HIM type and wow... he scares me Wink
i will gladly sacrafice u 4 oblivon
(im still traying to bark dont worry)
01-18-2006, 10:54 PM,
#10
 
Hmm yay more interveiws to confuse the masses lol


Forum Jump:


Users browsing this thread: 1 Guest(s)