Don't click here unless you want to be banned.

LSL Wiki : phantom

HomePage :: PageIndex :: RecentChanges :: RecentlyCommented :: UserSettings :: You are crawl338.us.archive.org

Phantom


If an object is phantom, it means that the rules of solid matter do not apply to it. It does not collide with anything except the terrain--objects and avatars can freely pass through it-- it does not become transparent.

Phantom objects can be physical, and they will collide with land. Such collisions will trigger the appropriate events (land_collision, land_collision_start and land_collision_end). Setting a physical object to phantom lightens the load on the sim because less collision calculations will be performed.

Objects can be set to phantom using llSetStatus, llSetPrimitiveParams, or a checkbox in the editor dialog.

A phantom object will also not trigger a collision, collision_start or collision_end event on any scripts it contains. The exception to this rule is llVolumeDetect. Setting it to TRUE will cause solid objects to pass through the object, but collision_start and collision_end events will still fire. (collision events are not triggered when llVolumeDetect(TRUE) is set.)

If llVolumeDetect is enabled, llGetStatus(STATUS_PHANTOM) will still return FALSE, however. A phantom object with llVolumeDetect(TRUE) will not trigger collision events.

Oddly, physical llVolumeDetect-enabled objects will not collide with land; they'll fall right through and go off-world. The reason is that llVolumeDetect uses a feature of the Havok physics engine which only works for objects that are totally collisionless.

For more, see the llVolumeDetect page.


Prim | Constants | Collisions
There is no comment on this page. [Display comments/form]