Creating collision bounds at an angle?

Is it possible to create collision groups at an angle?

Currently I am creating a laser for the tripmine that is its own entity. However when the origin of the laser is placed at an angle, the collision bounds do not adhere to the angle.

For example, this works fine:

(Collision bounds rendered with green lines)

But when planted on an angled surface, I have this problem:

(Collision bounds rendered with green lines)

This is the code that sets the collision bounds:

function ENT:Initialize()
	self.Entity:SetCollisionGroup( COLLISION_GROUP_WEAPON )
	self.Entity:SetSolid( SOLID_OBB )
	self.Entity:SetTrigger( true )
	self.Entity:DrawShadow( false )

function ENT:SetLaserPositions( start, endpos )
	self.Entity:SetCollisionBounds( start, endpos )

start and endpos are retrieved with a util.Quicktrace and is also used to draw the laser beam which works fine (laser beam rendering is disabled in the screenshots above). It is just the collision bounds that are not working the way I want them to. Any ideas on how I can resolve this?


You should perform traces instead, and check if the trace is hitting something other than the world.

Please read this: