minerender 2.1.0-alpha.87 → 2.1.0-alpha.88

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -105,6 +105,8 @@ interface EnvProvider {
105
105
  /** Read width/height out of encoded image bytes without fully decoding them. */
106
106
  imageSize(data: Uint8Array): ImageSizeInfo;
107
107
  openCache(name: string, version: number): PersistentCache;
108
+ /** Optional worker support; returns undefined where unavailable. Only the browser ESM build ships worker files. */
109
+ createWorker?(name: "section"): Worker | undefined;
108
110
  }
109
111
  /**
110
112
  * Registry holding the active {@link EnvProvider}.
@@ -766,6 +768,8 @@ declare function toRadians(degrees: number): number;
766
768
  declare function toDegrees(radians: number): number;
767
769
  /** Resolves after a delay in milliseconds. */
768
770
  declare function sleep(timeout: number): Promise<void>;
771
+ /** Yields to the next macrotask without timer clamping when the platform supports it. */
772
+ declare function yieldToEventLoop(): Promise<void>;
769
773
  /** Reduces an angle modulo 360, retaining a negative sign for negative inputs. */
770
774
  declare function clampRotationDegrees(deg: number): number;
771
775
  declare function isVector3(obj: any): obj is Vector3;
@@ -3111,6 +3115,8 @@ declare class ChunkData {
3111
3115
  set(index: number, block?: Block): void;
3112
3116
  clear(): void;
3113
3117
  static isAir(block: Maybe<Block>): boolean;
3118
+ /** Identifies a normalized block type and its sorted properties, excluding per-cell NBT. */
3119
+ static paletteKey(block: Block): string;
3114
3120
  private static copyBlock;
3115
3121
  private static validateIndex;
3116
3122
  }
@@ -3216,6 +3222,9 @@ declare class SectionMesh extends Group {
3216
3222
  private readonly ownedMeshes;
3217
3223
  /** Builds section-local meshes from visible cube faces. `maxAtlasSize` limits each atlas dimension in pixels. */
3218
3224
  static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number): SectionMesh;
3225
+ /** Builds section-local meshes in a browser worker when available, with synchronous fallback. */
3226
+ static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number): Promise<SectionMesh>;
3227
+ private static fromPages;
3219
3228
  dispose(): void;
3220
3229
  }
3221
3230
 
@@ -3249,8 +3258,10 @@ declare class Chunk<SectionMeshing extends boolean = false> {
3249
3258
  private readonly renderedBlocks;
3250
3259
  private readonly sectionBlocks;
3251
3260
  private readonly hiddenBlocks;
3261
+ private readonly blockPosition;
3252
3262
  private sectionMesh?;
3253
3263
  private meshDirty;
3264
+ private meshGeneration;
3254
3265
  constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined);
3255
3266
  getBlockAt(x: number, y: number, z: number): Maybe<BlockInfo<SectionMeshing>>;
3256
3267
  getBlockAt(pos: Vector3): Maybe<BlockInfo<SectionMeshing>>;
