Page 2 of 3

Posted: Tue Nov 29, 2005 1:16 am
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?

Posted: Tue Nov 29, 2005 3:13 am
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++

Posted: Tue Nov 29, 2005 7:21 am
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.

Posted: Tue Nov 29, 2005 10:58 am
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

Posted: Tue Nov 29, 2005 12:32 pm
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.

Posted: Tue Nov 29, 2005 1:10 pm
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.

Posted: Tue Nov 29, 2005 2:51 pm
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.

Posted: Tue Nov 29, 2005 3:05 pm
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

Posted: Tue Nov 29, 2005 5:28 pm
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.

Posted: Tue Nov 29, 2005 11:01 pm
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

Posted: Mon Dec 12, 2005 10:26 am
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 ?

Posted: Mon Dec 12, 2005 12:32 pm
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

Posted: Sat Dec 24, 2005 5:39 am
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?

Posted: Sat Dec 24, 2005 10:37 am
by GvG
AFAIK, SDL-based programs already work on ReactOS. However, the goal is to support ALL Windows applications, including DirectX based ones.

Posted: Wed Dec 28, 2005 9:15 pm
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!