Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


Offset command in ShaderLab reference

Reference for the Offset command in ShaderLab.
Read time 1 minuteLast updated 23 days ago

Important
The Built-In Render Pipeline is deprecated and will be made obsolete in a future release.
It remains supported, including bug fixes and maintenance, through the full Unity 6.7 LTS lifecycle.
Sets the depth bias on the GPU.

Render pipeline compatibility

Feature name

Universal Render Pipeline (URP)

High Definition Render Pipeline (HDRP)

Custom SRP

Built-in Render Pipeline

OffsetYesYesYesYes

Syntax

This command makes a change to the render state. Use it in a
Pass
block to set the render state for that Pass, or use it in a
SubShader
block to set the render state for all Passes in that SubShader.

Signature

Example syntax

Function

Offset <factor>, <units>
Offset 1, 1
Draw geometry closer to or further away from the camera, based on the given values.

Parameters

Parameter

Value

Function

factorFloat, range -1 through 1.Scales the maximum Z slope, also called the depth slope, to produce a variable depth offset for each polygon.

Polygons that are not parallel to the near and far clip planes have Z slope. Adjust this value to avoid visual artifacts on such polygons.
unitsFloat, range -1 through 1.Scales the minimum resolvable depth buffer value, to produce a constant depth offset. The minimum depth resolvable depth buffer value (one unit) varies by device.

A negative value means that the GPU draws the polygon closer to the camera. A positive value means that the GPU draws the polygon further away from the camera.

Additional resources