@@ -3265,12 +3276,24 @@ declare class Chunk<SectionMeshing extends boolean = false> {
3265
3276
  * Places a block at integer chunk-local coordinates from 0 to 15.
3266
3277
  */
3267
3278
  setBlockInChunkAt(pos: Vector3, block?: Block, worldPos?: Vector3, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined): Promise<Maybe<BlockInfo<SectionMeshing>>>;
3279
+ /** Places cells in input order and returns changed world positions without refreshing neighbors. */
3280
+ placeBlocks(blocks: readonly {
3281
+ index: number;
3282
+ block: Maybe<Block>;
3283
+ }[]): Promise<Vector3[]>;
3268
3284
  /** Changes visibility at world block coordinates while preserving the block's data. */
3269
3285
  setBlockVisibleAt(pos: Vector3, visible: boolean): Promise<void>;
3270
3286
  isBlockVisibleAt(pos: Vector3): boolean;
3287
+ /** Reports whether a cell has a visible render object or section entry. */
3288
+ isBlockVisibleIndex(index: number): boolean;
3271
3289
  isOccludingAt(pos: Vector3): boolean;
3290
+ /** Reports whether a visible cell hides neighboring cube faces. */
3291
+ isOccludingIndex(index: number): boolean;
3272
3292
  setCullMaskAt(pos: Vector3, mask: number): Promise<void>;
3273
- rebuildSectionMesh(): void;
3293
+ /** Updates hidden faces for a cell's section entry or individual render object. */
3294
+ setCullMaskIndex(index: number, mask: number): Promise<void>;
3295
+ /** Rebuilds visible section geometry and discards results superseded by another rebuild or clear. */
3296
+ rebuildSectionMesh(): Promise<void>;
3274
3297
  /** Removes stored blocks and their render objects, then notifies the owning world of changed positions. */
3275
3298
  clear(onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined): Promise<void>;
3276
3299
  dispose(): Promise<void>;
@@ -3316,11 +3339,12 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
3316
3339
  * Places a structure's blocks at their stored positions, then refreshes neighboring faces.
3317
3340
  * Entity NBT is retained by the structure but is not rendered.
3318
3341
  *
3319
- * @param useBatches - Uses bounded batches by default. Set to `false` for sequential placement.
3342
+ * @param useBatches - Yields between chunks by default. Set to `false` for sequential placement.
3320
3343
  * @param executor - Optional queue for batched placement. The caller remains responsible for stopping it.
3321
3344
  */
3322
3345
  placeMultiBlock(multiblock: MultiBlockStructure, useBatches?: boolean, executor?: BatchedExecutor): Promise<void>;
3323
3346
  private placeBlocks;
3347
+ private placeChunkGroups;
3324
3348
  /** Replaces one chunk column's blocks. Entity NBT remains available on the parsed chunk. */
3325
3349
  placeChunk(chunk: AnvilChunk, executor?: BatchedExecutor): Promise<void>;
3326
3350
  /**
@@ -3350,6 +3374,70 @@ interface MineRenderWorldOptions<SectionMeshing extends boolean = boolean> {
3350
3374
  maxAtlasSize?: number;
3351
3375
  }
3352
3376
 
3377
+ /** One cube template with four vertices per face in `CUBE_FACES` order. */
3378
+ interface SectionTemplateData {
3379
+ positions: Float32Array;
3380
+ normals: Float32Array;
3381
+ uvs: Float32Array;
3382
+ uvBounds: Float32Array;
3383
+ colors: Float32Array;
3384
+ indices: Uint16Array;
3385
+ cullFaces: Uint8Array;
3386
+ atlas: number;
3387
+ }
3388
+ /** The pixel dimensions of a template atlas. */
3389
+ interface SectionAtlasSize {
3390
+ width: number;
3391
+ height: number;
3392
+ }
3393
+ /** Section placements and their shared cube templates, ready for geometry building. */
3394
+ interface SectionGeometryInput {
3395
+ count: number;
3396
+ indices: Uint16Array;
3397
+ templates: Uint16Array;
3398
+ cullMasks: Uint8Array;
3399
+ templateData: SectionTemplateData[];
3400
+ atlases: SectionAtlasSize[];
3401
+ maxAtlasSize: number;
3402
+ }
3403
+ /** Merged cube faces and source-atlas placements for one atlas page. */
3404
+ interface SectionGeometryPage {
3405
+ width: number;
3406
+ height: number;
3407
+ placements: {
3408
+ atlas: number;
3409
+ x: number;
3410
+ y: number;
3411
+ }[];
3412
+ positions: Float32Array;
3413
+ normals: Float32Array;
3414
+ uvs: Float32Array;
3415
+ uvBounds: Float32Array;
3416
+ colors: Float32Array;
3417
+ indices: Uint32Array;
3418
+ }
3419
+ /** Builds section-local geometry from visible cube faces, with bounded atlas pages. */
3420
+ declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
3421
+ /** Returns the buffers behind each page's typed arrays for transfer to another thread. */
3422
+ declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
3423
+
3424
+ /** Runs section geometry builds in the environment's shared worker. */
3425
+ declare class SectionWorker {
3426
+ private worker;
3427
+ private static initialized;
3428
+ private static instance;
3429
+ private nextId;
3430
+ private readonly pending;
3431
+ private constructor();
3432
+ /** The shared worker, or undefined when the environment has none or a previous worker failed. */
3433
+ static shared(): SectionWorker | undefined;
3434
+ /** Builds geometry without transferring the input buffers away from the caller. */
3435
+ build(input: SectionGeometryInput): Promise<SectionGeometryPage[]>;
3436
+ /** Rejects pending builds, terminates the worker, and makes shared() return undefined. */
3437
+ terminate(): void;
3438
+ private fail;
3439
+ }
3440
+
3353
3441
  interface WorldStreamerOptions {
3354
3442
  /** Loads a square of chunk columns around the center. Integer from 0 to 32; defaults to 2. */
3355
3443
  loadRadius?: number;
@@ -3427,6 +3515,7 @@ declare class BrowserEnv implements EnvProvider {
3427
3515
  createImage(width?: number, height?: number): CompatImage;
3428
3516
  imageSize(data: Uint8Array): ImageSizeInfo;
3429
3517
  openCache(name: string, version: number): PersistentCache;
3518
+ createWorker(name: "section"): Worker | undefined;
3430
3519
  }
3431
3520
  /** Installs the browser provider. The browser package entry calls this automatically. */
3432
3521
  declare function registerBrowserEnv(): BrowserEnv;
@@ -3454,4 +3543,4 @@ declare class BrowserCache extends PersistentCache<LocalForage> {
3454
3543
  */
3455
3544
  declare function probeImageSize(data: Uint8Array): ImageSizeInfo;
3456
3545
 
3457
- export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, AnvilParser, type AnvilRegion, type AnvilRegionReader, AnvilWorldSource, type AnvilWorldSourceOptions, ArchiveAssetSource, type ArchiveAssetSourceOptions, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoadError, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, type BannerPattern, type BannerPatternDraw, BannerPatterns, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type BitmapFont, type BitmapGlyph, type Block, BlockEntities, type BlockEntityEntry, type BlockEntityIndex, type BlockEntityPart, type BlockEntityRotation, type BlockFluidState, type BlockInfo, type BlockModel, type BlockModelTextures, BlockObject, type BlockObjectOptions, type BlockState, type BlockStateMultipart, type BlockStateProperties, type BlockStateProperty, type BlockStatePropertyDefaults, type BlockStatePropertyValue, BlockStateResolver, type BlockStateVariant, type BlockStateVariants, BlockStates, BlockTints, type BoxGeometryKey, BrowserArchiveProxy, BrowserCache, BrowserEnv, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DeepPartial, DefaultBlockStates, DisplayPosition, DisplayTransforms, type Disposable, type DoubleArray, type DyeColor, ENTITY_ANIMATION_CHANNELS, type ElementFace, type ElementRotation, Entities, type EntityAnimation, type EntityAnimationBone, type EntityAnimationChannel, type EntityAnimationFile, type EntityAnimationKeyframe, type EntityAnimationOptions, EntityAnimationPlayer, type EntityAnimationPose, type EntityLayer, type EntityModel, type EntityModelCube, type EntityModelFile, type EntityModelLayer, type EntityModelOptions, type EntityModelPart, type EntityModelPass, EntityObject, type EntityObjectOptions, type EntityRenderMode, type EntityTransformOp, Env, type EnvProvider, type ExtractableImageData, type FluidKind, FluidModelObject, type FluidSample, type FluidSampler, Fonts, type FrameCallback, type FromTo, GUI_CONTAINER_LAYOUTS, Geometries, type GuiBookButtonState, type GuiBookOptions, type GuiBossBarColor, type GuiBossBarOptions, type GuiContainerType, GuiHelper, type GuiItemLayer, type GuiLayer, GuiLight, GuiObject, type GuiObjectOptions, type GuiRecipe, type GuiRecipeIngredient, type GuiRecipeOptions, type GuiSpriteScaling, type GuiText, type GuiTextLayer, type GuiTextLayout, type GuiTextOptions, type GuiTextRun, type GuiTextStyle, type GuiTextureLayer, type GuiTooltipOptions, HostedAssetSource, type IModelTextures, ITEM_GENERATED, type ImageInfo, ImageLoader, type ImageSizeInfo, InstanceManager, InstanceReference, type Instanceable, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderError, MineRenderScene, type MineRenderSceneOptions, MineRenderWorld, type MineRenderWorldOptions, type MinecraftAsset, MinecraftCubeTexture, MinecraftFaceUV, type MinecraftTextureMeta, type Model, ModelCulling, type ModelDisplay, type ModelElement, type ModelFaces, ModelGenerator, ModelMerger, ModelObject, type ModelObjectOptions, ModelTextures, Models, type MultiBlockBlock, type MultiBlockEntity, type MultiBlockStructure, type MultipartCondition, type NBTAsset, NBTHelper, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResponseParser, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, SectionMesh, type SectionMeshEntry, type SectionMeshTemplate, SectionModels, type Serializable, type SkinGeometries, SkinImage, SkinObject, type SkinObjectOptions, SkinPart, type SkinTexture, type SkinTextureCoordinates, SkinTextures, Skins, type SpecialItemPart, type SpecialItemRenderer, SpecialItems, type StructureNBT, StructureParser, type TextureAsset, TextureAtlas, type TextureKey, TextureLoader, Textures, Ticker, type TickerFunction, TintColors, type Transformable, type TripleArray, UVMapper, type VideoExportOptions, VideoExporter, type WorldChunkSource, WorldStreamer, type WorldStreamerOptions, WrappedImage, addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation, applyGenericRotation, axisToVec3, base64decode, base64encode, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, entityAnimationTime, estimateBytesUsed, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas };
3546
+ export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, AnvilParser, type AnvilRegion, type AnvilRegionReader, AnvilWorldSource, type AnvilWorldSourceOptions, ArchiveAssetSource, type ArchiveAssetSourceOptions, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoadError, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, type BannerPattern, type BannerPatternDraw, BannerPatterns, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type BitmapFont, type BitmapGlyph, type Block, BlockEntities, type BlockEntityEntry, type BlockEntityIndex, type BlockEntityPart, type BlockEntityRotation, type BlockFluidState, type BlockInfo, type BlockModel, type BlockModelTextures, BlockObject, type BlockObjectOptions, type BlockState, type BlockStateMultipart, type BlockStateProperties, type BlockStateProperty, type BlockStatePropertyDefaults, type BlockStatePropertyValue, BlockStateResolver, type BlockStateVariant, type BlockStateVariants, BlockStates, BlockTints, type BoxGeometryKey, BrowserArchiveProxy, BrowserCache, BrowserEnv, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DeepPartial, DefaultBlockStates, DisplayPosition, DisplayTransforms, type Disposable, type DoubleArray, type DyeColor, ENTITY_ANIMATION_CHANNELS, type ElementFace, type ElementRotation, Entities, type EntityAnimation, type EntityAnimationBone, type EntityAnimationChannel, type EntityAnimationFile, type EntityAnimationKeyframe, type EntityAnimationOptions, EntityAnimationPlayer, type EntityAnimationPose, type EntityLayer, type EntityModel, type EntityModelCube, type EntityModelFile, type EntityModelLayer, type EntityModelOptions, type EntityModelPart, type EntityModelPass, EntityObject, type EntityObjectOptions, type EntityRenderMode, type EntityTransformOp, Env, type EnvProvider, type ExtractableImageData, type FluidKind, FluidModelObject, type FluidSample, type FluidSampler, Fonts, type FrameCallback, type FromTo, GUI_CONTAINER_LAYOUTS, Geometries, type GuiBookButtonState, type GuiBookOptions, type GuiBossBarColor, type GuiBossBarOptions, type GuiContainerType, GuiHelper, type GuiItemLayer, type GuiLayer, GuiLight, GuiObject, type GuiObjectOptions, type GuiRecipe, type GuiRecipeIngredient, type GuiRecipeOptions, type GuiSpriteScaling, type GuiText, type GuiTextLayer, type GuiTextLayout, type GuiTextOptions, type GuiTextRun, type GuiTextStyle, type GuiTextureLayer, type GuiTooltipOptions, HostedAssetSource, type IModelTextures, ITEM_GENERATED, type ImageInfo, ImageLoader, type ImageSizeInfo, InstanceManager, InstanceReference, type Instanceable, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderError, MineRenderScene, type MineRenderSceneOptions, MineRenderWorld, type MineRenderWorldOptions, type MinecraftAsset, MinecraftCubeTexture, MinecraftFaceUV, type MinecraftTextureMeta, type Model, ModelCulling, type ModelDisplay, type ModelElement, type ModelFaces, ModelGenerator, ModelMerger, ModelObject, type ModelObjectOptions, ModelTextures, Models, type MultiBlockBlock, type MultiBlockEntity, type MultiBlockStructure, type MultipartCondition, type NBTAsset, NBTHelper, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResponseParser, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionGeometryInput, type SectionGeometryPage, SectionMesh, type SectionMeshEntry, type SectionMeshTemplate, SectionModels, type SectionTemplateData, SectionWorker, type Serializable, type SkinGeometries, SkinImage, SkinObject, type SkinObjectOptions, SkinPart, type SkinTexture, type SkinTextureCoordinates, SkinTextures, Skins, type SpecialItemPart, type SpecialItemRenderer, SpecialItems, type StructureNBT, StructureParser, type TextureAsset, TextureAtlas, type TextureKey, TextureLoader, Textures, Ticker, type TickerFunction, TintColors, type Transformable, type TripleArray, UVMapper, type VideoExportOptions, VideoExporter, type WorldChunkSource, WorldStreamer, type WorldStreamerOptions, WrappedImage, addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation, applyGenericRotation, axisToVec3, base64decode, base64encode, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, entityAnimationTime, estimateBytesUsed, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };
@@ -105,6 +105,8 @@ interface EnvProvider {
105
105
  /** Read width/height out of encoded image bytes without fully decoding them. */
106
106
  imageSize(data: Uint8Array): ImageSizeInfo;
107
107
  openCache(name: string, version: number): PersistentCache;
108
+ /** Optional worker support; returns undefined where unavailable. Only the browser ESM build ships worker files. */
109
+ createWorker?(name: "section"): Worker | undefined;
108
110
  }
109
111
  /**
110
112
  * Registry holding the active {@link EnvProvider}.
@@ -766,6 +768,8 @@ declare function toRadians(degrees: number): number;
766
768
  declare function toDegrees(radians: number): number;
767
769
  /** Resolves after a delay in milliseconds. */
768
770
  declare function sleep(timeout: number): Promise<void>;
771
+ /** Yields to the next macrotask without timer clamping when the platform supports it. */
772
+ declare function yieldToEventLoop(): Promise<void>;
769
773
  /** Reduces an angle modulo 360, retaining a negative sign for negative inputs. */
770
774
  declare function clampRotationDegrees(deg: number): number;
771
775
  declare function isVector3(obj: any): obj is Vector3;
@@ -3111,6 +3115,8 @@ declare class ChunkData {
3111
3115
  set(index: number, block?: Block): void;
3112
3116
  clear(): void;
3113
3117
  static isAir(block: Maybe<Block>): boolean;
3118
+ /** Identifies a normalized block type and its sorted properties, excluding per-cell NBT. */
3119
+ static paletteKey(block: Block): string;
3114
3120
  private static copyBlock;
3115
3121
  private static validateIndex;
3116
3122
  }
@@ -3216,6 +3222,9 @@ declare class SectionMesh extends Group {
3216
3222
  private readonly ownedMeshes;
3217
3223
  /** Builds section-local meshes from visible cube faces. `maxAtlasSize` limits each atlas dimension in pixels. */
3218
3224
  static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number): SectionMesh;
3225
+ /** Builds section-local meshes in a browser worker when available, with synchronous fallback. */
3226
+ static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number): Promise<SectionMesh>;
3227
+ private static fromPages;
3219
3228
  dispose(): void;
