The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall

UE3:PrimitiveComponent properties (UT3)

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search

Contents

PrimitiveComponent properties in other games:
UDK
Other member categories for this class:
native functions

Properties[edit]

Property group 'Collision'[edit]

BlockRigidBody[edit]

Type: bool

Modifiers: const


RBChannel[edit]

Type: ERBCollisionChannel

Modifiers: const

Enum indicating what type of object this should be considered for rigid body collision.

RBCollideWithChannels[edit]

Type: RBCollisionChannelContainer

Modifiers: const

Types of objects that this physics objects will collide with.

Property group 'Lighting'[edit]

bAcceptsDynamicLights[edit]

Type: bool

Modifiers: const

Whether this primitives accepts dynamic lights

controls whether the object should be affected by dynamic lights.

Default value: True

bAcceptsLights[edit]

Type: bool

Modifiers: const

Does this primitive accept lights?

controls whether the primitive accepts any lights. Should be set to FALSE for e.g. unlit objects as its a nice optimization - especially for larger objects.

bCastDynamicShadow[edit]

Type: bool

If false, primitive does not cast dynamic shadows.

controls whether the primitive should cast shadows in the case of non precomputed shadowing like e.g. the primitive being in between a light and a dynamic object. This flag is only used if CastShadow is TRUE. Currently dynamic primitives will not receive shadows from static objects unless both this flag and CastShadow are enabled.

Default value: True

bCastHiddenShadow[edit]

Type: bool

If TRUE, the primitive will cast shadows even if bHidden is TRUE.

Controls whether the primitive should cast shadows when hidden. This flag is only used if CastShadow is TRUE.

bForceDirectLightMap[edit]

Type: bool

Modifiers: const

If true, forces all static lights to use light-maps for direct lighting on this primitive, regardless of the light's UseDirectLightMap property.

forces the use of lightmaps for all static lights affecting this primitive even though the light might not be set to use light maps. This means that the primitive will not receive any shadows from dynamic objects obstructing static lights. It will correctly shadow in the case of dynamic lights

bUsePrecomputedShadows[edit]

Type: bool

Modifiers: const

Whether the primitive supports/ allows static shadowing

CastShadow[edit]

Type: bool

Whether to cast any shadows or not

controls whether the primitive component should cast a shadow or not. Currently dynamic primitives will not receive shadows from static objects unless both this flag and bCastDynamicSahdow are enabled.

LightingChannels[edit]

Type: LightComponent.LightingChannelContainer

Modifiers: const

Lighting channels controlling light/ primitive interaction. Only allows interaction if at least one channel is shared

Property group 'Physics'[edit]

bDisableAllRigidBody[edit]

Type: bool

Modifiers: const

Never create any physics engine representation for this body.

bFluidDrain[edit]

Type: bool

Modifiers: const

Whether this object should act as a 'drain' for fluid, and destroy fluid particles when they contact it.

bFluidTwoWay[edit]

Type: bool

Modifiers: const

Indicates that fluid interaction with this object should be 'two-way' - that is, force should be applied to both fluid and object.

bIgnoreForceField[edit]

Type: bool

Will ignore force field applied to this component.

bIgnoreRadialForce[edit]

Type: bool

Will ignore radial forces applied to this component.

bIgnoreRadialImpulse[edit]

Type: bool

Will ignore radial impulses applied to this component.

bNotifyRigidBodyCollision[edit]

Type: bool

Modifiers: const

Flag that indicates if OnRigidBodyCollision function should be called for physics collisions involving this PrimitiveComponent.

bUseCompartment[edit]

Type: bool

Modifiers: const

Place into a NxCompartment that will run in parallel with the primary scene's physics with potentially different simulation parameters.

If double buffering is enabled in the WorldInfo then physics will run in parallel with the entire game for this component.

PhysMaterialOverride[edit]

Type: PhysicalMaterial

Modifiers: const

