Back to Writing
NOTESunityshadersglossarygraphicsrenderinggame-dev

Shaders - 09. Glossary of Terms

May 7, 2020Updated Feb 17, 2026

![](

Ubasg.ZrUyxsvNfQ8Lj8Q-g8HyBMIFFfAGopVE3yhujaxvP1tMg.JPEG.cdw0424/photo-1524639064490-254e0a1db723.jpg?type=w966)

Shaders use way too many difficult terms.

When I first started studying programming — it wasn't even my major but I desperately wanted to learn — I was incredibly frustrated by jargon like "instance" and "dynamic allocation" that only insiders could understand.

That's why I studied through trial and error, and hoping to help others in similar situations, I've compiled some frequently used words in shaders and computer graphics.

The difficulty level assumes you've understood all previous entries in this series.

Rather than memorizing everything at once, I recommend coming back to read this whenever you need a refresher.

Key Things to Know

An image is a collection of numbers.

Therefore, an image is data.

Colors are also numbers.

Everything in a computer is just numbers.

![](

xzIpP4g.B4CBkKGjaCjdEJ1CP0zB2bsyc8i7XWwJ7HHvc-QbU8Qg.JPEG.cdw0424/photo-1558443957-d056622df610.jpg?type=w966)

  1. Shader: A language used to manipulate the process of images and graphics displayed on a computer screen.

![](

0g.Y-Zlaj2sMaicZ72o-23-ayiJS0q9vpW2M2zV2jBRjo4g.JPEG.cdw0424/SE-77ec8c07-2a04-41da-ab27-782b302ea46c.jpg?type=w966)

  1. Vertex: A point in 3D space; a corner point.

![](

Ug.PwvoodiUe1Uaz2d83J5WRNjmGNepynS39Xtf7H9fwDYg.JPEG.cdw0424/SE-54a5a23e-701d-42ca-9988-ddd7d0d09780.jpg?type=w966)

  1. Fragment: What pixel shaders are called in shader terminology.

![](

-AX54BBVw7s8g.ro5dxqW925HsuxUoGsDTfcvVLkl4Fu2R-AOPmsJMr0Eg.PNG.cdw0424/measured_materials.png?type=w966)

  1. PBR: Physically Based Rendering — a method that uses physical laws to draw images that look like real life.

![](

WJ5Rd-A8g.tWdEAqhCaZ7jkwk0NFJBgAbIOiMd-mKrxMGxg4rs7lEg.JPEG.cdw0424/1404368_uploaded_4786238.jpg?type=w966)

  1. NPR: Non-Photorealistic Rendering — a method that renders in an animation or cartoon style rather than using physical laws.

![](

zduMg.5TKPGnCwZQMT0mFjGCH2IfZD5imCsrOijKOG0ICcSVsg.JPEG.cdw0424/photo-1573376670774-4427757f7963.jpg?type=w966)

  1. Buffer: A memory space for temporarily storing data. Think of it as a temporary folder in memory.

  2. Vertex Buffer: A buffer that stores vertex data of a modeled object. Used by the vertex shader.

  3. Z-Buffer: A buffer containing information about how far something is from the camera (depth) at the display pixel level. Called "Z" because the Z-axis typically represents depth (X, Y, Z axes).

  4. Back Buffer: The buffer where the image is currently being drawn.

  5. Front Buffer: Takes what was drawn in the back buffer and displays it on screen.

  6. Stencil Buffer: "Stencil" refers to a masking effect like in Photoshop. It shows only the parts you want to show and cuts out the rest. Participates in the back buffer process.

![](

. VSQdxpPIPfZBw-15UJf2BvPC91mgTLINEbGlavn-CAog.PNG.cdw0424/34872983-8c595fa0-f793-11e7-8208-67973459fbef.png?type=w966)

  1. Z-Fighting: A confused state where objects at the same depth compete to appear on screen, causing flickering artifacts.

![](

wg.HArXMUCsrFLEiQxFXMhy53QzC0YHPcEA45PplWCBMhog.JPEG.cdw0424/SE-531288f9-fd74-4df2-843e-5de24c51282b.jpg?type=w966)

  1. Transparent: See-through.

![](

6Qhug.AVb_FYBk4nRqCWrO5I05TYrzCXICy0wqpVewfJqHUNAg.JPEG.cdw0424/photo-1514228742587-6b1558fcca3d.jpg?type=w966)

  1. Opaque: Not transparent; fully solid.

![](

wg.m6O3KlUBK5y5NGtAjiWV9CmcgioVi5Y_hgm2ESkaGk4g.JPEG.cdw0424/SE-befdf538-a7d1-4ee2-8956-64db98062f4b.jpg?type=w966)

  1. Blending: Mixing/combining colors or values.

