NovaECS - v1.0.11
    Preparing search index...

    Class ColumnSAB

    SharedArrayBuffer-based column implementation 基于SharedArrayBuffer的列实现

    Implements

    Index

    Constructors

    Methods

    • Zero-copy slice descriptor for Worker to rebuild TypedArray views 零拷贝切片描述,发给Worker重建TypedArray视图即可

      Parameters

      • start: number
      • end: number

      Returns {
          fields: Record<
              string,
              {
                  buffer: SharedArrayBuffer;
                  byteOffset: number;
                  length: number;
                  type: string;
              },
          >;
          writeMask: {
              buffer: SharedArrayBuffer;
              byteOffset: number;
              length: number;
          };
      }

    • Main thread reads and clears write mask (returns written row indices) 主线程读取并清空写掩码(返回被写行号)

      Returns number[]

    • Get per-row epochs - not supported for SAB backend, use writeMask instead 获取每行时代 - SAB后端不支持,使用writeMask替代

      Returns null | Uint32Array

    • Get write mask for change detection (read-only, doesn't clear) 获取写掩码用于变更检测(只读,不清空)

      Returns null | Uint8Array

    • (Main thread) Mark certain rows in this column as written, for changed() (主线程)标记这一列某些行被写,用于changed()

      Parameters

      • start: number
      • end: number

      Returns void

    • Add new row with default value at end, return row index 在末尾新增一行默认值,返回行号

      Returns number

    • Read to object (for debugging/serialization) 读取为对象(调试/序列化用)

      Parameters

      • row: number
      • out: Record<string, unknown> = {}

      Returns Record<string, unknown>

    • Swap-remove a row (for archetype migration) 交换删除一行(用于archetype迁移)

      Parameters

      • row: number

      Returns void

    • Convenience: get specific field view (for main thread local use) 便捷:拿到具体字段的视图(主线程本地用)

      Parameters

      • name: string

      Returns
          | Uint32Array
          | Uint8Array
          | Int32Array
          | Float32Array
          | Float64Array
          | Int16Array
          | Uint16Array
          | Int8Array

    • Write from object to specified row (for addInstance/serde) 从对象写入指定行(用于addInstance/序列化)

      Parameters

      • row: number
      • obj: Record<string, unknown>

      Returns void