Skip to content

Documentation / scene / SharedModel

Class: SharedModel

Defined in: libs/scene/src/asset/model.ts:874

Model information that can be shared by multiple model nodes

Extends

  • Disposable

Constructors

Constructor

new SharedModel(): SharedModel

Defined in: libs/scene/src/asset/model.ts:911

Creates an instance of SharedModel

Returns

SharedModel

Overrides

Disposable.constructor

Accessors

disposed

Get Signature

get disposed(): boolean

Defined in: libs/base/dist/index.d.ts:6107

Returns

boolean

Inherited from

Disposable.disposed


scenes

Get Signature

get scenes(): AssetScene[]

Defined in: libs/scene/src/asset/model.ts:931

All scenes that the model contains

Returns

AssetScene[]


primitives

Get Signature

get primitives(): AssetPrimitiveInfo[]

Defined in: libs/scene/src/asset/model.ts:935

All Primitives that the model contains

Returns

AssetPrimitiveInfo[]


nodes

Get Signature

get nodes(): AssetHierarchyNode[]

Defined in: libs/scene/src/asset/model.ts:939

All nodes that the model contains

Returns

AssetHierarchyNode[]


animations

Get Signature

get animations(): AssetAnimationData[]

Defined in: libs/scene/src/asset/model.ts:943

All animations that the model contains

Returns

AssetAnimationData[]


skeletons

Get Signature

get skeletons(): AssetSkeleton[]

Defined in: libs/scene/src/asset/model.ts:947

All skeletons that the model contains

Returns

AssetSkeleton[]


springBoneColliders

Get Signature

get springBoneColliders(): AssetSpringBoneCollider[]

Defined in: libs/scene/src/asset/model.ts:951

All SpringBone colliders that the model contains

Returns

AssetSpringBoneCollider[]


springBoneColliderGroups

Get Signature

get springBoneColliderGroups(): AssetSpringBoneColliderGroup[]

Defined in: libs/scene/src/asset/model.ts:955

All SpringBone collider groups that the model contains

Returns

AssetSpringBoneColliderGroup[]


springBones

Get Signature

get springBones(): AssetSpringBone[]

Defined in: libs/scene/src/asset/model.ts:959

All SpringBone springs that the model contains

Returns

AssetSpringBone[]


jointDynamicsColliders

Get Signature

get jointDynamicsColliders(): AssetJointDynamicsCollider[]

Defined in: libs/scene/src/asset/model.ts:963

SpringBone colliders converted to Zephyr3D JointDynamics collider format

Returns

AssetJointDynamicsCollider[]


jointDynamicsSpringBones

Get Signature

get jointDynamicsSpringBones(): AssetJointDynamicsSpringBone[]

Defined in: libs/scene/src/asset/model.ts:967

SpringBone springs converted to Zephyr3D JointDynamics system format

Returns

AssetJointDynamicsSpringBone[]


morphTargetGroups

Get Signature

get morphTargetGroups(): AssetMorphTargetGroup[]

Defined in: libs/scene/src/asset/model.ts:971

Model-level morph target groups, commonly facial expressions.

Returns

AssetMorphTargetGroup[]


activeScene

Get Signature

get activeScene(): number

Defined in: libs/scene/src/asset/model.ts:975

The active scene of the model

Returns

number

Set Signature

set activeScene(val): void

Defined in: libs/scene/src/asset/model.ts:978

Parameters
val

number

Returns

void

Methods

on()

on<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:630

IEventTarget.on

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener

EventListener<{ dispose: []; }, K>

context?

unknown

Returns

void

Inherited from

Disposable.on


once()

once<K>(type, listener, context?): void

Defined in: libs/base/dist/index.d.ts:634

IEventTarget.once

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener

EventListener<{ dispose: []; }, K>

context?

unknown

Returns

void

Inherited from

Disposable.once


off()

off<K>(type, listener?, context?): void

Defined in: libs/base/dist/index.d.ts:638

IEventTarget.off

Type Parameters

K

K extends "dispose"

Parameters

type

K

listener?

EventListener<{ dispose: []; }>

context?

unknown

Returns

void

Inherited from

Disposable.off


dispatchEvent()

dispatchEvent<K>(type, ...args): void

