Horde3D

Next-Generation Graphics Engine
It is currently 02.05.2025, 14:56

All times are UTC + 1 hour




Post new topic Reply to topic  [ 29 posts ]  Go to page Previous  1, 2
Author Message
 Post subject:
PostPosted: 25.01.2008, 08:52 
Offline

Joined: 25.01.2008, 08:45
Posts: 11
Location: Germany
Hi guys,
I just ran into the same issue. I compiled everything from scratch and initialized ogl by myself. Now the engine starts up and renders the animated helmet&sword. The knight's body or particles can't be seen. According to the logfile there were no problems linking the shaders. So Im kinda lost. Any directions on where I should start debugging the materials/shaders? Or am I screwed by the driver?

My system specs:
- Vista Ultimate x64
- Radeon 2900HD & Catalyst 7.12
- Intel Core2Quad & 4gb ram
- VS 7.1

:: edit: uploaded screenshots & log ::

http://devel.g0dsoft.com/gfx/EngineLog.html

Image
Image

:: edit: chicago, uploaded screenshots & log ::

The chicago sample suffers from the same issue I guess:

http://devel.g0dsoft.com/gfx/EngineLog2.html

Image
Image


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 25.01.2008, 12:44 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
Hi,

thanks for the screenshots and the logs. The problem is not a Horde bug but the ATI drivers for the HD2000 series which are still very buggy.

Other people have similar problems:

http://www.opengl.org/discussion_boards/ubbthreads.php?ubb=showflat&Number=231479&Board=11&fpart=all&gonew=1#UNREAD

Could you please try to install the new Catalyst 8.1 to see if anything has improved? If that isn't the case we need to send a bug report to ATI.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 25.01.2008, 16:21 
Offline

Joined: 25.01.2008, 08:45
Posts: 11
Location: Germany
Hey there,

yes, it's the same problem with the catalyst 8.1 drivers.

To sum it up:
- Horde3d + SDL doesnt start up.
- Handling the opengl init with Horde's win32 functions gives the above result(screenshots).
- Horde3d + GLFW gives identical results(screenshots). [Found a demo of Horde3d+GLFW here in the forums]

Looks like the bug report is the only hope.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 25.01.2008, 23:27 
Offline

Joined: 25.01.2008, 22:40
Posts: 3
I'm new to the Horde3D community. I've got the same problem on my ATI x600 card, and now I managed to solve.
I use the suggestion from marciano to exclude SDL opengl init and make horde3dutils handle this. There's another step to make: it seems that passing HDC as an int is not a good idea for wgl implementation on ati driver. So change initOpenGL int parameter to HDC and switch from int to HDC and HGLRC for _hDC and _hGLRC respectively in Horde3dUtils namespace
This make it run. Now I have another problem (the knight is not render as expected, i think something wrong with material) but it's late now, i have to sleep!
Hope this help

_________________
Fulvio Esposito


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 25.01.2008, 23:30 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
Fulvio wrote:
I use the suggestion from marciano to exclude SDL opengl init and make horde3dutils handle this. There's another step to make: it seems that passing HDC as an int is not a good idea for wgl implementation on ati driver. So change initOpenGL int parameter to void* and change _hDC e _hGLRC type from int to HDC and HGLRC respectively.

GLFW does this a lot more reliably than SDL, and works on linux and Mac - so building the platform support from scratch is not necessary.

Edit: I assume DazKind means that GLFW gives the same results as manually initialising OpenGL.


Last edited by swiftcoder on 26.01.2008, 13:32, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 26.01.2008, 10:58 
Offline

Joined: 25.01.2008, 22:40
Posts: 3
Quote:
GLFW does this a lot more reliably than SDL, and works on linux and Mac - so building the platform support from scratch is not necessary.

I don't know GLFW, but dazKind seems to make a test with GLFW and got the same result. I don't know why SDL fail to initializate opengl on ati, The problem with horde3d support initializing opengl is a cast from HDC to int and vicecersa. I just wanna see the example, if you rewrite it with GLFW and it'll work on my pc, thanks a lot :D

_________________
Fulvio Esposito


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 26.01.2008, 15:15 
Offline

Joined: 25.01.2008, 08:45
Posts: 11
Location: Germany
Thanks for your time guys.

@Fulvio: Search the forums for GLFW, someone posted a working demo that uses Horde + GLFW.

swiftcoder wrote:
Edit: I assume DazKind means that GLFW gives the same results as manually initialising OpenGL.

