|
Post by swarm on Apr 9, 2014 21:02:04 GMT 1
Ok so I am working on a project where I am testing it out and I go underwater where the surface water divides the sky and the water. So when I am there it shows the surface waterline dividing I see no water underwater. Experiment Step one go into game where there is water and a surface holding you almost reaching the top of the water.
Step two: Go into the water and let the middle of your screen meet with the surface water/ Dividing line. Step three: Make sure you see absolutely no water underwater.
|
|
|
Post by Daniel Everland on Apr 10, 2014 5:45:49 GMT 1
This isn't a bug as much as a general exploit with how quite a lot of games work. Essentially, to cheaply render the underwater effect you check whether or not the camera is below the water. If so, you simply add a blue filter to the entire camera, thus creating the illusion that you're underwater. If you're able to align the camera so the center of it is underwater, but the bottom half is able to render below the surface of the water, you'll be able to see under the water without the filter. I'm not going to add this as I know it will not be fixed. Nonetheless, it's an impressive find. Thanks for the report
|
|
|
Post by Noble on Apr 12, 2014 3:12:15 GMT 1
Imagine the lag if an unlimited expanding block of water was spawnable. Lol
|
|
|
Post by Jatsu on Apr 12, 2014 7:12:29 GMT 1
Haha, Noble. But in games like Minecraft/Terraria/Starbound and pretty much any retro/8bit top-down game, water can be handled discretely without much stress on the computer. Even when you see water/snow physics demo'd like this or this run so well, it makes you consider that anything can be optimized. And Daniel, thank you so much for sharing that! I really like hearing stuff like that because it's so interesting. It's a little scary that some devs opt for the "cheap" approach of rendering things, but I can understand the economical reasons behind it - both money wise and hardware wise. But it also brings questions to mind, especially because what you said only effects the camera. When you observe a player's avatar body hitting the water plane you notice the effects are immediate, and doesn't require the camera to be above or below the waterplane in order to take effect. So I assume there's different parts of code handling players other than what handles the camera. There is something else that is surprising about waterplanes though. I used to be able to detach my camera from my avatar body by using an old teleporter glitch, and it allowed me to reach the dimensions of the waterplane! Unfortunately, I'm not able to reproduce it anymore, but it looked like this (the image is edited to look like it): If my assumption is correct, the waterplane graphic is clientside and radially spreads out relative to the avatar's position. But the waterplane spreads out far enough that a rule-abiding player would never be able to find this out. Also... the blue filter was still applied when you moved the camera underwater. In fact, when I first experienced this I really had high hopes because this showed that waterplanes did have dimensions applied to it! At least graphically anyway. Which meant that maybe it would lead to creators being able to edit a waterplane's dimensions and having multiple waterboxes in order to create cooler looking games. But alas, as you've said in the past, and implied in your post here, the waterplane isn't going to be improved anytime soon. ): TL;DR: Waterplanes have dimensions, but doesn't mean anything significant - yet.Edit: Just realized you might be interested about the old teleporter glitch. Part of it still exists, which I'll report later when I can find a non-accidental list of reproduceable steps. Basically, you can exploit the camera's behavior by locking it to a wall when you enter and exit a teleporter that is close to a thin wall. From there you can slowly move the camera along the wall until it reaches some distance or angle that causes it to fly back to your avatar. It used to be that it would permanently stick to the wall until you moved the camera off it or suicided - but that's not the case anymore.
|
|