minerender 2.1.0-alpha.114 → 2.1.0-alpha.115

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.
@@ -1,5 +1,5 @@
1
1
  import * as three from 'three';
2
- import { Vector3, PixelFormat, BoxGeometry, Material, ColorRepresentation, MeshBasicMaterial, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, BufferGeometry, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Box2, Scene, Object3DEventMap, ShaderMaterial, Texture, Camera, MOUSE, TOUCH, WebGLRenderer, EventDispatcher, Raycaster, Intersection, Group, DataTexture, CanvasTexture, InterleavedBufferAttribute, TrianglesDrawModes, Line, Points } from 'three';
2
+ import { Vector3, PixelFormat, BoxGeometry, Material, ColorRepresentation, MeshBasicMaterial, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, BufferGeometry, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Box2, Scene, Object3DEventMap, ShaderMaterial, Texture, Camera, MOUSE, TOUCH, Controls, WebGLRenderer, EventDispatcher, Raycaster, Intersection, Group, DataTexture, 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
5
  import { Buffer } from 'buffer';
@@ -2881,6 +2881,112 @@ declare class MapControls extends OrbitControls {
2881
2881
  constructor(object: Camera, domElement?: HTMLElement);
2882
2882
  }
2883
2883
 
2884
+ /** Events dispatched by {@link FlyControls}. */
2885
+ interface FlyControlsEventMap {
2886
+ /** The camera moved or turned. */
2887
+ change: {};
2888
+ /** Mouse look captured the pointer. */
2889
+ lock: {};
2890
+ /** Mouse look released the pointer. */
2891
+ unlock: {};
2892
+ }
2893
+ /** Movement actions that {@link FlyControls.keys} binds to `KeyboardEvent.code` values. */
2894
+ type FlyAction = "forward" | "back" | "left" | "right" | "up" | "down" | "sprint";
2895
+ /**
2896
+ * Creative-flight camera controls: WASD moves horizontally along the view direction, space and shift
2897
+ * move up and down, control sprints, and the mouse turns the camera (pointer lock, or drag).
2898
+ *
2899
+ * Call {@link FlyControls.update} with the elapsed seconds once per frame; the `change` event marks the
2900
+ * renderer dirty while keys are held. Speeds use scene units (16 per block). The element becomes focusable
2901
+ * and keys apply while it has focus or the pointer is locked. The wheel changes the speed, as in vanilla
2902
+ * spectator mode. Touch input uses the left half of the element as a joystick and the right half for looking.
2903
+ */
2904
+ declare class FlyControls extends Controls<FlyControlsEventMap, Camera> {
2905
+ readonly isFlyControls: true;
2906
+ /** Horizontal and vertical speed in scene units per second; vanilla creative flight by default. */
2907
+ movementSpeed: number;
2908
+ /** Speed multiplier while the sprint key is held. */
2909
+ sprintMultiplier: number;
2910
+ /** Radians per pixel of pointer movement. */
2911
+ lookSpeed: number;
2912
+ /** Smooth acceleration and deceleration, approximating vanilla flight momentum. */
2913
+ enableDamping: boolean;
2914
+ /** Portion of the remaining velocity change applied per 60 Hz frame (0–1) when damping is enabled. */
2915
+ dampingFactor: number;
2916
+ /** Capture the pointer on click so the mouse turns the camera without dragging; dragging works regardless. */
2917
+ pointerLock: boolean;
2918
+ /** Scroll the wheel to change `movementSpeed` within `speedRange`. */
2919
+ enableWheelSpeed: boolean;
2920
+ /** Minimum and maximum `movementSpeed` reachable with the wheel. */
2921
+ speedRange: [number, number];
2922
+ /** Touch joystick travel in CSS pixels for full speed. */
2923
+ joystickRadius: number;
2924
+ /** Key bindings by `KeyboardEvent.code`. */
2925
+ keys: Record<FlyAction, string[]>;
2926
+ private readonly _pressed;
2927
+ private readonly _velocity;
2928
+ private readonly _lastPosition;
2929
+ private readonly _lastQuaternion;
2930
+ private _position0;
2931
+ private _quaternion0;
2932
+ private _dragPointer?;
2933
+ private _dragMoved;
2934
+ private _joystick?;
2935
+ private _locked;
2936
+ private _lastTime?;
2937
+ private readonly _onKeyDown;
2938
+ private readonly _onKeyUp;
2939
+ private readonly _onPointerDown;
2940
+ private readonly _onPointerMove;
2941
+ private readonly _onPointerUp;
2942
+ private readonly _onPointerLockChange;
2943
+ private readonly _onContextMenu;
2944
+ private readonly _onWheel;
2945
+ private readonly _onBlur;
2946
+ constructor(camera: Camera, domElement?: HTMLElement | null);
2947
+ connect(element: HTMLElement): void;
2948
+ disconnect(): void;
2949
+ dispose(): void;
2950
+ /** Whether mouse look currently owns the pointer. */
2951
+ get locked(): boolean;
2952
+ /** Requests pointer capture; browsers only allow this from a user gesture. */
2953
+ lock(): void;
2954
+ /** Releases a captured pointer. */
2955
+ unlock(): void;
2956
+ /** Stores the camera pose that {@link reset} restores. */
2957
+ saveState(): void;
2958
+ /** Restores the saved camera pose and stops movement. */
2959
+ reset(): void;
2960
+ /** Horizontal yaw in radians, where zero looks toward -Z. */
2961
+ get yaw(): number;
2962
+ /** Vertical pitch in radians, positive looking up. */
2963
+ get pitch(): number;
2964
+ /** Turns the camera; pitch is clamped to straight up and down. */
2965
+ setRotation(yaw: number, pitch: number): void;
2966
+ /** Points the camera at a position without rolling it. */
2967
+ lookAt(target: Vector3): void;
2968
+ /** Whether an action's key is held. */
2969
+ isPressed(action: FlyAction): boolean;
2970
+ /**
2971
+ * Advances movement by `delta` seconds (measured since the previous call when omitted)
2972
+ * and dispatches `change` when the camera moved.
2973
+ */
2974
+ update(delta?: number): void;
2975
+ private move;
2976
+ private notifyChange;
2977
+ private releaseKeys;
2978
+ private handleKey;
2979
+ private actionFor;
2980
+ private handlePointerDown;
2981
+ private onJoystickSide;
2982
+ private handlePointerMove;
2983
+ private handlePointerUp;
2984
+ private handleWheel;
2985
+ private handlePointerLockChange;
2986
+ private turn;
2987
+ }
2988
+ declare function isFlyControls(obj: any): obj is FlyControls;
2989
+
2884
2990
  /**
2885
2991
  * Renders a Minecraft scene with a camera and an optional effects composer.
2886
2992
  * Uses a browser canvas by default, or a caller-supplied {@link RendererSurface}.
@@ -2897,7 +3003,9 @@ declare class Renderer implements Disposable {
2897
3003
  protected _camera: Camera;
2898
3004
  protected _renderer: WebGLRenderer;
2899
3005
  protected _composer?: EffectComposer;
2900
- protected _controls?: OrbitControls;
3006
+ protected _controls?: RendererControls;
3007
+ private _controlsTime?;
3008
+ private _orbitDistance?;
2901
3009
  protected _stats?: Stats;
2902
3010
  protected _dirty: boolean;
2903
3011
  protected _animationLoop: any;
@@ -2917,7 +3025,18 @@ declare class Renderer implements Disposable {
2917
3025
  protected createCamera(): Camera;
2918
3026
  protected createRenderer(): WebGLRenderer;
2919
3027
  protected createComposer(): Maybe<EffectComposer>;
2920
- protected createControls(): Maybe<OrbitControls>;
3028
+ protected createControls(): Maybe<RendererControls>;
3029
+ private initialTarget;
3030
+ private createControlsFor;
3031
+ /**
3032
+ * Replaces renderer-owned controls with the selected mode, keeping the camera where it is.
3033
+ * Switching to orbit controls targets the point the camera looks at, at the previous orbit distance.
3034
+ * Returns the new controls, or undefined when controls were disabled at construction or after disposal.
3035
+ */
3036
+ setControlsMode(mode: ControlsMode): Maybe<RendererControls>;
3037
+ private disposeControls;
3038
+ /** Advances owned controls; without a frame time, flight movement does not progress. */
3039
+ private updateControls;
2921
3040
  init(): void;
2922
3041
  get element(): Maybe<HTMLElement>;
2923
3042
  /** Attaches the canvas to an element and sizes it to that element's dimensions. */
@@ -2927,6 +3046,7 @@ declare class Renderer implements Disposable {
2927
3046
  * The renderer removes its listener on disposal; the caller retains ownership of the dispatcher.
2928
3047
  */
2929
3048
  registerEventDispatcher(dispatcher: EventDispatcher<any>, changeEvent?: string): void;
3049
+ private unregisterEventDispatcher;
2930
3050
  /** Updates the camera and canvas size. Width and height are in CSS pixels. */
2931
3051
  resize(width: number, height: number): void;
2932
3052
  private validateSurfaceSize;
@@ -2980,7 +3100,13 @@ declare class Renderer implements Disposable {
2980
3100
  get renderer(): WebGLRenderer;
2981
3101
  get composer(): Maybe<EffectComposer>;
2982
3102
  /** Renderer-owned controls, or undefined when disabled at construction or after disposal. */
2983
- get controls(): Maybe<OrbitControls>;
3103
+ get controls(): Maybe<RendererControls>;
3104
+ /** Renderer-owned OrbitControls, or undefined in fly mode or without controls. */
3105
+ get orbitControls(): Maybe<OrbitControls>;
3106
+ /** Renderer-owned {@link FlyControls}, or undefined in orbit mode or without controls. */
3107
+ get flyControls(): Maybe<FlyControls>;
3108
+ /** The active renderer-owned controls mode, or undefined without controls. */
3109
+ get controlsMode(): Maybe<ControlsMode>;
2984
3110
  }
2985
3111
  /** Caller-owned canvas and WebGL 2 context for rendering without a browser DOM. */
2986
3112
  interface RendererSurface {
@@ -3046,9 +3172,15 @@ interface RenderOptions {
3046
3172
  interface ComposerOptions {
3047
3173
  enabled: boolean;
3048
3174
  }
3049
- /** Set `controls: { enabled: true }` in the Renderer constructor to create owned OrbitControls. */
3175
+ /** Renderer-owned camera controls: orbiting around a target, or creative-style flight. */
3176
+ type ControlsMode = "orbit" | "fly";
3177
+ /** Controls created through `controls.enabled`; narrow with `isFlyControls` or {@link Renderer.controlsMode}. */
3178
+ type RendererControls = OrbitControls | FlyControls;
3179
+ /** Set `controls: { enabled: true }` in the Renderer constructor to create owned controls. */
3050
3180
  interface ControlsOptions {
3051
3181
  enabled: boolean;
3182
+ /** `orbit` (default) creates OrbitControls; `fly` creates {@link FlyControls}. */
3183
+ mode?: ControlsMode;
3052
3184
  }
3053
3185
  /** Scene helpers enabled through `debug` in the Renderer constructor options. */
3054
3186
  interface DebugOptions {
@@ -3960,4 +4092,4 @@ declare class NodeRenderer extends Renderer {
3960
4092
  dispose(): void;
3961
4093
  }
3962
4094
 
3963
- 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 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, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type 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, 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, NodeCache, NodeEnv, type NodeImageOptions, NodeRenderer, type NodeRendererOptions, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, 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, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, registerNodeEnv, 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 };
4095
+ 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 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, 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, NodeCache, NodeEnv, type NodeImageOptions, NodeRenderer, type NodeRendererOptions, 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, 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, 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, registerNodeEnv, 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 };
@@ -1,5 +1,5 @@
1
1
  import * as three from 'three';
2
- import { Vector3, PixelFormat, BoxGeometry, Material, ColorRepresentation, MeshBasicMaterial, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, BufferGeometry, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Box2, Scene, Object3DEventMap, ShaderMaterial, Texture, Camera, MOUSE, TOUCH, WebGLRenderer, EventDispatcher, Raycaster, Intersection, Group, DataTexture, CanvasTexture, InterleavedBufferAttribute, TrianglesDrawModes, Line, Points } from 'three';
2
+ import { Vector3, PixelFormat, BoxGeometry, Material, ColorRepresentation, MeshBasicMaterial, Mesh, Euler, Vector2, BufferAttribute, Float32BufferAttribute, BufferGeometry, Object3D, Box3, InstancedMesh, PerspectiveCamera, OrthographicCamera, Matrix4, Box2, Scene, Object3DEventMap, ShaderMaterial, Texture, Camera, MOUSE, TOUCH, Controls, WebGLRenderer, EventDispatcher, Raycaster, Intersection, Group, DataTexture, 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
5
  import { Buffer } from 'buffer';
@@ -2881,6 +2881,112 @@ declare class MapControls extends OrbitControls {
2881
2881
  constructor(object: Camera, domElement?: HTMLElement);
2882
2882
  }
2883
2883
 
2884
+ /** Events dispatched by {@link FlyControls}. */
2885
+ interface FlyControlsEventMap {
2886
+ /** The camera moved or turned. */
2887
+ change: {};
2888
+ /** Mouse look captured the pointer. */
2889
+ lock: {};
2890
+ /** Mouse look released the pointer. */
2891
+ unlock: {};
2892
+ }
2893
+ /** Movement actions that {@link FlyControls.keys} binds to `KeyboardEvent.code` values. */
2894
+ type FlyAction = "forward" | "back" | "left" | "right" | "up" | "down" | "sprint";
2895
+ /**
2896
+ * Creative-flight camera controls: WASD moves horizontally along the view direction, space and shift
2897
+ * move up and down, control sprints, and the mouse turns the camera (pointer lock, or drag).
2898
+ *
2899
+ * Call {@link FlyControls.update} with the elapsed seconds once per frame; the `change` event marks the
2900
+ * renderer dirty while keys are held. Speeds use scene units (16 per block). The element becomes focusable
2901
+ * and keys apply while it has focus or the pointer is locked. The wheel changes the speed, as in vanilla
2902
+ * spectator mode. Touch input uses the left half of the element as a joystick and the right half for looking.
2903
+ */
2904
+ declare class FlyControls extends Controls<FlyControlsEventMap, Camera> {
2905
+ readonly isFlyControls: true;
2906
+ /** Horizontal and vertical speed in scene units per second; vanilla creative flight by default. */
2907
+ movementSpeed: number;
2908
+ /** Speed multiplier while the sprint key is held. */
2909
+ sprintMultiplier: number;
2910
+ /** Radians per pixel of pointer movement. */
2911
+ lookSpeed: number;
2912
+ /** Smooth acceleration and deceleration, approximating vanilla flight momentum. */
2913
+ enableDamping: boolean;
2914
+ /** Portion of the remaining velocity change applied per 60 Hz frame (0–1) when damping is enabled. */
2915
+ dampingFactor: number;
2916
+ /** Capture the pointer on click so the mouse turns the camera without dragging; dragging works regardless. */
2917
+ pointerLock: boolean;
2918
+ /** Scroll the wheel to change `movementSpeed` within `speedRange`. */
2919
+ enableWheelSpeed: boolean;
2920
+ /** Minimum and maximum `movementSpeed` reachable with the wheel. */
2921
+ speedRange: [number, number];
2922
+ /** Touch joystick travel in CSS pixels for full speed. */
2923
+ joystickRadius: number;
2924
+ /** Key bindings by `KeyboardEvent.code`. */
2925
+ keys: Record<FlyAction, string[]>;
2926
+ private readonly _pressed;
2927
+ private readonly _velocity;
2928
+ private readonly _lastPosition;
2929
+ private readonly _lastQuaternion;
2930
+ private _position0;
2931
+ private _quaternion0;
2932
+ private _dragPointer?;
2933
+ private _dragMoved;
2934
+ private _joystick?;
2935
+ private _locked;
2936
+ private _lastTime?;
2937
+ private readonly _onKeyDown;
2938
+ private readonly _onKeyUp;
2939
+ private readonly _onPointerDown;
2940
+ private readonly _onPointerMove;
2941
+ private readonly _onPointerUp;
2942
+ private readonly _onPointerLockChange;
2943
+ private readonly _onContextMenu;
2944
+ private readonly _onWheel;
2945
+ private readonly _onBlur;
2946
+ constructor(camera: Camera, domElement?: HTMLElement | null);
2947
+ connect(element: HTMLElement): void;
2948
+ disconnect(): void;
2949
+ dispose(): void;
2950
+ /** Whether mouse look currently owns the pointer. */
2951
+ get locked(): boolean;
2952
+ /** Requests pointer capture; browsers only allow this from a user gesture. */
2953
+ lock(): void;
2954
+ /** Releases a captured pointer. */
2955
+ unlock(): void;
2956
+ /** Stores the camera pose that {@link reset} restores. */
2957
+ saveState(): void;
2958
+ /** Restores the saved camera pose and stops movement. */
2959
+ reset(): void;
2960
+ /** Horizontal yaw in radians, where zero looks toward -Z. */
2961
+ get yaw(): number;
2962
+ /** Vertical pitch in radians, positive looking up. */
2963
+ get pitch(): number;
2964
+ /** Turns the camera; pitch is clamped to straight up and down. */
2965
+ setRotation(yaw: number, pitch: number): void;
2966
+ /** Points the camera at a position without rolling it. */
2967
+ lookAt(target: Vector3): void;
2968
+ /** Whether an action's key is held. */
2969
+ isPressed(action: FlyAction): boolean;
2970
+ /**
2971
+ * Advances movement by `delta` seconds (measured since the previous call when omitted)
2972
+ * and dispatches `change` when the camera moved.
2973
+ */
2974
+ update(delta?: number): void;
2975
+ private move;
2976
+ private notifyChange;
2977
+ private releaseKeys;
2978
+ private handleKey;
2979
+ private actionFor;
2980
+ private handlePointerDown;
2981
+ private onJoystickSide;
2982
+ private handlePointerMove;
2983
+ private handlePointerUp;
2984
+ private handleWheel;
2985
+ private handlePointerLockChange;
2986
+ private turn;
2987
+ }
2988
+ declare function isFlyControls(obj: any): obj is FlyControls;
2989
+
2884
2990
  /**
2885
2991
  * Renders a Minecraft scene with a camera and an optional effects composer.
2886
2992
  * Uses a browser canvas by default, or a caller-supplied {@link RendererSurface}.
@@ -2897,7 +3003,9 @@ declare class Renderer implements Disposable {
2897
3003
  protected _camera: Camera;
2898
3004
  protected _renderer: WebGLRenderer;
2899
3005
  protected _composer?: EffectComposer;
2900
- protected _controls?: OrbitControls;
3006
+ protected _controls?: RendererControls;
3007
+ private _controlsTime?;
3008
+ private _orbitDistance?;
2901
3009
  protected _stats?: Stats;
2902
3010
  protected _dirty: boolean;
2903
3011
  protected _animationLoop: any;
@@ -2917,7 +3025,18 @@ declare class Renderer implements Disposable {
2917
3025
  protected createCamera(): Camera;
2918
3026
  protected createRenderer(): WebGLRenderer;
2919
3027
  protected createComposer(): Maybe<EffectComposer>;
2920
- protected createControls(): Maybe<OrbitControls>;
3028
+ protected createControls(): Maybe<RendererControls>;
3029
+ private initialTarget;
3030
+ private createControlsFor;
3031
+ /**
3032
+ * Replaces renderer-owned controls with the selected mode, keeping the camera where it is.
3033
+ * Switching to orbit controls targets the point the camera looks at, at the previous orbit distance.
3034
+ * Returns the new controls, or undefined when controls were disabled at construction or after disposal.
3035
+ */
3036
+ setControlsMode(mode: ControlsMode): Maybe<RendererControls>;
3037
+ private disposeControls;
3038
+ /** Advances owned controls; without a frame time, flight movement does not progress. */
3039
+ private updateControls;
2921
3040
  init(): void;
2922
3041
  get element(): Maybe<HTMLElement>;
2923
3042
  /** Attaches the canvas to an element and sizes it to that element's dimensions. */
@@ -2927,6 +3046,7 @@ declare class Renderer implements Disposable {
2927
3046
  * The renderer removes its listener on disposal; the caller retains ownership of the dispatcher.
2928
3047
  */
2929
3048
  registerEventDispatcher(dispatcher: EventDispatcher<any>, changeEvent?: string): void;
3049
+ private unregisterEventDispatcher;
2930
3050
  /** Updates the camera and canvas size. Width and height are in CSS pixels. */
2931
3051
  resize(width: number, height: number): void;
2932
3052
  private validateSurfaceSize;
@@ -2980,7 +3100,13 @@ declare class Renderer implements Disposable {
2980
3100
  get renderer(): WebGLRenderer;
2981
3101
  get composer(): Maybe<EffectComposer>;
2982
3102
  /** Renderer-owned controls, or undefined when disabled at construction or after disposal. */
2983
- get controls(): Maybe<OrbitControls>;
3103
+ get controls(): Maybe<RendererControls>;
3104
+ /** Renderer-owned OrbitControls, or undefined in fly mode or without controls. */
3105
+ get orbitControls(): Maybe<OrbitControls>;
3106
+ /** Renderer-owned {@link FlyControls}, or undefined in orbit mode or without controls. */
3107
+ get flyControls(): Maybe<FlyControls>;
3108
+ /** The active renderer-owned controls mode, or undefined without controls. */
3109
+ get controlsMode(): Maybe<ControlsMode>;
2984
3110
  }
2985
3111
  /** Caller-owned canvas and WebGL 2 context for rendering without a browser DOM. */
2986
3112
  interface RendererSurface {
@@ -3046,9 +3172,15 @@ interface RenderOptions {
3046
3172
  interface ComposerOptions {
3047
3173
  enabled: boolean;
3048
3174
  }
3049
- /** Set `controls: { enabled: true }` in the Renderer constructor to create owned OrbitControls. */
3175
+ /** Renderer-owned camera controls: orbiting around a target, or creative-style flight. */
3176
+ type ControlsMode = "orbit" | "fly";
3177
+ /** Controls created through `controls.enabled`; narrow with `isFlyControls` or {@link Renderer.controlsMode}. */
3178
+ type RendererControls = OrbitControls | FlyControls;
3179
+ /** Set `controls: { enabled: true }` in the Renderer constructor to create owned controls. */
3050
3180
  interface ControlsOptions {
3051
3181
  enabled: boolean;
3182
+ /** `orbit` (default) creates OrbitControls; `fly` creates {@link FlyControls}. */
3183
+ mode?: ControlsMode;
3052
3184
  }
3053
3185
  /** Scene helpers enabled through `debug` in the Renderer constructor options. */
3054
3186
  interface DebugOptions {
@@ -3960,4 +4092,4 @@ declare class NodeRenderer extends Renderer {
3960
4092
  dispose(): void;
3961
4093
  }
3962
4094
 
3963
- 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 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, CUBE_FACES, CUBE_FACE_OFFSETS, type CacheKey, Caching, type CameraOptions, CanvasImage, type CapeLayout, Chunk, ChunkData, Colormaps, type CompatCanvas, type CompatImage, type ComposerOptions, type ControlsOptions, CubeFace, CubeFaceIndex, DEFAULT_ELEMENTS, DEFAULT_NAMESPACE, DEFAULT_ROOT, DEFAULT_UV, DISPLAY_POSITIONS, DYE_COLORS, type DebugOptions, type 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, 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, NodeCache, NodeEnv, type NodeImageOptions, NodeRenderer, type NodeRendererOptions, OrbitControls, type PackFormat, PackFormats, PackMetadata, PersistentCache, PlayerHeadTextures, type PositionedGuiGlyph, type QuadArray, type RawImageKey, type RenderOptions, Renderer, type RendererFrame, type RendererOptions, type RendererSurface, type RequestConfig, RequestError, type RequestResponse, Requests, type ResolvedBlockEntity, type ResolvedMineRenderData, type ResponseParser, 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, entityAnimationTime, estimateBytesUsed, fluidKindOf, getBlockFluidState, getFluidKind, interleaveAttributes, isAssetKey, isBasicAssetKey, isBlockObject, isDisposable, isDoubleArray, isEntityObject, isGuiObject, isInstanceManager, isInstanceReference, isInstanceable, isInstancedMesh, isMesh, isMineRenderScene, isModelObject, isObject3D, isOrthographicCamera, isPerspectiveCamera, isQuadArray, isResourceLocation, isSceneObject, isTransformable, isTripleArray, isVector3, layoutGuiText, md5, mergeBufferAttributes, mergeBufferGeometries, mergeVertices, parseSceneDocument, prefix, registerNodeEnv, 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 };
4095
+ 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 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, 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, NodeCache, NodeEnv, type NodeImageOptions, NodeRenderer, type NodeRendererOptions, 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, 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, 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, registerNodeEnv, 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 };