Jump to content
  • Advertisement
Sign in to follow this  
Stormphoenix

Do they use wrappers in industry or native?

This topic is 4830 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

Hello everyone, Been lurking for a while, but I needed to ask this Q, so ... I'm coding a particle engine extension to a DirectX wrapper to help other students on my course at university, and I need to justify doing it as part of a wrapper rather then in native DirectX. My justification so far was that DirectX is too complex and takes too long to do anything with in the space of time students have, and a warapper abstracts that somewhat so they can concentrate on more important things. I'd like to say, however that in industry they use wrappers anyway and so learning native directX isnt as important as learning the theory and then applying it to whatever language you want. I have absolutely no evidence for this though, and so if you could reply with any answers as to wether game/graphics devs routinely use wrappers to hide DirectX or they just do it native, I'd appreciate it :)

Share this post


Link to post
Share on other sites
Advertisement
I don't understand exactly what you ask, but I guess it's a matter of what you want to achieve, or what the class is about. Learning a rendering API has its value, so if the purpose of the course is to learn DX, a DX wrapper wouldn't be much helpful. If the course is how to build a game, then of course it's preferable.

Anyway, in the industry companies make games by using rendering engines, which are a set of libraries that handle the rendering and usually hide the implementation details. Altough mastering a game engine is probably just as hard as learning DX(but of course, it has more benefits). The engine could be in-house or licenced from another company. The Quake3 engine for instance has been used to make other commercial games, from different companies that bought it(the engine, not Quake3) from ID. Of course, the person(s) that develop the engine(at least the rendering back-end) must have good knowledge of DX,OpenGL or whatever API they're going to use.

Share this post


Link to post
Share on other sites
Most of them use engines which do abstract away APIs. A few also use wrappers. I doubt that any use DirectX natively (if by that you mean that they code purely in DirectX).

Share this post


Link to post
Share on other sites
While most companies do have some people who know the hardware for the console, or D3D/OpenGL for PCs, many of the developers don't have a full understanding of it. While some use their own engine, many others licence Renderware, Unreal, Quake, or other engines. They'd rather worry about the game code, than the quirks of the PS2. These places usually have someone knowledgable enough to put in little bits of platform specific things for better effects, and whatnot.

Even when programming for just PC, some people code to an abstraction layer, or wrapper, giving them access to D3D, OpenGL, or software rendering. While they may know the details of how to code for each of these seperately, the extra layer means that their game code works on any supported platform, not just D3D.

So yeah, people use wrappers and engines in the real world, and a good chunk of the staff developing games wouldn't know how to write their own D3D engine and would require an engine or wrapper to get anything done.

Share this post


Link to post
Share on other sites
Most professionals mitigate the risk of being library dependent by abstracting away from the underlying library so that it can be swapped out in the future if the need arises.

Share this post


Link to post
Share on other sites
Quote:
Original post by Stormphoenix
... I'd like to say, however that in industry they use wrappers anyway ...

It depends on a lot of factors, but a game on PC and Xbox uses DirectX (unless it uses another renderer like OpenGL or RenderWare) and somebody working on that game has to know the details of DirectX even if there is a wrapper or layers of abstraction.
Quote:
Original post by Stormphoenix
... so learning native directX isnt as important as learning the theory ...

I agree with this because the theory applies to all renderers and the majority of games run on non-DirectX platforms.

Share this post


Link to post
Share on other sites
Quote:
Original post by _Madman_
I only wonder why take DX as foundation, GL is easier to gasp and warp too.

That's just your opinion. I personally find DX more object-oriented and as such more in line with my design philosophies, but ideally you'd abstract it all away into your own graphics engine.

Share this post


Link to post
Share on other sites
[opinion]Well, sorry, warping should be equally easy, but otherwise, I think it's easier to get into concepts via GL.[/opinion]

Share this post


Link to post
Share on other sites
Well he isn't getting into the concepts, he's writing a wrapper and I pretty much assume he knows what's going on underneath. Otherwise he wouldn't be making a wrapper to help other students at his university [smile]

And what exactly are "gasp" and "warp" in this context?

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.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!