Hydrax performance


20-10-2008 12:37:26

We've been using Hydrax in our project and we're very pleased with the visual results.
However, using Hydrax has been a very large performance hit for us.

Are there any tricks to speed up performance?
Which effects have most impact on performance? If reflection is one of them, is it possible to disable just that?


20-10-2008 13:03:46

I made some trying on that.

I test projected grid, with vertex the most performance killer is the grid complexity.
with rtt is the scale.

these are the parameters which, in my opinion, with these two methods of rendering, kill performance.

You can try to use my modified update method (you can find it in another thread in this forum). Also you can try to resume a discussion by ahmedismaiel.

http://www.ogre3d.org/phpBB2/viewtopic. ... &start=550

he want make hydrax more fast for application that need only an "eye-candy" beautiful water. If I have understand good, he wanted vertex calculation were made by gpu instead of cpu.


20-10-2008 15:34:26

1. Yes, first you should create ripples on GPU instead of on CPU.

2. However, the fastest (without any change) is to reduce the water complexity, reduce the render texture size for everything - you can modify it in real time using Editor. Turn on rtt debugging for FPS counter display or edit the editor to always display FPS.

However, I do find this library to be nothing short of amazing. :)


20-10-2008 20:16:16

Netskate: Thanks for the suggestion. I'll look into that soonish.
Syedhs: 1. didn't seem to impact performance that much, but maybe it's just our situation. 2. helped a bit.
I'll probably need to do some more research why I'm getting so little performance gain after applying 1 and 2 as especially 2 had a very noticeable performance gain in the editor.


21-10-2008 09:28:48

Aboit performance there're a lot of things that you can do(Just play with the editor), if you're using the projected grid, be sure having "ForceRecalculateGeometry" option disable.
You can try to disable choppy waves and decrease the grid complexity, anyway it's possible that the problem is in your depth calculations due to a big batch count or something like that(Hydrax has to render the same scene for 3 times: refraction, reflection, depth and a four time for your main viewport).
Another way of increase fps is disabling some components(like foam).


P.D.: Debug window in the editor allow you to show current fps but due to RBGui and dinamic textures performance is very poor with the debug window opened.