Somebody was thinking everything turning blue when underwater was a bug. That is only true water bug there ever was. The only true water bug was Linux 1999-2002. I've multiple workarounds to this bug/feat. Now we are on modified engine can't do anything about it mindset. That also sounded like a good idea to you initially. My perspective was to do what Sven is doing as much as possible. New thread or same thing Darthman is talking about? He is modifying ents I am making new maps and seeing this too. So does any large ent like func_illusionary and func_wall but is not limited to certain functions. I am well under the limit and water comes and goes in some spots when walking. Thanks for the heads up on the 256 limit. Pointing towards faulty compiling software more and more. After you activate the pumps, if you noclip into the floor so your view is intersecting a wall you can see both the top and bottom surfaces: One example of bottom surfaces being rendered is in c2a1a. The first solution is the cleanest, but requires really old maps (mostly official maps) to be patched to fix it. There's no out-of-the-box invisible texture to use so removing the surface from the bsp might be necessary, unless the engine can be updated to add a new kind of special texture name that isn't drawn.Īlternatively checking the plane normal to see if it points down could work too. The latter checks are essentially the same since a plane with the normal pointing down is always a Z plane (unless there's some compiler trickery involved). Such a tool would need to check if a surface has a texture that the engine treats as water (name starts with !, laser or water) and has a plane that is coplanar with the Z plane, and has a normal pointing down. If that's the case then the proper solution is to remove the check and making a tool to find these surfaces and to make them invisible. My guess is this was a workaround for that issue. So this check hides those bottom surfaces, but only if the entity hasn't moved lower than it starts off at. It might be fixed in 5.0 onwards but it's not the change you listed. The water surfaces shift up and down when the player moves aroundĪlso, for the sake of completeness, i tested the map in Sven Co-op 3.0 to which the above change you listed was added.The bottom surface also renders if it has a water texture applied to it.I tested this and it works, however other rendering issues occur: This should be equivalent to a water brush moving up without triggering the check that breaks rendering. Half-Life Uplink also has it, so it must have been added during the game's development.Īssuming this is unwanted behavior the fix is simple: remove the if check and water will render as expected.Īs a workaround you could try putting the water brush at its intended end position and having it move down, combined with having it start open. I can verify that this code has been in the game since launch. Without being able to see the actual code there's no way to know. Maybe it was added to fix some issue where water rendered when it shouldn't. The plane distance value becomes a relative value (-32 in my case, where the water surface is 32 units above the origin brush's center) while the minimum Z value is a positive value even before moving. The entity can be moved up and it will still stop rendering once it has moved up at least by the height of the entity or more.Īdding an origin brush causes it to stop rendering altogether, at least when the entity is above the world origin. The position of the entity itself doesn't seem to matter here. So the higher the brush is, the further up it can move before it becomes invisible. Only surfaces that are facing directly up are drawn if they have a water texture on them, so this calculation results in water not being drawn if the brush has moved up at least the total height of the brush. If this is false then it won't draw the surface. The surface plane distance value is the shortest signed distance to the plane from the origin. Meaning basically the lowest vertex in the entity is at that height in the map, in absolute coordinates. This is the entity's bounding box minimum Z value.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |