April 20, 2024, 06:37:53 AM

News:

Own IWBasic 2.x ? -----> Get your free upgrade to 3.x now.........


3d Opengl

Started by maurice1, December 26, 2006, 10:57:11 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

maurice1

Hi, I just purchased Ebasic and I was wondering what sort of existiing and planned support for 3d opengl functionality if any is intended within Ebasic.

I saw Jonathan (zumwalt) Wood's post at http://www.ionicwind.com/forums/index.php/topic,1254.0.html. Is this intended as a free library? Is there any documentation for its use (especiialy for amateur programmers like me)?
Maurice

J B Wood (Zumwalt)

This is not open GL, this is Direct X v8.1 interface.
3Impact is a 3'rd party direct X interface with a go live date of April 25'th of 2007 for DX9 interface. They have been using dx8 for a very long time.
As far as 3d integration, as far as I am aware (and paul can correct me if I am wrong), there is a chance of the direct x to be ported to EBasic, but I am not 100% certain on that, its built in to Aurora though.

The 3Impact libarary costs $99 (last time I looked) for a full license. (only license they offer now)
If you take a look at the inc file that is in the project that I created for EBasic, you can find several hundred commands in there, and it has built in physics (ODE physics), I know how to wrap the Newton physics (have done it for Aurora)

Currently EBasic has 2d built in.
Paul can chime in on if 3d will make the cut or not as built in.

J B Wood (Zumwalt)

Side note, opengl32.dll is the dll you need to use for built in opengl.
I have all the vb6 class files with all method definitions for it. I'll see what I can convert to EBasic.
This will give me a good excuse to figure out how to create native lib files.

maurice1

Thanks for the replies Jonathon.

In your opinion which would be better to learn, Opengl or Direct X?

I trialled the Ibasic Learner Edition before buying Ebasic so I have had a little experience with its built in 3d functions. Unfortunately for a novice like me it was difficult to follow the relatively limited documentation. Do you have any suggestions to learn using opengl or direct X apart from followiing the examples in forums?
Maurice

Barney

If you plan to use your 3D applications in Vista be warned that Vista's OpenGL support is nonexistent. Perhaps it will be supported by the graphics cards manufacturers i.e. through the graphics drivers but it's all a bit muddy at the moment. DX applications will work.

Barney

J B Wood (Zumwalt)

December 28, 2006, 06:09:29 AM #5 Last Edit: December 28, 2006, 06:14:27 AM by Jonathan (zumwalt) Wood
Asside from OpenGL disappearing in future versions of Windows (beyond XP, its noted as going into a black hole), OpenGL will probably be in use on the Linux systems when those are implimented,  however, on Windows, I would suggest DirectX only because of forward compatibility. Anything you write for an XP machine using DirectX should (and so far does work for me) in Vista.

DirectX really is the 3d gaming platform of choice. Not only that, there are tons of other 'wrappers' for DirectX already out there that combines graphics, physics and networking in one package (meaning a DLL you can use), one such of many animals is 3Impact, but again, those are 'tools' to use to make games, not compilers. EBasic and Aurora are compilers that can use those tools as long as you write or find an interface like the one I provided.

I wrote an interface not only for EBasic, but also Aurora, which is hiding around here somewhere. Which reminds me, I need to post the Aurora build of the interface on my webspace now that it is cleaned up some.

Actually, I recommend you download the project for the 21 blackjack example I posted on here. It uses the 2d built in interface that already exists in EBasic. The difference between 2d and 3d is the extra 'space' to work in. If you are new to game programming, it is MUCH easier to start in 2d and work out a game, then write a game that is 3d. Both 2d and 3d are limitless on there environments, the scope is different since in 2d you only have X and Y coordinates, in 3d you have X,Y,Z coordinates. Both have the W coordinate (which is time, but not displayed as such, long story, very confusing and drawn out)

Start with sprites, and work your way from there. With 2d, you have all the tools you need with just Windows and EBasic. With 3d, you need modler applications, need to know rigging, rendering, heck the list is huge, I have over $5,000 worth of software to make 3d games and I have to many projects started in numerous languages to even begin to describe the issues.

Mike Stefanik

Quote from: Barney on December 28, 2006, 04:45:06 AM
If you plan to use your 3D applications in Vista be warned that Vista's OpenGL support is nonexistent. Perhaps it will be supported by the graphics cards manufacturers i.e. through the graphics drivers but it's all a bit muddy at the moment. DX applications will work.

By default, OpenGL support in Vista is limited, and implemented as wrapper around the DirectX API. My understanding is that nVidia and ATI were going to release an OpenGL driver that supports acceleration, however the last time I checked there seemed to be some confusion over whether or not they would support desktop compositing (in other words, work with the Aero Glass interface). In any case, if it is offered, it's something that the user would have to download seperately from the manufacturer of the video card you're using.