Precisely. Judging from my tests I think it's related to the driver.

We have 3 ways to init opengl: SDL, GLFW and doing it via Horde3DUtils(aka the manual way).

SDL: returns false in Renderer::init() due to a lower reported ogl version(<2.0)
GLFW & Horde3dUtils: engine starts and thinks ogl v2.0 is supported but the rendering is completely mixed. There is the paralax-mapped floor and HDR lighting but the vertex skinning is screwed as if it's not supported. Maybe that's related to the VertexAttribArrays. I'm not a ogl-guru so that's a shot in the dark.

Anyway it shouldnt matter what way you use to init OGL.
Using SDL, GLFW or handling it manually should give you the very same results. Or what do you guys think? Should I file a bug report for ati?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 27.01.2008, 02:51 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
dazKind wrote:
Using SDL, GLFW or handling it manually should give you the very same results. Or what do you guys think? Should I file a bug report for ati?

I concur - ATI's drivers seem buggy in general.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 28.01.2008, 17:52 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
@dazKind: Does the initialization with the new 0.14 (GLFW based) version work correctly now?

If that's the case and there are no shader errors/warnings in the log I would also advocate to file a bug report to ATI. That's the only chance to get rid of these problems (hopefully) soon. You can use the 0.14 SDK as reference for the report.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 29.01.2008, 07:21 
Offline

Joined: 25.01.2008, 08:45
Posts: 11
Location: Germany
The initialization of 0.14 works fine.

Here's the log:
http://devel.g0dsoft.com/gfx/EngineLog3.html

Unfortunately, the problem persists. I filed the bug 2 days ago. Let's hope it finds its way into the right hands at ATI.


Top
 Profile  
Reply with quote  
PostPosted: 05.04.2008, 02:15 
Offline

Joined: 05.04.2008, 02:06
Posts: 1
Horde3D 0.15 - ATI HD2900XT with Catayst 8.3 still has no skinned meshes.
A few shaders fail validation according to the log:
Code:
0.469    Compiling shader context parallax.shader.xml--->LIGHTING
0.484    [Linking]

Fragment shader(s) linked, vertex shader(s) linked.
 Validation failed - samplers of different types are bound to the same texture image unit.

0.484    Compiling shader context parallax.shader.xml--->AMBIENT
0.484    [Linking]

Fragment shader(s) linked, vertex shader(s) linked.
 Validation failed - samplers of different types are bound to the same texture image unit.

0.516    Compiling shader context skinning_metal.shader.xml--->LIGHTING
0.547    [Linking]

Fragment shader(s) linked, vertex shader(s) linked.
 Validation failed - samplers of different types are bound to the same texture image unit.

Is this still considered an ATI driver bug or shader code error? Just curious...


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: 05.04.2008, 17:48 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
I get the same warnings on a X1600 but the samples are working without problems on that card (except that they are much slower than with older drivers). I noticed the warnings before but couldn't find a reason for them. So I still think the skinning issue is a driver bug. I contacted ATI today. Let's see if they will give some feedback.


Top
 Profile  
Reply with quote  
PostPosted: 05.04.2008, 20:57 
Offline

Joined: 22.11.2007, 17:05
Posts: 707
Location: Boston, MA
rompa wrote:
A few shaders fail validation according to the log:
Code:
0.469    Compiling shader context parallax.shader.xml--->LIGHTING
0.484    [Linking]

Fragment shader(s) linked, vertex shader(s) linked.
 Validation failed - samplers of different types are bound to the same texture image unit.
If we really are overlapping texture units, we are probably causing software fallback, which would explain my abysmal performance.

@marciano: Do you think there is any chance that the shader binding code is overlapping the texture units?


Top
 Profile  
Reply with quote  
PostPosted: 06.04.2008, 15:12 
Offline
Engine Developer

Joined: 10.09.2006, 15:52
Posts: 1217
swiftcoder wrote:
@marciano: Do you think there is any chance that the shader binding code is overlapping the texture units?


I just checked that. I think this thread explains the reason for the warning:

http://lists.apple.com/archives/mac-opengl/2006/Oct/msg00030.html

The problem is that I can't set the uniform before the program is linked but the validation is already happening during linking. So this warning is completely pointless. The uniforms are set correctly after linking so I'm quite sure that no software fallback is happening.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 29 posts ]  Go to page Previous  1, 2

All times are UTC + 1 hour


Who is online

Users browsing this forum: No registered users and 48 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group