irrRenderer 1.0

Announce new projects or updates of Irrlicht Engine related tools, games, and applications.
Also check the Wiki
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: irrRenderer 1.0

Post by ent1ty »

christianclavet wrote:Hi, Been checking the shaders, and it was really instructive! There is a lot to learn there! I think it the first solid reference on GLSL shaders (on Irrlicht) I've seen since a very long time.
Will have to check how to update your normal shader to provide a spec map to it and it will be almost perfect for me. :)

Can the transparent_alpha shader can support partially transparent textures (like glass)?
I saw this in the code:

Code: Select all

if(color.a < 0.5) discard; //a transparent pixel
So it would discard pixel after they reach half transparency?
Partially transparent materials are available in the git repo on bitbucket (see the screenshot a few posts up about soft particles) but I want to improve a couple more things before an official binary release. What you're seeing right now is the transparent reference material, see the API documentation
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
devsh
Competition winner
Posts: 2057
Joined: Tue Dec 09, 2008 6:00 pm
Location: UK
Contact:

Re: irrRenderer 1.0

Post by devsh »


Not while using it. That is against the standard, even if depth writes have been turned off, and only happens to work on nvidia.

So for things like soft particles you do need it separately.
let me call out bullshit, we have soft particles too! (but we leave the depth buffer unattached!)

so you never need to do a separate Zpass/write to another channel in a GBuffer
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: irrRenderer 1.0

Post by hendu »

So your soft particles are slower, because you have to do a manual discard instead of using the fast Z-buffer hardware. Sure it's possible, but not necessarily smart.
superpws
Posts: 18
Joined: Mon Mar 31, 2014 6:47 am
Contact:

Re: irrRenderer 1.0

Post by superpws »

Since I'm compiling it with current SVN Irrlicht, it didn't compile and gave those errors of deprecated functions. (wonder how would shaders work when passing parameters as index?). Anyway, good project. I'll wait for 1.9 support.
IRC: #irrlicht on irc.freenode.net
Github: https://github.com/danyalzia
Homepage: http://danyalzia.com
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: irrRenderer 1.0

Post by ent1ty »

IIRC those are just warnings. Compiles fine here with trunk (the linux binaries in the zip archive were compiled with it btw)
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
devsh
Competition winner
Posts: 2057
Joined: Tue Dec 09, 2008 6:00 pm
Location: UK
Contact:

Re: irrRenderer 1.0

Post by devsh »

I grab the depth buffer directly.. convert it to linear depth
then bind it with the color buffer
render particles (have both linear depth in a texture and depth buffer for early Z)
user-r3
Posts: 70
Joined: Tue Dec 07, 2010 4:09 pm

Re: irrRenderer 1.0

Post by user-r3 »

Ahoy there,

I really like what I'm seeing right there, marvellous job (that I could never accomplish :lol: )

Anybody already got experiences on implementing in in a rather large irrlicht project?
May try this in the next couple of days (after making a backup^^), but I wanted to ask whether someony already did so?

Have a great day!
superpws
Posts: 18
Joined: Mon Mar 31, 2014 6:47 am
Contact:

Re: irrRenderer 1.0

Post by superpws »

ent1ty wrote:IIRC those are just warnings. Compiles fine here with trunk (the linux binaries in the zip archive were compiled with it btw)
Oh right, I had SDL checks enabled in Visual Studio project configuration which treats such warnings as errors. It compiles fine now. Just asking, what are the differences in your implementation of normal/Parallax mapping and irrlicht's implementation?
IRC: #irrlicht on irc.freenode.net
Github: https://github.com/danyalzia
Homepage: http://danyalzia.com
hendu
Posts: 2600
Joined: Sat Dec 18, 2010 12:53 pm

Re: irrRenderer 1.0

Post by hendu »

devsh wrote:I grab the depth buffer directly.. convert it to linear depth
then bind it with the color buffer
render particles (have both linear depth in a texture and depth buffer for early Z)
Oh, I misunderstood you before. So actually we're just arguing whether to use MRT or to blit it.

With MRT you have some overdraw and more efficient write, with a blit no overdraw but it's an additional drawcall.
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: irrRenderer 1.0