Allows you to override the PhysicalMaterial to use for this PrimitiveComponent.

RBDominanceGroup[edit]

Type: byte

Used for creating one-way physics interactions (via constraints or contacts) Groups with lower RBDominanceGroup push around higher values in a 'one way' fashion. Must be <32.

Default value: 15

Property group 'PrimitiveComponent'[edit]

AbsoluteRotation[edit]

Type: bool

Modifiers: const


AbsoluteScale[edit]

Type: bool

Modifiers: const


AbsoluteTranslation[edit]

Type: bool

Modifiers: const


bIgnoreHiddenActorsMembership[edit]

Type: bool

Fixme: JF, Hack for gears ship to allow certain components to render even if the parent actor is part of the camera's HiddenActors array. Potentially worth cleaning up and integrating back to mainline, but I'm not really caring about that right now. :)

Rotation[edit]

Type: Object.Rotator

Modifiers: const


Scale[edit]

Type: float

Modifiers: const


Default value: 1.0

Scale3D[edit]

Type: Object.Vector

Modifiers: const


Default value:

Member Value
X 1.0
Y 1.0
Z 1.0

Translation[edit]

Type: Object.Vector

Modifiers: const


Property group 'Rendering'[edit]

bAcceptsDecals[edit]

Type: bool

Modifiers: const

If TRUE, this primitive accepts decals.

bAcceptsDecalsDuringGameplay[edit]

Type: bool

Modifiers: const

If TRUE, this primitive accepts decals spawned during gameplay. Effectively FALSE if bAcceptsDecals is FALSE.

Default value: True

bAcceptsFoliage[edit]

Type: bool

Modifiers: const

If TRUE, this primitive accepts foliage.

Default value: True

bAllowApproximateOcclusion[edit]

Type: bool

If this is True, this component doesn't need exact occlusion info.

bAllowCullDistanceVolume[edit]

Type: bool

Modifiers: const

Whether to accept cull distance volumes to modify cached cull distance.

Default value: True

bForceMipStreaming[edit]

Type: bool

Modifiers: const

If TRUE, forces mips for textures used by this component to be resident when this component's level is loaded.

bIgnoreOwnerHidden[edit]

Type: bool

Modifiers: const

If true, bHidden on the Owner of this component will be ignored.

bOnlyOwnerSee[edit]

Type: bool

Modifiers: const

If this is True, this component will only be visible when the view actor is the component's owner, directly or indirectly.

bOwnerNoSee[edit]

Type: bool

Modifiers: const

If this is True, this component won't be visible when the view actor is the component's owner, directly or indirectly.

bUseAsOccluder[edit]

Type: bool

If this is True, this primitive will be used to occlusion cull other primitives.

CachedCullDistance[edit]

Type: float

Modifiers: editconst

The distance to cull this primitive at. A CullDistance of 0 indicates that the primitive should not be culled by distance. The distance calculation uses the center of the primitive's bounding sphere.

CullDistance[edit]

Type: float

Modifiers: const, private, noexport

Cull distance exposed to LDs. The real cull distance is the min (disregarding 0) of this and volumes affecting this object.

DepthPriorityGroup[edit]

Type: Scene.ESceneDepthPriorityGroup

Modifiers: const

The scene depth priority group to draw the primitive in.

Default value: SDPG_World

DetailMode[edit]

Type: Scene.EDetailMode

Modifiers: const

If detail mode is >= system detail mode, primitive won't be rendered.

HiddenEditor[edit]

Type: bool

Modifiers: const


HiddenGame[edit]

Type: bool

Modifiers: const


MotionBlurScale[edit]

Type: float

Scalar controlling the amount of motion blur to be applied when object moves

Default value: 1.0

TranslucencySortPriority[edit]

Type: int

Translucent objects with a lower sort priority draw before objects with a higher priority. Translucent objects with the same priority are rendered from back-to-front based on their bounds origin.

Ignored if the object is not translucent. The default priority is zero.

