ATI cards

General discussion about Celestia that doesn't fit into other forums.
Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

ATI cards

Post #1by doctorjoe » 06.07.2005, 03:04

If you are handy with CVS and patching, you might try some of my bug fixes which seem to make celestia work much better on ATI cards.

http://www.gnacademy.org/twiki/bin/view ... Extensions

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: ATI cards

Post #2by t00fri » 06.07.2005, 17:04

doctorjoe wrote:If you are handy with CVS and patching, you might try some of my bug fixes which seem to make celestia work much better on ATI cards.

http://www.gnacademy.org/twiki/bin/view ... Extensions


DJ,

you said that you have a Dell C600 notebook. So do I. You said that your patches fix problems there. Which patch fixes which C600 problem?

I don't have discovered big problems with my Windows driver. I am using a Cygwin layer on top of XP which works excellently, since this way I can profit from both worlds : mobility, graphics & media from Windows and all the rest from Linux. The maximal graphics rendering path is low of course (multitexture only), hence no specs, no ring shadows...

But I cant' see real bugs! Under Linux the situation is quite different. The fglrx driver is still lousy (even the latest) and terribly slow ...

Bye Fridger

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

GL_MAX_TEXTURE_SIZE

Post #3by doctorjoe » 06.07.2005, 22:10

The basic issue is that my C600 sets the GL_MAX_TEXTURE_SIZE to 512 which is less than the size of many of the textures which are 1024x1024. As a result, rings and virtual textures will not work, and clouds will be rendered incorrectly. I know that I'm not the only one with this problem, as this is basically what causes "streaking" when you set the cloud speed.

Several of my patches split up the textures if they exceed the GL_MAX_TEXTURE_SIZE.

This actually has the indirect effect of helping high performance cards. Right now texture designers are limited to 1024 width textures for rings and virtual textures because that is the minimum for most cards. With my patches, you can create much bigger textures, and high performance cards will read them in in one command, whereas less high performance cards will automatically split up the textures into smaller chunks.

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: GL_MAX_TEXTURE_SIZE

Post #4by t00fri » 06.07.2005, 22:32

doctorjoe wrote:The basic issue is that my C600 sets the GL_MAX_TEXTURE_SIZE to 512 which is less than the size of many of the textures which are 1024x1024. As a result, rings and virtual textures will not work, and clouds will be rendered incorrectly. I know that I'm not the only one with this problem, as this is basically what causes "streaking" when you set the cloud speed.

Several of my patches split up the textures if they exceed the GL_MAX_TEXTURE_SIZE.

This actually has the indirect effect of helping high performance cards. Right now texture designers are limited to 1024 width textures for rings and virtual textures because that is the minimum for most cards. With my patches, you can create much bigger textures, and high performance cards will read them in in one command, whereas less high performance cards will automatically split up the textures into smaller chunks.


I am confused. With my C600 under Windows I get a correct rendering of clouds and rings within the multiview rendering path.

Which ATI driver are you talking about? Is it a Dell driver or not? Is it Linux? I will have to check, but I am quite sure that in my case GL_MAX_TEXTURE_SIZE is significantly bigger than 512 !? I use the latest Dell driver for the C600 card that is available on their site. The rendering as compared to earlier drivers has substantially improved more recently...My resolution on the C600 is 1400x1050.
I just read in another post of yours that your radeon card only has 16k. That may make the difference! Mine has 32k. But nowadays it is really VERY hard to get 16k cards anywhere ;-) . My C600 is already several years old...

On my Desktop machine (Linux), my GL_MAX_TEXTURE_SIZE is 4096, the rendering path is OpenGL 2.0 and I am constantly above 100 fps with fullscreen 1600x1200 , 32 color bitplanes, 4x antialias, etc. I am using up to 4k VT tile sizes with the best compromise being 2k.

So I guess I have little application for your enhancements there. But I am very interested to understand what you did really improve in case of the C600.

Addendum:
=======

Just checked my OpenGL info on the C600:

Renderer Radeon 7000 SWTCLx86/SSE
Version 1.3.4201 WinXP Release
Max simultaneous Textures 3
Max texture size 2048

So you see...

My Celestia corresponds to the latest CVS and is built with the VC++ .net

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Latitude C600

Post #5by doctorjoe » 07.07.2005, 03:44

Here are the specs for my computer from DELL

http://support.dell.com/support/edocs/s ... /specs.htm

The standard video card is 8M. The 16M card that I have is an upgrade.

I do know that Dell uses slightly different model numbers in different countries. Maybe what you call a C600 is not the same machine as what I call a C600.

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: Latitude C600