Post by ent1ty »

superpws wrote:[...] what are the differences in your implementation of normal/Parallax mapping and irrlicht's implementation?
Well, you get infinite light sources (irrlicht normal/parallax has 2), an improved lighting algorithm ("logarithmic attenuation" edit: the axis labels appear to be on the other way around) and in the possibly foreseeable future dynamic shadows.
user-r3 wrote:Anybody already got experiences on implementing in in a rather large irrlicht project?
May try this in the next couple of days (after making a backup^^), but I wanted to ask whether someony already did so?
All you need to do is call MaterialSwapper->swapMaterials() once your whole scene has been set up and you should be good to go.



Guys, any chance you could stop hijacking this thread :P
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
user-r3
Posts: 70
Joined: Tue Dec 07, 2010 4:09 pm

Re: irrRenderer 1.0

Post by user-r3 »

Wow, thanks for the reply, that really is easy :D

After trying it, my first impression:

-looking good in general
-darker than vanilla rendering?
-easy per pixel lighting :)
-still no normal mapping for animated meshes? Well at least ppl :)

I may play around with it a bit more tomorrow/in the next couple of days.

Thanks again.
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: irrRenderer 1.0

Post by ent1ty »

user-r3 wrote:still no normal mapping for animated meshes? Well at least ppl :)
There is a normal map material for animated meshes, see http://www.fi.muni.cz/~xkrupick/irr/doc ... e22b4d2444
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
user-r3
Posts: 70
Joined: Tue Dec 07, 2010 4:09 pm

Re: irrRenderer 1.0

Post by user-r3 »

ent1ty wrote:There is a normal map material for animated meshes, see http://www.fi.muni.cz/~xkrupick/irr/doc ... e22b4d2444
Well... thanks, but in this case I have no idea how to use it... :lol:

I load the normalmap in the texturelayer 1 like this:

Code: Select all

node->setMaterialTexture(1, driver->getTexture("gfx/Normal.png"));
node->setMaterialType(Renderer->getMaterials()->NormalAnimated);
However, normalmapping does not work - it looks as flat as always :/
If I use the same normalmap for my level scenenodes (which usually use a different one^^) it works like a charm (without setting normalanimated as the material, this breaks the effect)

Also I've noticed some ...zbuffer-problems? Where I could see parts of meshes glitching through other parts covering them... I hope this is understandable.

Sincerely
ent1ty
Competition winner
Posts: 1106
Joined: Sun Nov 08, 2009 11:09 am

Re: irrRenderer 1.0

Post by ent1ty »

I'll check on this, but the fact that the tangent is approximated (probably not in a completely mathematically correct fashion) in code should be kept in mind.
user-r3 wrote:Also I've noticed some ...zbuffer-problems? Where I could see parts of meshes glitching through other parts covering them... I hope this is understandable.
Any screens? irrRenderer lets Irrlicht do the z-ordering and drawing from front to back. Could it be your mesh is messed up?
irrRenderer 1.0
Height2Normal v. 2.1 - convert height maps to normal maps

Step back! I have a void pointer, and I'm not afraid to use it!
user-r3
Posts: 70
Joined: Tue Dec 07, 2010 4:09 pm

Re: irrRenderer 1.0

Post by user-r3 »

ent1ty wrote:I'll check on this, but the fact that the tangent is approximated (probably not in a completely mathematically correct fashion) in code should be kept in mind.
Thanks, if you could build a very simple example of irrRenderer, only with a cube or something, as an animated mesh, with a normal texture, maybe this could help either
show that it isn't working
or show how it is done correctly :)
ent1ty wrote:Any screens? irrRenderer lets Irrlicht do the z-ordering and drawing from front to back. Could it be your mesh is messed up?
In order to not give away to much information about my project (Mr. Paranoid here) I've cropped some screens, so they only show the problem:
-Irrlicht vanilla shows it as it should be rendered (but with some strange normalmapping effects)
-I like your renderer more :)
-Yes, problems in my scene could be, I also wanted to switch to using a scene file instead of one huge mesh, when finally creating a nice level, or redoing my debug levels.
Image

Thanks alot :)
Post Reply