![](

Ps_oy014AzCjOUiq9sg.jUIVXaS5oWOhHK7dXe4ScamZ2WwDV6KNO-Vux37cHf4g.PNG.cdw0424/image.png?type=w773)

  1. Alpha Channel: An image representing transparency. Typically, image files have 3-4 channels (data spaces): RGB or RGBA. The last "A" in the 4-channel set stands for the alpha channel. It doesn't have to represent transparency — you can store other data in it. It's named that way because conventionally R holds red, G holds green, B holds blue, and A holds transparency data.

![](

7aBUIWnNrv0TxeGoLkg.rCRTbSM8XttQuSbwSKbytQDmTwxO8aS7Nut5x53ALmUg.PNG.cdw0424/image.png?type=w966)

  1. Alpha Test: If the alpha value is 0, it becomes invisible; if 1, it becomes visible. Values around 0.3 get snapped to either 0 or 1. Therefore, semi-transparency is not possible — it only makes things either fully transparent or fully opaque. Also known as Cutout or Alpha Cut.

Post image

  1. Alpha Blending: If the alpha value is 0.5, it appears semi-transparent. Similar to alpha test, but semi-transparency is possible.

![](

6lpfXukDC0MEJJt-nIg.ZwOsYOETfHWkePqE9IL-QUtMZNCnJ_Z8KshBMelXpsMg.PNG.cdw0424/image.png?type=w966)

  1. Fog: As the name suggests, a fog effect. Using z-buffer values, when an object exceeds a certain distance (depth) from the camera, fog color is added to that object.

![](

ulT7eNDDI9jjNZR32Ig.WcBJaE4Xajj7QY6vcvKNY3QLjNvCz9hbzc0WmENh-8Qg.PNG.cdw0424/image.png?type=w966)

  1. Queue: Rendering order. Unity-specific. Unity has predetermined rendering orders. For example, saying Queue: Transparent means this shader's output is rendered when transparency is being processed.

![](

Rph4bKb_C-gm8qyO1Yg.qtrY_hMsVMVZ0EDjhEqpfjc2U4kHRtOiaAtHHxD9NBEg.PNG.cdw0424/image.png?type=w966)

  1. Albedo: An image containing only color information, or the image overlaid onto a model.

![](

LvTc98HMI5a4YKmeYcg.vcKP6spoe8CLPZ0DRbVL8YJdw2bp8eZdobCP5dkdadsg.PNG.cdw0424/image.png?type=w966)

  1. Specular: Areas where light reflects strongly at specific points.

![](

Tx253MzTQtdfM8nEEsg.j2KawTO0-qeImv5uwmlPigFM6qpnwn6UO_K2CtBXO68g.PNG.cdw0424/image.png?type=w966)

  1. Metallic: The degree to which something appears metal-like. Low metallic = less metallic appearance. Higher values = more metallic appearance.

![](

alfycOYj9u-7gIW4Dsg.RpFBWIXWhLc7DP8Pzazm84hJCALVk4EJXfTlHi_UuAgg.PNG.cdw0424/image.png?type=w966)

  1. Smoothness: How smooth a surface is. Unity uses this exclusively. Unreal uses Roughness, which is the inverse. So the two values are opposites.

![](

k623xqPSmvVl0DCT4Ag.o16vHOFCyGtX-oDoQatqZB7VS5xHOvVo8MzTQ1tamuMg.PNG.cdw0424/image.png?type=w966)

  1. Normal: Generally refers to the normal vector — a vector perpendicular to a surface.

![](

nVVCz83AdoOdPVPPJIg.MLkI5ApCHGtd4okJm0fihpZBeYZBJH0NuhGIflRkDiEg.PNG.cdw0424/image.png?type=w966)

Post image

  1. Normal Map: An image packed with normal information. Creating bumpy surfaces through actual modeling requires heavy computation, so a normal map is a trick image containing bumpiness data. In PBR, light reflection is calculated using the model's normal values, so even if the model isn't actually bumpy, it can be made to look bumpy through this trick. Since normal vectors are typically expressed along the Z-axis, normal maps mostly appear blue (X=red, Y=green, Z=blue). Primarily used for lighting calculations, but can also represent height.

![](

CJE9C5mcVWxo_UzBIUg.TaqyJ3k0MpE_3nucB6hv3KxkpQepn2h5ZzedTwtp1l8g.PNG.cdw0424/image.png?type=w966)

  1. Bump Map: An umbrella term for height maps, normal maps, etc. However, since normal maps became mainstream, it's generally used synonymously with height maps.

![](

xN07g42TFOvUg-WpNwg.7-4WfXjdhyrFM8V_sr4RG_oLk2R5f4Uc-JPhbWoQdnEg.PNG.cdw0424/image.png?type=w966)

  1. Height Map: A black and white image containing height values. Using it alongside a normal map improves quality!

