Difference between revisions of "LlVolumeDetect"

From Second Life Wiki
Jump to navigation Jump to search
m
m (Clarified that collision events are not triggered with volume detect)
Line 15: Line 15:
{{!}}- align="center"
{{!}}- align="center"
! {{Hl2}} {{!}} Events<br/>Supported
! {{Hl2}} {{!}} Events<br/>Supported
{{!!}} [[collision_start]]<br/>[[collision]]<br/>[[collision_end]]
{{!!}} [[collision_start]]<br/><br/>[[collision_end]]
{{!!}} [[land_collision_start]]<br/>[[land_collision]]<br/>[[land_collision_end]]
{{!!}} [[land_collision_start]]<br/>[[land_collision]]<br/>[[land_collision_end]]
{{!}}- align="center"
{{!}}- align="center"
Line 25: Line 25:
======VolumeDetect======
======VolumeDetect======
*When physical they fall through the ground with the risk of going off-world.
*When physical they fall through the ground with the risk of going off-world.
*[[collision]] events are not triggered
======Phantom======
======Phantom======
*When physical they collide with the ground but will not pass through (normal physical object behavior), land collision events are queued.
*When physical they collide with the ground but will not pass through (normal physical object behavior), land collision events are queued.

Revision as of 16:19, 18 June 2013

Summary

Function: llVolumeDetect( integer detect );

If detect is TRUE, VolumeDetect is enabled, physical object and avatars can pass through the object.

• integer detect TRUE enables, FALSE disables

This works much like Phantom, but unlike Phantom, VolumeDetect objects trigger collision_start and collision_end events when interpenetrating. Collision events will trigger in any script in the object.

Specification

Events queued depending on type
VolumeDetect Phantom
Events
Supported
collision_start

collision_end
land_collision_start
land_collision
land_collision_end

Differences

There are a couple differences in how Phantom and VolumeDetect handle collisions; specifically which events are supported and how they handle the ground.

VolumeDetect
  • When physical they fall through the ground with the risk of going off-world.
  • collision events are not triggered
Phantom
  • When physical they collide with the ground but will not pass through (normal physical object behavior), land collision events are queued.

Caveats

Important Issues

~ All Issues ~ Search JIRA for related Bugs
   Volume Detect objects are not always allowing objects to pass through.

Examples

<lsl>default {

   state_entry()
   {
       llVolumeDetect(TRUE); // Starts llVolumeDetect
   }
   collision_start(integer total_number)
   {
       llSay(0, "Detected!"); // Tells you when something penetrates the prim
   }
}</lsl>

See Also

Events

•  collision_start
•  collision
•  collision_end

Functions

•  llPassCollisions

Deep Notes

All Issues

~ Search JIRA for related Issues
   Volume Detect objects are not always allowing objects to pass through.
   llDetectedLinkNumber returns 0 with llVolumeDetect(TRUE)

Footnotes

  1. ^ Attachments aren't included in the avatar bounding box, so it's moot

Signature

function void llVolumeDetect( integer detect );