Page MenuHomeFeedback Tracker

ScriptedEntity::SetClippingInfo | SetCollisionBox [Radius limitations]
Assigned, UrgentPublic

Description


The following 2 functions contain a limitation with the size of created collision box. Max seem to be around 37~ meters

proto native void SetClippingInfo(vector mins, vector maxs, float radius);

The above achieves no increase in radius above the hard coded limit. The fix would greatly help in creating Triggers that are on a larger scale.

Code To reproduce:

SafeZoneTrigger trigger = SafeZoneTrigger.Cast( GetGame().CreateObject( "SafeZoneTrigger", Vector(triggerPos[0], surfaceY, triggerPos[2]), true, false, true ) );
trigger.SetPosition( Vector(triggerPos[0], surfaceY, triggerPos[2]) );
trigger.SetOrientation( "0.0 0.0 0.0" );

trigger.SetExtents( "-400.0 -0.0 -400.0", "400.0 3.0 400.0" );
trigger.SetClippingInfo("-400.0 -0.0 -400.0", "400.0 3.0 400.0", 125.0);

Print("[SafeZoneTrigger] EOnInit() --> Trigger Radius: " + trigger.GetRadius("-400.0 -0.0 -400.0", "400.0 3.0 400.0")); //returns correct radius size (since the method is not linked to the BBOX in any way), but BBox is not accurate at all.

Details

Severity
Block
Resolution
Open
Reproducibility
Always
Operating System
Windows 10 x64
Category
General

Event Timeline

Jest added a subscriber: Jest.Jul 17 2020, 7:29 PM

Have you tried to just make the initial object much bigger and then shrink down the BBox?

I have not attempted that, my alternative solution was simply to stick with vector.Distance() however, i might give it a try with increasing the objects' Transformation.

Geez changed the task status from New to Assigned.Jul 22 2020, 12:09 PM