render.EnableClipping

From Garry's Mod
Jump to: navigation, search
 render.EnableClipping( )

Contents

Description

Sets the status of the clip renderer, returning previous state.

WARNING

To prevent unintended rendering behavior of other mods/the game, you must reset the clipping state to its previous value.

BUG

Reloading the map does not reset the previous value of this function.

Issue Tracker: #3105

Arguments

boolean state

New clipping state.

Returns

boolean

Previous clipping state.

Examples

Example

Properly using the function.

-- Inside some rendering hook

local oldclip = render.EnableClipping( true )

-- Your code here

render.EnableClipping( oldclip )


Examples

Example

Clips the lower half of your custom entity

function ENT:Draw()
    local normal = self:GetUp() -- Everything "behind" this normal will be clipped
    local position = normal:Dot( self:GetPos() ) -- self:GetPos() is the origin of the clipping plane

    local oldEC = render.EnableClipping( true )
    render.PushCustomClipPlane( normal, position )

    self:DrawModel()

    render.PopCustomClipPlane()
    render.EnableClipping( oldEC )
end


Personal tools
Navigation