Glass that starts out broken
January 2024
This tutorial assumes you already know how to create breakable glass. If not, follow that tutorial first.
First method
This method consists on breaking the glass with the help of an explosion that occurs once the map is loaded.
- Make a
func_breakable_surf
with a frame around it (as if you are making a normal breakable window). - Set up an
env_explosion
in the middle of the window, then change the options as follows:
Class: env_explosion | ||
Keyvalues | Comments | |
Name | <name> | <name> is whatever name you wish to give to this entity |
Magnitude | 1 | |
- Then in the flags tab, change the flags as follows:
Flag | ||||
No fireball | ||||
No smoke | ||||
No decal | ||||
No sparks | ||||
No sound | ||||
No fireball smoke | ||||
No particles | ||||
No Dlights | ||||
- Set up a
logic_auto
near theenv_explosion
(it doesn't matter where you put it, but I recommend that you put it in a convenient place) - Change the entity outputs for the
logic_auto
as follows:
My output | Target entity | Target input | Parameter | Delay | Only once | Comments | ||
OnMapSpawn | <name> | Explode | Yes | <name> is the name you gave to the env_explosion
| ||||
- Then in the flags tab, change the flags as follows:
Flag | ||||
Remove on fire | ||||
- Test your map! When it loads the
env_explosion
will break the glass leaving the jagged glass edges on the side of the frame.
Alternative method
This method consists on setting the logic_auto
entity to directly shatter the glass once the map is loaded, which eliminates the need of creating an explosion.
- Name the
func_breakable_surf
you created in step 2 above. Don't create theenv_explosion
, but do create thelogic_auto
. - Change the entity outputs for the
logic_auto
as follows:
My output | Target entity | Target input | Parameter | Delay | Only once | Comments | ||
OnMapSpawn | <name> | Shatter | 0.5 0.5 128 | Yes | <name> is the name you gave the func_breakable_surf entity
| |||
- Adjust the parameter above as desired. Changing the size of the third number (128) will change how much of the window is broken.
Third method
The two methods above will play a glass shattering noise on map load, and will likely force you to make a hole of some size in the pane. One last method is to create a new version of the "unbroken" texture, and make it identical to the "cracked" texture.
The glass is technically never broken in the first place, but looks like it. The only downside is that the glass may appear to be just a little oddly strong when hit by a small object or a bullet.