Post #6by t00fri » 07.07.2005, 07:57

doctorjoe wrote:Here are the specs for my computer from DELL

http://support.dell.com/support/edocs/s ... /specs.htm

The standard video card is 8M. The 16M card that I have is an upgrade.

I do know that Dell uses slightly different model numbers in different countries. Maybe what you call a C600 is not the same machine as what I call a C600.

We both own definiteley the ~same C600 Latitude notebook model. But you did not answer my above questions, concerning your max screen resolution, your OS and driver version (DELL version number, please)! I will check once more my card memory tonight, just to be sure. I am pretty positive that I also have the Rage 128 chip. They may have put in more memory, for people with 1400x1050 resolution. So what is it in your case?

In any case, according to the OpenGL info readout, my max texture size is 4x what you claim. What is your OpenGl version in the driver??

You see it strikes me quite a bit that you emphasize the necessity of your patches for a machine that I seem to own as well, but which --in my case-- does not seem to need such improvements (within its harware limitations, of course). So I am trying to find out what went wrong. I also run quite a few VT's from my 32k earth texture with a decent performance and no bugs in the display.

Also Chris was a bit concerned, it seems (from knowing how he usually tends to react ;-) )

Chris wrote:I've been busy with galaxy stuff, but I'll be able to take a look at it
tonight. I'm a little concerned that it introduces a lot of complexity in order to support some pretty old hardware.


With high probability he did NOT look at it "tonight" ;-)

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Dell specs

Post #7by doctorjoe » 07.07.2005, 15:41

Latitude C600 1024x768 XGA running Mandriva Linux Cooker.

16Meg texture and 8M (hard wired) AGP storage

xorg-x11 6.8.3 running latest open source dri drivers. OpenGL 1.2

As long as GL_MAX_TEXTURE_SIZE is over 1024, you won't run into huge problems, but once GL_MAX_TEXTURE_SIZE goes to 512, rings won't work, and clouds won't render properly. Judging from the posts, this isn't uncommon.

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Also keep in mind

Post #8by doctorjoe » 07.07.2005, 15:53

That my patches allow for unlimited size textures which should also improve things with any cards (not just low end ones).

ATI cards currently can't handle 4k textures

See

http://celestiaproject.net/forum/viewtopic.php?t=6012

http://celestiaproject.net/forum/viewtopic.php?t=6546

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: Also keep in mind

Post #9by t00fri » 07.07.2005, 16:26

doctorjoe wrote:That my patches allow for unlimited size textures which should also improve things with any cards (not just low end ones).

ATI cards currently can't handle 4k textures

See

http://celestiaproject.net/forum/viewtopic.php?t=6012

http://celestiaproject.net/forum/viewtopic.php?t=6546


As far as I know ellipsoids can take textures larger than the maximum size supported by hardware without any patching. Textures on irregular meshes are however limited by the hardware max size.

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Patches remove hardware limitation.....

Post #10by doctorjoe » 07.07.2005, 16:34

Exactly.....

My patches remove hardware limitations on rings, clouds, and virtual textures. With them you can have 128K ring and cloud textures, if that's what you want.

They may also remove limitations on other irregular objects, but I haven't checked to be sure. Also, I've only tested then using the basic rendering path. They need to be tested on a wide variety of hardware.....

Which is why I want then checked in.....

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: Dell specs

Post #11by t00fri » 07.07.2005, 16:42

doctorjoe wrote:Latitude C600 1024x768 XGA running Mandriva Linux Cooker.

16Meg texture and 8M (hard wired) AGP storage

xorg-x11 6.8.3 running latest open source dri drivers. OpenGL 1.2

As long as GL_MAX_TEXTURE_SIZE is over 1024, you won't run into huge problems, but once GL_MAX_TEXTURE_SIZE goes to 512, rings won't work, and clouds won't render properly. Judging from the posts, this isn't uncommon.


OK thanks for the additional info. I am still at work, but will compare in detail later. One point is clear: The xorg ATI drivers are still WAY slower and less advanced than their XP counterparts. In my office desktop (2.8GHz P4) I have a Radeon 9200 SE/32k card. Since the desktop is dual boot(XP/Linux), I can compare the drivers directly. Actually, I thought we are still at xorg-6.8.2 NOT 6.8.3 as you stated!? I even checked at the xorg site...

I do have xorg-6.8.2 in any case ;-) . The most recent xorg radeon driver for my 9200se got me now one render path up (OpenGL Vertex Program) so I can see Saturn's ring shadows and specs etc. It's already OpenGL 1.3.x standard, while you still claim OpenGL 1.2 with the latest xorg driver for the r128?? Strange...In any case as I wrote above, the XP driver for the r128 definitely has OpenGL 1.3.x.

