OpenGL & DirectX (ReactX) (split).

Here you can discuss ReactOS related topics.

Moderator: Moderator Team

wolvenwraith
Posts: 8
Joined: Sun Nov 28, 2004 9:36 am

Post by wolvenwraith »

imo, opengl is better than directx. However that may be, my opinion is likely biased as I love cross-compatibility and I have experience with programming in OpenGL.

Anyways, I highly recommend this book for would-be OpenGL game programmers.

http://glbook.gamedev.net/oglgp.asp

There are also three other books by the author, which I have yet to read.

http://glbook.gamedev.net/

The best resource for learning cross-platform OpenGL code that I have ever stumbled across in my life is the following website.

http://nehe.gamedev.net/

Some of these resources, such as the book, touch lightly on DirectX programming. DirectX however is so rugged and hoaky imo. I don't like it.

Naturally, these are all based on C/C++, which is what you want to use for any game. Don't even think about doing it in VB or anything else higher level, unless it's an extremely simply game who's performance you couldn't care less about.

edit: does that answer your question Floyd?
Floyd
Posts: 300
Joined: Sat Nov 27, 2004 7:45 am
Location: The frozen part of the USA

Post by Floyd »

wolvenwraith wrote: edit: does that answer your question Floyd?
i thank you for the links, it's always good to have resources like those.

i would think, just because of its age and cross-platform compatibility that opengl would be a preferred renderer and i like that it's not controlled by microsoft (which at times gets prissy about "its standards" but doesn't seem to respect anyone else's--like shipping NT, 2000 and XP with opengl 1.2 and never updating it in service packs).

it seems funny to me that warcraft3 has a direct3d and opengl renderer; just launch it with the -opengl switch (for the mac port). always seemed kind of pointless to have two renderers (same with diablo 2).
(shrug)
wolvenwraith wrote:imo, opengl is better than directx. However that may be, my opinion is likely biased as I love cross-compatibility and I have experience with programming in OpenGL.
....

The best resource for learning cross-platform OpenGL code that I have ever stumbled across in my life is the following website.

http://nehe.gamedev.net/

Some of these resources, such as the book, touch lightly on DirectX programming. DirectX however is so rugged and hoaky imo. I don't like it.
I'm thinking of auditing an opengl course this spring. it'll be a crash course to be sure, as i'm ok with the basics of C/C++ (like for, whiles, function calls, very basic class formations) but not with things like structs, arrays and pointers (god do pointers ever confuse the everloving snot out of me) and zero experience with matrices (though one of the profs said he'd give me a crash course in matrices on the side--good guy).

but i'm hoping that once i take the class that it'll cover the basics of opengl but also for c/c++
pax mei amici amorque et Iesus sacret omnia
oiaohm
Posts: 1322
Joined: Sun Dec 12, 2004 8:40 am

Post by oiaohm »

Becareful Jaix.

You having taking section out of context.

http://www.winehq.org/site/status_porting

Makes a good read under Mingw and Cygwin

Notice anything strange. D3d and Dinput and the like to build for windows. And will work. Problems are lack of sub systems. These sub systems have to build anyhow.

Wined3d module will have to be replicated.

From a percent point of view most likely 70% of a direct X system exists. Subsystem parts are missing.

Could some one inside reactos update the OS list of wine with what builds under reactos/for reactos.
Yann64
Posts: 40
Joined: Fri Nov 26, 2004 9:07 pm
Location: France

Post by Yann64 »

oiaohm wrote:From a percent point of view most likely 70% of a direct X system exists.
A lot of work has been done concerning Direct3D and DirectX in general. Check the latest WineHQ newsletter for more information :

http://www.winehq.org/?issue=299#WineD3 ... ectX%207/8
oiaohm
Posts: 1322
Joined: Sun Dec 12, 2004 8:40 am

Post by oiaohm »

I should be more Exact about 70% of a usable directX system for reactos exists I guess. Sub system work is required to make it functional.
ScoTTie
Posts: 165
Joined: Fri Feb 04, 2005 9:40 am

Post by ScoTTie »

I was under the impression that most of WINE's DirectX code was unusable with ReactOS. Isnt that why GreatLord is coding it from scratch.

See Jaix's quote of GreatLord.

As i understand WINE reimplements DirectX using OpenGL. While this approach would work in ReactOS, the developers have opted to do it the 'proper' way and actually clone DirectX as a whole.
GvG
Posts: 499
Joined: Mon Nov 22, 2004 10:50 pm
Location: The Netherlands

