minerender 2.1.0-alpha.119 → 2.1.0-alpha.120
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.
- package/dist/browser/index.d.mts +121 -73
- package/dist/browser/index.d.ts +121 -73
- package/dist/browser/index.js +203 -19
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/index.mjs +203 -19
- package/dist/browser/index.mjs.map +1 -1
- package/dist/browser/section.worker.js +43 -5
- package/dist/browser/section.worker.js.map +1 -1
- package/dist/browser/section.worker.mjs +43 -5
- package/dist/browser/section.worker.mjs.map +1 -1
- package/dist/bundle.js +209 -19
- package/dist/bundle.js.map +1 -1
- package/dist/node/index.d.mts +121 -73
- package/dist/node/index.d.ts +121 -73
- package/dist/node/index.js +205 -19
- package/dist/node/index.js.map +1 -1
- package/dist/node/index.mjs +203 -19
- package/dist/node/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/browser/index.d.mts
CHANGED
|
@@ -3577,6 +3577,23 @@ declare class ChunkData {
|
|
|
3577
3577
|
private static validateIndex;
|
|
3578
3578
|
}
|
|
3579
3579
|
|
|
3580
|
+
/** Saved light for a 16³ section. Each channel packs two levels per byte, with the even index in the low nibble. */
|
|
3581
|
+
interface SectionLightData {
|
|
3582
|
+
/** 2,048 bytes in x + 16z + 256y order. An omitted channel is zero. */
|
|
3583
|
+
block?: Uint8Array;
|
|
3584
|
+
/** 2,048 bytes in x + 16z + 256y order. An omitted channel is zero. */
|
|
3585
|
+
sky?: Uint8Array;
|
|
3586
|
+
}
|
|
3587
|
+
/** Saved light levels from 0 to 15, before brightness or directional shading. */
|
|
3588
|
+
interface SavedLightSample {
|
|
3589
|
+
block: number;
|
|
3590
|
+
sky: number;
|
|
3591
|
+
}
|
|
3592
|
+
/** Validates and copies saved channels so callers can reuse their input buffers. */
|
|
3593
|
+
declare function copySectionLight(light: SectionLightData): SectionLightData;
|
|
3594
|
+
/** Reads a cell in x + 16z + 256y order. Missing section data remains distinct from saved darkness. */
|
|
3595
|
+
declare function sampleSectionLight(light: SectionLightData | undefined, index: number): SavedLightSample | undefined;
|
|
3596
|
+
|
|
3580
3597
|
type RegionInput = Uint8Array | ArrayBuffer;
|
|
3581
3598
|
/** Reads `c.<x>.<z>.mcc` at absolute chunk coordinates, or returns `undefined` when the file is missing. */
|
|
3582
3599
|
type AnvilExternalChunkReader = (x: number, z: number, signal?: AbortSignal) => Promise<Uint8Array | ArrayBuffer | undefined>;
|
|
@@ -3606,6 +3623,8 @@ interface AnvilChunk {
|
|
|
3606
3623
|
x: number;
|
|
3607
3624
|
z: number;
|
|
3608
3625
|
dataVersion?: number;
|
|
3626
|
+
/** Whether the save marks its lighting as complete. Unknown for numeric legacy chunks without a validity flag. */
|
|
3627
|
+
lightValid?: boolean;
|
|
3609
3628
|
/** DataVersion of the separate entity-region record; `dataVersion` belongs to the terrain. */
|
|
3610
3629
|
entityDataVersion?: number;
|
|
3611
3630
|
sections: {
|
|
@@ -3613,6 +3632,8 @@ interface AnvilChunk {
|
|
|
3613
3632
|
data: ChunkData;
|
|
3614
3633
|
/** 64 saved biome IDs, indexed by x + z * 4 + y * 16 at 4-block resolution. */
|
|
3615
3634
|
biomes?: readonly string[];
|
|
3635
|
+
/** Saved block and sky light, including light-only sections outside the terrain. */
|
|
3636
|
+
light?: SectionLightData;
|
|
3616
3637
|
}[];
|
|
3617
3638
|
entities?: MultiBlockEntity[];
|
|
3618
3639
|
}
|
|
@@ -3654,6 +3675,7 @@ declare class AnvilParser {
|
|
|
3654
3675
|
private static readChunk;
|
|
3655
3676
|
private static numericSection;
|
|
3656
3677
|
private static entities;
|
|
3678
|
+
private static light;
|
|
3657
3679
|
private static biomes;
|
|
3658
3680
|
private static compounds;
|
|
3659
3681
|
private static integer;
|
|
@@ -3712,6 +3734,78 @@ interface BlockInfo<SectionMeshing extends boolean = false> {
|
|
|
3712
3734
|
object: SectionMeshing extends false ? BlockObject : BlockObject | undefined;
|
|
3713
3735
|
}
|
|
3714
3736
|
|
|
3737
|
+
/** Static model geometry as quads: four vertices per quad, in quad order. */
|
|
3738
|
+
interface SectionTemplateData {
|
|
3739
|
+
quads: number;
|
|
3740
|
+
positions: Float32Array;
|
|
3741
|
+
normals: Float32Array;
|
|
3742
|
+
uvs: Float32Array;
|
|
3743
|
+
uvBounds: Float32Array;
|
|
3744
|
+
colors: Float32Array;
|
|
3745
|
+
indices: Uint16Array;
|
|
3746
|
+
cullFaces: Uint8Array;
|
|
3747
|
+
atlas: number;
|
|
3748
|
+
layer: number;
|
|
3749
|
+
}
|
|
3750
|
+
/** The pixel dimensions and animation state of a source atlas. */
|
|
3751
|
+
interface SectionAtlasSize {
|
|
3752
|
+
width: number;
|
|
3753
|
+
height: number;
|
|
3754
|
+
animated: boolean;
|
|
3755
|
+
}
|
|
3756
|
+
/** One fluid kind's sprite rectangles in atlas pixels and its linear-light vertex tint. */
|
|
3757
|
+
interface SectionFluidKind {
|
|
3758
|
+
atlas: number;
|
|
3759
|
+
still: [x: number, y: number, width: number, height: number];
|
|
3760
|
+
flow: [x: number, y: number, width: number, height: number];
|
|
3761
|
+
tint: [r: number, g: number, b: number];
|
|
3762
|
+
}
|
|
3763
|
+
/** Fluid cells of the section plus a one-cell shell, 18×18×18, x fastest, then z, then y. */
|
|
3764
|
+
interface SectionFluidInput {
|
|
3765
|
+
/** Bit 128 marks a surface rendered elsewhere; the cell still supplies neighbor fluid samples. */
|
|
3766
|
+
cells: Uint8Array;
|
|
3767
|
+
/** Linear RGB per section cell, indexed by (x + 16z + 256y) * 3. Omission uses the water kind's tint. */
|
|
3768
|
+
waterTints?: Float32Array;
|
|
3769
|
+
water?: SectionFluidKind;
|
|
3770
|
+
lava?: SectionFluidKind;
|
|
3771
|
+
}
|
|
3772
|
+
/** Section placements and their shared templates, ready for geometry building. */
|
|
3773
|
+
interface SectionGeometryInput {
|
|
3774
|
+
count: number;
|
|
3775
|
+
indices: Uint16Array;
|
|
3776
|
+
templates: Uint16Array;
|
|
3777
|
+
cullMasks: Uint8Array;
|
|
3778
|
+
templateData: SectionTemplateData[];
|
|
3779
|
+
atlases: SectionAtlasSize[];
|
|
3780
|
+
maxAtlasSize: number;
|
|
3781
|
+
fluids?: SectionFluidInput;
|
|
3782
|
+
/** Saved brightness levels for an 18×18×18 neighborhood; 255 means unknown/full brightness. */
|
|
3783
|
+
light?: Uint8Array;
|
|
3784
|
+
/** Minimum brightness for known light levels, from 0 to 1. */
|
|
3785
|
+
ambientLight?: number;
|
|
3786
|
+
}
|
|
3787
|
+
/** Merged quads and source-atlas placements for one atlas page. */
|
|
3788
|
+
interface SectionGeometryPage {
|
|
3789
|
+
layer: number;
|
|
3790
|
+
width: number;
|
|
3791
|
+
height: number;
|
|
3792
|
+
placements: {
|
|
3793
|
+
atlas: number;
|
|
3794
|
+
x: number;
|
|
3795
|
+
y: number;
|
|
3796
|
+
}[];
|
|
3797
|
+
positions: Float32Array;
|
|
3798
|
+
normals: Float32Array;
|
|
3799
|
+
uvs: Float32Array;
|
|
3800
|
+
uvBounds: Float32Array;
|
|
3801
|
+
colors: Float32Array;
|
|
3802
|
+
indices: Uint32Array;
|
|
3803
|
+
}
|
|
3804
|
+
/** Builds section-local geometry from visible quads, with bounded atlas pages per layer. */
|
|
3805
|
+
declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
|
|
3806
|
+
/** Returns the buffers behind each page's typed arrays for transfer to another thread. */
|
|
3807
|
+
declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
|
|
3808
|
+
|
|
3715
3809
|
/** Shared quad geometry and atlas data prepared for section merging. */
|
|
3716
3810
|
interface SectionMeshTemplate {
|
|
3717
3811
|
geometry: BufferGeometry;
|
|
@@ -3738,9 +3832,9 @@ interface SectionFluids {
|
|
|
3738
3832
|
declare class SectionMesh extends Group {
|
|
3739
3833
|
private readonly ownedMeshes;
|
|
3740
3834
|
/** Builds section-local meshes from visible quads. `maxAtlasSize` limits each atlas dimension in pixels. */
|
|
3741
|
-
static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids): SectionMesh;
|
|
3835
|
+
static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids, lighting?: Pick<SectionGeometryInput, "light" | "ambientLight">): SectionMesh;
|
|
3742
3836
|
/** Builds section-local meshes in a browser worker when available, with synchronous fallback. */
|
|
3743
|
-
static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids): Promise<SectionMesh>;
|
|
3837
|
+
static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids, lighting?: Pick<SectionGeometryInput, "light" | "ambientLight">): Promise<SectionMesh>;
|
|
3744
3838
|
private static fromPages;
|
|
3745
3839
|
dispose(): void;
|
|
3746
3840
|
}
|
|
@@ -3779,6 +3873,9 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3779
3873
|
private readonly neighborCell?;
|
|
3780
3874
|
private readonly biomeAt?;
|
|
3781
3875
|
private readonly onBiomesChanged?;
|
|
3876
|
+
private readonly lightAt?;
|
|
3877
|
+
private readonly onLightCleared?;
|
|
3878
|
+
private readonly ambientLight;
|
|
3782
3879
|
readonly scene: MineRenderScene;
|
|
3783
3880
|
readonly x: number;
|
|
3784
3881
|
readonly y: number;
|
|
@@ -3794,7 +3891,7 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3794
3891
|
private sectionMesh?;
|
|
3795
3892
|
private meshDirty;
|
|
3796
3893
|
private meshGeneration;
|
|
3797
|
-
constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined, neighborCell?: ((x: number, y: number, z: number) => number) | undefined, biomeAt?: ((x: number, y: number, z: number) => Maybe<string>) | undefined, onBiomesChanged?: ((biomes?: readonly string[]) => Promise<void>) | undefined);
|
|
3894
|
+
constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined, neighborCell?: ((x: number, y: number, z: number) => number) | undefined, biomeAt?: ((x: number, y: number, z: number) => Maybe<string>) | undefined, onBiomesChanged?: ((biomes?: readonly string[]) => Promise<void>) | undefined, lightAt?: ((x: number, y: number, z: number) => number) | undefined, onLightCleared?: (() => Promise<void>) | undefined, ambientLight?: number);
|
|
3798
3895
|
getBlockAt(x: number, y: number, z: number): Maybe<BlockInfo<SectionMeshing>>;
|
|
3799
3896
|
getBlockAt(pos: Vector3): Maybe<BlockInfo<SectionMeshing>>;
|
|
3800
3897
|
getBlockAt(pos: TripleArray): Maybe<BlockInfo<SectionMeshing>>;
|
|
@@ -3824,6 +3921,8 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3824
3921
|
/** Replaces every cell from parsed section data. The caller refreshes neighbor culling. */
|
|
3825
3922
|
placeSection(data: ChunkData): Promise<void>;
|
|
3826
3923
|
private positionAt;
|
|
3924
|
+
/** Refreshes saved lighting after adjacent columns load or unload, including columns with only light data. */
|
|
3925
|
+
refreshLight(indices?: Iterable<number>): Promise<void>;
|
|
3827
3926
|
private biomePosition;
|
|
3828
3927
|
private resolveState;
|
|
3829
3928
|
private setWaterTint;
|
|
@@ -3865,6 +3964,11 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3865
3964
|
readonly scene: MineRenderScene;
|
|
3866
3965
|
private readonly _chunks;
|
|
3867
3966
|
private readonly biomes;
|
|
3967
|
+
private readonly light;
|
|
3968
|
+
private readonly lightValidity;
|
|
3969
|
+
private readonly highestSkySection;
|
|
3970
|
+
private readonly savedLighting;
|
|
3971
|
+
private readonly ambientLight;
|
|
3868
3972
|
private readonly sectionModels?;
|
|
3869
3973
|
private readonly entities?;
|
|
3870
3974
|
private readonly pendingCulling;
|
|
@@ -3878,6 +3982,14 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3878
3982
|
getBiomeAt(x: number, y: number, z: number): Maybe<string>;
|
|
3879
3983
|
getBiomeAt(pos: Vector3): Maybe<string>;
|
|
3880
3984
|
getBiomeAt(pos: TripleArray): Maybe<string>;
|
|
3985
|
+
/**
|
|
3986
|
+
* Returns saved light at integer world block coordinates, including data marked invalid by the save.
|
|
3987
|
+
* Sky light is 15 above a column's highest saved sky-light array.
|
|
3988
|
+
*/
|
|
3989
|
+
getLightAt(x: number, y: number, z: number): Maybe<SavedLightSample>;
|
|
3990
|
+
getLightAt(pos: Vector3): Maybe<SavedLightSample>;
|
|
3991
|
+
getLightAt(pos: TripleArray): Maybe<SavedLightSample>;
|
|
3992
|
+
private lightLevelAt;
|
|
3881
3993
|
/**
|
|
3882
3994
|
* Places or replaces a block and refreshes neighboring faces.
|
|
3883
3995
|
* Pass `undefined` or an air block to remove the block at these world block coordinates.
|
|
@@ -3903,7 +4015,7 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3903
4015
|
placeMultiBlock(multiblock: MultiBlockStructure, useBatches?: boolean, executor?: BatchedExecutor): Promise<void>;
|
|
3904
4016
|
private placeBlocks;
|
|
3905
4017
|
private placeChunkGroups;
|
|
3906
|
-
/** Replaces a chunk column's blocks and
|
|
4018
|
+
/** Replaces a chunk column's blocks, biomes, and saved light and, with `renderEntities`, its supported saved mobs. */
|
|
3907
4019
|
placeChunk(chunk: AnvilChunk, executor?: BatchedExecutor): Promise<void>;
|
|
3908
4020
|
/**
|
|
3909
4021
|
* Removes blocks and owned entities at chunk-column coordinates, then refreshes neighboring faces and fluids.
|
|
@@ -3931,78 +4043,14 @@ interface MineRenderWorldOptions<SectionMeshing extends boolean = boolean> {
|
|
|
3931
4043
|
renderEntities?: boolean;
|
|
3932
4044
|
/** Merge static opaque cubes into section meshes. Merged blocks have no individual object. */
|
|
3933
4045
|
sectionMeshing?: SectionMeshing;
|
|
4046
|
+
/** Shade blocks and fluids with saved sky/block light. Missing or invalid data keeps preview brightness. Defaults to false. Requires `sectionMeshing`. */
|
|
4047
|
+
savedLighting?: boolean;
|
|
4048
|
+
/** Minimum brightness for saved lighting, from 0 to 1, like a dimension type's `ambient_light`. Defaults to 0. */
|
|
4049
|
+
ambientLight?: number;
|
|
3934
4050
|
/** Maximum width and height of each section atlas page, in pixels. */
|
|
3935
4051
|
maxAtlasSize?: number;
|
|
3936
4052
|
}
|
|
3937
4053
|
|
|
3938
|
-
/** Static model geometry as quads: four vertices per quad, in quad order. */
|
|
3939
|
-
interface SectionTemplateData {
|
|
3940
|
-
quads: number;
|
|
3941
|
-
positions: Float32Array;
|
|
3942
|
-
normals: Float32Array;
|
|
3943
|
-
uvs: Float32Array;
|
|
3944
|
-
uvBounds: Float32Array;
|
|
3945
|
-
colors: Float32Array;
|
|
3946
|
-
indices: Uint16Array;
|
|
3947
|
-
cullFaces: Uint8Array;
|
|
3948
|
-
atlas: number;
|
|
3949
|
-
layer: number;
|
|
3950
|
-
}
|
|
3951
|
-
/** The pixel dimensions and animation state of a source atlas. */
|
|
3952
|
-
interface SectionAtlasSize {
|
|
3953
|
-
width: number;
|
|
3954
|
-
height: number;
|
|
3955
|
-
animated: boolean;
|
|
3956
|
-
}
|
|
3957
|
-
/** One fluid kind's sprite rectangles in atlas pixels and its linear-light vertex tint. */
|
|
3958
|
-
interface SectionFluidKind {
|
|
3959
|
-
atlas: number;
|
|
3960
|
-
still: [x: number, y: number, width: number, height: number];
|
|
3961
|
-
flow: [x: number, y: number, width: number, height: number];
|
|
3962
|
-
tint: [r: number, g: number, b: number];
|
|
3963
|
-
}
|
|
3964
|
-
/** Fluid cells of the section plus a one-cell shell, 18×18×18, x fastest, then z, then y. */
|
|
3965
|
-
interface SectionFluidInput {
|
|
3966
|
-
/** Bit 128 marks a surface rendered elsewhere; the cell still supplies neighbor fluid samples. */
|
|
3967
|
-
cells: Uint8Array;
|
|
3968
|
-
/** Linear RGB per section cell, indexed by (x + 16z + 256y) * 3. Omission uses the water kind's tint. */
|
|
3969
|
-
waterTints?: Float32Array;
|
|
3970
|
-
water?: SectionFluidKind;
|
|
3971
|
-
lava?: SectionFluidKind;
|
|
3972
|
-
}
|
|
3973
|
-
/** Section placements and their shared templates, ready for geometry building. */
|
|
3974
|
-
interface SectionGeometryInput {
|
|
3975
|
-
count: number;
|
|
3976
|
-
indices: Uint16Array;
|
|
3977
|
-
templates: Uint16Array;
|
|
3978
|
-
cullMasks: Uint8Array;
|
|
3979
|
-
templateData: SectionTemplateData[];
|
|
3980
|
-
atlases: SectionAtlasSize[];
|
|
3981
|
-
maxAtlasSize: number;
|
|
3982
|
-
fluids?: SectionFluidInput;
|
|
3983
|
-
}
|
|
3984
|
-
/** Merged quads and source-atlas placements for one atlas page. */
|
|
3985
|
-
interface SectionGeometryPage {
|
|
3986
|
-
layer: number;
|
|
3987
|
-
width: number;
|
|
3988
|
-
height: number;
|
|
3989
|
-
placements: {
|
|
3990
|
-
atlas: number;
|
|
3991
|
-
x: number;
|
|
3992
|
-
y: number;
|
|
3993
|
-
}[];
|
|
3994
|
-
positions: Float32Array;
|
|
3995
|
-
normals: Float32Array;
|
|
3996
|
-
uvs: Float32Array;
|
|
3997
|
-
uvBounds: Float32Array;
|
|
3998
|
-
colors: Float32Array;
|
|
3999
|
-
indices: Uint32Array;
|
|
4000
|
-
}
|
|
4001
|
-
/** Builds section-local geometry from visible quads, with bounded atlas pages per layer. */
|
|
4002
|
-
declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
|
|
4003
|
-
/** Returns the buffers behind each page's typed arrays for transfer to another thread. */
|
|
4004
|
-
declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
|
|
4005
|
-
|
|
4006
4054
|
/** Runs section geometry builds in the environment's shared worker. */
|
|
4007
4055
|
declare class SectionWorker {
|
|
4008
4056
|
private worker;
|
|
@@ -4130,4 +4178,4 @@ declare class BrowserCache extends PersistentCache<LocalForage> {
|
|
|
4130
4178
|
*/
|
|
4131
4179
|
declare function probeImageSize(data: Uint8Array): ImageSizeInfo;
|
|
4132
4180
|
|
|
4133
|
-
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, type AnvilEntityChunk, type AnvilExternalChunkReader, type AnvilParseOptions, 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 Biome, type BiomeColorKind, Biomes, 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 ControlsMode, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DecoratedPotSide, DecoratedPots, 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 FluidQuads, type FluidRules, type FluidSample, type FluidSampler, type FlyAction, FlyControls, type FlyControlsEventMap, 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, ItemDefaults, ItemGlint, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, LitematicaParser, type LitematicaRegion, type LitematicaStructure, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderData, type MineRenderDataManifest, type MineRenderDatasets, 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, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererControls, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, SCENE_DOCUMENT_MAX_BYTES, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneItemContext, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionFluidInput, type SectionFluidKind, type SectionFluids, 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, SpongeSchematicParser, 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, buildFluidQuads, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, decodeSceneDocument, encodeSceneDocument, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isFlyControls, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, resolveBlockFluidState, resolveLegacyBlock, resolveLegacyBlockState, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };
|
|
4181
|
+
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, type AnvilEntityChunk, type AnvilExternalChunkReader, type AnvilParseOptions, 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 Biome, type BiomeColorKind, Biomes, 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 ControlsMode, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DecoratedPotSide, DecoratedPots, 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 FluidQuads, type FluidRules, type FluidSample, type FluidSampler, type FlyAction, FlyControls, type FlyControlsEventMap, 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, ItemDefaults, ItemGlint, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, LitematicaParser, type LitematicaRegion, type LitematicaStructure, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderData, type MineRenderDataManifest, type MineRenderDatasets, 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, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererControls, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, SCENE_DOCUMENT_MAX_BYTES, SKIN_PARTS, type SavedLightSample, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneItemContext, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionFluidInput, type SectionFluidKind, type SectionFluids, type SectionGeometryInput, type SectionGeometryPage, type SectionLightData, 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, SpongeSchematicParser, 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, buildFluidQuads, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, copySectionLight, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, decodeSceneDocument, encodeSceneDocument, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isFlyControls, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, resolveBlockFluidState, resolveLegacyBlock, resolveLegacyBlockState, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sampleSectionLight, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };
|
package/dist/browser/index.d.ts
CHANGED
|
@@ -3577,6 +3577,23 @@ declare class ChunkData {
|
|
|
3577
3577
|
private static validateIndex;
|
|
3578
3578
|
}
|
|
3579
3579
|
|
|
3580
|
+
/** Saved light for a 16³ section. Each channel packs two levels per byte, with the even index in the low nibble. */
|
|
3581
|
+
interface SectionLightData {
|
|
3582
|
+
/** 2,048 bytes in x + 16z + 256y order. An omitted channel is zero. */
|
|
3583
|
+
block?: Uint8Array;
|
|
3584
|
+
/** 2,048 bytes in x + 16z + 256y order. An omitted channel is zero. */
|
|
3585
|
+
sky?: Uint8Array;
|
|
3586
|
+
}
|
|
3587
|
+
/** Saved light levels from 0 to 15, before brightness or directional shading. */
|
|
3588
|
+
interface SavedLightSample {
|
|
3589
|
+
block: number;
|
|
3590
|
+
sky: number;
|
|
3591
|
+
}
|
|
3592
|
+
/** Validates and copies saved channels so callers can reuse their input buffers. */
|
|
3593
|
+
declare function copySectionLight(light: SectionLightData): SectionLightData;
|
|
3594
|
+
/** Reads a cell in x + 16z + 256y order. Missing section data remains distinct from saved darkness. */
|
|
3595
|
+
declare function sampleSectionLight(light: SectionLightData | undefined, index: number): SavedLightSample | undefined;
|
|
3596
|
+
|
|
3580
3597
|
type RegionInput = Uint8Array | ArrayBuffer;
|
|
3581
3598
|
/** Reads `c.<x>.<z>.mcc` at absolute chunk coordinates, or returns `undefined` when the file is missing. */
|
|
3582
3599
|
type AnvilExternalChunkReader = (x: number, z: number, signal?: AbortSignal) => Promise<Uint8Array | ArrayBuffer | undefined>;
|
|
@@ -3606,6 +3623,8 @@ interface AnvilChunk {
|
|
|
3606
3623
|
x: number;
|
|
3607
3624
|
z: number;
|
|
3608
3625
|
dataVersion?: number;
|
|
3626
|
+
/** Whether the save marks its lighting as complete. Unknown for numeric legacy chunks without a validity flag. */
|
|
3627
|
+
lightValid?: boolean;
|
|
3609
3628
|
/** DataVersion of the separate entity-region record; `dataVersion` belongs to the terrain. */
|
|
3610
3629
|
entityDataVersion?: number;
|
|
3611
3630
|
sections: {
|
|
@@ -3613,6 +3632,8 @@ interface AnvilChunk {
|
|
|
3613
3632
|
data: ChunkData;
|
|
3614
3633
|
/** 64 saved biome IDs, indexed by x + z * 4 + y * 16 at 4-block resolution. */
|
|
3615
3634
|
biomes?: readonly string[];
|
|
3635
|
+
/** Saved block and sky light, including light-only sections outside the terrain. */
|
|
3636
|
+
light?: SectionLightData;
|
|
3616
3637
|
}[];
|
|
3617
3638
|
entities?: MultiBlockEntity[];
|
|
3618
3639
|
}
|
|
@@ -3654,6 +3675,7 @@ declare class AnvilParser {
|
|
|
3654
3675
|
private static readChunk;
|
|
3655
3676
|
private static numericSection;
|
|
3656
3677
|
private static entities;
|
|
3678
|
+
private static light;
|
|
3657
3679
|
private static biomes;
|
|
3658
3680
|
private static compounds;
|
|
3659
3681
|
private static integer;
|
|
@@ -3712,6 +3734,78 @@ interface BlockInfo<SectionMeshing extends boolean = false> {
|
|
|
3712
3734
|
object: SectionMeshing extends false ? BlockObject : BlockObject | undefined;
|
|
3713
3735
|
}
|
|
3714
3736
|
|
|
3737
|
+
/** Static model geometry as quads: four vertices per quad, in quad order. */
|
|
3738
|
+
interface SectionTemplateData {
|
|
3739
|
+
quads: number;
|
|
3740
|
+
positions: Float32Array;
|
|
3741
|
+
normals: Float32Array;
|
|
3742
|
+
uvs: Float32Array;
|
|
3743
|
+
uvBounds: Float32Array;
|
|
3744
|
+
colors: Float32Array;
|
|
3745
|
+
indices: Uint16Array;
|
|
3746
|
+
cullFaces: Uint8Array;
|
|
3747
|
+
atlas: number;
|
|
3748
|
+
layer: number;
|
|
3749
|
+
}
|
|
3750
|
+
/** The pixel dimensions and animation state of a source atlas. */
|
|
3751
|
+
interface SectionAtlasSize {
|
|
3752
|
+
width: number;
|
|
3753
|
+
height: number;
|
|
3754
|
+
animated: boolean;
|
|
3755
|
+
}
|
|
3756
|
+
/** One fluid kind's sprite rectangles in atlas pixels and its linear-light vertex tint. */
|
|
3757
|
+
interface SectionFluidKind {
|
|
3758
|
+
atlas: number;
|
|
3759
|
+
still: [x: number, y: number, width: number, height: number];
|
|
3760
|
+
flow: [x: number, y: number, width: number, height: number];
|
|
3761
|
+
tint: [r: number, g: number, b: number];
|
|
3762
|
+
}
|
|
3763
|
+
/** Fluid cells of the section plus a one-cell shell, 18×18×18, x fastest, then z, then y. */
|
|
3764
|
+
interface SectionFluidInput {
|
|
3765
|
+
/** Bit 128 marks a surface rendered elsewhere; the cell still supplies neighbor fluid samples. */
|
|
3766
|
+
cells: Uint8Array;
|
|
3767
|
+
/** Linear RGB per section cell, indexed by (x + 16z + 256y) * 3. Omission uses the water kind's tint. */
|
|
3768
|
+
waterTints?: Float32Array;
|
|
3769
|
+
water?: SectionFluidKind;
|
|
3770
|
+
lava?: SectionFluidKind;
|
|
3771
|
+
}
|
|
3772
|
+
/** Section placements and their shared templates, ready for geometry building. */
|
|
3773
|
+
interface SectionGeometryInput {
|
|
3774
|
+
count: number;
|
|
3775
|
+
indices: Uint16Array;
|
|
3776
|
+
templates: Uint16Array;
|
|
3777
|
+
cullMasks: Uint8Array;
|
|
3778
|
+
templateData: SectionTemplateData[];
|
|
3779
|
+
atlases: SectionAtlasSize[];
|
|
3780
|
+
maxAtlasSize: number;
|
|
3781
|
+
fluids?: SectionFluidInput;
|
|
3782
|
+
/** Saved brightness levels for an 18×18×18 neighborhood; 255 means unknown/full brightness. */
|
|
3783
|
+
light?: Uint8Array;
|
|
3784
|
+
/** Minimum brightness for known light levels, from 0 to 1. */
|
|
3785
|
+
ambientLight?: number;
|
|
3786
|
+
}
|
|
3787
|
+
/** Merged quads and source-atlas placements for one atlas page. */
|
|
3788
|
+
interface SectionGeometryPage {
|
|
3789
|
+
layer: number;
|
|
3790
|
+
width: number;
|
|
3791
|
+
height: number;
|
|
3792
|
+
placements: {
|
|
3793
|
+
atlas: number;
|
|
3794
|
+
x: number;
|
|
3795
|
+
y: number;
|
|
3796
|
+
}[];
|
|
3797
|
+
positions: Float32Array;
|
|
3798
|
+
normals: Float32Array;
|
|
3799
|
+
uvs: Float32Array;
|
|
3800
|
+
uvBounds: Float32Array;
|
|
3801
|
+
colors: Float32Array;
|
|
3802
|
+
indices: Uint32Array;
|
|
3803
|
+
}
|
|
3804
|
+
/** Builds section-local geometry from visible quads, with bounded atlas pages per layer. */
|
|
3805
|
+
declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
|
|
3806
|
+
/** Returns the buffers behind each page's typed arrays for transfer to another thread. */
|
|
3807
|
+
declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
|
|
3808
|
+
|
|
3715
3809
|
/** Shared quad geometry and atlas data prepared for section merging. */
|
|
3716
3810
|
interface SectionMeshTemplate {
|
|
3717
3811
|
geometry: BufferGeometry;
|
|
@@ -3738,9 +3832,9 @@ interface SectionFluids {
|
|
|
3738
3832
|
declare class SectionMesh extends Group {
|
|
3739
3833
|
private readonly ownedMeshes;
|
|
3740
3834
|
/** Builds section-local meshes from visible quads. `maxAtlasSize` limits each atlas dimension in pixels. */
|
|
3741
|
-
static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids): SectionMesh;
|
|
3835
|
+
static build(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids, lighting?: Pick<SectionGeometryInput, "light" | "ambientLight">): SectionMesh;
|
|
3742
3836
|
/** Builds section-local meshes in a browser worker when available, with synchronous fallback. */
|
|
3743
|
-
static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids): Promise<SectionMesh>;
|
|
3837
|
+
static buildAsync(entries: readonly SectionMeshEntry[], maxAtlasSize?: number, fluids?: SectionFluids, lighting?: Pick<SectionGeometryInput, "light" | "ambientLight">): Promise<SectionMesh>;
|
|
3744
3838
|
private static fromPages;
|
|
3745
3839
|
dispose(): void;
|
|
3746
3840
|
}
|
|
@@ -3779,6 +3873,9 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3779
3873
|
private readonly neighborCell?;
|
|
3780
3874
|
private readonly biomeAt?;
|
|
3781
3875
|
private readonly onBiomesChanged?;
|
|
3876
|
+
private readonly lightAt?;
|
|
3877
|
+
private readonly onLightCleared?;
|
|
3878
|
+
private readonly ambientLight;
|
|
3782
3879
|
readonly scene: MineRenderScene;
|
|
3783
3880
|
readonly x: number;
|
|
3784
3881
|
readonly y: number;
|
|
@@ -3794,7 +3891,7 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3794
3891
|
private sectionMesh?;
|
|
3795
3892
|
private meshDirty;
|
|
3796
3893
|
private meshGeneration;
|
|
3797
|
-
constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined, neighborCell?: ((x: number, y: number, z: number) => number) | undefined, biomeAt?: ((x: number, y: number, z: number) => Maybe<string>) | undefined, onBiomesChanged?: ((biomes?: readonly string[]) => Promise<void>) | undefined);
|
|
3894
|
+
constructor(scene: MineRenderScene, x: number, y: number, z: number, onBlocksChanged?: ((positions: Vector3[]) => Promise<void>) | undefined, sectionModels?: SectionModels | undefined, neighborCell?: ((x: number, y: number, z: number) => number) | undefined, biomeAt?: ((x: number, y: number, z: number) => Maybe<string>) | undefined, onBiomesChanged?: ((biomes?: readonly string[]) => Promise<void>) | undefined, lightAt?: ((x: number, y: number, z: number) => number) | undefined, onLightCleared?: (() => Promise<void>) | undefined, ambientLight?: number);
|
|
3798
3895
|
getBlockAt(x: number, y: number, z: number): Maybe<BlockInfo<SectionMeshing>>;
|
|
3799
3896
|
getBlockAt(pos: Vector3): Maybe<BlockInfo<SectionMeshing>>;
|
|
3800
3897
|
getBlockAt(pos: TripleArray): Maybe<BlockInfo<SectionMeshing>>;
|
|
@@ -3824,6 +3921,8 @@ declare class Chunk<SectionMeshing extends boolean = false> {
|
|
|
3824
3921
|
/** Replaces every cell from parsed section data. The caller refreshes neighbor culling. */
|
|
3825
3922
|
placeSection(data: ChunkData): Promise<void>;
|
|
3826
3923
|
private positionAt;
|
|
3924
|
+
/** Refreshes saved lighting after adjacent columns load or unload, including columns with only light data. */
|
|
3925
|
+
refreshLight(indices?: Iterable<number>): Promise<void>;
|
|
3827
3926
|
private biomePosition;
|
|
3828
3927
|
private resolveState;
|
|
3829
3928
|
private setWaterTint;
|
|
@@ -3865,6 +3964,11 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3865
3964
|
readonly scene: MineRenderScene;
|
|
3866
3965
|
private readonly _chunks;
|
|
3867
3966
|
private readonly biomes;
|
|
3967
|
+
private readonly light;
|
|
3968
|
+
private readonly lightValidity;
|
|
3969
|
+
private readonly highestSkySection;
|
|
3970
|
+
private readonly savedLighting;
|
|
3971
|
+
private readonly ambientLight;
|
|
3868
3972
|
private readonly sectionModels?;
|
|
3869
3973
|
private readonly entities?;
|
|
3870
3974
|
private readonly pendingCulling;
|
|
@@ -3878,6 +3982,14 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3878
3982
|
getBiomeAt(x: number, y: number, z: number): Maybe<string>;
|
|
3879
3983
|
getBiomeAt(pos: Vector3): Maybe<string>;
|
|
3880
3984
|
getBiomeAt(pos: TripleArray): Maybe<string>;
|
|
3985
|
+
/**
|
|
3986
|
+
* Returns saved light at integer world block coordinates, including data marked invalid by the save.
|
|
3987
|
+
* Sky light is 15 above a column's highest saved sky-light array.
|
|
3988
|
+
*/
|
|
3989
|
+
getLightAt(x: number, y: number, z: number): Maybe<SavedLightSample>;
|
|
3990
|
+
getLightAt(pos: Vector3): Maybe<SavedLightSample>;
|
|
3991
|
+
getLightAt(pos: TripleArray): Maybe<SavedLightSample>;
|
|
3992
|
+
private lightLevelAt;
|
|
3881
3993
|
/**
|
|
3882
3994
|
* Places or replaces a block and refreshes neighboring faces.
|
|
3883
3995
|
* Pass `undefined` or an air block to remove the block at these world block coordinates.
|
|
@@ -3903,7 +4015,7 @@ declare class MineRenderWorld<SectionMeshing extends boolean = false> {
|
|
|
3903
4015
|
placeMultiBlock(multiblock: MultiBlockStructure, useBatches?: boolean, executor?: BatchedExecutor): Promise<void>;
|
|
3904
4016
|
private placeBlocks;
|
|
3905
4017
|
private placeChunkGroups;
|
|
3906
|
-
/** Replaces a chunk column's blocks and
|
|
4018
|
+
/** Replaces a chunk column's blocks, biomes, and saved light and, with `renderEntities`, its supported saved mobs. */
|
|
3907
4019
|
placeChunk(chunk: AnvilChunk, executor?: BatchedExecutor): Promise<void>;
|
|
3908
4020
|
/**
|
|
3909
4021
|
* Removes blocks and owned entities at chunk-column coordinates, then refreshes neighboring faces and fluids.
|
|
@@ -3931,78 +4043,14 @@ interface MineRenderWorldOptions<SectionMeshing extends boolean = boolean> {
|
|
|
3931
4043
|
renderEntities?: boolean;
|
|
3932
4044
|
/** Merge static opaque cubes into section meshes. Merged blocks have no individual object. */
|
|
3933
4045
|
sectionMeshing?: SectionMeshing;
|
|
4046
|
+
/** Shade blocks and fluids with saved sky/block light. Missing or invalid data keeps preview brightness. Defaults to false. Requires `sectionMeshing`. */
|
|
4047
|
+
savedLighting?: boolean;
|
|
4048
|
+
/** Minimum brightness for saved lighting, from 0 to 1, like a dimension type's `ambient_light`. Defaults to 0. */
|
|
4049
|
+
ambientLight?: number;
|
|
3934
4050
|
/** Maximum width and height of each section atlas page, in pixels. */
|
|
3935
4051
|
maxAtlasSize?: number;
|
|
3936
4052
|
}
|
|
3937
4053
|
|
|
3938
|
-
/** Static model geometry as quads: four vertices per quad, in quad order. */
|
|
3939
|
-
interface SectionTemplateData {
|
|
3940
|
-
quads: number;
|
|
3941
|
-
positions: Float32Array;
|
|
3942
|
-
normals: Float32Array;
|
|
3943
|
-
uvs: Float32Array;
|
|
3944
|
-
uvBounds: Float32Array;
|
|
3945
|
-
colors: Float32Array;
|
|
3946
|
-
indices: Uint16Array;
|
|
3947
|
-
cullFaces: Uint8Array;
|
|
3948
|
-
atlas: number;
|
|
3949
|
-
layer: number;
|
|
3950
|
-
}
|
|
3951
|
-
/** The pixel dimensions and animation state of a source atlas. */
|
|
3952
|
-
interface SectionAtlasSize {
|
|
3953
|
-
width: number;
|
|
3954
|
-
height: number;
|
|
3955
|
-
animated: boolean;
|
|
3956
|
-
}
|
|
3957
|
-
/** One fluid kind's sprite rectangles in atlas pixels and its linear-light vertex tint. */
|
|
3958
|
-
interface SectionFluidKind {
|
|
3959
|
-
atlas: number;
|
|
3960
|
-
still: [x: number, y: number, width: number, height: number];
|
|
3961
|
-
flow: [x: number, y: number, width: number, height: number];
|
|
3962
|
-
tint: [r: number, g: number, b: number];
|
|
3963
|
-
}
|
|
3964
|
-
/** Fluid cells of the section plus a one-cell shell, 18×18×18, x fastest, then z, then y. */
|
|
3965
|
-
interface SectionFluidInput {
|
|
3966
|
-
/** Bit 128 marks a surface rendered elsewhere; the cell still supplies neighbor fluid samples. */
|
|
3967
|
-
cells: Uint8Array;
|
|
3968
|
-
/** Linear RGB per section cell, indexed by (x + 16z + 256y) * 3. Omission uses the water kind's tint. */
|
|
3969
|
-
waterTints?: Float32Array;
|
|
3970
|
-
water?: SectionFluidKind;
|
|
3971
|
-
lava?: SectionFluidKind;
|
|
3972
|
-
}
|
|
3973
|
-
/** Section placements and their shared templates, ready for geometry building. */
|
|
3974
|
-
interface SectionGeometryInput {
|
|
3975
|
-
count: number;
|
|
3976
|
-
indices: Uint16Array;
|
|
3977
|
-
templates: Uint16Array;
|
|
3978
|
-
cullMasks: Uint8Array;
|
|
3979
|
-
templateData: SectionTemplateData[];
|
|
3980
|
-
atlases: SectionAtlasSize[];
|
|
3981
|
-
maxAtlasSize: number;
|
|
3982
|
-
fluids?: SectionFluidInput;
|
|
3983
|
-
}
|
|
3984
|
-
/** Merged quads and source-atlas placements for one atlas page. */
|
|
3985
|
-
interface SectionGeometryPage {
|
|
3986
|
-
layer: number;
|
|
3987
|
-
width: number;
|
|
3988
|
-
height: number;
|
|
3989
|
-
placements: {
|
|
3990
|
-
atlas: number;
|
|
3991
|
-
x: number;
|
|
3992
|
-
y: number;
|
|
3993
|
-
}[];
|
|
3994
|
-
positions: Float32Array;
|
|
3995
|
-
normals: Float32Array;
|
|
3996
|
-
uvs: Float32Array;
|
|
3997
|
-
uvBounds: Float32Array;
|
|
3998
|
-
colors: Float32Array;
|
|
3999
|
-
indices: Uint32Array;
|
|
4000
|
-
}
|
|
4001
|
-
/** Builds section-local geometry from visible quads, with bounded atlas pages per layer. */
|
|
4002
|
-
declare function buildSectionGeometry(input: SectionGeometryInput): SectionGeometryPage[];
|
|
4003
|
-
/** Returns the buffers behind each page's typed arrays for transfer to another thread. */
|
|
4004
|
-
declare function sectionGeometryTransferables(pages: readonly SectionGeometryPage[]): ArrayBuffer[];
|
|
4005
|
-
|
|
4006
4054
|
/** Runs section geometry builds in the environment's shared worker. */
|
|
4007
4055
|
declare class SectionWorker {
|
|
4008
4056
|
private worker;
|
|
@@ -4130,4 +4178,4 @@ declare class BrowserCache extends PersistentCache<LocalForage> {
|
|
|
4130
4178
|
*/
|
|
4131
4179
|
declare function probeImageSize(data: Uint8Array): ImageSizeInfo;
|
|
4132
4180
|
|
|
4133
|
-
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, type AnvilEntityChunk, type AnvilExternalChunkReader, type AnvilParseOptions, 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 Biome, type BiomeColorKind, Biomes, 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 ControlsMode, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DecoratedPotSide, DecoratedPots, 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 FluidQuads, type FluidRules, type FluidSample, type FluidSampler, type FlyAction, FlyControls, type FlyControlsEventMap, 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, ItemDefaults, ItemGlint, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, LitematicaParser, type LitematicaRegion, type LitematicaStructure, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderData, type MineRenderDataManifest, type MineRenderDatasets, 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, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererControls, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, SCENE_DOCUMENT_MAX_BYTES, SKIN_PARTS, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneItemContext, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionFluidInput, type SectionFluidKind, type SectionFluids, 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, SpongeSchematicParser, 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, buildFluidQuads, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, decodeSceneDocument, encodeSceneDocument, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isFlyControls, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, resolveBlockFluidState, resolveLegacyBlock, resolveLegacyBlockState, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };
|
|
4181
|
+
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, type AnvilChunk, type AnvilEntityChunk, type AnvilExternalChunkReader, type AnvilParseOptions, 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 Biome, type BiomeColorKind, Biomes, 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 ControlsMode, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type DecoratedPotSide, DecoratedPots, 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 FluidQuads, type FluidRules, type FluidSample, type FluidSampler, type FlyAction, FlyControls, type FlyControlsEventMap, 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, ItemDefaults, ItemGlint, type ItemModel, type ItemModelContext, type ItemModelTextures, type ItemTintColor, type ItemTintSource, ItemTints, type ListAsset, LitematicaParser, type LitematicaRegion, type LitematicaStructure, type LoadedSceneDocument, type LoadedSceneObject, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderData, type MineRenderDataManifest, type MineRenderDatasets, 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, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererControls, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, SCENE_DOCUMENT_MAX_BYTES, SKIN_PARTS, type SavedLightSample, type SceneBlockDefinition, type SceneDocument, SceneDocumentLoader, type SceneEntityDefinition, SceneExporter, type SceneGLTFExportOptions, type SceneGuiDefinition, type SceneGuiLayer, SceneInspector, type SceneItemContext, type SceneModelDefinition, SceneObject, type SceneObjectDefinition, type SceneObjectDefinitionBase, type SceneObjectOptions, type SceneSkinDefinition, type SceneSkinPosePart, SceneStats, SceneStatsDisplay, SchematicParser, type SchematicParserOptions, type SectionAtlasSize, type SectionFluidInput, type SectionFluidKind, type SectionFluids, type SectionGeometryInput, type SectionGeometryPage, type SectionLightData, 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, SpongeSchematicParser, 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, buildFluidQuads, buildSectionGeometry, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, copySectionLight, createCanvas, createFluidGeometry, createGuiTextGeometry, createGuiTextureGeometry, createImage, decodeSceneDocument, encodeSceneDocument, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isFlyControls, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, probeImageSize, registerBrowserEnv, resolveBlockFluidState, resolveLegacyBlock, resolveLegacyBlockState, sampleEntityAnimation, sampleEntityKeyframes, sampleFluid, sampleSectionLight, sectionGeometryTransferables, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode, trimCanvas, yieldToEventLoop };
|