PDA

View Full Version : Solid Water Problem


Silverhawk2000
04-06-2003, 02:45 PM
Hi All,

I have been testing the water / slime shaders and can not get it to work all the time.

Sometimes when I compile, I creats the water / slime properly, other times it becomes solid.

And yes I am using system/caulk_nonsolid and only texturing the top and bottom face.

It's a real pain. Has anyone got their water to compile all the time, or do you experience the same (liquid this compile - solid the next) error.

What a pain. I am this " close to forgetting about the damn water all together.

:cool:

Leslie Judge
04-06-2003, 05:22 PM
I have the problem too. I got a solution but didn't try yet. :)

They say the problem is that the first face in the map file decides the volume properties of a brush. So they say I have to make a special caulk brush wich has the "surfaceparm water" line in it and cover the sides with that shader.

I don't know... I'll try it when it will be important. :D

Silverhawk2000
04-07-2003, 08:50 AM
Originally posted by Leslie Judge
...They say the problem is that the first face in the map file decides the volume properties of a brush....

That's interesting that the compiler would work that way.

Anyhow, after playing around a bit I noticed that in the system directory (where system/caulk is) that there are 3 No Draw Textures

nodraw
nodraw_solid
nodraw_slime

I used nodraw_slime and textured top and bottom with the slime shader and it worked fine.

I used nodraw and textured top and bottom with water2 and it worked fine.

(With you are submerged in both of these and look up the surface of the liquid is black, but I don't care about that aspect)

Slime is the first one I want to use in my map because I want to create a pool of toxic effluent that is connected to a sort of pumping station.

The other I might want is a good Lava Effect, used to simulate vats of molten metal, like in a foundary for example.

I will have search the fourms about the Lava shader. If you know of one please let me know.

:cool:

-Chrono_MOT-
04-07-2003, 10:47 PM
I know there's a flowing lava shader, just don't remember where.

Anyways, you can't avoid the solid water problem. It's a bug in the Q3 vis process. What happens is, it renders the surfaceparm normally with all the transparencies, but it overlooks the fog and non-solid part of the shader code. What ends up happening is you get solid water with blackened surfacing.

You just have to recompile until it works correctly.

Silverhawk2000
04-08-2003, 08:52 AM
Originally posted by -Chrono_MOT-
You just have to recompile until it works correctly. [/B]

What a pain. Oh well, when in rome...

Thanks for the input guys.

Druid Bremen
04-09-2003, 02:16 AM
I also badly want the lava shader. Im using it for a trap in my map. Ohhh!

Karshaddii
04-09-2003, 02:00 PM
Originally posted by Silverhawk2000
And yes I am using system/caulk_nonsolid and only texturing the top and bottom face.

There's your first prob right there---don't caulk water/slime shaders. Please--it's not necessary.

-Chrono_MOT-
04-13-2003, 11:11 PM
You can caulk water shaders. It's perfectly ok. You can also use nodraw, or not even mess with the sides at all.

sematriclen
04-14-2003, 06:57 AM
well i have always got my water/slime shaders to work when i compiled the map exept when i used nodraw on some side cos i was told that helped incase you didnt know but water shader doesnt work there is sumthin wrong with it but water2 does :)

Silverhawk2000
04-14-2003, 08:58 AM
Originally posted by Karshaddii
There's your first prob right there---don't caulk water/slime shaders. Please--it's not necessary.

If you don't use caulk as the initial texture for the brush (for the water volume), then what is the proper one that is supposed to be used for the overall brush?

:cool:

Business_Eskimo
04-14-2003, 05:52 PM
I think that that lava texture is in the imp_mine folder. At least last time I checked.;)

ydnar
04-14-2003, 07:12 PM
If you want invisible sides on a water brush, you'll need to make a "water caulk" shader. Basically it has all the properties of a normal water shader, minus any shader stages, plus nodraw.

Recompiling a map over and over until it works is not the right way to fix it.

y

sematriclen
04-14-2003, 11:25 PM
well i was always shown to use caulk_nonsolid if u dont use it u can get stuck on the side of the walls because it is solid but when u put caulk_nonsolid it removes that problem

yangyan
04-15-2003, 01:28 AM
Yes but the question you're asking is why it is solid right?

yangyan
04-15-2003, 01:32 AM
I agree with the compiling part but wtf is a water caulk? I've heard ("*caulk, nodraw blah blah......*") caulk_nonsolid but not water caulk

