Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Prefab

预制资源类。

Hierarchy

Index

Constructors

constructor

Properties

__asyncLoadAssets__

__asyncLoadAssets__: boolean = false

__depends__

__depends__: any = null

__nativeDepend__

__nativeDepend__: any = null

__onLoadedInvoked__

__onLoadedInvoked__: boolean = false

Private _createFunction

_createFunction: Function | null

Private _instantiatedTimes

_instantiatedTimes: number

_native

_native: string = ""

用于本机资产的可序列化URL。供内部使用。

default

""

_nativeUrl

_nativeUrl: string = ""

_uuid

_uuid: string

asyncLoadAssets

asyncLoadAssets: boolean = false

指示该 Prefab 依赖的资源可否在 Prefab 加载后再延迟加载。

default

false

data

data: any = null

Prefab 中的根节点,Node 类型

loaded

loaded: boolean = true

该资源是否已经成功加载。

optimizationPolicy

optimizationPolicy: number = OptimizationPolicy.AUTO

设置实例化这个 prefab 时所用的优化策略。根据使用情况设置为合适的值,能优化该 prefab 实例化所用的时间。推荐在编辑器的资源中设置。

default

Prefab.OptimizationPolicy.AUTO

example
import { Prefab } from 'cc';
prefab.optimizationPolicy = Prefab.OptimizationPolicy.MULTI_INSTANCE;

Static OptimizationPolicy

OptimizationPolicy: { AUTO: number; MULTI_INSTANCE: number; SINGLE_INSTANCE: number } = OptimizationPolicy

Prefab 创建实例所用的优化策略枚举类型

Type declaration

  • AUTO: number
    en

    The optimization policy is automatically chosen based on the number of instantiations. When you first create an instance, the behavior is the same as SINGLE_INSTANCE. MULTI_INSTANCE will be automatically used after multiple creation.

    zh

    根据创建次数自动调整优化策略。初次创建实例时,行为等同 SINGLE_INSTANCE,多次创建后将自动采用 MULTI_INSTANCE。

  • MULTI_INSTANCE: number
    en

    Optimize for creating instances multiple times.
    This option enables code generation for this prefab. When this prefab will usually create multiple instances, please select this option. It is also recommended to select this option if the prefab instance in the scene has Auto Sync enabled and there are multiple instances in the scene.

    zh

    优化多次创建性能。
    该选项会启用针对这个 prefab 的代码生成优化操作。当该 prefab 加载后,一般会创建多个实例时,请选择此项。如果该 prefab 在场景中的节点启用了自动关联,并且在场景中有多份实例,也建议选择此项。

  • SINGLE_INSTANCE: number
    en

    Optimize for single instance creation.
    This option skips code generation for this prefab. When this prefab will usually create only one instances, please select this option.

    zh

    优化单次创建性能。
    该选项会跳过针对这个 prefab 的代码生成优化操作。当该 prefab 加载后,一般只会创建一个实例时,请选择此项。

Static OptimizationPolicyThreshold

OptimizationPolicyThreshold: number = 3

Static _utils

_utils: "D:/workCode/editor-3d/resources/3d/engine/cocos/core/utils/prefab-utils"

内部使用工具类

Static preventDeferredLoadDependents

preventDeferredLoadDependents: boolean = false

当场景或 Prefab 被标记为 asyncLoadAssets,禁止延迟加载该资源所依赖的其它原始资源。

default

false

Static preventPreloadNativeObject

preventPreloadNativeObject: boolean = false

禁止预加载原生对象。

default

false

Accessors

Private nativeAsset

  • get nativeAsset(): any
  • set nativeAsset(obj: any): void
  • 此资源的基础资源(如果有)。 此属性可用于访问与资源相关的其他详细信息或功能。
    如果_native可用,则此属性将由加载器初始化。

    default

    null

    Returns any

  • 此资源的基础资源(如果有)。 此属性可用于访问与资源相关的其他详细信息或功能。
    如果_native可用,则此属性将由加载器初始化。

    default

    null

    Parameters

    • obj: any

    Returns void

nativeDep

  • get nativeDep(): undefined | { __isNative__: boolean; ext: string; uuid: string }

nativeUrl

  • get nativeUrl(): string

refCount

  • get refCount(): number

Methods

Private doInstantiate

  • doInstantiate(rootToRedirect?: any): any

Private instantiate

  • _instantiate(): any

Private setRawAsset

  • setRawAsset(filename: string, inLibrary?: boolean): void

addRef

compileCreateFunction

  • compileCreateFunction(): void
  • 将预制数据动态转换为最小化代码。
    此方法将在第一次实例化预制件之前自动调用,
    但是您可以在脚本中修改原始预制数据后重新调用以刷新创建功能。

    Returns void

createNode

  • createNode(cb: Function): void

decRef

  • decRef(autoRelease?: boolean): Asset

onLoaded

  • onLoaded(): void

Private serialize

  • serialize(): void

toString

  • toString(): string
  • 返回对象的字符串表示形式。
    Asset 对象将会重写 Object 对象的 toString() 方法。
    当资源要表示为文本值时或在字符串连接时引用时,
    JavaScript 会自动调用 toString() 方法。

    对于原始类型的资源,它将返回this.nativeUrl
    否则,返回空字符串。
    子类可能会覆盖此方法。

    method

    toString

    Returns string

Static deserialize

  • deserialize(data: any): any

Generated using TypeDoc