Turn Off Goo Reflection?

Avatar
wildgoosespeeder
178 Posts
Posted Sep 06, 2012
When creating PeTI maps with goo and testing them, the goo reflects, causing some lag on my computer. Is there a way to disable this graphic effect? I prefer a permanent fix instead of a console command, if possible. I wish an option existed in the options dialog.
Advertisement
Registered users don't see ads! Register now!
Avatar
josepezdj
2,386 Posts
Posted Sep 06, 2012
Replied 2 hours later
The goo is made by a shader called "water". Try to lower down your "Shader Detail" in Advanced Video Settings.
Avatar
RectorRocks
522 Posts
Posted Sep 06, 2012
Replied 2 minutes later
Turning the Shader Detail to Low may fix it.
Avatar
wildgoosespeeder
178 Posts
Posted Sep 06, 2012
Replied 14 hours later
Shader Detail is already at its lowest.
Avatar
Shane
243 Posts
Posted Sep 06, 2012
Replied 3 hours later
It's to do with the transition of water from expensive to cheap. Expensive water updates reflections in realtime, cheap water users a pre rendered $envmap with no refractivity. The only way to alter this would be to edit your water_lod_control entity to make it transition to cheap water much more quickly (which would have 2 drawbacks: You can only do it in Hammer, and it would make the map look like ass for anybody that played it).

The best way to increase framerate is to turn off antialiasing completely and lower the resolution, there's simply no way to alter the way reflections are handled without altering the map in hammer, sorry.

Avatar
SpAM_CAN
103 Posts
Posted Sep 09, 2012
Replied 2 days later
Actually, you can force cheap reflections using a console command as far as I can remember. Or you could alter the VMT file of the goo textures to disable expensive reflections. Either way, its a whole lot of work for very little performance increase.
Avatar
josepezdj
2,386 Posts
Posted Sep 10, 2012
Replied 23 hours later

SpAM_CAN wrote:
Actually, you can force cheap reflections using a console command as far as I can remember.

That command is r_cheapwaterstart and I guess its value to increase performace should be 1

SpAM_CAN wrote:
Or you could alter the VMT file of the goo textures to disable expensive reflections.

Yeah, it's the command "$forcecheap" 1 that force cheap water instead of expensive.

Avatar
wildgoosespeeder
178 Posts
Posted Oct 02, 2012
Replied 22 days later

josepezdj wrote:
SpAM_CAN wrote:

Actually, you can force cheap reflections using a console command as far as I can remember.

That command is r_cheapwaterend and I guess its value to increase performace should be 1
SpAM_CAN wrote:

Or you could alter the VMT file of the goo textures to disable expensive reflections.

Yeah, it's the command "$forcecheap" 1 that force cheap water instead of expensive.

Two things:

r_cheapwaterstart
r_cheapwaterend

Tell me more specifically what these do.

Also should this command be executed prior to building the puzzle in the puzzle maker, not Hammer? I didn't see anything change while playing a map with water reflection lag.

Avatar
josepezdj
2,386 Posts
Posted Oct 03, 2012
Replied 15 hours later

wildgoosespeeder wrote:
r_cheapwaterstart
r_cheapwaterend

Tell me more specifically what these do.

Both commands must be followed by a value that meanms distance from platyer's view (the same as the water_lod_control entity and its values "Start Transition to Cheap Water" and "End Transition to Cheap Water") So Cheap water start will set the distance from the player's view to where the cheap water will start; Cheap water end will establish the distance from the player's view to which the cheap water will end, being turned into expensive water. In your case, in order to have "always" cheap water, you should set above params for example like so:

r_cheapwaterstart 1 [this will tell the engine to render cheap water right in front of the player's view, that's to say, from the very first unit distance before the player's eyes ]

r_cheapwaterend 3500 [this means that the expensive water will start at 3500 (hammer) units distance... if your map is really big, then increase this value up to 5000 or whatever]

I'm not so sure of what command overrides which other, but anyway use a cheap water mataerial (including the line $forcecheap "1" into the .vmt file, and make sure that you don't have a $forceexpensive "1" line anywhere... I don't know if VTFEdit would detect that contradiction though)

wildgoosespeeder wrote:
Also should this command be executed prior to building the puzzle in the puzzle maker, not Hammer? I didn't see anything change while playing a map with water reflection lag.

You can do 2 ways... in hammer and via the console (this one would be the chosen one if your map is a PTI map):

**HAMMER**

Include somewhere in your map a point_clientcommand and name it for example "cheap_water", and a logic_auto with this outputs:

OnMapSpawn > cheap_water > command > r_cheapwaterstart 1
OnMapSpawn > cheap_water > command > r_cheapwaterend 3500

NOTE: maybe you'll need these too (in the case that the default settings are reset if the player dies and the map is reloaded):

OnLoadGame > cheap_water > command > r_cheapwaterstart 1
OnLoadGame > cheap_water > command > r_cheapwaterend 3500

**CONSOLE**

Just open the console while playing your map and type:

r_cheapwaterstart 1
r_cheapwaterend 3500

I hope this helps

Avatar
wildgoosespeeder
178 Posts
Posted Oct 11, 2012
Replied 8 days later

josepezdj wrote:
**CONSOLE**

Just open the console while playing your map and type:

r_cheapwaterstart 1
r_cheapwaterend 3500
(or 5000)

I hope this helps

I'm not using Hammer; just the PeTI editor.

Tried it during a play-through and I didn't see a change. If I used it correctly, it serves me no purpose because it didn't stop the lag.

Curiously, using the command "r_WaterDrawReflection 0" stops the reflection-causing lag, which is the desired result I was looking for. If used near the reflections, it causes an undesired result when moving the POV around because it displays the last rendered reflection. Triggering this command before loading the puzzle solved this problem but another problem arises. Is there a way to permanently have this command be executed when the game loads so I don't have to trigger it manually everytime?

Avatar
josepezdj
2,386 Posts
Posted Oct 12, 2012
Replied 4 hours later

wildgoosespeeder wrote:
Is there a way to permanently have this command be executed when the game loads so I don't have to trigger it manually everytime?

Yes, unfortunately only using hammer. Maybe you can make a batch file to run Portal2 and send the console command immediately after the game has started up...

Avatar
FelixGriffin
2,680 Posts
Posted Oct 12, 2012
Replied 5 hours later
Add it to autoexec.cfg?
Avatar
josepezdj
2,386 Posts
Posted Oct 12, 2012
Replied 33 minutes later

FelixGriffin wrote:
Add it to autoexec.cfg?

Indeed

Avatar
wildgoosespeeder
178 Posts
Posted Oct 13, 2012
Replied 17 hours later

josepezdj wrote:
FelixGriffin wrote:

Add it to autoexec.cfg?

Indeed

Do you mean "config.cfg" because that is the closest thing I could find. Even adding the command in that file, the game restores it to the previous state. Or do I have to create "autoexec.cfg" somewhere? What am I doing wrong?

Avatar
josepezdj
2,386 Posts
Posted Oct 13, 2012
Replied 2 hours later

wildgoosespeeder wrote:
Do you mean "config.cfg" because that is the closest thing I could find. Even adding the command in that file, the game restores it to the previous state. Or do I have to create "autoexec.cfg" somewhere? What am I doing wrong?

  1. Go to your Portal2/portal2/cfg folder
  2. Create an autoexec.cfg (plain) text file if there isn't any
  3. Add r_WaterDrawReflection 0 in

Avatar
wildgoosespeeder
178 Posts
Posted Oct 15, 2012
Replied 2 days later

josepezdj wrote:
wildgoosespeeder wrote:

Do you mean "config.cfg" because that is the closest thing I could find. Even adding the command in that file, the game restores it to the previous state. Or do I have to create "autoexec.cfg" somewhere? What am I doing wrong?

  1. Go to your Portal2/portal2/cfg folder
  2. Create an autoexec.cfg (plain) text file if there isn't any
  3. Add r_WaterDrawReflection 0 in

Don't you mean:

  1. Go to "[Steam Installation Folder]\steamapps\common\portal 2\portal2\cfg".
  2. Create "autoexec.cfg" from a new plain text file.
  3. ???
  4. PROFIT!

(Step 3 can be any console command)

[hr]

Anyways, that did work. Problem solved!

Just a quick question. What does r_WaterDrawRefraction mean? I know what refraction means but I didn't see any visual difference with it being 0 instead of 1...

Avatar
FelixGriffin
2,680 Posts
Posted Oct 15, 2012
Replied 2 hours later
It means that water will refract what's underneath it. The fog effect is poweful enough that Portal's toxic goo would have to be VERY thin to see anything through it, so the effect is mostly wasted.
Advertisement
Registered users don't see ads! Register now!
Avatar
wildgoosespeeder
178 Posts
Posted Oct 26, 2012
Replied 10 days later
OK, since it is a waste really, it will further increase performance if I set that to 0 as well. <-- Doing that screws up the water found in the area after Wheatley smashes you through the pit to fall thousands of feet below the ground.

Thanks for all your help.