Post by GvG »

ScoTTie wrote:As i understand WINE reimplements DirectX using OpenGL. While this approach would work in ReactOS, the developers have opted to do it the 'proper' way and actually clone DirectX as a whole.
Your understanding is correct :) DirectX is mostly implemented by the video drivers. We can re-use the video drivers from the manufacturers, Wine can't. This should result in better performance for ReactOS.
oiaohm
Posts: 1322
Joined: Sun Dec 12, 2004 8:40 am

Post by oiaohm »

GreatLord is recoding a partical section from what I have seen.

wined3d. The fake subsystem. This lib cannot be ported to windows without major pain. Rebuild this section linking to the drivers and we are almost their. Even twist the Wine code a little.

DirectX is not only Direct 3d & Direct Draw. Music section should be a direct transfer once we have working sound drivers. Ie Wine loads sound drivers in a simpler way to windows and direct X sound uses this the same way.

GvG
We can re-use the video drivers from the manufacturers, Wine can't. This should result in better performance for ReactOS.
Wine has built is own video card driver. Reason some programs try linking past direct X to the driver. Ie wined3d the god dam driver.

Lot of programs will break without the other parts of directX
GreatLord
Developer
Posts: 926
Joined: Tue Nov 30, 2004 10:26 am
Location: Sweden

Post by GreatLord »

We take part of wine directx that we can. Part that have been taken is dsound, dplay, dinput. But I did need write a layer betwin wine dsound and windwos then we can use wine dsound in windows and reactos. in software mode. I have not done the layer to bind to the hardware acclaction of dsound. I got some reason not todo it for now (no time todo it).

Wine directDraw and D3d will not been port to ros or windows by me. see older three of this issues. why. I, drfred, alex, and one more is helping alot with directdraw and d3d getting the user dll working in windows. next step is to bugfix win32k and finish the implenetions there. When it comes to reactos I do not know. for we all do not have time to coding on directx so much we realy want of diffent issue.
reactux
Posts: 55
Joined: Tue Nov 29, 2005 10:12 pm

Post by reactux »

open-gl is widely used...
there is even some very advanced open-sources games in open-gl...
mabe you can look at their sources...
nexuiz is an example
RandomMe
Posts: 8
Joined: Mon Dec 12, 2005 10:14 am

Post by RandomMe »

Won't users be able to download the directx package from microsoft ?

I know, the goal is to be totally independent of microsoft. But as long as there isn't an open alternative, would it work ?
TOTMS
Posts: 112
Joined: Thu Sep 29, 2005 3:00 pm
Location: London, UK
Contact:

Post by TOTMS »

RandomMe wrote:Won't users be able to download the directx package from microsoft ?

I know, the goal is to be totally independent of microsoft. But as long as there isn't an open alternative, would it work ?
In theory, as long as we can get native driver support then yes :p
stmok
Posts: 3
Joined: Sun Apr 24, 2005 3:43 am
Location: Sydney, Australia

Post by stmok »

Have you folks considered SDL? (Simple DirectMedia Layer)
=> http://www.libsdl.org/index.php

Its, in the most simplified way to say it, an open-source solution which is almost like DirectX in purpose. The difference here is, its free and multi-platorm.

Simple DirectMedia Layer supports Linux, Windows, BeOS, MacOS Classic, MacOS X, FreeBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. There is also code, but no official support, for Windows CE, AmigaOS, Dreamcast, Atari, NetBSD, AIX, OSF/Tru64, RISC OS, and SymbianOS.

Would this work for ReactOS?
GvG
Posts: 499
Joined: Mon Nov 22, 2004 10:50 pm
Location: The Netherlands

Post by GvG »

AFAIK, SDL-based programs already work on ReactOS. However, the goal is to support ALL Windows applications, including DirectX based ones.
x86a
Posts: 3
Joined: Wed Dec 28, 2005 8:06 pm

Post by x86a »

If you`re palnning to create an rpg (ex. Final Fantasy) there is this one:
Sphere
" Ever had that perfect plot idea for an RPG but didn't have the programming knowledge to create it? Enter Sphere. Sphere is a console-style RPG engine that allows others to create an RPG similar to Final Fantasy, Dragon Quest, or Phantasy Star.
"
You don`t have to know C++ or Basic you only have to know how to operate the engine!
Post Reply

Who is online

Users browsing this forum: DotBot [Crawler] and 52 guests