Anyhow, also with the ATI driver in my office machine I see no apparent bugs in the displays. The max texture size is also 2048 and 4 simultaneous textures are supported.

One upshot of my forum experiences is that many people who report ATI artefacts are often using outdated openGL drivers.

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Post #12by t00fri » 07.07.2005, 18:37

Now I read everything out of my DELL notebook:

I actually have the Latitude C610 that has a PIII-Mobile /1GHz CPU, 1GB RAM.

The video system is SXGA+

ATI Mobility RADEON M6P,
4xAGP

16MB Video memory (so I have even less than I remembered) but my max texture size is 2048, with 3 simultaneous textures (cf. also above)

I checked it again: my Celestia performance is very smooth and has no visible display bugs.

+++++++++++++++++++
So we have both only 16MB video memory, yet your opengl 1.2 driver offers only 1/4 of my max texture size!?
+++++++++++++++++++


Could it be that your original display problems were just due to a bad Linux driver for your card ...?

My guess would be that the percentage of people e.g. here in the forum that only have a max texture size of 512 available is REALLY low.

Topic author
doctorjoe
Posts: 76
Joined: 23.05.2005
With us: 19 years 6 months
Location: Austin, Texas

Drivers

Post #13by doctorjoe » 07.07.2005, 19:20

I'm using the latest open source linux drivers that are available from Mandriva cooker. Kernel 2.6.12 and xorg 6.8.2 dri.

In any event, even a max buffer of 2048 will benefit from my patches, if you try to load in a 4096 cloud or ring texture.

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Re: Drivers

Post #14by t00fri » 07.07.2005, 19:40

doctorjoe wrote:I'm using the latest open source linux drivers that are available from Mandriva cooker. Kernel 2.6.12 and xorg 6.8.2 dri.

In any event, even a max buffer of 2048 will benefit from my patches, if you try to load in a 4096 cloud or ring texture.


My 2k clouds are still the best ;-) used many thousands of times since ~ 3years ...Despite my respectable graphics card performance I am still using them, too...

Now after Cassini's recent discovery of these subtle gravitational wobble effects from moons etc in the Saturn rings, we might indeed get ready to move on from essentially 1d ring profiles to full ring textures ...Then there might be an application for bigger-sized ring textures...

Bye Fridger

steffens
Posts: 162
Joined: 06.11.2003
With us: 21 years
Location: RP Germany

Post #15by steffens » 08.07.2005, 07:16

t00fri wrote:I actually have the Latitude C610 that has a PIII-Mobile /1GHz CPU, 1GB RAM.

The video system is SXGA+

ATI Mobility RADEON M6P, 4xAGP

[...]

+++++++++++++++++++
So we have both only 16MB video memory, yet your opengl 1.2 driver offers only 1/4 of my max texture size!?
+++++++++++++++++++


A Mobility RADEON is not the same as a Rage128, which is somewhat older. If he says the max texture size for his system is 512 it might be a good idea to just believe him :wink:
I do think that lifting unnecessary limitations is a good idea.

steffens

Avatar
t00fri
Developer
Posts: 8772
Joined: 29.03.2002
Age: 22
With us: 22 years 8 months
Location: Hamburg, Germany

Post #16by t00fri » 08.07.2005, 08:15

steffens wrote:
t00fri wrote:I actually have the Latitude C610 that has a PIII-Mobile /1GHz CPU, 1GB RAM.

The video system is SXGA+

ATI Mobility RADEON M6P, 4xAGP

[...]

+++++++++++++++++++
So we have both only 16MB video memory, yet your opengl 1.2 driver offers only 1/4 of my max texture size!?
+++++++++++++++++++

A Mobility RADEON is not the same as a Rage128, which is somewhat older.
...
steffens


Of course I know that. I should have become apparent from what I wrote, since I distinguished between the 'r128' and 'radeon' driver modules. What gave rise to some suspicion was that

i) with the same total 16MB memory my Radeon chip leads to 4 times his max texture size. He can only use the 'Basic' render path, it seems... That seemed a bit too much of a difference between a C600 and a C610..

ii) ALL up-to-date OpenGL drivers now offer OpenGL 1.3.x while his driver still is on 1.2.

iii) Unlike the case with NVIDIA drivers, The DRI Linux drivers are really far behind the (native) ATI drivers for Windows.

Bye Fridger


Return to “Celestia Users”