Internal variables[edit]

AlwaysLoadOnClient[edit]

Type: bool

Modifiers: private, const

If this is True, this component must always be loaded on clients, even if HiddenGame && !CollideActors.

Default value: True

AlwaysLoadOnServer[edit]

Type: bool

Modifiers: private, const

If this is True, this component must always be loaded on servers, even if !CollideActors.

Default value: True

bIsRefreshingDecals[edit]

Type: bool

Modifiers: native, transient, const


BlockActors[edit]

Type: bool

Modifiers: const


BlockNonZeroExtent[edit]

Type: bool

Modifiers: const


BlockZeroExtent[edit]

Type: bool

Modifiers: const


BodyInstance[edit]

Type: RB_BodyInstance

Modifiers: const, native


Bounds[edit]

Type: Object.BoxSphereBounds

Modifiers: const, native, transient


bUseViewOwnerDepthPriorityGroup[edit]

Type: bool

Modifiers: const

True if the primitive should be rendered using ViewOwnerDepthPriorityGroup if viewed by its owner.

bWasSNFiltered[edit]

Type: bool

Modifiers: const, native, transient


CachedParentToWorld[edit]

Type: Object.Matrix

Modifiers: native, transient, const

Todo: please remove me if possible

CollideActors[edit]

Type: bool

Modifiers: const


DecalList[edit]

Type: array<pointer{class FDecalInteraction}>

Modifiers: native, private, noimport, const


DetachFence[edit]

Type: int

Modifiers: private, native, const

A fence to track when the primitive is detached from the scene in the rendering thread.

FogVolumeComponent[edit]

Type: FogVolumeDensityComponent

Modifiers: const, transient

Keeps track of which fog component this primitive is using.

LastRenderTime[edit]

Type: float

Modifiers: transient

The value of WorldInfo->TimeSeconds for the frame when this actor was last rendered. This is written from the render thread, which is up to a frame behind the game thread, so you should allow this time to be at least a frame behind the game thread's world time before you consider the actor non-visible. There's an equivalent variable in PrimitiveComponent.

LastSubmitTime[edit]

Type: float

Modifiers: const, transient

Last time the component was submitted for rendering (called FScene::AddPrimitive).

LightEnvironment[edit]

Type: LightEnvironmentComponent

Modifiers: const

The lighting environment to take the primitive's lighting from.

LocalToWorld[edit]

Type: Object.Matrix

Modifiers: native, transient, const


LocalToWorldDeterminant[edit]

Type: float

Modifiers: native, transient, const


MotionBlurInfoIndex[edit]

Type: int

Modifiers: native, transient, const

The index for the primitive component in the MotionBlurInfo array of the scene. Render-thread usage only. This assumes that there is only one scene that requires motion blur, as there is only a single index... If the application requires a primitive component to exist in multiple scenes and have motion blur in each of them, this can be changed into a mapping of the scene pointer to the index. (Associated functions would have to be updated as well...)

OctreeNodes[edit]

Type: array<int>

Modifiers: const, native, transient


RigidBodyIgnorePawns[edit]

Type: bool

Modifiers: const

DEPRECATED! Use RBChannel/RBCollideWithChannels instead now

SceneInfo[edit]

Type: pointer{FPrimitiveSceneInfo}

Modifiers: private, native, transient, const

The primitive's scene info.

ScriptRigidBodyCollisionThreshold[edit]

Type: float

if > 0, the script RigidBodyCollision() event will be called on our Owner when a physics collision involving this PrimitiveComponent occurs and the relative velocity is greater than or equal to this

ShadowParent[edit]

Type: PrimitiveComponent

Modifiers: const


Tag[edit]

Type: int

Modifiers: const, native, transient


ViewOwnerDepthPriorityGroup[edit]

Type: Scene.ESceneDepthPriorityGroup

Modifiers: const

The scene depth priority group to draw the primitive in, if it's being viewed by its owner.