I never caught this before. On my machine with windows Vista home Premium(graphics NVidia9600GT), D3D works perfect with irrlicht. If I try to use OGL, it won't draw, though the consoles show no errors. If I get rid of the "Aero" theme in Vista, OGL works fine. Any ideas.
Also, on the same machine. For some reason, the "Shaders" example doesn't work properly. It has the same OGL problems as above, but if I say "yes" to high level shaders, the shaders don't work. The console says "ps_1_x is no longer supported; use /Gec in fxc to automacally upgrade to ps_2_0". It never did this on my laptop with the onboard NVidia 7900. But then, if I say "no" to the high level shaders, the example suddenly works perfectly.
Just to clarify, other games work fine, including a small game I had made using vanilla OpenGL. In fact, Vista automatically changes the Theme to "Basic" but it won't do that for Irrlicht apps for some reason.
I'm using Irrlicht 1.4.1 apps that were already compiled.
Strange Errors on Vista
-
- Posts: 1638
- Joined: Mon Apr 30, 2007 3:24 am
- Location: Montreal, CANADA
- Contact:
That one of the problem with vista, is the fixed pipeline shading and basic shaders don't work on that platform. (I think the XP version won't work also since the update of directX 9.0c - ps 1.x was removed, if I remember correctly (so not supported by latest releases of directx 9.0)
You can still use it by using your own shader (hlsl or glsl if your using OPENGL). (ps v2.0+)
For fixed pipeline functions, it's the reflective and transparent reflective that mostly don't work. (still render better on XP)
I'm wondering if that can be worked out (rewriting or adding a specific "shader" portion that specific to Vista in the Library...) and fixing the "shader" demo so it now work with shader v2.0 instead of v1.0
Any "expert" programmer running IRRlicht on Vista?
You can still use it by using your own shader (hlsl or glsl if your using OPENGL). (ps v2.0+)
For fixed pipeline functions, it's the reflective and transparent reflective that mostly don't work. (still render better on XP)
I'm wondering if that can be worked out (rewriting or adding a specific "shader" portion that specific to Vista in the Library...) and fixing the "shader" demo so it now work with shader v2.0 instead of v1.0
Any "expert" programmer running IRRlicht on Vista?
-
- Posts: 277
- Joined: Thu Dec 15, 2005 6:11 pm
As far as versions of shaders, aren't they backwards compatible? So like the code that is currently used specifies it wants version 1.1. But if you specified 2.0 instead, wouldn't this get rid of the error, and allow the same "high level shader" code to be used? I don't much about shaders though, so I may be completely off with this idea, but it seems like when Irrlicht first got the majority of its shaders, the newer versions didn't even exist yet.
-
- Posts: 1638
- Joined: Mon Apr 30, 2007 3:24 am
- Location: Montreal, CANADA
- Contact:
No I don't think they are fully compatible. Shaders V2, and V4 (Also there a V4! version) V2 introduced lots of changes. IRRlicht at the moment is 100% compatible with the old DirectX9.0c (Before they removed the 1.0 shaders from the latest DX releases) in Windows XP or Win 2000.
At the moment, you have not 100% compatibility using IRRlicht with DX on Vista and the latest release of DX on XP (Pretty good, but the changes Microsoft made, had removed some compatility with the newest OS's releases). If you use shaders V2 you will still be very compatible with the newest MS OS'es versions tought.
Not heard of any plan to increase DX compatibility yet. (There so much to do!) Since IRRlicht is multi platform, if you need most of the features of the display, I suggest you use OPENGL first (As I think the first effort is going there, then it's going for DX after)
At the moment, you have not 100% compatibility using IRRlicht with DX on Vista and the latest release of DX on XP (Pretty good, but the changes Microsoft made, had removed some compatility with the newest OS's releases). If you use shaders V2 you will still be very compatible with the newest MS OS'es versions tought.
Not heard of any plan to increase DX compatibility yet. (There so much to do!) Since IRRlicht is multi platform, if you need most of the features of the display, I suggest you use OPENGL first (As I think the first effort is going there, then it's going for DX after)
-
- Posts: 277
- Joined: Thu Dec 15, 2005 6:11 pm