util.TraceHull
Description
Performs an AABB hull (axis-aligned bounding box, aka not rotated) trace with the given trace data.
Clientside entities will not be hit by traces.
This function may not always give desired results clientside due to certain physics mechanisms not existing on the client. Use it serverside for accurate results.
Arguments
Returns
Example
From a SWEP:PrimaryAttack()
Example
Visual representation of a Hull Trace.
function ENT:Draw()
self:DrawModel()
local ent = self
local mins = ent:OBBMins()
local maxs = ent:OBBMaxs()
local startpos = ent:GetPos()
local dir = ent:GetUp()
local len = 128
local tr = util.TraceHull( {
start = startpos,
endpos = startpos + dir * len,
maxs = maxs,
mins = mins,
filter = ent
} )
render.DrawLine( tr.HitPos, startpos + dir * len, color_white, true )
render.DrawLine( startpos, tr.HitPos, Color( 0, 0, 255 ), true )
local clr = color_white
if ( tr.Hit ) then
clr = Color( 255, 0, 0 )
end
render.DrawWireframeBox( startpos, Angle( 0, 0, 0 ), mins, maxs, Color( 255, 255, 255 ), true )
render.DrawWireframeBox( tr.HitPos, Angle( 0, 0, 0 ), mins, maxs, clr, true )
end
Output: 

Example
Trace a player sized hull to detect if a player can spawn here without getting stuck inside anything.