Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Geek Culture / Do all 3Dengines use DirectX or OpenGL?

Author
Message
Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 18:28
I mean just look at the unreal 3 engine... does it make use of directX or openGL? and if most engines use directX or openGL then why is it that some engines can draw more polys with the same speed etc.? btw, what's the difference between directX and openGL?



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
Arkheii
21
Years of Service
User Offline
Joined: 15th Jun 2003
Location: QC, Philippines
Posted: 19th May 2004 18:31 Edited at: 19th May 2004 18:33
UT3 is [edit]Direct3d. I dunno about the other questions.

OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 19th May 2004 18:40 Edited at: 19th May 2004 18:42
openGL can be used on different OS's, so theoretically at least Doom could be converted to the Apple and Linux with little bother.
With openGL you then need a library for sound, networking etc, whereas DirectX provides it all in one package.


The place for all great plug-ins.
Keep your friends close, and your cats even closer.
Ian T
22
Years of Service
User Offline
Joined: 12th Sep 2002
Location: Around
Posted: 19th May 2004 18:43
OpenGL is mutli-platform, DirectX is pure 3d.

They have different speeds because different engines specialize in different things, and it's not just sending the stuff to DirectX, the engines have to do a ton of complex object managment themselves. Some engines will also be optimized for newer versions of DirectX than others, allowing for new technology to be used. Yes, basically all engines use DX or OGL, it's stupid not too, you'd have to recreate these professional systems and code compatability for every bit of hardware by hand... that means that when new hardware comes out, your game won't support it!

Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 18:54
oke , but can DX and GL do the same stuff? or does DX have more features? or is it faster or something cuz it's used quite a lot.



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
hexGEAR
21
Years of Service
User Offline
Joined: 3rd Nov 2002
Location: Naytonia
Posted: 19th May 2004 19:01
Like TCA said,

Quote: "With openGL you then need a library for sound, networking etc, whereas DirectX provides it all in one package."


plus directX is updated periodically with new features, take the rescent pixel/vertex shaders for example.

They are both just api's (application programming interfaces) and you could make your own but why re-invent the wheel (and loose a lot of hair doing so) when you could use directX or openGL created by so many skilled programmers...

Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 19:09
lal didn't see that , why you guys thinkin I'm willing to make my own api ? so directX is easier to use than openGL and has more features, I guess I'll try DX then



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 19th May 2004 19:09
Natively DX has more features, although you could code most of them in openGL


The place for all great plug-ins.
Keep your friends close, and your cats even closer.
Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 19:11
, so what would you guys recommend to try first?



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 19th May 2004 19:14
Neither openGL or DirectX is nice to program, although I think DX is slightly easier.


The place for all great plug-ins.
Keep your friends close, and your cats even closer.
Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 19:21 Edited at: 19th May 2004 19:21
Quote: "Neither openGL or DirectX is nice to program"


there is no nice thing about programming, the only thing that's nice about it is that you can achieve nice things with it , or am I missing something ?

thanks guys



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
hexGEAR
21
Years of Service
User Offline
Joined: 3rd Nov 2002
Location: Naytonia
Posted: 19th May 2004 19:23
i'm using c++ and directX at the moment and i must say, using darkbasic initially has helped me a lot, which i guess is against the beliefs of some that think prior exposure to basic can hinder ones learning of c++ .

Someone on the forums once said:

Quote: ""making a game engine with c++ and directX is like raw coding every single function in dark basic""


and that's basically where i started from so now i created simple functions like:

loadObject(path);
textureObject(obj);
tailObject(cam,obj,dist,hgt);
fogType(typ);

etc to kinda mimic db functions, although there is a fair ammount of code behind these simple functions

Anyways i haven't used openGL but i have seen the code... some of the people i know say openGL is easier but i can't really comment 'cus i haven't tried it

Shadow Robert
21
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 19th May 2004 19:29
Do all engines use DirectX or OpenGL? - No

unreal 3 engine... does it make use of directX or openGL? - No, it actually uses both like Unreal Engine 2 & 1

why is it that some engines can draw more polys with the same speed etc.? - Better Pipeline programming

btw, what's the difference between directX and openGL? - Well if we wanted to get technical about it; we'd be here all day. However the glib overview is simply:
DirectX = Direct Access Library, OpenGL = Graphics Library