3220
3229
  }
3221
3230
 
@@ -3249,8 +3258,10 @@ declare class Chunk<SectionMeshing extends boolean = false> {
3249
3258
  private readonly renderedBlocks;
3250
3259
  private readonly sectionBlocks;
3251
3260
  private readonly hiddenBlocks;
3261
+ private readonly blockPosition;
3252
3262
  private sectionMesh?;
3253
3263
  private meshDirty;
3264
+ private meshGeneration;
3254
3265
  constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined);
3255
3266
  getBlockAt(x: number, y: number, z: number): Maybe<BlockInfo<SectionMeshing>>;
3256
3267
  getBlockAt(pos: Vector3): Maybe<BlockInfo<SectionMeshing>>;
@@ -3265,12 +3276,24 @@ declare class Chunk<SectionMeshing extends boolean = false> {
3265
3276
  * Places a block at integer chunk-local coordinates from 0 to 15.
3266
3277
  */
3267
3278
  setBlockInChunkAt(pos: Vector3, block?: Block, worldPos?: Vector3, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined): Promise<Maybe<BlockInfo<SectionMeshing>>>;
3279
+ /** Places cells in input order and returns changed world positions without refreshing neighbors. */
3280
+ placeBlocks(blocks: readonly {
3281
+ index: number;
3282
+ block: Maybe<Block>;
3283
+ }[]): Promise<Vector3[]>;
3268
3284
  /** Changes visibility at world block coordinates while preserving the block's data. */
3269
3285
  setBlockVisibleAt(pos: Vector3, visible: boolean): Promise<void>;
3270
3286
  isBlockVisibleAt(pos: Vector3): boolean;
3287
+ /** Reports whether a cell has a visible render object or section entry. */
3288
+ isBlockVisibleIndex(index: number): boolean;
3271
3289
  isOccludingAt(pos: Vector3): boolean;
3290
+ /** Reports whether a visible cell hides neighboring cube faces. */
3291
+ isOccludingIndex(index: number): boolean;
3272
3292
  setCullMaskAt(pos: Vector3, mask: number): Promise<void>;
3273
- rebuildSectionMesh(): void;
3293
+ /** Updates hidden faces for a cell's section entry or individual render object. */
3294
+ setCullMaskIndex(index: number, mask: number): Promise<void>;
3295
+ /** Rebuilds visible section geometry and discards results superseded by another rebuild or clear. */
3296
+ rebuildSectionMesh(): Promise<void>;
3274
3297
  /** Removes stored blocks and their render objects, then notifies the owning world of changed positions. */
3275
3298
  clear(onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined): Promise<void>;
3276
3299
  dispose(): Promise<void>;
@@ -3316,11 +3339,12 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
3316
3339
  * Places a structure's blocks at their stored positions, then refreshes neighboring faces.
3317
3340
  * Entity NBT is retained by the structure but is not rendered.
3318
3341
  *
3319
- * @param useBatches - Uses bounded batches by default. Set to `false` for sequential placement.
3342
+ * @param useBatches - Yields between chunks by default. Set to `false` for sequential placement.
3320
3343
  * @param executor - Optional queue for batched placement. The caller remains responsible for stopping it.
3321
3344
  */
3322
3345
  placeMultiBlock(multiblock: MultiBlockStructure, useBatches?: boolean, executor?: BatchedExecutor): Promise<void>;
3323
3346
  private placeBlocks;
3347
+ private placeChunkGroups;
3324
3348
  /** Replaces one chunk column's blocks. Entity NBT remains available on the parsed chunk. */
3325
3349
  placeChunk(chunk: AnvilChunk, executor?: BatchedExecutor): Promise<void>;
3326
3350
  /**
@@ -3350,6 +3374,70 @@ interface MineRenderWorldOptions<SectionMeshing extends boolean = boolean> {
3350
3374
  maxAtlasSize?: number;
3351
3375
  }
3352
3376
 
3377
+ /** One cube template with four vertices per face in `CUBE_FACES` order. */
3378
+ interface SectionTemplateData {
3379
+ positions: Float32Array;
3380
+ normals: Float32Array;
3381
+ uvs: Float32Array;
3382
+ uvBounds: Float32Array;
3383
+ colors: Float32Array;
3384
+ indices: Uint16Array;
3385
+ cullFaces: Uint8Array;
3386
+ atlas: number;
3387
+ }
3388
+ /** The pixel dimensions of a template atlas. */
3389
+ interface SectionAtlasSize {
3390
+ width: number;
3391
+ height: number;
3392
+ }
3393
+ /** Section placements and their shared cube templates, ready for geometry building. */
3394
+ interface SectionGeometryInput {
3395
+ count: number;
3396
+ indices: Uint16Array;
3397
+ templates: Uint16Array;
3398
+ cullMasks: Uint8Array;
3399
+ templateData: SectionTemplateData[];
3400
+ atlases: SectionAtlasSize[];
3401
+ maxAtlasSize: number;
3402
+ }
3403
+ /** Merged cube faces and source-atlas placements for one atlas page. */
3404
+ interface SectionGeometryPage {
3405
+ width: number;
3406
+ height: number;
3407
+ placements: {
3408
+ atlas: number;
3409
+ x: number;
3410
+ y: number;
3411
+ }[];
3412
+ positions: Float32Array;
3413
+ normals: Float32Array;
3414
+ uvs: Float32Array;
3415
+ uvBounds: Float32Array;
3416
+ colors: Float32Array;
3417
+ indices: Uint32Array;
3418
+ }
3419
+ /** Builds section-local geometry from visible cube faces, with bounded atlas pages. */
3420
+ declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
3421
+ /** Returns the buffers behind each page's typed arrays for transfer to another thread. */
3422
+ declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
3423
+
3424
+ /** Runs section geometry builds in the environment's shared worker. */
3425
+ declare class SectionWorker {
3426
+ private worker;
3427
+ private static initialized;
3428
+ private static instance;
3429
+ private nextId;
3430
+ private readonly pending;
3431
+ private constructor();
3432
+ /** The shared worker, or undefined when the environment has none or a previous worker failed. */
3433
+ static shared(): SectionWorker | undefined;
3434
+ /** Builds geometry without transferring the input buffers away from the caller. */
3435
+ build(input: SectionGeometryInput): Promise<SectionGeometryPage[]>;
3436
+ /** Rejects pending builds, terminates the worker, and makes shared() return undefined. */
3437
+ terminate(): void;
3438
+ private fail;
3439
+ }
3440
+
3353
3441
  interface WorldStreamerOptions {
3354
3442
  /** Loads a square of chunk columns around the center. Integer from 0 to 32; defaults to 2. */
3355
3443
  loadRadius?: number;
@@ -3427,6 +3515,7 @@ declare class BrowserEnv implements EnvProvider {
3427
3515
  createImage(width?: number, height?: number): CompatImage;
3428
3516
  imageSize(data: Uint8Array): ImageSizeInfo;
3429
3517
  openCache(name: string, version: number): PersistentCache;
3518
+ createWorker(name: "section"): Worker | undefined;
3430
3519
  }
3431
3520
  /** Installs the browser provider. The browser package entry calls this automatically. */
3432
3521
  declare function registerBrowserEnv(): BrowserEnv;
@@ -3454,4 +3543,4 @@ declare class BrowserCache extends PersistentCache<LocalForage> {
3454
3543
  */
3455
3544
  declare function probeImageSize(data: Uint8Array): ImageSizeInfo;
3456
3545
 
3457
- export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, AnvilParser, type AnvilRegion, type AnvilRegionReader, AnvilWorldSource, type AnvilWorldSourceOptions, ArchiveAssetSource, type ArchiveAssetSourceOptions, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoadError, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, type BannerPattern, type BannerPatternDraw, BannerPatterns, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type BitmapFont, type BitmapGlyph, type Block, BlockEntities, type BlockEntityEntry, type BlockEntityIndex, type BlockEntityPart, type BlockEntityRotation, type BlockFluidState, type BlockInfo, type BlockModel, type BlockModelTextures, BlockObject, type BlockObjectOptions, type BlockState, type BlockStateMultipart, type BlockStateProperties, type BlockStateProperty, type BlockStatePropertyDefaults, type BlockStatePropertyValue, BlockStateResolver, type BlockStateVariant, type BlockStateVariants, BlockStates, BlockTints, type BoxGeometryKey, BrowserArchiveProxy, BrowserCache, BrowserEnv, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DeepPartial, DefaultBlockStates, DisplayPosition, DisplayTransforms, type Disposable, type DoubleArray, type DyeColor, ENTITY_ANIMATION_CHANNELS, type ElementFace, type ElementRotation, Entities, type EntityAnimation, type EntityAnimationBone, type EntityAnimationChannel, type EntityAnimationFile, type EntityAnimationKeyframe, type EntityAnimationOptions, EntityAnimationPlayer, type EntityAnimationPose, type EntityLayer, type EntityModel, type EntityModelCube, type EntityModelFile, type EntityModelLayer, type EntityModelOptions, type EntityModelPart, type EntityModelPass, EntityObject, type EntityObjectOptions, type EntityRenderMode, type EntityTransformOp, Env, type EnvProvider, type ExtractableImageData, type FluidKind, FluidModelObject, type FluidSample, type FluidSampler, Fonts, type FrameCallback, type FromTo, GUI_CONTAINER_LAYOUTS, Geometries, type GuiBookButtonState, type GuiBookOptions, type GuiBossBarColor, type GuiBossBarOptions, type GuiContainerType, GuiHelper, type GuiItemLayer, type GuiLayer, GuiLight, GuiObject, type GuiObjectOptions, type GuiRecipe, type GuiRecipeIngredient, type GuiRecipeOptions, type GuiSpriteScaling, type GuiText, type GuiTextLayer, type GuiTextLayout, type GuiTextOptions, type GuiTextRun, type GuiTextStyle, type GuiTextureLayer, type GuiTooltipOptions, HostedAssetSource, type IModelTextures, ITEM_GENERATED, type ImageInfo, ImageLoader, type ImageSizeInfo, InstanceManager, InstanceReference, type Instanceable, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderError, MineRenderScene, type MineRenderSceneOptions, MineRenderWorld, type MineRenderWorldOptions, type MinecraftAsset, MinecraftCubeTexture, MinecraftFaceUV, type MinecraftTextureMeta, type Model, ModelCulling, type ModelDisplay, type ModelElement, type ModelFaces, ModelGenerator, ModelMerger, ModelObject, type ModelObjectOptions, ModelTextures, Models, type MultiBlockBlock, type MultiBlockEntity, type MultiBlockStructure, type MultipartCondition, type NBTAsset, NBTHelper, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResponseParser, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, SectionMesh, type SectionMeshEntry, type SectionMeshTemplate, SectionModels, type Serializable, type SkinGeometries, SkinImage, SkinObject, type SkinObjectOptions, SkinPart, type SkinTexture, type SkinTextureCoordinates, SkinTextures, Skins, type SpecialItemPart, type SpecialItemRenderer, SpecialItems, type StructureNBT, StructureParser, type TextureAsset, TextureAtlas, type TextureKey, TextureLoader, Textures, Ticker, type TickerFunction, TintColors, type Transformable, type TripleArray, UVMapper, type VideoExportOptions, VideoExporter, type WorldChunkSource, WorldStreamer, type WorldStreamerOptions, WrappedImage, addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation, applyGenericRotation, axisToVec3, base64decode, base64encode, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, entityAnimationTime, estimateBytesUsed, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas };
3546
+ export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, AnvilParser, type AnvilRegion, type AnvilRegionReader, AnvilWorldSource, type AnvilWorldSourceOptions, ArchiveAssetSource, type ArchiveAssetSourceOptions, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoadError, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, type BannerPattern, type BannerPatternDraw, BannerPatterns, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type BitmapFont, type BitmapGlyph, type Block, BlockEntities, type BlockEntityEntry, type BlockEntityIndex, type BlockEntityPart, type BlockEntityRotation, type BlockFluidState, type BlockInfo, type BlockModel, type BlockModelTextures, BlockObject, type BlockObjectOptions, type BlockState, type BlockStateMultipart, type BlockStateProperties, type BlockStateProperty, type BlockStatePropertyDefaults, type BlockStatePropertyValue, BlockStateResolver, type BlockStateVariant, type BlockStateVariants, BlockStates, BlockTints, type BoxGeometryKey, BrowserArchiveProxy, BrowserCache, BrowserEnv, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DeepPartial, DefaultBlockStates, DisplayPosition, DisplayTransforms, type Disposable, type DoubleArray, type DyeColor, ENTITY_ANIMATION_CHANNELS, type ElementFace, type ElementRotation, Entities, type EntityAnimation, type EntityAnimationBone, type EntityAnimationChannel, type EntityAnimationFile, type EntityAnimationKeyframe, type EntityAnimationOptions, EntityAnimationPlayer, type EntityAnimationPose, type EntityLayer, type EntityModel, type EntityModelCube, type EntityModelFile, type EntityModelLayer, type EntityModelOptions, type EntityModelPart, type EntityModelPass, EntityObject, type EntityObjectOptions, type EntityRenderMode, type EntityTransformOp, Env, type EnvProvider, type ExtractableImageData, type FluidKind, FluidModelObject, type FluidSample, type FluidSampler, Fonts, type FrameCallback, type FromTo, GUI_CONTAINER_LAYOUTS, Geometries, type GuiBookButtonState, type GuiBookOptions, type GuiBossBarColor, type GuiBossBarOptions, type GuiContainerType, GuiHelper, type GuiItemLayer, type GuiLayer, GuiLight, GuiObject, type GuiObjectOptions, type GuiRecipe, type GuiRecipeIngredient, type GuiRecipeOptions, type GuiSpriteScaling, type GuiText, type GuiTextLayer, type GuiTextLayout, type GuiTextOptions, type GuiTextRun, type GuiTextStyle, type GuiTextureLayer, type GuiTooltipOptions, HostedAssetSource, type IModelTextures, ITEM_GENERATED, type ImageInfo, ImageLoader, type ImageSizeInfo, InstanceManager, InstanceReference, type Instanceable, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderError, MineRenderScene, type MineRenderSceneOptions, MineRenderWorld, type MineRenderWorldOptions, type MinecraftAsset, MinecraftCubeTexture, MinecraftFaceUV, type MinecraftTextureMeta, type Model, ModelCulling, type ModelDisplay, type ModelElement, type ModelFaces, ModelGenerator, ModelMerger, ModelObject, type ModelObjectOptions, ModelTextures, Models, type MultiBlockBlock, type MultiBlockEntity, type MultiBlockStructure, type MultipartCondition, type NBTAsset, NBTHelper, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResponseParser, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionGeometryInput, type SectionGeometryPage, SectionMesh, type SectionMeshEntry, type SectionMeshTemplate, SectionModels, type SectionTemplateData, SectionWorker, type Serializable, type SkinGeometries, SkinImage, SkinObject, type SkinObjectOptions, SkinPart, type SkinTexture, type SkinTextureCoordinates, SkinTextures, Skins, type SpecialItemPart, type SpecialItemRenderer, SpecialItems, type StructureNBT, StructureParser, type TextureAsset, TextureAtlas, type TextureKey, TextureLoader, Textures, Ticker, type TickerFunction, TintColors, type Transformable, type TripleArray, UVMapper, type VideoExportOptions, VideoExporter, type WorldChunkSource, WorldStreamer, type WorldStreamerOptions, WrappedImage, addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation, applyGenericRotation, axisToVec3, base64decode, base64encode, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, entityAnimationTime, estimateBytesUsed, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };