Hi all, first of all sorry for my English.
I'm having a few troubles rendering to texture in DirectX. It seems like it does not use zdepth information when rendering to texture. For example, a mesh is painted overlaying other mesh that should be in front of first one.
If I render directly in backbuffer, everything is painted ok.
The code is pretty simple:
// Creation
ITexture *tex = driver->addRenderTargetTexture (size,"rtBackbuffer", ECF_A8R8G8B8);
.....
.....
driver->setRenderTarget (tex, true, true, SColor (255, 255, 255, 255));
smgr->drawAll ();
driver->setRenderTarget (0, true, true);
renderQuad (tex);
I hace searched in the forum, but I only found this:
http://irrlicht.sourceforge.net/phpBB2/ ... ndertarget
And nobody answered.
Thanks a lot for your help.
ZDepth information is missing when Render To Texture
It would be related with my problem:
http://irrlicht.sourceforge.net/phpBB2/ ... ht=zbuffer
I'm using Irrlicht 1.7.1. Have been fixed?
http://irrlicht.sourceforge.net/phpBB2/ ... ht=zbuffer
I'm using Irrlicht 1.7.1. Have been fixed?
It's strange, the problem is at AntiAlias in SIrrlichtCreationParemeters. When AntiAlias is off, renderbuffer it's OK, when it's on, renderbuffer ignores zbuffer.
Another problem: I tried to render with OpenGL and I have the same problems tha this guy: http://irrlicht.sourceforge.net/phpBB2/ ... ure+format
I will try going back to 1.7.0 version.
Another problem: I tried to render with OpenGL and I have the same problems tha this guy: http://irrlicht.sourceforge.net/phpBB2/ ... ure+format
I will try going back to 1.7.0 version.
Sorry for posting so late, I have been very busy working.
The example I use to reproduce the it's the same as writtern in first post. Just creating two spheres and render them using render buffers. Then using a textured quad to represent the scene.
My graphic cards are dual 9600GT in SLI mode.
Device is created with these parameters:
param.WindowId = w_handle;
param.DriverType = EDT_OPENGL;
param.AntiAlias = 8;
param.Stencilbuffer = true;
irr_device = createDeviceEx (param);
The example I use to reproduce the it's the same as writtern in first post. Just creating two spheres and render them using render buffers. Then using a textured quad to represent the scene.
My graphic cards are dual 9600GT in SLI mode.
Device is created with these parameters:
param.WindowId = w_handle;
param.DriverType = EDT_OPENGL;
param.AntiAlias = 8;
param.Stencilbuffer = true;
irr_device = createDeviceEx (param);
I had similar troubles.
Currently, we can't have antialiasing when rendering to a rendertarget.
A program reproducing the error should:
-enable the antialiasing
-create a render texture
-load a model and enable the antialiasing to its materials.
-Render to the RTT
-Render the RTT to the screen.
Currently, we can't have antialiasing when rendering to a rendertarget.
A program reproducing the error should:
-enable the antialiasing
-create a render texture
-load a model and enable the antialiasing to its materials.
-Render to the RTT
-Render the RTT to the screen.
"There is nothing truly useless, it always serves as a bad example". Arthur A. Schmitt