ENTITY/RenderOverride

From Garry's Mod
Jump to: navigation, search
 ENTITY:RenderOverride( )

Description

Called instead of the engine drawing function of the entity. This hook works on any entity (scripted or not) it is applied on.

This does not work on "physgun_beam", use GM:DrawPhysgunBeam instead.

NOTE

As a downside of this implementation, only one RenderOverride may be applied at a time.

BUG

Drawing a viewmodel in this function will cause GM:PreDrawViewModel, WEAPON:PreDrawViewModel, WEAPON:ViewModelDrawn, GM:PostDrawViewModel, and WEAPON:PostDrawViewModel to be called twice.

Issue Tracker: #3292

BUG

This is called before PrePlayerDraw for players. If this function exists at all on a player, their worldmodel will always be rendered regardless of PrePlayerDraw's return.

Issue Tracker: #3299

Examples

Example

Set the entity the player is looking at to not draw if the player is its owner.

local function DontDrawMe( self )
	if ( self:GetOwner() == LocalPlayer() ) then
		return
	end
	
	self:DrawModel()
end

local pickent = LocalPlayer():GetEyeTrace().Entity

if ( IsValid( pickent ) ) then
	pickent.RenderOverride = DontDrawMe
end


Personal tools
Navigation