WiseOneWayGlass
Contents
Creating glass
Creating glass for HL2/HL2DM or CS:S is a really a simple matter of texturing brushes properly.
In this sample room I’ve created there are three windows. There is also an illusionary wall with layered textures.
The first window is a typical One-way Glass.
- On one face it’s textured with glass/glasswindow070a
- On the opposite face it’s textured with the same brick texture I used on the walls: brick/brickwall003a

To browse for these textures:
- Click the Toggle Texture tool, or press Shift+A.
- Now click the Browse button.
- In the lower Filter area enter filter words like “glass”, “wall”, etc.
- Double-click on the texture you want to use.
- Now with the Face Edit tool still open Right-click on any brush face to texture it. (Left-Click selects)
Here are some helpful links on using the Face Edit tool:
All other faces of these Glass brushes will be textured with nodraw, tools/toolsnodraw.
To illustrate what you can achieve I’ve created 4 different types of see-thru areas.
Starting from the left:
- Typical One-way Glass.
- Breakable Glass made with func_breakable_surf, more on that soon.
- Normal brush with nodraw on one face and a Glass texture on the opposite face.
- Layered textures created with func_illusionary entities.
One-way
The One-way Glass is created with a normal brush that has any opaque textured face opposite a Glass textured face. In this example I’ve used a brick texture and opposite that a glass texture.
Breakable
The Breakable glass is created by turning a normal brush into func_breakable_surf. Do that by selecting the brush and pressing Ctrl+T, choose func_breakable_surf, and finally click Apply.
The properties for our Breakable window are:
- Prop Data: Glass.Window
- Health: 80
- Material Type: Glass
- Fragility: 50
- Surface Type: Glass
- This Breakable glass is 1.0 units thick.
- Don’t make them thinner than 0.5 units thick and don’t make the too thick.
- Breakable glass gets textured on only one face, all other faces will be textured with nodraw, the easiest way to do that is create them entirely with nodraw and then use the Face Edit tool to apply the breakable glass texture.
The texture to use on that face is: glass/glasswindowbreak070a (Don’t use glass/glasswindowbreak070b)
Notice the normal world brush with nodraw on the face opposite the Glass face. When you compile this type of glass it will look like normal unbreakable glass on one side but on the other side it will be clear, however it will block objects.
The texture I used for the Glass is: glass/glasswindow070a (Don’t use glass/glasswindowbreak070a for a window that does not break.)
Layered texture
The last example is our layered texture, created with func_illusionary entities. The first brush is only textured on the outside face; metal/metalfence004a The next brush is textured on two faces;
- metal/metalgrate013a
- brick/brickwall003a
All other faces are textured with nodraw.
To create brushes that are 0.5 units thick use the Transform tool
Conclusion
With the methods illustrated here you can create any type of One-way glass you need.

Keep in mind that while the nodraw texture doesn’t show it was invaluable in creating these effects.
Wrap up
There’s a lot more you can do, hopefully this article have stimulated your imagination.
- The example used in this tutorial.
- If you need further help please use the forum for Source level Design
Credits
- The tutorial was originally created by wisemx, and ported from sdknuts.net/wiseOneWayGlass to the VDC by Peter [AGHL] 13:27, 12 Feb 2008 (PST)
- Sample maps hosted by http://type3studios.com