Defined in: libs/base/dist/index.d.ts:642

IEventTarget.dispatchEvent

Type Parameters

K

K extends "dispose"

Parameters

type

K

args

...object[K]

Returns

void

Inherited from

Disposable.dispatchEvent


dispose()

dispose(): void

Defined in: libs/base/dist/index.d.ts:6108

Returns

void

Inherited from

Disposable.dispose


getImage()

getImage(index): AssetImageInfo

Defined in: libs/scene/src/asset/model.ts:981

Parameters

index

number

Returns

AssetImageInfo


setImage()

setImage(index, img): void

Defined in: libs/scene/src/asset/model.ts:984

Parameters

index

number

img

AssetImageInfo

Returns

void


getMaterial()

getMaterial(hash): AssetMaterial

Defined in: libs/scene/src/asset/model.ts:987

Parameters

hash

string

Returns

AssetMaterial


setMaterial()

setMaterial(hash, material): void

Defined in: libs/scene/src/asset/model.ts:990

Parameters

hash

string

material

AssetMaterial

Returns

void


addPrimitive()

addPrimitive(prim): void

Defined in: libs/scene/src/asset/model.ts:993

Parameters

prim

AssetPrimitiveInfo

Returns

void


addMorphTargetGroup()

addMorphTargetGroup(group): void

Defined in: libs/scene/src/asset/model.ts:1237

Adds a model-level morph target group.

Parameters

group

AssetMorphTargetGroup

Morph target group to add

Returns

void


clearMorphTargetGroups()

clearMorphTargetGroups(): void

Defined in: libs/scene/src/asset/model.ts:1245

Removes all model-level morph target groups.

Returns

void


getMorphTargetGroup()

getMorphTargetGroup(name): AssetMorphTargetGroup

Defined in: libs/scene/src/asset/model.ts:1253

Finds a model-level morph target group by name.

Parameters

name

string

Group name

Returns

AssetMorphTargetGroup

The matching group, or null if not found


buildMorphTargetGroupsByName()

buildMorphTargetGroupsByName(): AssetMorphTargetGroup[]

Defined in: libs/scene/src/asset/model.ts:1260

Builds morph target groups by collecting morph target names from every mesh.

Returns

AssetMorphTargetGroup[]

Generated morph target groups


addSkeleton()

addSkeleton(skeleton): void

Defined in: libs/scene/src/asset/model.ts:1293

Adds a skeleton to the scene

Parameters

skeleton

AssetSkeleton

The skeleton to be added

Returns

void


addAnimation()

addAnimation(animation): void

Defined in: libs/scene/src/asset/model.ts:1300

Adds an animation to the scene

Parameters

animation

AssetAnimationData

The animation to be added

Returns

void


writePrimitive()

static writePrimitive(vfs, primitive, path): Promise<void>

Defined in: libs/scene/src/asset/model.ts:1303

Parameters

vfs

VFS

primitive

AssetPrimitiveInfo

path

string

Returns

Promise<void>


preprocess()

preprocess(manager, name, destPath, srcVFS, dstVFS): Promise<void>

Defined in: libs/scene/src/asset/model.ts:1332

preprocess

Parameters

manager

ResourceManager

name

string

destPath

string

srcVFS

VFS

dstVFS

VFS

Returns

Promise<void>


createJointDynamics()

createJointDynamics(rootNode, nodeMap): void

Defined in: libs/scene/src/asset/model.ts:1493

Parameters

rootNode

SceneNode

nodeMap

Map<AssetHierarchyNode, SceneNode>

Returns

void


createSceneNode()

createSceneNode(manager, scene, instancing, saveMeshes, saveSkeletons, saveAnimations, saveJointDynamics, srcVFS): Promise<SceneNode>

Defined in: libs/scene/src/asset/model.ts:1673

Parameters

manager

ResourceManager

scene

Scene

instancing

boolean

saveMeshes

boolean

saveSkeletons

boolean

saveAnimations

boolean

saveJointDynamics

boolean

srcVFS

VFS

Returns

Promise<SceneNode>


onDispose()

protected onDispose(): void

Defined in: libs/scene/src/asset/model.ts:2073

Returns

void

Overrides

Disposable.onDispose

Released under the MIT License.