Jump to content

Water, how?


Guest
 Share

Recommended Posts

Hello, all I'm wanting to do is create a small pond.

 

The waterplane, fills the entire screen which is not needed for. I tried looking through the code to reduce the size but I can't, I looked through blender.bmx played around with code, but can't get it to only fill a small space, LUA script has nothing to do with size either, i have leadwerks 2.4. I don't even need an advanced water system, it just need to be simple, reflections is nice but not absolute. Just want some dam water, in unity3d we can just simply place a water object and change the size, depth, whatever.. But I'm trying leadwerks, since it is nice, please don't make me go back to unity3d, but if such a simple thing like "water" can't be properly done I will be forced to.. -__-

Link to comment
Share on other sites

Make the terrain about 100 meters lower than sealevel and you can make islands and lakes wherever you want with the terrain editor.

 

I already do this, however i conducted some tests as well.

 

I sculpted all land to be higher than waterplane, and only little portion in middle which is lower (is the pond), and it still produces big CPU usage, even with ONLY that tiny pond in the middle revealing the waterplane I drop from 28fps to 21fps, and if i reveal the entire waterplane i still use 21fps.

 

Which leads me to believe, even when the waterplane is out of sight, calculations are still being done on all the hidden parts. Because I even tried this, have a massive terrain over the entire waterplane, so no water is seen on map, and still 21fps.

Link to comment
Share on other sites

There might be somekind of temporary bug in the engine which makes all textures reduce the FPS by 1000 or more when the camera is closer than 1 units. I've seen the same in the the latest game I am writing, and I think Leadwerks can examine and fix it.

It's also reported in the bug tool, which is releated to decals performance.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

I already do this, however i conducted some tests as well.

 

I sculpted all land to be higher than waterplane, and only little portion in middle which is lower (is the pond), and it still produces big CPU usage, even with ONLY that tiny pond in the middle revealing the waterplane I drop from 28fps to 21fps, and if i reveal the entire waterplane i still use 21fps.

 

Which leads me to believe, even when the waterplane is out of sight, calculations are still being done on all the hidden parts. Because I even tried this, have a massive terrain over the entire waterplane, so no water is seen on map, and still 21fps.

The water plane uses occlusion culling. If the waterplane is hidden behind terrain or anything else, the reflection won't be drawn.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

Ok I print-screen to show you:

 

Waterplane hidden = low Y axis, and high terrain ground

Waterplane hidden is the same calculation amount as small amount displayed (same FPS), this obviously mean the entire waterplane is being rendered all the time, not just revealed parts:

 

deletemeleadwerksbug.jpg

Link to comment
Share on other sites

I get some different results with the ATI 3870 in the machine I am on now. What GPU do you have? The performance seems very slow for such a simple scene, which makes me think it might be a SM3 card with no support for occlusion queries?

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

to me that looks right as the last pic is not flat

you got a small hill with shadows now so it using a few fps

 

as josh said what GPU you using

Asus ROG STRIX B350-F GAMMING

AMD Ryzen 7 1700x

32 gb ddr4

15 TB raid 5 HD

Nvidia EVGA 1060GTX

Win10 64bit

Link to comment
Share on other sites

hi again, my graphics card is ati 4500

 

maybe it because my ccc isn't updated to latest, i have 10.x

but I red, latest caused errorrs, so i didn't bother updating and just left it, and it works fine

 

carlb is correct, how do you make a flat scene? i just used sculpt tool to make as much high as possible all around

Link to comment
Share on other sites

The easiest way to create a flat terrain at maximum altitude is to import a plain white texture as a heightmap.

You can then change the maximum altitude from within the terrain properties menu on the right.

Hope that helps :(

(Win7 64bit) && (i7 3770K @ 3,5ghz) && (16gb DDR3 @ 1600mhz) && (Geforce660TI)

Link to comment
Share on other sites

The easiest way to create a flat terrain at maximum altitude is to import a plain white texture as a heightmap.

You can then change the maximum altitude from within the terrain properties menu on the right.

Hope that helps :(

 

Did that, white height-map. Waterplane is deep in -Y axis, still same FPS

deletemeleadwerksbug2.jpg

Link to comment
Share on other sites

Then it's just because of you computer. Deactivate all the posteffects and you should see a big impact on the framerate.

If that doesn't help much, then you should get a better graphics card. Sad but true :(

 

I just tried it and using the waterplane i lost 0 fps. Stays at 170fps having half of the posteffects on.

(Win7 64bit) && (i7 3770K @ 3,5ghz) && (16gb DDR3 @ 1600mhz) && (Geforce660TI)

Link to comment
Share on other sites

Your card should support occlusion. It will also say so at the beginning of the program .log file.

 

You can turn on "extra statistics" in Options>Display. This will show the number of polygons drawn, so you can see it change. I just created a box car and hid behind it, and I could see the polys rendered decrease.

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

Your card should support occlusion. It will also say so at the beginning of the program .log file.

 

You can turn on "extra statistics" in Options>Display. This will show the number of polygons drawn, so you can see it change. I just created a box car and hid behind it, and I could see the polys rendered decrease.

 

Hi, my card actually doesn't support it after checking. It's no where to be seen in dxdiag.

 

Also google'd my card, and someone said:

"Advanced Occlusion Settings: No"

 

And it also doesn't appear in the log file

 

I did display the extra statistics, and the poly count doesn't go down when it's hidden. It's always the same amount.. Hmm what can I do now, for water? I even tried disabling all the effect, setting wave speed/amplitude/softness to 0, still no increase in FPS.

 

What to do? all I want is a small pond and river, nothing massive, it doesn't even have to look that good. is there no way to reduce the size of the waterplane instead of infinity?

Link to comment
Share on other sites

Your FPS is about the same as my Samsung Galaxy S2 has with realtime water. So I can't use realtime water on my phone, but I have to do some simple mesh animation instead.

Ryzen 9 RX 6800M ■ 16GB XF8 Windows 11 ■
Ultra ■ LE 2.53DWS 5.6  Reaper ■ C/C++ C# ■ Fortran 2008 ■ Story ■
■ Homepage: https://canardia.com ■

Link to comment
Share on other sites

Hi, my card actually doesn't support it after checking. It's no where to be seen in dxdiag.

 

Also google'd my card, and someone said:

"Advanced Occlusion Settings: No"

 

And it also doesn't appear in the log file

 

I did display the extra statistics, and the poly count doesn't go down when it's hidden. It's always the same amount.. Hmm what can I do now, for water? I even tried disabling all the effect, setting wave speed/amplitude/softness to 0, still no increase in FPS.

 

What to do? all I want is a small pond and river, nothing massive, it doesn't even have to look that good. is there no way to reduce the size of the waterplane instead of infinity?

There are ways to do simple water. We made a custom stream shader for the GDC2010 video. It's not that hard to do with refraction or a cubemap for reflection, but it's not supported "out of the box".

My job is to make tools you love, with the features you want, and performance you can't live without.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...