![](

3SxRRrqeAffmVooRLog.FjMhHSVvGPCLV5CL_ltotnu3L_VJ1n8_RH4C2Mg7q_kg.PNG.cdw0424/image.png?type=w966)

  1. Occlusion Map: A simple image showing the amount of indirect lighting hitting nearby objects. Whiter areas receive more light. With high metallic values, white areas receive a lot of ambient light, reflecting surroundings like a mirror. Also called Ambient Occlusion Map. The quality difference with and without it is enormous — for example, the underside of a chin should be dark, but without ambient occlusion, it looks bright and sloppy.

![](

XzKNlh-jO36FUoxd4kg.-kExgpsibwsgDw320MU6nB8GE7gkXiLyla1BCAy72j0g.PNG.cdw0424/image.png?type=w966)

  1. Emission: The degree to which light is emitted. Higher values mean brighter glow. Remains visible even with all lights off. Can be baked, with its indirect light pre-baked to affect surroundings, or set to affect surroundings in real-time. Example: white objects next to a red emissive object will appear slightly reddish.

![](

lCw73SxRRrqeAffmVooRLog.FjMhHSVvGPCLV5CL_ltotnu3L_VJ1n8_RH4C2Mg7q_kg.PNG.cdw0424/image.png?type=w966)

  1. Detail Map: Detail map and detail mask. Used for overlaying fine details, like overlaying a pore-texture image on top of a skin texture.

![](

CJE9C5mcVWxo_UzBIUg.TaqyJ3k0MpE_3nucB6hv3KxkpQepn2h5ZzedTwtp1l8g.PNG.cdw0424/image.png?type=w966)

  1. Forward Rendering: Also called forward shading. Originally just "rendering," but was renamed to "forward" when deferred rendering emerged. Currently the lighting technique used in Unity's legacy render pipeline. Lighting calculations are performed every time an object is rendered. Objects not rendered on screen also get lighting calculations. Shadow calculations are difficult since all shadow computations overlap individually. However, it's easy to implement, and transparency and anti-aliasing are straightforward.

Post image

  1. MRT (Multiple Render Target): One image is created excluding lighting calculations. Combines individual object maps into scene-wide maps. These per-scene images are called MRT images. Albedo maps, depth maps, specular, positions, etc. are rendered as images and stored in the G-Buffer. Used in deferred rendering.

  2. G-Buffer: Short for Geometry Buffer. Data like normals, vectors, positions — data that looks like images — is called geometry data. It serves a computational role rather than producing beautiful pictures. The G-Buffer stores rendered MRT images excluding lighting. Typically stores 4 MRT images per pass. Used in deferred rendering.

![](

u91exxTXIWQ0g._XYKdxWJUt1NGzEj4oDy9UlcClMWrKyj5BNyFZrIpswg.PNG.cdw0424/deferred_overview.png?type=w966)

  1. Deferred Rendering: The lighting technique used by default in Unity's SRP. All necessary information is pre-stored in the G-Buffer and the final render is calculated all at once. Uses significant memory due to G-Buffer. If you're not using many lights, Forward is recommended. If using many lights, Deferred is advantageous even considering the initial memory cost. Light is rendered and calculated all at once at the very end. Works similarly to post-processing. Reusing G-Buffer information for post-processing yields major benefits. Shadow calculation is very easy. Semi-transparency is impossible since calculations happen in 2D. Anti-aliasing is not natively supported.

![](

BboEpyEvAdR_sBv4g.VIlkaFn4FrKTOZg1Bgen5tOQ-R4Jmch3lPwT4U5Upw0g.PNG.cdw0424/unnamed_(1)

.png?type=w966)

  1. Real-time Rendering: Rendering in real-time, like in games.

![](

4g.LS59oTGEdpS94YYz0f25GsqsQkYkod2veKTuw6S0j2gg.JPEG.cdw0424/SE-90ed6c0c-3af8-448d-af0b-79347fea76fd.jpg?type=w966)

  1. Non-real-time Rendering: Like movies or animations — no mid-stream changes possible; only displays pre-rendered content.

  2. Diffuse Map: Expressed as "Albedo x Occlusion" in Unity. Easy to work with and lightweight but lower quality. Some places use it synonymously with Albedo.

![](

fxn681axBSunSQ924g.yWOmafUMgUT---doLaWgaRoP2v5JepZAuhBp24zuJ-QYIg.PNG.cdw0424/image.png?type=w966)

  1. Anti-aliasing: Prevents jagged edges.

![](

yZZs2O2jmAjHMJ0lL4g.VVp3yMS2Rgb4XJzcus9VV_xYI_BUPyOdWpvDPDfQ2zIg.PNG.cdw0424/image.png?type=w966)

  1. Post-Processing: Filter-like effects applied at the end of the rendering pipeline.

![](

4g.LS59oTGEdpS94YYz0f25GsqsQkYkod2veKTuw6S0j2gg.JPEG.cdw0424/SE-90ed6c0c-3af8-448d-af0b-79347fea76fd.jpg?type=w966)

  1. Bloom: A light-bleeding effect. Can be implemented in Unity through post-processing.