My program doesn't have bugs. It just develops random features.

UE3:NavigationPoint (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Revision as of 07:40, 23 May 2008 by (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
UT3 Object >> Actor >> NavigationPoint
Package: 
Engine
Direct subclasses:
DoorMarker, UTOnslaughtNodeTeleporter, PathNode, Teleporter, Ladder, LiftExit, CoverLink, CoverSlotMarker, DynamicAnchor, UTVehicleFactory, LiftCenter, Objective, PickupFactory, PlayerStart, PortalMarker, UTDefensePoint, UTJumpPad, UTTranslocatorDest
This class in other games:
RTNP, U1, UT, U2, U2XMP, UT2003, UE2Runtime, UT2004, UDK

NavigationPoint.

NavigationPoints are organized into a network to provide AIControllers the capability of determining paths to arbitrary destinations in a level

Copyright 1998-2007 Epic Games, Inc. All Rights Reserved.

Constants

INFINITE_PATH_COST

Value: 10000000


Properties

Property group 'NavigationPoint'

bBlocked

Type: bool

this node is currently unuseable

bMakeSourceOnly

Type: bool


bOneWayPath

Type: bool

reachspecs from this path only in the direction the path is facing (180 degrees)

bVehicleDestination

Type: bool

if true, forced paths to this node will have max width to accomodate vehicles

ExtraCost

Type: int

Extra weight added by level designer

MaxPathSize

Type: Object.Cylinder

Modifiers: editconst, const

path size of the largest ReachSpec in this node's PathList

NavGuid

Type: Object.Guid

Modifiers: editconst, const, duplicatetransient

GUID used for linking paths across levels

NetworkID

Type: int

Modifiers: editconst, const

Which navigation network does this navigation point connect to?

Default value: -1

PathList

Type: array<ReachSpec>

Modifiers: editinline, const, editconst, duplicatetransient

index of reachspecs (used by C++ Navigation code)

VolumeList

Type: array<Volume>

Modifiers: const, editconst

List of volumes containing this navigation point relevant for gameplay

Property group 'VehicleUsage'

bBlockedForVehicles

Type: bool

indicates vehicles cannot use this node

bPreferredVehiclePath

Type: bool

vehicles with bUsePreferredVehiclePaths set (large vehicles, usually) will prioritize using these nodes

Internal variables

See NavigationPoint internal variables.

Default values

Property Value
bCollideWhenPlacing True
bNoDelete True
bStatic True
CollisionComponent CylinderComponent'CollisionCylinder'
Components[0] SpriteComponent'Sprite'
Components[1] SpriteComponent'Sprite2'
Components[2] ArrowComponent'Arrow'
Components[3] CylinderComponent'CollisionCylinder'
Components[4] PathRenderingComponent'PathRenderer'

Subobjects

Arrow

Class: Engine.ArrowComponent

Property Value
ArrowColor
Member Value
A 255
B 255
G 200
R 150
ArrowSize 0.5

CollisionCylinder

Class: Engine.CylinderComponent

Property Value
CollisionHeight 50.0
CollisionRadius 50.0

PathRenderer

Class: Engine.PathRenderingComponent

No new values.

Sprite

Class: Engine.SpriteComponent

Property Value
AlwaysLoadOnClient False
AlwaysLoadOnServer False
HiddenGame True
Sprite Texture2D'EngineResources.S_NavP'

Sprite2

Class: Engine.SpriteComponent

Property Value
AlwaysLoadOnClient False
AlwaysLoadOnServer False
HiddenEditor True
HiddenGame True
Scale 0.25
Sprite Texture2D'EditorResources.Bad'

Structs

NavigationOctreeObject

Modifiers: native

structure for inserting things into the navigation octree

Object.Box BoundingBox 
the bounding box to use
Object.Vector BoxCenter 
cached center of that box
pointer{class FNavigationOctreeNode} OctreeNode 
if this object is in the octree, pointer to the node it's in, otherwise NULL
Object Owner 
UObject that owns the entry in the octree
byte OwnerType 
bitfield representing common classes of Owner so we can avoid casts

Functions

Static native functions

GetAllNavInRadius

static native final function bool GetAllNavInRadius (Actor ChkActor, Object.Vector ChkPoint, float Radius, out array<NavigationPointout_NavList, optional bool bSkipBlocked, optional int inNetworkID, optional Object.Cylinder MinSize)

Returns all navigation points near the ChkPoint specified by Radius.

Other static functions

GetNearestNavToActor

static final function NavigationPoint GetNearestNavToActor (Actor ChkActor, optional class<NavigationPointRequiredClass, optional array<NavigationPointExcludeList, optional float MinDist)

Returns the nearest valid navigation point to the given actor.

GetNearestNavToPoint

static final function NavigationPoint GetNearestNavToPoint (Actor ChkActor, Object.Vector ChkPoint, optional class<NavigationPointRequiredClass, optional array<NavigationPointExcludeList)

Returns the nearest valid navigation point to the given point.

Native functions

CanTeleport

native function bool CanTeleport (Actor A)

returns whether this NavigationPoint is a teleporter that can teleport the given Actor

GetBoundingCylinder

native function GetBoundingCylinder (out float CollisionRadius, out float CollisionHeight) const

Overrides: Actor.GetBoundingCylinder


GetReachSpecTo

native final function ReachSpec GetReachSpecTo (NavigationPoint Nav)


Events

Accept

event bool Accept (Actor Incoming, Actor Source)


DetourWeight

event float DetourWeight (Pawn Other, float PathWeight)


SpecialCost

event int SpecialCost (Pawn Seeker, ReachSpec Path)


SuggestMovePreparation

event bool SuggestMovePreparation (Pawn Other)


Other instance functions

IsAvailableTo

function bool IsAvailableTo (Actor chkActor)

Returns true if this point is available for chkActor to move to, allowing nodes to control availability.

OnMatchingNetworks

simulated function bool OnMatchingNetworks (NavigationPoint Nav)


OnToggle

function OnToggle (SeqAct_Toggle inAction)

Toggle the blocked state of a navigation point.

ProceedWithMove

function bool ProceedWithMove (Pawn Other)