single-precision with opengl and ati cards

Bug #514018 reported by ertecs
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Panda3D
Fix Released
Medium
rdb

Bug Description

using Windows 7 (64 bit) and ati cards (maybe intel too), the floats are only single-precision after the code line
import direct.directbase.DirectStart
This results in different computation results depending on the graphics card. I want to state again, that opengl is used.
Bug still exists in 1.7

shortest possible example:
1.0/3.0
import direct.directbase.DirectStart
1.0/3.0

Tags: ati float opengl
Revision history for this message
Treeform (starplant) wrote : Re: [Bug 514018] [NEW] single-precision with opengl and ati cards

This is very odd behavior from openGL. But this is Windows 7. Why do
you need 64 bit precision?

On Thu, Jan 28, 2010 at 1:53 PM, ertecs <email address hidden> wrote:
> Public bug reported:
>
> using Windows 7 (64 bit) and ati cards (maybe intel too), the floats are only single-precision after the code line
> import direct.directbase.DirectStart
> This results in different computation results depending on the graphics card. I want to state again, that opengl is used.
> Bug still exists in 1.7
>
> shortest possible example:
> 1.0/3.0
> import direct.directbase.DirectStart
> 1.0/3.0
>
> ** Affects: panda3d
>     Importance: Undecided
>         Status: New
>
>
> ** Tags: ati float opengl
>
> --
> single-precision with opengl and ati cards
> https://bugs.launchpad.net/bugs/514018
> You received this bug notification because you are subscribed to
> Panda3D.
>

Revision history for this message
rdb (rdb) wrote :

Note that this is probably an issue in the video card driver, not in
panda. Some drivers can force the gpu in single-precision mode if the
opengl support simply wraps around their dx support.

On 1/29/10, Treeform <email address hidden> wrote:
> This is very odd behavior from openGL. But this is Windows 7. Why do
> you need 64 bit precision?
>
> On Thu, Jan 28, 2010 at 1:53 PM, ertecs <email address hidden> wrote:
>> Public bug reported:
>>
>> using Windows 7 (64 bit) and ati cards (maybe intel too), the floats are
>> only single-precision after the code line
>> import direct.directbase.DirectStart
>> This results in different computation results depending on the graphics
>> card. I want to state again, that opengl is used.
>> Bug still exists in 1.7
>>
>> shortest possible example:
>> 1.0/3.0
>> import direct.directbase.DirectStart
>> 1.0/3.0
>>
>> ** Affects: panda3d
>>     Importance: Undecided
>>         Status: New
>>
>>
>> ** Tags: ati float opengl
>>
>> --
>> single-precision with opengl and ati cards
>> https://bugs.launchpad.net/bugs/514018
>> You received this bug notification because you are subscribed to
>> Panda3D.
>>
>
> --
> single-precision with opengl and ati cards
> https://bugs.launchpad.net/bugs/514018
> You received this bug notification because you are subscribed to
> Panda3D.
>

--
Sent from my mobile device

Revision history for this message
ertecs (pbrandes) wrote :

latest video card drivers are installed. We'll try to reproduce this with a different engine, to see if the problem is panda specific.
We have encountered the error because time.time() doesn't even return the correct second, although our calculations need the time in ms.
I'll post the results here soon

Revision history for this message
ertecs (pbrandes) wrote :

took some time. Kind of reminded us why we chose panda3d and not something else.
At least with ogre it seems to work. Everything is as it is supposed to be.
Any way we can help you fix this? Any more information we can provide?

Revision history for this message
rdb (rdb) wrote :

Ah, okay. If Ogre3D doesn't have this problem, it must mean it's a problem in Panda3D.

I've done some investigation. I may have a clue what's going on, can you try putting the following in Config.prc?
request-dxdisplay-information #f

For the record, a related forum thread:
http://www.panda3d.org/phpbb2/viewtopic.php?t=5565

Revision history for this message
ertecs (pbrandes) wrote :

sry, didn't mean to offend you.
We tried setting the value and at least for 1.7.0 we are pretty optimistic that it can be fixed that way. It now also works with Direct X (which it didn't before).
With 1.6.2 this problem persists, even if the value is set accordingly. But I think we can live with that.
Thanks for your help.

rdb (rdb)
Changed in panda3d:
assignee: nobody → rdb (rdb)
importance: Undecided → Medium
milestone: none → 1.7.1
status: New → Fix Committed
rdb (rdb)
Changed in panda3d:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.