Which OpenGL feature/extension for EMT_REFLECTION_2_LAYER?

You are an experienced programmer and have a problem with the engine, shaders, or advanced effects? Here you'll get answers.
No questions about C++ programming or topics which are answered in the tutorials!
Post Reply
Agent_X
Posts: 41
Joined: Sun Sep 16, 2012 3:44 am

Which OpenGL feature/extension for EMT_REFLECTION_2_LAYER?

Post by Agent_X »

I've looked through the source code but I can't find the answer. I need to know which OpenGL feature/extension/function is used for EMT_REFLECTION_2_LAYER. If someone can at least give me a nudge in the right direction for me to find the answer on my own, it would be much appreciated.
Agent_X
Posts: 41
Joined: Sun Sep 16, 2012 3:44 am

Re: Which OpenGL feature/extension for EMT_REFLECTION_2_LAYE

Post by Agent_X »

Wow I'm really stumped. On the Intel Q45/Q43 Express video card, EMT_REFLECTION_2_LAYER works correctly for both EDT_DIRECT3D9 and EDT_BURNINGSVIDEO, but not for EDT_OPENGL. To check and see if such a feature was even supported on the card I installed the OpenGL Extension Viewer (http://www.realtech-vr.com/glview/).

I would think EMT_REFLECTION_2_LAYER uses GL_REFLECTION_MAP_ARB or GL_REFLECTION_MAP_NV both of which are supported on this lame video card. We have two kiosks that I need this to work on by next week; both have the Intel Q45/Q43 Express video card and I doubt our small I.T. department will upgrade the video cards any time soon. I have the latest drivers installed (10/4/2012) from Intel's site. I can't imagine this not being supported since it works on some much older hardware that I've tested it on at home (GeForce 5500 to be exact).

I would just use EDT_DIRECT3D9, but since I.T. upgraded these machines to Windows 7 x64 Enterprise (from Windows 7 x86 Professional) my dx9 version (32 bit?) of Irrlicht doesn't work. It compiles fine, but when I run it some kind of "Can't create Direct3d9 driver" error shows in the console window and then it crashes.
Agent_X
Posts: 41
Joined: Sun Sep 16, 2012 3:44 am

Re: Which OpenGL feature/extension for EMT_REFLECTION_2_LAYE

Post by Agent_X »

On further investigation it appears that the Intel Q45/Q43 video card does support EMT_REFLECTION_2_LAYER and EMT_SPHERE_MAP (which was also not working earlier). I have recompiled Irrlicht and compiled the Demo. When I run Demo.exe and select OpenGL, the Sydney model with the sphere map on it displays correctly. So now I think it might be something to do with EMF_NORMALIZE_NORMALS which the demo does (but my program doesn't). As an aside, my program renders correctly on all tested ATI and NVidia video cards, just not this Intel. So I will try adding EMF_NORMALIZE_NORMALS.
Last edited by Agent_X on Tue Jul 01, 2014 2:31 pm, edited 1 time in total.
Agent_X
Posts: 41
Joined: Sun Sep 16, 2012 3:44 am

Re: Which OpenGL feature/extension for EMT_REFLECTION_2_LAYE

Post by Agent_X »

Wow...tough crowd in here.

So after reaching a dead-end yet again, I've decided to just forgo trying to figure out why EMT_REFLECTION_2_LAYER doesn't work on an Intel Q45/Q43 using OpenGL but EMT_SPHERE_MAP does. I downloaded the 1.7 Ogre Demo and noticed reflection/environment mappings works just fine under OpenGL, so it must be a flaw somewhere in Irrlicht. I don't have the time or inclination to change to Ogre; I like Irrlict and I'm sticking with it.

So I guess I'll figure out how to compile a 64-bit version of Irrlicht for dx9...

Hey moderators, feel free to delete this entire discussion I had with myself :lol:
hybrid
Admin
Posts: 14143
Joined: Wed Apr 19, 2006 9:20 pm
Location: Oldenburg(Oldb), Germany
Contact:

Re: Which OpenGL feature/extension for EMT_REFLECTION_2_LAYE

Post by hybrid »

Well, two problems here with your "discussion", and why it probably got no answers from someone else. First is that you speculate about "extensions", which are absolutely not required or used in the engine, so even the first post was quite problematic to understand where you want to go. Second, and probably more severe, is that you never stated any reason why you think you have a problem at all. Just saying "not working here" does not really help to get an understanding of the situation you're facing.
To give you an insight into the engine code for this particular material: Yes, we see some problems in our regression tests with this OpenGL version of the material. I've never suceeded to get this properly working, even though I tried it pretty often. Even worse, it sometimes works and sometimes not. Anyway, it gives some wobbling texturing which might be good enough for certain purposes, so it's only marked as "not fully working".
Agent_X
Posts: 41
Joined: Sun Sep 16, 2012 3:44 am

Re: Which OpenGL feature/extension for EMT_REFLECTION_2_LAYE

Post by Agent_X »

My apologies, hybrid...humbly. I'm not versed in OpenGL which is why I use engines like Irrlicht/SDL/jMonkey/etc. Excluding all posts after the first, I was simply wanting to know what GL_ARB_blah_blah "feature" (if any) was being utilized for EMT_REFELCTION_2_LAYER. I call it a feature/extension because that's what the OpenGL Extension Viewer calls it. My thought process was to see if the video card in question even supported the OpenGL "feature" used for EMT_REFLECTION_2_LAYER. If I'm understanding you correctly, you are saying that the EDT_OPENGL device doesn't actually use any of theses features/extensions, just your own functions/methods using plain 'ole OpenGL?

As an aside, it would seem that the problem was not with Irrlicht or the Intel driver. After stubbornly refusing to give up, I went and got the Windows 7 Enterprise x64 disk from I.T. and did a clean reinstall...and guess what? IT WORKED! The reflection layer rendered properly using EDT_OPENGL. Perhaps one of the guys in I.T. improperly installed the driver...but honestly I'll never know. This is why I wish I could just be given admin rights and do the stuff myself. I NEVER EVER have these kinds of problems at home on my PC.

Anyway...once again, please accept my humble and sincere apology. :oops: :oops: :oops:
Post Reply