Originally posted by ydnar
If you want invisible sides on a water brush, you'll need to make a "water caulk" shader. Basically it has all the properties of a normal water shader, minus any shader stages, plus nodraw.

Recompiling a map over and over until it works is not the right way to fix it.

y

Silverhawk2000
04-15-2003, 08:41 AM
Originally posted by ydnar
If you want invisible sides on a water brush, you'll need to make a "water caulk" shader. Basically it has all the properties of a normal water shader, minus any shader stages, plus nodraw.
Recompiling a map over and over until it works is not the right way to fix it.
y

Did you read this somewhere or have you created a "water caulk" shader yourself? If so, consider posting the shader here because I know that many people have come across this problem where liquids become solids. That is, the surface moves, but you can stand on top of it.

For now I will try sematriclen's suggestion an try caulk_nonsolid.

I agree that 'Recompiling a map over and over until it works is not the right way to fix it.' It would be nice to hear from someone who can definitively say that they have the answer and that they have never had the problem of a liquid (Water, Slime, Lava, etc) go solid on them.

:cool:

wedge2211
04-15-2003, 10:17 AM
Originally posted by yangyan
I agree with the compiling part but wtf is a water caulk? I've heard ("*caulk, nodraw blah blah......*") caulk_nonsolid but not water caulk

Okay, ydnar the q3map god explained right in that post what a "water caulk" shader is: you take a water shader, strip out the code for the shader stages (the textures displayed), and add nodraw.

Silverhawk2000
04-15-2003, 01:57 PM
So Wedge2211, take the slime shader for example, If I wanted to create a nodraw version for the sides of the slime brush I would take the original code below...

textures/imp_mine/slime
{
qer_editorimage textures/imp_mine/slime
surfaceparm water
surfaceparm fog
surfaceparm trans
sort seeThrough
fogparms ( 0.32549 0.635294 0.0156863 ) 256.0
deformvertexes wave 100 sin 1 2 0 0.25
{
map textures/imp_mine/slime
blendFunc GL_ONE GL_ONE
rgbGen wave noise 0.5 0.1 0 25
tcMod turb 1 0.05 -1 0.05
tcMod scroll 0.01 -0.025
tcMod stretch noise 1 0.01 0 0.05
}
{
map textures/imp_mine/slime
blendFunc GL_ONE GL_ONE
rgbGen wave sin 0.25 0.1 0.5 1
tcMod scroll 0.05 0.05
tcMod turb 1 0.1 1 0.005
tcMod stretch noise 1 0.01 0 0.05
tcMod scale 0.5 0.5
}
{
map $lightmap
blendFunc GL_DST_COLOR GL_SRC_COLOR
}
}

----------------------------------------------
And Create the Following
----------------------------------------------

textures/imp_mine/slime_nodraw
{
qer_editorimage textures/imp_mine/slime
surfaceparm nodraw // ** Added Nodraw **
surfaceparm water
surfaceparm fog
surfaceparm trans
sort seeThrough

// Note: Two below may not be needed
fogparms ( 0.32549 0.635294 0.0156863 ) 256.0
deformvertexes wave 100 sin 1 2 0 0.25
}


As an observation, I don't think I would need

fogparms ( 0.32549 0.635294 0.0156863 ) 256.0
deformvertexes wave 100 sin 1 2 0 0.25

For example deformvertexes is that cool wave effect where the surface of the liquid sloshes back and forth.

I've been experimenting with shaders lately and am learning a lot (by examining the existing shaders, and tinkering) I did create a slime shader that causes the slime to flow downwards. I am currently using it on some pipes that are spewing effluent into a toxic slime pit. Yummy. If you ignore the fact that the flow is a round cylinder (a 20 sided brush, not a actual cylinder) it looks ok.
Only thing I have to still figure out is how to make it non-solid. I also threw some trigger_hurts around it. Ouch... It burns.. It burns... :)

For that matter, I should be able to use this shader for any liquid.
Just keeping in mind that

qer_editorimage textures/imp_mine/slime defines the image that I see in the editor (not the game).

I'm at work, so I have not yet tried the above shader, but hopefully it will work.


:cool:

wedge2211
04-15-2003, 03:13 PM
everything you have said is correct to my knowledge, including the fact that you don't need those two lines. To make a shader nonsolid (and you'll want to do this), add the line..."surfaceparm nonsolid"!