Irrlicht Performance (sucks?)

If you are a new Irrlicht Engine user, and have a newbie-question, this is the forum for you. You may also post general programming questions here.
Guest

Irrlicht Performance (sucks?)

Post by Guest »

Hi there!
i just noticed that irrlichts performance is really disappointing.

i did a test with a few box-models and now have a look at this:

with stencil shadows:
Image

without stencil shadows:
Image

without any boxes at all:
Image


why in the world is there such a heavy FPS impact only because these few ultra-low-poly models? :?
Robomaniac
Posts: 602
Joined: Sat Aug 23, 2003 2:03 am
Location: Pottstown, PA
Contact:

Post by Robomaniac »

As I said in another thread, most of the overhead is dealing with cpu transofmrations and the cpu to gpu transfer. Irrlicht is most likly assuming that each frame the box position changes, and it sends a new vertex buffer (if it even uses vertex buffers :S) to the gpu. Along with doing some 3D math on the cpu (vector normalization, etc), this produces the bottleneck you're seeing.
The Robomaniac
Project Head / Lead Programmer
Centaur Force
Guest

Post by Guest »

sorry didnt see your thread :)

now, is there a way to turn off these cpu transformations? so that there is a way to tell irrlicht that these boxes are only static geometry? i dont know for sure, but i guess irrlicht nx++ has something like this.

ps: no irrlichts opengl mode does not use vertex buffers i guess.
Robomaniac
Posts: 602
Joined: Sat Aug 23, 2003 2:03 am
Location: Pottstown, PA
Contact:

Post by Robomaniac »

now, is there a way to turn off these cpu transformations? so that there is a way to tell irrlicht that these boxes are only static geometry? i dont know for sure, but i guess irrlicht nx++ has something like this.
Unfortunately No, and the way that irrlciht handles large geometry, it needs a way :). Most likely you're only gonna move the terrain or bsp once, so it only needs to send once. Of course, using vertex buffers and their dx eqivalent would help.

I would suggest using nx++, mm765 is making a lot of changes to the renderer
The Robomaniac
Project Head / Lead Programmer
Centaur Force
Guest

Post by Guest »

i would change immediately but unfortunately i have the following problems:

1. i never get it to compile with devc++ and i dont have money for msvc
2. i dont really know what exact changes where made to the engine (i´ve heard that my code would need some transformation)
3. the documentation is really confusing
4. the forums are somehow empty :)

but i take another look at it now, thx for the info :o
Guest

Post by Guest »

lol this problem is somehow related to my box-models. i have loaded trees with 300 times more polygones and even they dont do such an fps impact *lol* wtf

sorry for confusing u guys :)
Guest

Post by Guest »

1. i never get it to compile with devc++ and i dont have money for msvc
Then you're in luck: MSVC 6.0 is free now.
Guest

Post by Guest »

what? why? where?! W00T ?!!!

is it even free for commercial use? where can i download it ?

WTF !!! :D THX for that information!!
phrounz
Posts: 45
Joined: Thu Feb 10, 2005 11:45 am
Location: France
Contact:

Post by phrounz »

You cannot expect from a free engine to be as powerful as an engine like the one in Half-Life 2 or Doom 3. The Irrlicht engine is free and it's already a great thing.

For the stencil shadows, I dunno how it works, but you could try to use black flat surfaces instead (it's just an idea).
Guest

Post by Guest »

You cannot expect from a free engine to be as powerful as an engine like the one in Half-Life 2 or Doom 3
lol thats no excuse that there is a framerate loss of 400fps when drawing a few ultra-low-poly boxes my friend :)

could it be that this "mvc++ 6.0 is free now" thing is a lie? i cannot find anything about that in the net :?
mm765
Posts: 172
Joined: Fri May 28, 2004 10:12 am

Post by mm765 »

let me try to clear up some things for you .
1. nx++ uses vertexbuffers for static nodes in opengl
2. nx++ also has a patch included that cuts off the unneded transformations (if a node is not moved)
3. i dont think the documentation is bad but im afraid its not that easy to find due to a somehow bad organisation of the website (and some idiots who delete the mainpage of the wiki at least once a week). see http://www.irrlichtnx.mmdevel.de/newwik ... rogrammers
also many of the irrlicht-tutorials have been converted and are also included in cvs/download versions so it should be pretty easy to spot the differences.
4. free msvc: i havent heard of msvc6 being free now but theres a free msvc compiler toolkit which doesnt include an ide but can be used with relo or others.
you should take a look at the license though to see if its ok for you to use it.
5. Devc++: dont know what to say really because it always worked for me (by just downloading devc++, fresh cvs download of nx++, open project, compile, ready) will try again this evening to see if anything changed ...
Guest

Post by Guest »

the current nx version does not make troubles with devc++ but older ones made many, so i gave up trying :) i also found the documentation after a while.

now i got irrlicht nx and all example apps to compile but ....

what i surely dont like is how irrlicht nx++ works since i have to change a lot of my code ( why is createImageFromFile not working anymore? )

and why is IrrlichtNX.dll 11mb big :shock: thats 10 times more than my Irrlicht.dll :(

but i still try out irrlicht nx at the moment :)
mm765
Posts: 172
Joined: Fri May 28, 2004 10:12 am

Post by mm765 »

createimagefromfile is (as all methods that load something from disk) in the resourcemanager.

the library builds in debug mode by default thats why its so big. release dll size is 1.x mb (dont know the exact size)
Guest

Post by Guest »

Guest

Post by Guest »

Q:What is the Visual C++ Toolkit 2003?
A:The Visual C++ Toolkit is a free edition of Microsoft's professional Visual C++ optimizing compiler and standard libraries--the same optimizing compiler and standard libraries that ship in Visual Studio .NET 2003 Professional!

Q:Are there any restrictions on how I use the Visual C++ Toolkit?
A:In general, no. You may use the Toolkit to build C++ -based applications, even commercial applications, and you may redistribute those applications in accordance with the terms of the End User License Agreement (EULA).

Q:Is there any technical support available for the Visual C++ Toolkit?
A:No. The Visual C++ Toolkit is a free download and is provided without formal technical support. Documentation for the Visual C++ compiler is available online, and it is recommended that further assistance be obtained by posing questions in online programming newsgroups and community forums.


In other words: you can use it to create anything you like, even commercial stuff, but don't expect support.
Post Reply