Jump to content
  • Advertisement
Sign in to follow this  
maverick20

Next Gen Games.......(Doom3..)

This topic is 4851 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I wanted to ask you guys that the next games such as Doom3, FarCry etc are programmed in OpenGL or DirectX or both and how the textures and all animations are converted into GL and DirectX Formatt........

Share this post


Link to post
Share on other sites
Advertisement
Actually, a lot of games have the ability to use either... But I'm positive that Doom 3 uses OpenGL since that's an standard that ID usually sticks to. At least for PC, I don't know if they used Direct X since they also developed it for XBOX, which uses a language like DX.

Share this post


Link to post
Share on other sites
It is really possible to do either with either graphics API. It is really more of a matter of preference/portability.

As for converting textures and whatnot, they probably use their own proprietary formats, then load them into the appropriate surfaces/buffers in video memory. The same goes for the animations.

Share this post


Link to post
Share on other sites
Well, as an example: Doom 3 uses standard TGA's for it's textures, although it can also use the DDS format. It's meshes and animations are a propritary format that id developed called md5. The files themselves are plain text, though, and easily read into your API of choice.

Share this post


Link to post
Share on other sites
I dont know about texture formats, but FarCry has both a D3D and a GL renderer. The GL renderer isn't really supported and doesn't always work though.

Share this post


Link to post
Share on other sites
directx enforces a single standard
and you have to remake certain parts of your code for each directx version (usually simple stuff)

opengl is really based on the standard as interpreted by the graphics driver programmer, different things will look different on some video cards, and this means new and cutting edge stuff (such as 64 bit color) will always be available for opengl first
you usually have to do a string search on the opengl supported functions string to see what is supported on each and every machine, and assign function pointers if that function hasnt been implemented in your compilers library yet.

the main ideas of both api's are similiar, you almost implement them the same way, as a matter of fact, you can implement opengl, and multiple versions of directx if you have that much time, and even make a console dialog box that allows the end user to choose what api he wants

Share this post


Link to post
Share on other sites
Doom 3 was opengl based, and FarCry is mainly DirextX based (as they constantly upgrade their DX renderer with all the new DX features).

Doom 3 for the XBOX was ported over to DirectX, which is one of the reasons why it took so long to release. The other was getting a top-of-the-range PC game to run on a now aging console :).

Share this post


Link to post
Share on other sites
nehe.gamedev.net

thats got to be the best opengl tutorials i know of,

http://www.drunkenhyena.com/

directx tutorials modeled after nehe tutorials, useful for see how doing something translates between the two

Share this post


Link to post
Share on other sites
In my opinion the graphic API is not so important because

1) large projects use virtual renderers with different implementations (GL, DX, software, ?): this also give benefits in the subdivision of the work.

2) specific API parts are perhaps less than ~10% of the entire code (think about Quake2 for example)

3) what you can do with DX you can do with GL and viceversa

4) textures can be loaded in every permutation of the RGB bits so I dont see the problem (I dont see why dont use the classic RGB, RGBA, A)

5) animations are not supported directly by GL and I suppose that serious software house (like ID software) use their own format ( again: md2 for example )

I like to think that every API is able only to draw triangles on the screen. The rest is 'pure' math, OS specific networking, AI,...art in other words [smile]

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!