CODE
___________________________
| |
| |
| ______________ |
| | | |
| | | |
| | | |
| | | |
| |_____________| |
| |
| |
|___________________________|
Passing a volume detect cube through this object, will first trigger a collision_start for the outer cube, then a collision_start for the inner cube, a collision_end for the inner, and finally a collision_end for the outer. This seems reasonable, save for one crucial aspect, llDetected data. Currently, all values give information about the parent of the linked set, no matter which prim, child or parent, triggered the event.
The way volume detect works now only makes sence for linked sets whose prims
do not interpenitrate one another, like this one, for instance:
CODE
______________ ______________ ______________ ______________
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
|______________| |______________| |______________| |______________|
I find vol detect's behavior with the former irritating - the set should be treated as a unit, when it enters the volume detect prim, it should trigger a collision_start event, and if and only if the entirety of the link set is outside of the volume detect prim, should it trigger a collision_end event; one pair of collision_* events per object, not per prim.
Either that, or the current behavior should remain, with one exception - child prims will give their llDetected data to the collider, not the data of the parent. Though if the latter is implemented, we would need a way to know if one prim is the child of another.
==Chris