Difference between revisions of "Pathfinding in Second Life"
m (Added links to the create and delete character functions.) |
m (→LSL functions: moved a misplaced space.) |
||
Line 23: | Line 23: | ||
The pathfinding LSL functions enable you to create characters that dynamically avoid obstacles while performing typical behaviors you might want in a game or other virtual experience, including: | The pathfinding LSL functions enable you to create characters that dynamically avoid obstacles while performing typical behaviors you might want in a game or other virtual experience, including: | ||
* '''Create''' - Initialize an object to prepare it for using pathfinding functions. [[LlCreateCharacter]] | * '''Create''' - Initialize an object to prepare it for using pathfinding functions. [[LlCreateCharacter]] | ||
* '''Delete''' - Stop the object | * '''Delete''' - Stop the object from responding to pathfinding functions. [[LlDeleteCharacter]] | ||
* '''Evade''' - Run away from a specified object or avatar. See [[llEvade]]. | * '''Evade''' - Run away from a specified object or avatar. See [[llEvade]]. | ||
* '''Flee''' - Attempt to get a specified distance from a specified location. See [[llFleeFrom]]. | * '''Flee''' - Attempt to get a specified distance from a specified location. See [[llFleeFrom]]. |
Revision as of 09:03, 2 October 2012
Overview
At a high level, pathfinding provides tools and functions to enable smoother and smarter movement behavior for non-avatar entities in Second Life (for example, monsters in a game, rats in a haunted house, wisps in a fantasy forest). We refer to these entities as characters; in gaming terminology, they are sometimes called NPCs (non-player characters) or mobs (mobile objects).
Up till now, content creators had to use resource-intensive scripting workarounds to emulate intelligent character movement. With the addition of pathfinding, content creators will have a much easier and better performing way of creating characters that can move around in the world. Characters can use LSL functions to avoid obstacles, move around corners, climb inclines, and move across region boundaries: things that were very difficult or even impossible before. Pathfinding will also enable new gameplay mechanics, such as creating food that attracts monsters.
Note: Pathfinding is not an animation system. It does not provide a way to animate a biped or quadruped in conjunction with the new movement functionality. You must use existing methods to animate characters. Nevertheless, pathfinding enables more dynamic movement and provides a better system for controlling character movement than was previously possible. For more information on creating animations, see Animation. |
User group
The Pathfinding user group meets Thursdays at 4pm in the center of Pathtest1 on the Aditi test grid.
Transcripts:
LSL functions
The pathfinding LSL functions enable you to create characters that dynamically avoid obstacles while performing typical behaviors you might want in a game or other virtual experience, including:
- Create - Initialize an object to prepare it for using pathfinding functions. LlCreateCharacter
- Delete - Stop the object from responding to pathfinding functions. LlDeleteCharacter
- Evade - Run away from a specified object or avatar. See llEvade.
- Flee - Attempt to get a specified distance from a specified location. See llFleeFrom.
- Navigate - Move to a specific location. See llNavigateTo.
- Patrol - Move through a path defined by a set of "patrol points." See llPatrolPoints.
- Pursue - Chase a specified object or avatar. See llPursue.
- Wander - Randomly move around a specified distance from a specified central point. See llWanderWithin.
- ExecCharacterCmd - Miscellaneous character-related functions such as stopping and jumping. See llExecCharacterCmd.
- GetStaticPath - The only function which can be used on non-characters and on regions with dynamic pathfinding disabled. Returns a path to the goal. See llGetStaticPath
For more details, see Pathfinding LSL Functions.
Alpha release information
- Pathfinding/Alpha release notes - Restrictions, known issues, and tips on how to test the alpha version of Pathfinding on the Aditi test grid.
- How do I log into the Aditi test grid? - This test is being run on the Aditi test grid; for more information, read this article about Aditi and how you can log in.
- Pathfinding_Tools_in_the_Second_Life_Viewer - New tools in the Second Life Viewer to help you manage your Pathfinding characters and their environment. Not yet publicly available.
- Pathfinding_Quick_Start_Guide - How to get your region up and running smoothly with Pathfinding.