minerender 2.1.0-alpha.3 → 2.1.0-alpha.31
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/README.md +2 -0
- package/dist/browser/index.d.mts +246 -122
- package/dist/browser/index.d.ts +246 -122
- package/dist/browser/index.js +1606 -1015
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/index.mjs +1525 -934
- package/dist/browser/index.mjs.map +1 -1
- package/dist/bundle.js +15212 -13450
- package/dist/bundle.js.map +1 -1
- package/dist/node/index.d.mts +245 -121
- package/dist/node/index.d.ts +245 -121
- package/dist/node/index.js +1865 -1200
- package/dist/node/index.js.map +1 -1
- package/dist/node/index.mjs +1776 -1115
- package/dist/node/index.mjs.map +1 -1
- package/package.json +8 -9
package/dist/browser/index.d.ts
CHANGED
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import * as three from 'three';
|
|
2
|
-
import { Vector3, PixelFormat, BoxGeometry, Material, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Scene, Texture, Camera, MOUSE, TOUCH, WebGLRenderer, EventDispatcher, Raycaster, Intersection,
|
|
2
|
+
import { Vector3, PixelFormat, BoxGeometry, Material, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, BufferGeometry, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Scene, Object3DEventMap, Texture, Camera, MOUSE, TOUCH, WebGLRenderer, EventDispatcher, Raycaster, Intersection, MeshBasicMaterial, CanvasTexture, InterleavedBufferAttribute, TrianglesDrawModes, Line, Points } from 'three';
|
|
3
3
|
import * as nodeCanvas from 'canvas';
|
|
4
4
|
import { ImageData as ImageData$1, CanvasRenderingContext2D } from 'canvas';
|
|
5
|
-
import { AxiosResponse, AxiosRequestConfig } from 'axios';
|
|
6
5
|
import { Buffer as Buffer$1 } from 'buffer';
|
|
7
6
|
import { NBT } from 'prismarine-nbt';
|
|
8
7
|
import { ZipReader } from '@zip.js/zip.js';
|
|
9
8
|
import { AsyncLoadingCache, SimpleCache } from '@inventivetalent/loading-cache';
|
|
10
|
-
import { BufferGeometry } from 'three/src/core/BufferGeometry';
|
|
11
|
-
import { Material as Material$1 } from 'three/src/materials/Material';
|
|
12
9
|
import Stats from 'stats.js';
|
|
13
10
|
import { EffectComposer } from 'postprocessing';
|
|
14
11
|
|
|
@@ -17,7 +14,7 @@ interface AnimatorFunction {
|
|
|
17
14
|
}
|
|
18
15
|
|
|
19
16
|
declare enum Axis {
|
|
20
|
-
X = "
|
|
17
|
+
X = "x",
|
|
21
18
|
Y = "y",
|
|
22
19
|
Z = "z"
|
|
23
20
|
}
|
|
@@ -62,10 +59,11 @@ declare function createCanvas(width: number, height: number): CompatCanvas;
|
|
|
62
59
|
declare abstract class PersistentCache<B = unknown> {
|
|
63
60
|
readonly backing: B;
|
|
64
61
|
/** Bump to invalidate every persisted entry. */
|
|
65
|
-
static readonly VERSION =
|
|
62
|
+
static readonly VERSION = 2;
|
|
66
63
|
static open(name: string): PersistentCache;
|
|
67
64
|
protected constructor(backing: B);
|
|
68
65
|
abstract get<T>(key: string): Promise<T>;
|
|
66
|
+
/** Loads a missing entry and stores only non-nullish results. */
|
|
69
67
|
getOrLoad<T>(key: string, loader: (key: string) => Promise<T>): Promise<T>;
|
|
70
68
|
abstract put<T>(key: string, value: T): Promise<T>;
|
|
71
69
|
abstract delete<T>(key: string): Promise<void>;
|
|
@@ -175,6 +173,7 @@ declare class AssetKey extends BasicAssetKey {
|
|
|
175
173
|
rootType: "assets" | "data" | string;
|
|
176
174
|
extension: ".json" | ".png" | string;
|
|
177
175
|
root?: string | undefined;
|
|
176
|
+
readonly isAssetKey: true;
|
|
178
177
|
constructor(namespace: string, path: string, assetType?: AssetType | undefined, type?: string | undefined, rootType?: "assets" | "data" | string, extension?: ".json" | ".png" | string, root?: string | undefined);
|
|
179
178
|
static parse(assetType: AssetType, str: string, origin?: AssetKey): AssetKey;
|
|
180
179
|
toString(): string;
|
|
@@ -247,7 +246,8 @@ declare enum DisplayPosition {
|
|
|
247
246
|
GUI = "gui",
|
|
248
247
|
HEAD = "head",
|
|
249
248
|
GROUND = "ground",
|
|
250
|
-
FIXED = "fixed"
|
|
249
|
+
FIXED = "fixed",
|
|
250
|
+
ON_SHELF = "on_shelf"
|
|
251
251
|
}
|
|
252
252
|
declare const DISPLAY_POSITIONS: DisplayPosition[];
|
|
253
253
|
|
|
@@ -256,6 +256,46 @@ declare enum GuiLight {
|
|
|
256
256
|
SIDE = "side"
|
|
257
257
|
}
|
|
258
258
|
|
|
259
|
+
interface RequestConfig extends RequestInit {
|
|
260
|
+
url: string;
|
|
261
|
+
/** Prepended to relative URLs, preserving any path in the base URL. */
|
|
262
|
+
baseURL?: string;
|
|
263
|
+
/** Timeout per attempt in milliseconds, including body reading. Defaults to 5000; 0 disables it. */
|
|
264
|
+
timeout?: number;
|
|
265
|
+
responseType?: "json" | "arraybuffer";
|
|
266
|
+
}
|
|
267
|
+
interface RequestResponse<T = any> {
|
|
268
|
+
data: T;
|
|
269
|
+
status: number;
|
|
270
|
+
statusText: string;
|
|
271
|
+
headers: Headers;
|
|
272
|
+
/** Final URL after redirects. */
|
|
273
|
+
url: string;
|
|
274
|
+
}
|
|
275
|
+
declare class RequestError extends Error {
|
|
276
|
+
readonly response?: RequestResponse<undefined> | undefined;
|
|
277
|
+
readonly cause?: unknown;
|
|
278
|
+
constructor(message: string, response?: RequestResponse<undefined> | undefined, cause?: unknown);
|
|
279
|
+
}
|
|
280
|
+
declare class Requests {
|
|
281
|
+
private static genericQueue;
|
|
282
|
+
private static mcAssetRequestQueue;
|
|
283
|
+
static genericRequest(request: RequestConfig): Promise<RequestResponse>;
|
|
284
|
+
static mcAssetRequest(request: RequestConfig): Promise<RequestResponse>;
|
|
285
|
+
static setMcAssetRoot(root: string): void;
|
|
286
|
+
/** Counts unsettled calls, including retry delays and requests still running after shutdown. */
|
|
287
|
+
static get queueSizes(): {
|
|
288
|
+
generic: number;
|
|
289
|
+
mcAsset: number;
|
|
290
|
+
};
|
|
291
|
+
/**
|
|
292
|
+
* Permanently stops both queues and rejects waiting, retrying, and future requests.
|
|
293
|
+
* Requests already running can finish. Idle queues hold no timer, so Node can exit without
|
|
294
|
+
* this cleanup. See {@link shutdown}.
|
|
295
|
+
*/
|
|
296
|
+
static end(): void;
|
|
297
|
+
}
|
|
298
|
+
|
|
259
299
|
declare class WrappedImage {
|
|
260
300
|
readonly dta: ExtractableImageData;
|
|
261
301
|
constructor(dta: ExtractableImageData);
|
|
@@ -291,7 +331,7 @@ declare class ImageLoader {
|
|
|
291
331
|
static infoToData(info: ImageInfo): Promise<ImageData>;
|
|
292
332
|
static getData(src: string): Promise<ImageData>;
|
|
293
333
|
static getCanvasData(src: string): Promise<ExtractableImageData>;
|
|
294
|
-
static processResponse(response:
|
|
334
|
+
static processResponse(response: Pick<RequestResponse<ArrayBuffer>, "data" | "url">): Promise<ImageInfo>;
|
|
295
335
|
static loadInfo(src: string): Promise<ImageInfo>;
|
|
296
336
|
static getInfo(src: string): Promise<ImageInfo>;
|
|
297
337
|
static loadWrapped(src: string): Promise<WrappedImage>;
|
|
@@ -305,7 +345,7 @@ declare const DEFAULT_ELEMENTS: ModelElement[];
|
|
|
305
345
|
interface Model extends MinecraftAsset {
|
|
306
346
|
textures?: IModelTextures;
|
|
307
347
|
parent?: string;
|
|
308
|
-
display?: ModelDisplay
|
|
348
|
+
display?: Partial<Record<DisplayPosition, ModelDisplay>>;
|
|
309
349
|
elements?: ModelElement[];
|
|
310
350
|
hierarchy?: string[];
|
|
311
351
|
}
|
|
@@ -320,7 +360,6 @@ interface ItemModel extends Model {
|
|
|
320
360
|
interface TextureAsset extends MinecraftAsset, ImageInfo {
|
|
321
361
|
}
|
|
322
362
|
interface ModelDisplay {
|
|
323
|
-
position?: DisplayPosition;
|
|
324
363
|
translation?: TripleArray;
|
|
325
364
|
rotation?: TripleArray;
|
|
326
365
|
scale?: TripleArray;
|
|
@@ -340,13 +379,7 @@ declare function isDoubleArray(obj: any): obj is DoubleArray;
|
|
|
340
379
|
declare function isTripleArray(obj: any): obj is TripleArray;
|
|
341
380
|
declare function isQuadArray(obj: any): obj is QuadArray;
|
|
342
381
|
|
|
343
|
-
/**
|
|
344
|
-
* down up
|
|
345
|
-
* east north west south
|
|
346
|
-
*
|
|
347
|
-
* bottom-left to top-right
|
|
348
|
-
* [bl, br, tl, tr]
|
|
349
|
-
*/
|
|
382
|
+
/** Vanilla Minecraft cube UVs in Three.js BoxGeometry face and vertex order. */
|
|
350
383
|
declare class MinecraftCubeTexture {
|
|
351
384
|
readonly u: number;
|
|
352
385
|
readonly v: number;
|
|
@@ -362,7 +395,7 @@ declare class MinecraftCubeTexture {
|
|
|
362
395
|
getUvSouth(w: number, h: number, l: number): QuadArray<DoubleArray>;
|
|
363
396
|
getUvNorth(w: number, h: number, l: number): QuadArray<DoubleArray>;
|
|
364
397
|
getFaceUv(face: CubeFace, w: number, h: number, l: number): QuadArray<DoubleArray>;
|
|
365
|
-
toUvArray(w: number, h: number, l: number): number[];
|
|
398
|
+
toUvArray(w: number, h: number, l: number, mirror?: boolean): number[];
|
|
366
399
|
}
|
|
367
400
|
|
|
368
401
|
interface MinecraftTextureMeta extends MinecraftAsset {
|
|
@@ -431,7 +464,7 @@ interface Transformable {
|
|
|
431
464
|
declare function isTransformable(obj: any): obj is Transformable;
|
|
432
465
|
|
|
433
466
|
declare const changeEvent: {
|
|
434
|
-
type:
|
|
467
|
+
type: "change";
|
|
435
468
|
};
|
|
436
469
|
type Maybe<T> = T | undefined;
|
|
437
470
|
declare function md5(str: string): string;
|
|
@@ -515,6 +548,7 @@ declare class UVMapper {
|
|
|
515
548
|
static setCubeUvs(geometry: BoxGeometry, originalTextureSize: DoubleArray, actualTextureSize: DoubleArray, faces: ModelFaces): void;
|
|
516
549
|
static facesToUvArray(faces: ModelFaces, originalTextureSize: DoubleArray, actualTextureSize: DoubleArray): number[];
|
|
517
550
|
static facesToUv(faces: ModelFaces, originalTextureSize: DoubleArray, actualTextureSize: DoubleArray): Float32BufferAttribute;
|
|
551
|
+
static lockUvs(geometry: BoxGeometry, faces: ModelFaces, atlas: TextureAtlas, rotation: Euler): void;
|
|
518
552
|
static getAtlas(model: Model): Promise<Maybe<TextureAtlas>>;
|
|
519
553
|
static fillMissingTextureKeys<T>(textures: ModelTextures, target: {
|
|
520
554
|
[k: string]: T;
|
|
@@ -536,14 +570,13 @@ declare class MinecraftFaceUV {
|
|
|
536
570
|
}
|
|
537
571
|
|
|
538
572
|
/**
|
|
539
|
-
*
|
|
573
|
+
* Stops the shared Ticker and request queues, and clears the in-memory caches.
|
|
540
574
|
*
|
|
541
|
-
*
|
|
542
|
-
*
|
|
543
|
-
* the library is loaded. Browsers don't care, but anything headless - a render server, a CLI, a
|
|
544
|
-
* test run - has to call this when it's done.
|
|
575
|
+
* Idle Node processes can exit without calling this: cache and Ticker timers are unref'd,
|
|
576
|
+
* and idle request queues hold no timer. Pending requests keep their normal timer references.
|
|
545
577
|
*
|
|
546
|
-
*
|
|
578
|
+
* Call this only when finished with MineRender. Queued, retrying, and future requests reject;
|
|
579
|
+
* HTTP requests already running can finish. Queue shutdown is permanent, and cache expiry timers do not restart.
|
|
547
580
|
*/
|
|
548
581
|
declare function shutdown(): void;
|
|
549
582
|
|
|
@@ -561,32 +594,7 @@ type Task = () => any | Promise<any>;
|
|
|
561
594
|
|
|
562
595
|
declare function prefix(prefix?: string): string;
|
|
563
596
|
|
|
564
|
-
interface ModelPart {
|
|
565
|
-
textureWidth: number;
|
|
566
|
-
textureHeight: number;
|
|
567
|
-
textureOffsetU: number;
|
|
568
|
-
textureOffsetV: number;
|
|
569
|
-
pivotX: number;
|
|
570
|
-
pivotY: number;
|
|
571
|
-
pivotZ: number;
|
|
572
|
-
pitch: number;
|
|
573
|
-
yaw: number;
|
|
574
|
-
roll: number;
|
|
575
|
-
mirror: boolean;
|
|
576
|
-
cubes: Cube[];
|
|
577
|
-
children: ModelPart[];
|
|
578
|
-
}
|
|
579
|
-
interface Cube {
|
|
580
|
-
minX: number;
|
|
581
|
-
minY: number;
|
|
582
|
-
minZ: number;
|
|
583
|
-
maxX: number;
|
|
584
|
-
maxY: number;
|
|
585
|
-
maxZ: number;
|
|
586
|
-
}
|
|
587
|
-
|
|
588
597
|
declare function applyElementRotation(rotation: ElementRotation, geometry: BufferGeometry): void;
|
|
589
|
-
declare function applyModelPartRotation(modelPart: ModelPart, geometry: BufferGeometry): void;
|
|
590
598
|
declare function applyGenericRotation(axis: Axis, rotation: number, obj: Object3D): void;
|
|
591
599
|
declare function addBox3WireframeToObject(box: Box3, obj: Object3D, color?: number, w?: number): void;
|
|
592
600
|
declare function addWireframeToObject(obj: Object3D, color?: number, w?: number): void;
|
|
@@ -615,15 +623,47 @@ declare enum AssetParser {
|
|
|
615
623
|
declare abstract class AssetSource {
|
|
616
624
|
protected constructor();
|
|
617
625
|
abstract get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<Maybe<T>>;
|
|
626
|
+
/**
|
|
627
|
+
* Identifies this source's content across sessions for persistent caching. Sources that
|
|
628
|
+
* cannot tell whether their content changed (an unnamed archive, for example) return
|
|
629
|
+
* undefined, which keeps their results out of long-lived caches.
|
|
630
|
+
*/
|
|
631
|
+
get cacheId(): Maybe<string>;
|
|
632
|
+
}
|
|
633
|
+
/** A source failed to load or parse an asset; cause retains the original failure. */
|
|
634
|
+
declare class AssetLoadError extends Error {
|
|
635
|
+
readonly source: AssetSource;
|
|
636
|
+
readonly key: AssetKey;
|
|
637
|
+
readonly path: string;
|
|
638
|
+
readonly cause: unknown;
|
|
639
|
+
constructor(source: AssetSource, key: AssetKey, path: string, cause: unknown);
|
|
618
640
|
}
|
|
619
641
|
|
|
620
642
|
declare class AssetLoader {
|
|
621
643
|
static ROOT: string;
|
|
622
644
|
private static _SOURCES;
|
|
645
|
+
/** Used when a registered source cannot identify its content, so nothing persists past this session. */
|
|
646
|
+
private static readonly SESSION_SCOPE;
|
|
647
|
+
static get version(): string;
|
|
648
|
+
static setVersion(version: string): void;
|
|
649
|
+
/**
|
|
650
|
+
* Scope for persistent cache keys. Empty with only the default vanilla sources, so their
|
|
651
|
+
* entries stay valid across sessions; otherwise it names every added source (resource packs,
|
|
652
|
+
* mirrors) so their results never masquerade as vanilla assets after a reload.
|
|
653
|
+
*/
|
|
654
|
+
static get persistentScope(): string;
|
|
655
|
+
/** Prefixes a persistent cache key with the current source scope. */
|
|
656
|
+
static persistentKey(key: string): string;
|
|
623
657
|
static addSource(key: string, source: AssetSource, override?: boolean): void;
|
|
624
658
|
static removeSource(key: string): Maybe<AssetSource>;
|
|
625
659
|
static getAll<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<T[]>;
|
|
660
|
+
/** Returns the first defined result in source-priority order, without merging assets. */
|
|
626
661
|
static get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<Maybe<T>>;
|
|
662
|
+
/** Tries each path within a source before considering lower-priority sources. */
|
|
663
|
+
static getFirst<T extends MinecraftAsset>(keys: readonly AssetKey[], parser: AssetParser | string): Promise<Maybe<{
|
|
664
|
+
key: AssetKey;
|
|
665
|
+
asset: T;
|
|
666
|
+
}>>;
|
|
627
667
|
}
|
|
628
668
|
|
|
629
669
|
interface BlockState extends MinecraftAsset {
|
|
@@ -638,18 +678,19 @@ interface BlockStateVariant {
|
|
|
638
678
|
y?: number;
|
|
639
679
|
x?: number;
|
|
640
680
|
uvlock?: boolean;
|
|
681
|
+
weight?: number;
|
|
641
682
|
}
|
|
642
683
|
interface BlockStateMultipart {
|
|
643
|
-
when?: MultipartCondition
|
|
644
|
-
|
|
645
|
-
};
|
|
646
|
-
apply?: BlockStateVariant;
|
|
647
|
-
}
|
|
648
|
-
interface MultipartCondition {
|
|
649
|
-
[key: string]: string;
|
|
684
|
+
when?: MultipartCondition;
|
|
685
|
+
apply?: BlockStateVariant | BlockStateVariant[];
|
|
650
686
|
}
|
|
687
|
+
type MultipartCondition = Record<string, string> | {
|
|
688
|
+
OR: MultipartCondition[];
|
|
689
|
+
} | {
|
|
690
|
+
AND: MultipartCondition[];
|
|
691
|
+
};
|
|
651
692
|
|
|
652
|
-
declare const DEFAULT_ROOT = "https://assets.mcasset.cloud/1.
|
|
693
|
+
declare const DEFAULT_ROOT = "https://assets.mcasset.cloud/1.21.11";
|
|
653
694
|
declare const DEFAULT_NAMESPACE = "minecraft";
|
|
654
695
|
declare class Assets {
|
|
655
696
|
/**
|
|
@@ -688,25 +729,50 @@ declare class DefaultBlockStates implements MinecraftAsset {
|
|
|
688
729
|
[k: string]: BlockStatePropertyDefaults;
|
|
689
730
|
}
|
|
690
731
|
|
|
691
|
-
interface EntityModel
|
|
692
|
-
|
|
693
|
-
|
|
732
|
+
interface EntityModel {
|
|
733
|
+
key: BasicAssetKey;
|
|
734
|
+
texture?: AssetKey;
|
|
735
|
+
layer: EntityModelLayer;
|
|
736
|
+
id: string;
|
|
737
|
+
}
|
|
738
|
+
interface EntityModelFile extends MinecraftAsset {
|
|
739
|
+
id: string;
|
|
740
|
+
layers: Record<string, EntityModelLayer>;
|
|
741
|
+
}
|
|
742
|
+
interface EntityModelLayer {
|
|
743
|
+
texture: [number, number];
|
|
744
|
+
textureLocation?: string;
|
|
745
|
+
root: EntityModelPart;
|
|
746
|
+
}
|
|
747
|
+
interface EntityModelPart {
|
|
748
|
+
pose: {
|
|
749
|
+
offset: [number, number, number];
|
|
750
|
+
rotation: [number, number, number];
|
|
751
|
+
scale?: [number, number, number];
|
|
694
752
|
};
|
|
753
|
+
texture?: [number, number];
|
|
754
|
+
cubes: EntityModelCube[];
|
|
755
|
+
children: Record<string, EntityModelPart>;
|
|
756
|
+
}
|
|
757
|
+
interface EntityModelCube {
|
|
758
|
+
origin: [number, number, number];
|
|
759
|
+
size: [number, number, number];
|
|
760
|
+
uv: [number, number];
|
|
761
|
+
grow?: [number, number, number];
|
|
762
|
+
mirror?: boolean;
|
|
695
763
|
}
|
|
696
764
|
|
|
697
765
|
declare class Entities {
|
|
698
|
-
static getBlockEntityModels(): Promise<Maybe<BlockEntityModels>>;
|
|
699
|
-
static getEntityModels(): Promise<Maybe<EntityModels>>;
|
|
700
|
-
static getBlockList(): Promise<string[]>;
|
|
701
766
|
static getEntityList(): Promise<string[]>;
|
|
702
|
-
static
|
|
703
|
-
static
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
767
|
+
static getEntity(modelKey: BasicAssetKey, textureKey?: BasicAssetKey, options?: EntityModelOptions): Promise<Maybe<EntityModel>>;
|
|
768
|
+
static resolveTexture(modelKey: BasicAssetKey): Promise<Maybe<AssetKey>>;
|
|
769
|
+
/** @deprecated Use getEntityList(); block entities share the entity dataset. */
|
|
770
|
+
static getBlockList(): Promise<string[]>;
|
|
771
|
+
/** @deprecated Use getEntity(); block entities share the entity dataset. */
|
|
772
|
+
static getBlock(modelKey: BasicAssetKey, textureKey?: BasicAssetKey, options?: EntityModelOptions): Promise<Maybe<EntityModel>>;
|
|
707
773
|
}
|
|
708
|
-
|
|
709
|
-
|
|
774
|
+
interface EntityModelOptions {
|
|
775
|
+
layer?: string;
|
|
710
776
|
}
|
|
711
777
|
|
|
712
778
|
declare class Models {
|
|
@@ -714,12 +780,22 @@ declare class Models {
|
|
|
714
780
|
private static get PERSISTENT_CACHE();
|
|
715
781
|
static getItemList(): Promise<string[]>;
|
|
716
782
|
static loadAndMerge(key: AssetKey): Promise<Maybe<Model>>;
|
|
783
|
+
private static getItemModel;
|
|
784
|
+
private static defaultItemModel;
|
|
717
785
|
static getRaw(key: AssetKey): Promise<Maybe<Model>>;
|
|
718
786
|
static getMerged(key: AssetKey): Promise<Maybe<Model>>;
|
|
719
787
|
static get(key: AssetKey): Promise<Maybe<Model>>;
|
|
720
788
|
static clearCache(): Promise<void>;
|
|
721
789
|
}
|
|
722
790
|
|
|
791
|
+
declare class DisplayTransforms {
|
|
792
|
+
/** Resolve hand fallbacks within one model, before inheriting parent display entries. */
|
|
793
|
+
static withHandFallbacks(display: Model["display"]): Model["display"];
|
|
794
|
+
/** Build a display pose for geometry already centered at the model's [8, 8, 8] pivot. */
|
|
795
|
+
static getMatrix(display: Model["display"], position: DisplayPosition): Matrix4;
|
|
796
|
+
static apply(geometry: BufferGeometry, matrix: Matrix4): void;
|
|
797
|
+
}
|
|
798
|
+
|
|
723
799
|
declare class ModelGenerator {
|
|
724
800
|
static readonly ITEM_LAYERS: string[];
|
|
725
801
|
static generateItemModel(imageData: ImageData$1, layer: string): ModelElement[];
|
|
@@ -736,6 +812,12 @@ interface Block {
|
|
|
736
812
|
nbt?: any;
|
|
737
813
|
}
|
|
738
814
|
|
|
815
|
+
declare class BlockTints {
|
|
816
|
+
/** Resolves block preview colors without biome context; explicit tints take precedence. */
|
|
817
|
+
static get(key: AssetKey | undefined, state: BlockStateProperties, model: Model, tints?: Record<number, number>): Promise<Record<number, number> | undefined>;
|
|
818
|
+
private static grassColor;
|
|
819
|
+
}
|
|
820
|
+
|
|
739
821
|
interface Instanceable {
|
|
740
822
|
nextInstance(): InstanceReference<SceneObject>;
|
|
741
823
|
getMatrixAt(index: number, matrix?: Matrix4): Matrix4;
|
|
@@ -792,6 +874,12 @@ declare class ModelObject extends SceneObject {
|
|
|
792
874
|
protected applyTextures(): void;
|
|
793
875
|
}
|
|
794
876
|
interface ModelObjectOptions extends SceneObjectOptions {
|
|
877
|
+
/** Minecraft display pose applied around the model center, before scene transforms. */
|
|
878
|
+
displayPosition?: DisplayPosition;
|
|
879
|
+
/** Quarter-turn block rotation in radians to compensate when locking UVs. */
|
|
880
|
+
uvLockRotation?: TripleArray;
|
|
881
|
+
/** sRGB 0xRRGGBB colors by face tint index; omitted indices stay white. */
|
|
882
|
+
tints?: Record<number, number>;
|
|
795
883
|
}
|
|
796
884
|
declare function isModelObject(obj: any): obj is ModelObject;
|
|
797
885
|
|
|
@@ -824,24 +912,35 @@ declare enum SkinPart {
|
|
|
824
912
|
}
|
|
825
913
|
declare const SKIN_PARTS: SkinPart[];
|
|
826
914
|
|
|
915
|
+
type CapeLayout = "minecraft" | "optifine" | "labymod";
|
|
916
|
+
declare const capeTextureSizes: Record<CapeLayout, DoubleArray>;
|
|
917
|
+
|
|
827
918
|
declare class SkinObject extends SceneObject {
|
|
828
919
|
readonly options: SkinObjectOptions;
|
|
829
920
|
private slim;
|
|
830
|
-
private
|
|
921
|
+
private detectedSlim;
|
|
831
922
|
private skinTextureSrc?;
|
|
832
|
-
private
|
|
833
|
-
private
|
|
834
|
-
private
|
|
923
|
+
private skinMaterial?;
|
|
924
|
+
private skinLoad;
|
|
925
|
+
private capeLoad;
|
|
835
926
|
constructor(options?: DeepPartial<SkinObjectOptions>);
|
|
836
927
|
init(): Promise<void>;
|
|
837
928
|
protected removeMeshes(): void;
|
|
838
929
|
protected createMeshes(): void;
|
|
839
|
-
setSkinTexture(src: string): void
|
|
840
|
-
|
|
841
|
-
|
|
930
|
+
setSkinTexture(src: string): Promise<void>;
|
|
931
|
+
/** Load a cape texture in the selected layout, or pass undefined to remove the cape. */
|
|
932
|
+
setCapeTexture(src?: string, layout?: CapeLayout): Promise<void>;
|
|
933
|
+
/** Select the arm model, or pass undefined to use texture detection. */
|
|
934
|
+
setSlim(slim?: boolean): void;
|
|
935
|
+
private updateSlim;
|
|
936
|
+
/** Select the texture layout, or pass undefined to detect it from image dimensions. */
|
|
937
|
+
setLegacy(legacy?: boolean): Promise<void>;
|
|
938
|
+
dispose(): void;
|
|
842
939
|
protected getBoxGeometry(part: SkinPart): BoxGeometry;
|
|
843
940
|
}
|
|
844
941
|
interface SkinObjectOptions extends SceneObjectOptions {
|
|
942
|
+
slim?: boolean;
|
|
943
|
+
legacy?: boolean;
|
|
845
944
|
}
|
|
846
945
|
|
|
847
946
|
declare class EntityObject extends SceneObject {
|
|
@@ -854,11 +953,14 @@ declare class EntityObject extends SceneObject {
|
|
|
854
953
|
constructor(entity: EntityModel, options?: Partial<EntityObjectOptions>);
|
|
855
954
|
init(): Promise<void>;
|
|
856
955
|
dispose(): void;
|
|
956
|
+
private get textureKey();
|
|
857
957
|
protected loadTextures(): Promise<void>;
|
|
858
958
|
protected createMeshes(force?: boolean): void;
|
|
959
|
+
private createPart;
|
|
859
960
|
protected applyTextures(): Promise<void>;
|
|
860
961
|
}
|
|
861
962
|
interface EntityObjectOptions extends SceneObjectOptions {
|
|
963
|
+
flip?: boolean;
|
|
862
964
|
}
|
|
863
965
|
declare function isEntityObject(obj: any): obj is EntityObject;
|
|
864
966
|
|
|
@@ -886,7 +988,9 @@ interface MineRenderSceneOptions {
|
|
|
886
988
|
}
|
|
887
989
|
declare function isMineRenderScene(obj: any): obj is MineRenderScene;
|
|
888
990
|
|
|
889
|
-
declare class SceneObject extends Object3D
|
|
991
|
+
declare class SceneObject extends Object3D<Object3DEventMap & {
|
|
992
|
+
change: {};
|
|
993
|
+
}> implements Disposable, Instanceable, Transformable {
|
|
890
994
|
readonly isSceneObject: true;
|
|
891
995
|
static readonly DEFAULT_OPTIONS: SceneObjectOptions;
|
|
892
996
|
readonly options: SceneObjectOptions;
|
|
@@ -912,9 +1016,9 @@ declare class SceneObject extends Object3D implements Disposable, Instanceable,
|
|
|
912
1016
|
*/
|
|
913
1017
|
toggleGroupVisibility(name: string, visible?: boolean): boolean;
|
|
914
1018
|
protected addOrReplaceMesh(mesh: Mesh, parent: Object3D, name?: string): void;
|
|
915
|
-
protected createAndAddMesh(name?: string, group?: Object3D, geometry?: BufferGeometry, material?: Material
|
|
916
|
-
protected createMesh(name?: string, geometry?: BufferGeometry, material?: Material
|
|
917
|
-
protected createInstancedMesh(name: Maybe<string>, geometry: BufferGeometry, material: Material
|
|
1019
|
+
protected createAndAddMesh(name?: string, group?: Object3D, geometry?: BufferGeometry, material?: Material | Material[], offsetAxis?: Axis, offset?: number): Mesh;
|
|
1020
|
+
protected createMesh(name?: string, geometry?: BufferGeometry, material?: Material | Material[], offsetAxis?: Axis, offset?: number): Mesh;
|
|
1021
|
+
protected createInstancedMesh(name: Maybe<string>, geometry: BufferGeometry, material: Material | Material[], count: number): InstancedMesh;
|
|
918
1022
|
/**
|
|
919
1023
|
* Get a mesh by its name
|
|
920
1024
|
*/
|
|
@@ -1083,8 +1187,8 @@ interface NBTAsset extends MinecraftAsset, NBT {
|
|
|
1083
1187
|
}
|
|
1084
1188
|
|
|
1085
1189
|
interface ResponseParser<T extends MinecraftAsset> {
|
|
1086
|
-
config(request:
|
|
1087
|
-
parse(response:
|
|
1190
|
+
config(request: RequestConfig): any;
|
|
1191
|
+
parse(response: RequestResponse): Maybe<T> | Promise<Maybe<T>>;
|
|
1088
1192
|
}
|
|
1089
1193
|
|
|
1090
1194
|
declare class HostedAssetSource extends AssetSource {
|
|
@@ -1103,6 +1207,7 @@ declare class HostedAssetSource extends AssetSource {
|
|
|
1103
1207
|
private readonly _options;
|
|
1104
1208
|
constructor(root: string, options?: Partial<HostedAssetSourceOptions>);
|
|
1105
1209
|
get root(): string;
|
|
1210
|
+
get cacheId(): string;
|
|
1106
1211
|
get options(): HostedAssetSourceOptions;
|
|
1107
1212
|
get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser): Promise<Maybe<T>>;
|
|
1108
1213
|
}
|
|
@@ -1117,6 +1222,8 @@ interface ArchiveEntry {
|
|
|
1117
1222
|
}
|
|
1118
1223
|
|
|
1119
1224
|
interface ArchiveProxy {
|
|
1225
|
+
/** Identifies the archive's content across sessions; undefined when it cannot be identified. */
|
|
1226
|
+
readonly id?: string;
|
|
1120
1227
|
getEntries(): Promise<ArchiveEntry[]>;
|
|
1121
1228
|
}
|
|
1122
1229
|
|
|
@@ -1124,6 +1231,7 @@ declare class ArchiveAssetSource extends AssetSource implements ArchiveProxy {
|
|
|
1124
1231
|
readonly _archiveProxy: ArchiveProxy;
|
|
1125
1232
|
constructor(archiveProxy: ArchiveProxy);
|
|
1126
1233
|
static blob(blob: Blob): ArchiveAssetSource;
|
|
1234
|
+
get cacheId(): Maybe<string>;
|
|
1127
1235
|
getEntries(): Promise<ArchiveEntry[]>;
|
|
1128
1236
|
getEntry(path: string): Promise<Maybe<ArchiveEntry>>;
|
|
1129
1237
|
get<T extends MinecraftAsset>(key: AssetKey, parser: AssetParser | string): Promise<Maybe<T>>;
|
|
@@ -1134,7 +1242,8 @@ declare class ArchiveAssetSource extends AssetSource implements ArchiveProxy {
|
|
|
1134
1242
|
declare class BrowserArchiveProxy implements ArchiveProxy {
|
|
1135
1243
|
readonly _blob: Blob;
|
|
1136
1244
|
readonly _reader: ZipReader<Blob>;
|
|
1137
|
-
|
|
1245
|
+
readonly id?: string;
|
|
1246
|
+
constructor(blob: Blob, id?: string);
|
|
1138
1247
|
getEntries(): Promise<ArchiveEntry[]>;
|
|
1139
1248
|
}
|
|
1140
1249
|
|
|
@@ -1212,14 +1321,20 @@ declare class Caching {
|
|
|
1212
1321
|
static readonly mergedModelCache: AsyncLoadingCache<CacheKey, Model>;
|
|
1213
1322
|
static readonly modelTextureAtlasCache: AsyncLoadingCache<CacheKey, TextureAtlas>;
|
|
1214
1323
|
static readonly blockStateCache: AsyncLoadingCache<CacheKey, BlockState>;
|
|
1324
|
+
static readonly listAssetCache: AsyncLoadingCache<CacheKey, ListAsset>;
|
|
1325
|
+
static readonly defaultBlockStatesCache: AsyncLoadingCache<CacheKey, DefaultBlockStates>;
|
|
1326
|
+
static readonly blockTintCache: AsyncLoadingCache<CacheKey, number>;
|
|
1327
|
+
static readonly entityModelCache: AsyncLoadingCache<CacheKey, EntityModelFile>;
|
|
1328
|
+
static readonly entityTextureCache: AsyncLoadingCache<CacheKey, AssetKey>;
|
|
1329
|
+
private static createAssetCache;
|
|
1215
1330
|
/** Every cache above, so clear()/end() can never fall out of sync with the field list again. */
|
|
1216
1331
|
private static get all();
|
|
1217
1332
|
static clear(): void;
|
|
1218
1333
|
/**
|
|
1219
1334
|
* Clears every cache and stops its expiry timer.
|
|
1220
1335
|
*
|
|
1221
|
-
*
|
|
1222
|
-
*
|
|
1336
|
+
* Expiry timers are unref'd in Node, so idle processes can exit without this cleanup.
|
|
1337
|
+
* Use {@link shutdown} to also stop requests and the shared Ticker.
|
|
1223
1338
|
*/
|
|
1224
1339
|
static end(): void;
|
|
1225
1340
|
static get cacheSizes(): {};
|
|
@@ -1319,15 +1434,14 @@ declare class Renderer implements Disposable {
|
|
|
1319
1434
|
protected _scene: MineRenderScene;
|
|
1320
1435
|
protected _camera: Camera;
|
|
1321
1436
|
protected _renderer: WebGLRenderer;
|
|
1322
|
-
protected _composer
|
|
1437
|
+
protected _composer?: EffectComposer;
|
|
1323
1438
|
protected _controls?: OrbitControls;
|
|
1324
1439
|
protected _stats?: Stats;
|
|
1325
1440
|
protected _dirty: boolean;
|
|
1326
1441
|
protected _animationLoop: any;
|
|
1327
|
-
protected
|
|
1328
|
-
protected _animationTimer?: NodeJS.Timeout;
|
|
1329
|
-
protected _animationFrame?: number;
|
|
1442
|
+
protected _frameInterval?: number;
|
|
1330
1443
|
protected _resizeListener?: () => void;
|
|
1444
|
+
private _nextFrameTime?;
|
|
1331
1445
|
private _disposed;
|
|
1332
1446
|
private readonly _debugHelpers;
|
|
1333
1447
|
private readonly _eventDispatchers;
|
|
@@ -1336,7 +1450,7 @@ declare class Renderer implements Disposable {
|
|
|
1336
1450
|
protected createScene(): MineRenderScene;
|
|
1337
1451
|
protected createCamera(): Camera;
|
|
1338
1452
|
protected createRenderer(): WebGLRenderer;
|
|
1339
|
-
protected createComposer(): EffectComposer
|
|
1453
|
+
protected createComposer(): Maybe<EffectComposer>;
|
|
1340
1454
|
protected createControls(): Maybe<OrbitControls>;
|
|
1341
1455
|
init(): void;
|
|
1342
1456
|
get element(): Maybe<HTMLElement>;
|
|
@@ -1345,7 +1459,7 @@ declare class Renderer implements Disposable {
|
|
|
1345
1459
|
* Redraws when the dispatcher emits the selected event. Registering the same pair twice has no effect.
|
|
1346
1460
|
* The renderer removes its listener on disposal; the caller retains ownership of the dispatcher.
|
|
1347
1461
|
*/
|
|
1348
|
-
registerEventDispatcher(dispatcher: EventDispatcher
|
|
1462
|
+
registerEventDispatcher(dispatcher: EventDispatcher<any>, changeEvent?: string): void;
|
|
1349
1463
|
resize(width: number, height: number): void;
|
|
1350
1464
|
get dirty(): boolean;
|
|
1351
1465
|
set dirty(dirty: boolean);
|
|
@@ -1365,7 +1479,7 @@ declare class Renderer implements Disposable {
|
|
|
1365
1479
|
get scene(): MineRenderScene;
|
|
1366
1480
|
get camera(): Camera;
|
|
1367
1481
|
get renderer(): WebGLRenderer;
|
|
1368
|
-
get composer(): EffectComposer
|
|
1482
|
+
get composer(): Maybe<EffectComposer>;
|
|
1369
1483
|
/** Renderer-owned controls, or undefined when disabled at construction or after disposal. */
|
|
1370
1484
|
get controls(): Maybe<OrbitControls>;
|
|
1371
1485
|
}
|
|
@@ -1394,6 +1508,7 @@ interface CameraOptions {
|
|
|
1394
1508
|
lookingAt: Vector3 | TripleArray;
|
|
1395
1509
|
}
|
|
1396
1510
|
interface RenderOptions {
|
|
1511
|
+
/** Maximum draw rate (60 by default); zero or a negative value disables the limit. */
|
|
1397
1512
|
fpsLimit: number;
|
|
1398
1513
|
stats: boolean;
|
|
1399
1514
|
antialias: boolean;
|
|
@@ -1421,7 +1536,7 @@ declare class SceneInspector {
|
|
|
1421
1536
|
private selectedObject?;
|
|
1422
1537
|
constructor(renderer: Renderer);
|
|
1423
1538
|
protected init(): void;
|
|
1424
|
-
findMeshChildren(from: Object3D, out?: Mesh[]): Mesh<three.BufferGeometry
|
|
1539
|
+
findMeshChildren(from: Object3D, out?: Mesh[]): Mesh<three.BufferGeometry<three.NormalBufferAttributes>, three.Material | three.Material[], three.Object3DEventMap>[];
|
|
1425
1540
|
onClick(event: any): void;
|
|
1426
1541
|
appendTo(el: HTMLElement): void;
|
|
1427
1542
|
protected handleRaycasterObjects(intersections: Intersection[]): void;
|
|
@@ -1458,34 +1573,33 @@ declare class StatLine {
|
|
|
1458
1573
|
update(): void;
|
|
1459
1574
|
}
|
|
1460
1575
|
|
|
1461
|
-
declare class Requests {
|
|
1462
|
-
private static axiosInstance;
|
|
1463
|
-
private static mcAssetInstance;
|
|
1464
|
-
private static genericQueue;
|
|
1465
|
-
private static mcAssetRequestQueue;
|
|
1466
|
-
static genericRequest(request: AxiosRequestConfig): Promise<AxiosResponse>;
|
|
1467
|
-
static mcAssetRequest(request: AxiosRequestConfig): Promise<AxiosResponse>;
|
|
1468
|
-
private static shouldRetry;
|
|
1469
|
-
static setMcAssetRoot(root: string): void;
|
|
1470
|
-
static get queueSizes(): {
|
|
1471
|
-
generic: number;
|
|
1472
|
-
mcAsset: number;
|
|
1473
|
-
};
|
|
1474
|
-
/**
|
|
1475
|
-
* Stops both queue timers. jobqu reschedules itself indefinitely, so a Node process will not
|
|
1476
|
-
* exit until this is called - see {@link shutdown}.
|
|
1477
|
-
*/
|
|
1478
|
-
static end(): void;
|
|
1479
|
-
}
|
|
1480
|
-
|
|
1481
1576
|
type SkinGeometries = Record<SkinPart, TripleArray>;
|
|
1482
1577
|
declare const classicSkinGeometries: SkinGeometries;
|
|
1483
1578
|
declare const slimSkinGeometries: SkinGeometries;
|
|
1484
1579
|
|
|
1580
|
+
declare class SkinImage {
|
|
1581
|
+
static getData(src: string): Promise<ImageData>;
|
|
1582
|
+
private static decodePng;
|
|
1583
|
+
}
|
|
1584
|
+
|
|
1485
1585
|
type SkinTextureCoordinates = Record<SkinPart, ModelFaces>;
|
|
1486
1586
|
declare const classicSkinTextureCoordinates: Readonly<SkinTextureCoordinates>;
|
|
1487
1587
|
declare const slimSkinTextureCoordinates: Readonly<SkinTextureCoordinates>;
|
|
1488
1588
|
|
|
1589
|
+
interface SkinTexture {
|
|
1590
|
+
material: MeshBasicMaterial;
|
|
1591
|
+
slim: boolean;
|
|
1592
|
+
legacy: boolean;
|
|
1593
|
+
}
|
|
1594
|
+
declare class SkinTextures {
|
|
1595
|
+
static get(src: string, legacy?: boolean): Promise<SkinTexture>;
|
|
1596
|
+
static getCape(src: string, layout?: CapeLayout): Promise<MeshBasicMaterial>;
|
|
1597
|
+
private static createMaterial;
|
|
1598
|
+
private static isSlim;
|
|
1599
|
+
private static normalizeLegacy;
|
|
1600
|
+
private static makeBaseOpaque;
|
|
1601
|
+
}
|
|
1602
|
+
|
|
1489
1603
|
declare class Skins {
|
|
1490
1604
|
static fromUuidOrUsername(uuidOrUsername: string): Promise<Maybe<string>>;
|
|
1491
1605
|
static fromUuid(uuid: string): Promise<Maybe<string>>;
|
|
@@ -1494,8 +1608,11 @@ declare class Skins {
|
|
|
1494
1608
|
static capeFromUuidOrUsername(uuidOrUsername: string): Promise<Maybe<string>>;
|
|
1495
1609
|
static capeFromUuid(uuid: string): Promise<Maybe<string>>;
|
|
1496
1610
|
static capeFromUsername(username: string): Promise<Maybe<string>>;
|
|
1497
|
-
static
|
|
1611
|
+
/** Returns a full static cape texture for a username or UUID. */
|
|
1612
|
+
static capeFromCapesDev(player: string, capeType?: string): Promise<Maybe<string>>;
|
|
1498
1613
|
private static usernameToUuid;
|
|
1614
|
+
private static usernameToUuidMcProxy;
|
|
1615
|
+
/** @deprecated **/
|
|
1499
1616
|
private static usernameToUuidSkinProxy;
|
|
1500
1617
|
private static usernameToUuidMineTools;
|
|
1501
1618
|
private static getProfileFromMinetools;
|
|
@@ -1505,11 +1622,18 @@ declare class Skins {
|
|
|
1505
1622
|
private static getCrafatarCapeUrl;
|
|
1506
1623
|
private static getMcHeadsSkinUrl;
|
|
1507
1624
|
private static getMineSkinPlayerSkinUrl;
|
|
1625
|
+
/** @deprecated **/
|
|
1508
1626
|
private static getSkinProxySkinUrl;
|
|
1627
|
+
/** @deprecated **/
|
|
1509
1628
|
private static getSkinProxyCapeUrl;
|
|
1629
|
+
private static getMcProxySkinUrl;
|
|
1630
|
+
private static getMcProxyCapeUrl;
|
|
1510
1631
|
}
|
|
1511
1632
|
|
|
1512
1633
|
declare class TextureLoader {
|
|
1634
|
+
private static readonly failedTextures;
|
|
1635
|
+
/** Reports whether image loading failed, so cached textures can be retried. */
|
|
1636
|
+
static hasFailed(texture: Texture): boolean;
|
|
1513
1637
|
protected static createTexture(): Texture;
|
|
1514
1638
|
static loadInBackground(src: string, format?: PixelFormat, rotation?: number): Texture;
|
|
1515
1639
|
static load(src: string, format?: PixelFormat, rotation?: number): Texture;
|
|
@@ -1523,12 +1647,12 @@ declare class Textures {
|
|
|
1523
1647
|
static getImage(key: TextureKey): Texture;
|
|
1524
1648
|
}
|
|
1525
1649
|
|
|
1526
|
-
declare function mergeBufferGeometries(geometries: BufferGeometry
|
|
1650
|
+
declare function mergeBufferGeometries(geometries: BufferGeometry[], useGroups?: boolean): BufferGeometry;
|
|
1527
1651
|
declare function mergeBufferAttributes(attributes: BufferAttribute[]): BufferAttribute;
|
|
1528
1652
|
declare function interleaveAttributes(attributes: BufferAttribute[]): InterleavedBufferAttribute;
|
|
1529
|
-
declare function estimateBytesUsed(geometry: BufferGeometry
|
|
1530
|
-
declare function mergeVertices(geometry: BufferGeometry
|
|
1531
|
-
declare function toTrianglesDrawMode(geometry: BufferGeometry
|
|
1653
|
+
declare function estimateBytesUsed(geometry: BufferGeometry): number;
|
|
1654
|
+
declare function mergeVertices(geometry: BufferGeometry, tolerance?: number): BufferGeometry;
|
|
1655
|
+
declare function toTrianglesDrawMode(geometry: BufferGeometry, drawMode: TrianglesDrawModes): BufferGeometry;
|
|
1532
1656
|
declare function computeMorphedAttributes(object: Mesh | Line | Points): object;
|
|
1533
1657
|
|
|
1534
1658
|
interface BlockInfo {
|
|
@@ -1619,8 +1743,8 @@ declare class BrowserCache extends PersistentCache<LocalForage> {
|
|
|
1619
1743
|
*
|
|
1620
1744
|
* `image-size` pulls in `fs`/`path` at module scope, so it can only live in the Node build.
|
|
1621
1745
|
* Everything MineRender loads is a PNG in practice; GIF and JPEG are handled as a courtesy and
|
|
1622
|
-
* anything else falls through to an empty result
|
|
1746
|
+
* anything else falls through to an empty result, which ImageLoader rejects.
|
|
1623
1747
|
*/
|
|
1624
1748
|
declare function probeImageSize(data: Uint8Array): ImageSizeInfo;
|
|
1625
1749
|
|
|
1626
|
-
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, ArchiveAssetSource, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type Block,
|
|
1750
|
+
export { AXES, type AnimationFrame, type AnimationMeta, type AnimatorFunction, ArchiveAssetSource, type ArchiveEntry, type ArchiveProxy, AssetKey, AssetLoadError, AssetLoader, AssetParser, AssetSource, type AssetType, Assets, Axis, BUILTIN_ENTITY, BUILTIN_GENERATED, BasicAssetKey, type BasicMinecraftAsset, BatchedExecutor, type BedrockBone, type BedrockCube, type BedrockEntityDescription, type BedrockEntityFile, type BedrockGeometry, type BedrockGeometryFile, type Block, type BlockInfo, type BlockModel, type BlockModelTextures, BlockObject, type BlockObjectOptions, type BlockState, type BlockStateMultipart, type BlockStateProperties, type BlockStateProperty, type BlockStatePropertyDefaults, type BlockStatePropertyValue, type BlockStateVariant, type BlockStateVariants, BlockStates, BlockTints, type BoxGeometryKey, BrowserArchiveProxy, BrowserCache, BrowserEnv, CUBE_FACES, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, type DebugOptions, type DeepPartial, DefaultBlockStates, DisplayPosition, DisplayTransforms, type Disposable, type DoubleArray, type ElementFace, type ElementRotation, Entities, type EntityModel, type EntityModelCube, type EntityModelFile, type EntityModelLayer, type EntityModelOptions, type EntityModelPart, EntityObject, type EntityObjectOptions, Env, type EnvProvider, type ExtractableImageData, type FromTo, Geometries, GuiLight, GuiObject, type GuiObjectOptions, HostedAssetSource, type IModelTextures, ITEM_GENERATED, type ImageInfo, ImageLoader, type ImageSizeInfo, InstanceManager, InstanceReference, type Instanceable, type ItemModel, type ItemModelTextures, type ListAsset, MapControls, type MaterialKey, Materials, type Maybe, type MeshKey, Meshes, MineRenderError, MineRenderScene, type MineRenderSceneOptions, MineRenderWorld, type MinecraftAsset, MinecraftCubeTexture, MinecraftFaceUV, type MinecraftTextureMeta, type Model, type ModelDisplay, type ModelElement, type ModelFaces, ModelGenerator, ModelMerger, ModelObject, type ModelObjectOptions, ModelTextures, Models, type MultiBlockBlock, type MultiBlockStructure, type MultipartCondition, type NBTAsset, NBTHelper, OrbitControls, PersistentCache, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererOptions, type RequestConfig, RequestError, type RequestResponse, Requests, type ResponseParser, SKIN_PARTS, SceneInspector, SceneObject, type SceneObjectOptions, SceneStats, SceneStatsDisplay, SchematicParser, type Serializable, type SkinGeometries, SkinImage, SkinObject, type SkinObjectOptions, SkinPart, type SkinTexture, type SkinTextureCoordinates, SkinTextures, Skins, type StructureNBT, StructureParser, type TextureAsset, TextureAtlas, type TextureKey, TextureLoader, Textures, Ticker, type TickerFunction, TintColors, type Transformable, type TripleArray, UVMapper, WrappedImage, addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation, applyGenericRotation, axisToVec3, base64decode, base64encode, capeTextureSizes, captureException, changeEvent, clampRotationDegrees, classicSkinGeometries, classicSkinTextureCoordinates, computeMorphedAttributes, createCanvas, createImage, estimateBytesUsed, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isSceneObject, isTransformable, isTripleArray, isVector3, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, prefix, probeImageSize, registerBrowserEnv, serializeBoxGeometryKey, serializeImageKey, serializeMaterialKey, serializeMeshKey, serializeTextureKey, sha1, sha256, sha512, shutdown, sleep, slimSkinGeometries, slimSkinTextureCoordinates, timingEnd, timingStart, toDegrees, toRadians, toTrianglesDrawMode };
|