can DX and GL do the same stuff? or does DX have more features? - This is a tough question, in some respects yes, others no, and otheres yes & no.
Both Graphics API are capable of doing roughly the same basic things, however more complex things are generally omited from OpenGL to keep size down; meaning the programmer has to code them, such as Stencil Reflections. However other things like Shaders common to both are also done very differently to each other; For example to switch an ASM 1.0 Shader between D3D and OGL you have to transpose all the matrices.

OpenGL is better for cross-platforming and those who prefer to get thier hands dirty doing the meanial labour of creating CSG routines and such.
Direct3D is better for people who want a stable base which ports to every graphics card without problem.

Which is faster? Well that depends on which maker of graphics card you choose. Generally now, DirectX will be faster on alot of cards;
However there are really only 2 main card types out there worth paying attention to:
nVIDIA Geforce & ATi Radeon

Geforce is much faster in OpenGL
Radeon equally so in Direct3D

but that said the speed difference in general developers applications not those by seasoned professionals will be minimal.


The Future Looks Bright, The Future Looks Like a Short Fat Plumber From The Bronx
Kevin Picone
22
Years of Service
User Offline
Joined: 27th Aug 2002
Location: Australia
Posted: 19th May 2004 19:42
OpenGL & DX are abstraction layers that sit above the device drivers, they save programmers from direct hardware / or device level access. They do this by presenting the programmer with a consistent interface/environment. Without which, you would need to manually write code to drive each supported hardware device on their own. Obviously With devices like video cards, which all function radically differently, Doing this manually would be a night mare.

Kevin Picone
[url]www.underwaredesign.com[/url]
Play Nice! Play Basic
Mussi
21
Years of Service
User Offline
Joined: 27th Jan 2003
Location: Netherlands
Posted: 19th May 2004 19:45
@Hexgear,I was planning to do the same thing

it's possible to use both openGL and directX in the same app?

thanks for all the help guys!



Specs: AMD Athlon 1800, 256 DDRRam 266mhz, 80GB HD 7200rmp U133, Geforce 4 Ti4400 128mb
Jeku
Moderator
21
Years of Service
User Offline
Joined: 4th Jul 2003
Location: Vancouver, British Columbia, Canada
Posted: 19th May 2004 20:15
Having made games in both OpenGL and DirectX, I'd recommend DirectX as it has built-in capabilities for sound, online gaming, all joystick/keyboard support, 3D, etc. etc. etc.

One cool thing about OpenGL is that you can probably use it with *any* other language. For example I made a Tron Lightbikes game using OpenGL in Java for a programming class last Fall. That being said, I had to find other ways to play sound and show movies

I have a crappy memory, but as far as I know the order with with you draw the points in a polygon are opposite from OpenGL to DirectX.

Shadow Robert
21
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 19th May 2004 20:42
Yes it possible to not only use them as part of an application IE and ether/or Rendering Engine... but you can use them seemlessly at the same time.

There was a tech engine a while back (i forget where) that interchanged data between DirectX & OpenGL then rendered to the same Render Targets onscreen. Was slow as hell; but there were some impressive things done by swapping the data.

@Jeku: There is also a Direct3D library for Java as well. Though to be honest there is only one guy i've seen sucessfully use both OGL and/or D3D in Java at a decent enough speed for it to be useable.


The Future Looks Bright, The Future Looks Like a Short Fat Plumber From The Bronx
Phaelax
DBPro Master
21
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 20th May 2004 12:26 Edited at: 20th May 2004 12:29
Unreal, Glide baby!

Quote: ""With openGL you then need a library for sound, networking etc, whereas DirectX provides it all in one package.""


There's openAL for sound. TNL(Torque networking library) for networking. But I know what you mean.

"eureka" - Archimedes
Jess T
Retired Moderator
21
Years of Service
User Offline
Joined: 20th Sep 2003
Location: Over There... Kablam!
Posted: 20th May 2004 13:00
Quote: "Unreal, Glide baby!"


To answer the original question, no.

As previously said, you can code it all by hand, and waste a million years doing so, use D3D, OGL, *or* Glide... let's not forget about that.

Jess.


Team EOD :: Programmer/Logical Engineer/All-Round Nice Guy
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 20th May 2004 14:30
Quote: "let's not forget about that."

I think most people have - and with good reason : No longer used.


The place for all great plug-ins.
Keep your friends close, and your cats even closer.
Rob K
Retired Moderator
22
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 20th May 2004 15:10
The reason some engines are faster than others is simply the way in which they are coded.

