Turn Off Goo Reflection?
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.
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.
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.
wildgoosespeeder wrote:
r_cheapwaterstart
r_cheapwaterendTell 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 
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?
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...
FelixGriffin wrote:
Add it to autoexec.cfg?
Indeed
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?
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?
- Go to your Portal2/portal2/cfg folder
- Create an autoexec.cfg (plain) text file if there isn't any
- Add r_WaterDrawReflection 0 in
![]()
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?
- Go to your Portal2/portal2/cfg folder
- Create an autoexec.cfg (plain) text file if there isn't any
- Add r_WaterDrawReflection 0 in
Don't you mean:
- Go to "[Steam Installation Folder]\steamapps\common\portal 2\portal2\cfg".
- Create "autoexec.cfg" from a new plain text file.
- ???
- 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...
Thanks for all your help. ![]()