Bottom line, the safest bet is to use DirectX if your application is going to be running on Vista. If you don't, and the user doesn't have an accelerated OpenGL driver installed, your program is going to take a big performance hit. Because other software which uses DirectX will run normally, the user will most likely just presume it's a problem with your software.
Mike Stefanik
www.catalyst.com
Catalyst Development Corporation

joeb

Under EBasic you could import a lib or 2 for OPENGL and use it correct? Say GLUT and OPENGL32?
You would just need an understanding of both in order to get the correct DECLAREs. Also knowledge of 3D programming,modeling and advanced math.

But it could be done.

As far as it going away in Vista... If I recall it wasn't part of XP either. I think it depends on the chip manufacturers and Sun and you could always include a distro with game.

Please correct me if I'm wrong before I step out of my league and got to NeHe tutorialshttp://nehe.gamedev.net/ and attempt converting them.

Joe

Ionic Wind Support Team

Yes it just needs conversions.
Ionic Wind Support Team

kryton9

This link might help anyone interested in ebasic and opengl.

http://www.codingmonkeys.com/index.php?topic=860.0

maurice1

So, just out of curisoity, has anyone tried the OpenGl code by Todd Riggins, Jolly_Roger and others on Vista?
Do they run and if so, is there really a performance hit? Is it the consensus to use direct X instead of OpenGl?
Maurice

Barney

OpenGL stuff runs under Vista without problems. The only requirement is that the driver supplied by the manufacturer of your graphics card  supports it. Drivers offered by out-of-the-box Vista do not support OpenGL. I am running Vista since beta days and yes, there were problems with OpenGL but once ATI developed proper driver I never had any problems. Speed and quality is basically the same as DirectX stuff.

Barney

Brice Manuel

Quote from: Barney on July 28, 2007, 07:44:02 AMOpenGL stuff runs under Vista without problems. The only requirement is that the driver supplied by the manufacturer of your graphics card  supports it. Drivers offered by out-of-the-box Vista do not support OpenGL.
This isn't a Vista issue, as its with XP and all previous versions of Windows.  Windows only ships with software rendering for OpenGL.  If you want hardware rendering, you actually need to download the current drivers for your video card.

This is a good thing.  I would much rather have the OpenGL drivers provided by somebody who knows what they are doing than have them provided by Microsoft.

The problem people run into is they don't go to the site of the video card maker to download the driver updates and instead download the driver updates from the MS site which usually only provide for software rendering from OpenGL.

Steven Picard

August 02, 2007, 08:25:28 PM #13 Last Edit: August 02, 2007, 08:27:04 PM by Steven Picard
Quote from: Barney on July 28, 2007, 07:44:02 AM
OpenGL stuff runs under Vista without problems. The only requirement is that the driver supplied by the manufacturer of your graphics card  supports it. Drivers offered by out-of-the-box Vista do not support OpenGL. I am running Vista since beta days and yes, there were problems with OpenGL but once ATI developed proper driver I never had any problems. Speed and quality is basically the same as DirectX stuff.

Barney
Actually, ATI has the worst support for OpenGL.  It does not support some simple and many advanced OpenGL functions (for example its shader support is terrible.) Nvidia is a far better choice if playing newer OpenGL games is important. 

Barney

Interesting... You've just heard ATI is bad with OGL or you know it for sure? I've been using ATI cards for the last 7-8 years and never, ever had problems with OGL. Just fitted new ATI 2900 HD card few weeks ago and it's working great, no matter what kind of software I run. Games or professional 3D stuff, DX or OGL, they all run flawlessly and IMHO the machine behaves better with ATI than with nVidia 8800. But as usual with everything in life, your mileage may differ.

Barney

Brice Manuel

QuoteInteresting... You've just heard ATI is bad with OGL or you know it for sure?
Ask on any Linux board and you will get a lot of first-hand experience horror stories ;)

Barney

Quote from: Brice Manuel on August 03, 2007, 05:07:07 AM
Ask on any Linux board and you will get a lot of first-hand experience horror stories ;)
I believe we were talking about Windows OS's, not Linux. As far as gaming goes I am not interested in Linux at all.

Barney

Brice Manuel

Quote from: Barney on August 03, 2007, 03:52:56 PMI believe we were talking about Windows OS's, not Linux. As far as gaming goes I am not interested in Linux at all.
The ATI+OpenGL issues are just as well known for Windows as Linux.  Its an OpenGL issue not a pltaform issue.  OpenGL is a cross-platform API.

If you want to get platform specific, it is probably worse for Windows, especially since being bought by AMD.  Here is one link from last year listing some crucial OpenGL problems.

Things really haven't progressed much in the past year.  I feel really sorry for all of the people who bought 64bit notebooks with the intent to run XP 64 or Vista 64 only to find out that ATI still does not provide 64bit drivers for the Mobility Radeon chipset.