Look at DBPro Patch 1 vs Patch 4. Same technology (DirectX 8.1), but radically different performance characteristics.

BlueGUI:Windows UI Plugin - All the power of the windows interface in your DBPro games. - Plus URL download, win dialogs.
Over 140 new commands
Arkheii
21
Years of Service
User Offline
Joined: 15th Jun 2003
Location: QC, Philippines
Posted: 20th May 2004 16:48
Is it possible to use OpenGL for the rendering and then use the rest of the DirectX lib at the same time for the other stuff, like sounds and input etc.?

Jess T
Retired Moderator
21
Years of Service
User Offline
Joined: 20th Sep 2003
Location: Over There... Kablam!
Posted: 20th May 2004 17:35
@TCA;
Yeah, I know lol.
But, one of my all tiem favourite games uses Glide2 for one of it's redering options ( you have the option of "Software", Glide1, Glide2, or D3D ). And that game is HardWar ( a 95 game, but still awesome ). It's a flight sim if anyone's interested Much like Freelancer, but not as indepth, and a fairly slower paced game.

Jess.


Team EOD :: Programmer/Logical Engineer/All-Round Nice Guy
OSX Using Happy Dude
21
Years of Service
User Offline
Joined: 21st Aug 2003
Location: At home
Posted: 20th May 2004 17:44
Quote: "Is it possible to use OpenGL for the rendering and then use the rest of the DirectX lib at the same time for the other stuff, like sounds and input etc.?
"

Raven has said it is possible...


The place for all great plug-ins.
Keep your friends close, and your cats even closer.
Shadow Robert
21
Years of Service
User Offline
Joined: 22nd Sep 2002
Location: Hertfordshire, England
Posted: 20th May 2004 20:09
Site's of interest:

http://udn.epicgames.com - Unreal Engine 1 ( OpenGL / DirectX )
ftp://ftp.idsoftware.com - Quake 1 (OpenGL/Software/Glide/DirectX), Quake 2 (OpenGL/Software + DirectX Multimedia), Quake 3 (OpenGL + DirectX Multimedia)
http://www.torque.com - Tribes 2 Engine (DirectX)

If any of you want to seriously pursue what you've asked, checkout those engines; as they're all free (to learn from) and you will learn alot over time using them.


The Future Looks Bright, The Future Looks Like a Short Fat Plumber From The Bronx
DSG
22
Years of Service
User Offline
Joined: 26th Aug 2002
Location: Hampshire, England
Posted: 20th May 2004 21:14
Quote: "Is it possible to use OpenGL for the rendering and then use the rest of the DirectX lib at the same time for the other stuff, like sounds and input etc.?"


Yes. In fact it is quite common for games that are using OpenGL for rendering graphics to also use DirectX for other tasks. For example, the Windows version of Quake3 uses DirectInput to handle game controls (the same is true for the upcoming ID title, ‘Doom3’).

It should be made clear that the classes that make up the DirectX package (DirectInput, DirectAudio, DirectPlay etc.) are separate components and function independently of each other.
Gery
20
Years of Service
User Offline
Joined: 24th Jan 2004
Location:
Posted: 23rd May 2004 02:39
-Cryterion Renderware
-Argonaut
-S3MeTaL

..
.
.ect.ect.ect

Ezerkilencszázhatvanba' / ördög szart a katlanba /aki először megszólal /azé lesz a katlan szar.
hexGEAR
21
Years of Service
User Offline
Joined: 3rd Nov 2002
Location: Naytonia
Posted: 23rd May 2004 04:35
Quote: "It should be made clear that the classes that make up the DirectX package (DirectInput, DirectAudio, DirectPlay etc.) are separate components and function independently of each other."


that's what makes game developement in c++ and directX so long and painfull... setting up each and every one independently before you can get started in the real game programming Although it's pretty rewarding to see your game up and running

flibX0r
21
Years of Service
User Offline
Joined: 14th Feb 2003
Location: Western Australia
Posted: 23rd May 2004 18:22
Quote: "unreal 3 engine... does it make use of directX or openGL? - No, it actually uses both like Unreal Engine 2 & 1"


And they are made over DirectX

Quote: "OpenGL is mutli-platform, DirectX is pure 3d."


You mean Direct3D is pure 3d. DirectX also had 2D, input, sound and lots over stuff

Login to post a reply

Server time is: 2024-09-22 00:29:36
Your offset time is: 2024-09-22 00:29:36