minerender 1.4.11 → 2.0.0-alpha.1
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/.esdoc.json +0 -0
- package/.github/FUNDING.yml +0 -0
- package/.github/stale.yml +0 -0
- package/.github/workflows/nodejs.yml +0 -0
- package/.travis.yml +0 -0
- package/CNAME +0 -0
- package/LICENSE +0 -0
- package/README.md +0 -0
- package/build.mjs +20 -0
- package/demo/model/index.html +0 -0
- package/demo/skin/index.html +0 -0
- package/dist/bundle.js +106338 -0
- package/dist/cjs/AnimatorFunction.d.ts +3 -0
- package/dist/cjs/AnimatorFunction.js +3 -0
- package/dist/cjs/AnimatorFunction.js.map +1 -0
- package/dist/cjs/Axis.d.ts +8 -0
- package/dist/cjs/Axis.js +23 -0
- package/dist/cjs/Axis.js.map +1 -0
- package/dist/cjs/CubeFace.d.ts +17 -0
- package/dist/cjs/CubeFace.js +23 -0
- package/dist/cjs/CubeFace.js.map +1 -0
- package/dist/cjs/Disposable.d.ts +4 -0
- package/dist/cjs/Disposable.js +8 -0
- package/dist/cjs/Disposable.js.map +1 -0
- package/dist/cjs/Env.d.ts +2 -0
- package/dist/cjs/Env.js +7 -0
- package/dist/cjs/Env.js.map +1 -0
- package/dist/cjs/ExtractableImageData.d.ts +5 -0
- package/dist/cjs/ExtractableImageData.js +3 -0
- package/dist/cjs/ExtractableImageData.js.map +1 -0
- package/dist/cjs/Geometries.d.ts +6 -0
- package/dist/cjs/Geometries.js +92 -0
- package/dist/cjs/Geometries.js.map +1 -0
- package/dist/cjs/ListAsset.d.ts +5 -0
- package/dist/cjs/ListAsset.js +3 -0
- package/dist/cjs/ListAsset.js.map +1 -0
- package/dist/cjs/Materials.d.ts +9 -0
- package/dist/cjs/Materials.js +151 -0
- package/dist/cjs/Materials.js.map +1 -0
- package/dist/cjs/Meshes.d.ts +6 -0
- package/dist/cjs/Meshes.js +21 -0
- package/dist/cjs/Meshes.js.map +1 -0
- package/dist/cjs/MinecraftAsset.d.ts +7 -0
- package/dist/cjs/MinecraftAsset.js +3 -0
- package/dist/cjs/MinecraftAsset.js.map +1 -0
- package/dist/cjs/MinecraftCubeTexture.d.ts +26 -0
- package/dist/cjs/MinecraftCubeTexture.js +104 -0
- package/dist/cjs/MinecraftCubeTexture.js.map +1 -0
- package/dist/cjs/MinecraftTextureMeta.d.ts +15 -0
- package/dist/cjs/MinecraftTextureMeta.js +3 -0
- package/dist/cjs/MinecraftTextureMeta.js.map +1 -0
- package/dist/cjs/SceneStats.d.ts +5 -0
- package/dist/cjs/SceneStats.js +12 -0
- package/dist/cjs/SceneStats.js.map +1 -0
- package/dist/cjs/Serializable.d.ts +3 -0
- package/dist/cjs/Serializable.js +3 -0
- package/dist/cjs/Serializable.js.map +1 -0
- package/dist/cjs/Ticker.d.ts +20 -0
- package/dist/cjs/Ticker.js +55 -0
- package/dist/cjs/Ticker.js.map +1 -0
- package/dist/cjs/TintColors.d.ts +1 -0
- package/dist/cjs/TintColors.js +5 -0
- package/dist/cjs/TintColors.js.map +1 -0
- package/dist/cjs/Transformable.d.ts +11 -0
- package/dist/cjs/Transformable.js +8 -0
- package/dist/cjs/Transformable.js.map +1 -0
- package/dist/cjs/UVMapper.d.ts +40 -0
- package/dist/cjs/UVMapper.js +434 -0
- package/dist/cjs/UVMapper.js.map +1 -0
- package/dist/cjs/WrappedImage.d.ts +17 -0
- package/dist/cjs/WrappedImage.js +50 -0
- package/dist/cjs/WrappedImage.js.map +1 -0
- package/dist/cjs/_model/Cube.d.ts +10 -0
- package/dist/cjs/_model/Cube.js +3 -0
- package/dist/cjs/_model/Cube.js.map +1 -0
- package/dist/cjs/_model/Element.d.ts +9 -0
- package/dist/cjs/_model/Element.js +3 -0
- package/dist/cjs/_model/Element.js.map +1 -0
- package/dist/cjs/_model/Face.d.ts +6 -0
- package/dist/cjs/_model/Face.js +3 -0
- package/dist/cjs/_model/Face.js.map +1 -0
- package/dist/cjs/_model/Model.d.ts +4 -0
- package/dist/cjs/_model/Model.js +3 -0
- package/dist/cjs/_model/Model.js.map +1 -0
- package/dist/cjs/assets/AssetKey.d.ts +26 -0
- package/dist/cjs/assets/AssetKey.js +83 -0
- package/dist/cjs/assets/AssetKey.js.map +1 -0
- package/dist/cjs/assets/AssetLoader.d.ts +26 -0
- package/dist/cjs/assets/AssetLoader.js +153 -0
- package/dist/cjs/assets/AssetLoader.js.map +1 -0
- package/dist/cjs/assets/Assets.d.ts +14 -0
- package/dist/cjs/assets/Assets.js +37 -0
- package/dist/cjs/assets/Assets.js.map +1 -0
- package/dist/cjs/assets/BlockStates.d.ts +11 -0
- package/dist/cjs/assets/BlockStates.js +75 -0
- package/dist/cjs/assets/BlockStates.js.map +1 -0
- package/dist/cjs/assets/Entities.d.ts +8 -0
- package/dist/cjs/assets/Entities.js +57 -0
- package/dist/cjs/assets/Entities.js.map +1 -0
- package/dist/cjs/assets/ModelTextures.d.ts +12 -0
- package/dist/cjs/assets/ModelTextures.js +66 -0
- package/dist/cjs/assets/ModelTextures.js.map +1 -0
- package/dist/cjs/assets/Models.d.ts +12 -0
- package/dist/cjs/assets/Models.js +95 -0
- package/dist/cjs/assets/Models.js.map +1 -0
- package/dist/cjs/bedrock/BedrockEntityDescription.d.ts +19 -0
- package/dist/cjs/bedrock/BedrockEntityDescription.js +3 -0
- package/dist/cjs/bedrock/BedrockEntityDescription.js.map +1 -0
- package/dist/cjs/bedrock/BedrockEntityFile.d.ts +7 -0
- package/dist/cjs/bedrock/BedrockEntityFile.js +3 -0
- package/dist/cjs/bedrock/BedrockEntityFile.js.map +1 -0
- package/dist/cjs/bedrock/BedrockGeometry.d.ts +27 -0
- package/dist/cjs/bedrock/BedrockGeometry.js +3 -0
- package/dist/cjs/bedrock/BedrockGeometry.js.map +1 -0
- package/dist/cjs/bedrock/BedrockGeometryFile.d.ts +5 -0
- package/dist/cjs/bedrock/BedrockGeometryFile.js +3 -0
- package/dist/cjs/bedrock/BedrockGeometryFile.js.map +1 -0
- package/dist/cjs/cache/CacheKey.d.ts +28 -0
- package/dist/cjs/cache/CacheKey.js +27 -0
- package/dist/cjs/cache/CacheKey.js.map +1 -0
- package/dist/cjs/cache/Caching.d.ts +29 -0
- package/dist/cjs/cache/Caching.js +93 -0
- package/dist/cjs/cache/Caching.js.map +1 -0
- package/dist/cjs/cache/PersistentCache.d.ts +15 -0
- package/dist/cjs/cache/PersistentCache.js +112 -0
- package/dist/cjs/cache/PersistentCache.js.map +1 -0
- package/dist/cjs/canvas/CanvasCompat.d.ts +5 -0
- package/dist/cjs/canvas/CanvasCompat.js +53 -0
- package/dist/cjs/canvas/CanvasCompat.js.map +1 -0
- package/dist/cjs/canvas/CanvasImage.d.ts +18 -0
- package/dist/cjs/canvas/CanvasImage.js +45 -0
- package/dist/cjs/canvas/CanvasImage.js.map +1 -0
- package/dist/cjs/entity/EntityModel.d.ts +7 -0
- package/dist/cjs/entity/EntityModel.js +3 -0
- package/dist/cjs/entity/EntityModel.js.map +1 -0
- package/dist/cjs/entity/blockEntityModels.json +1401 -0
- package/dist/cjs/entity/entityModels.json +20623 -0
- package/dist/cjs/entity/scene/EntityObject.d.ts +20 -0
- package/dist/cjs/entity/scene/EntityObject.js +131 -0
- package/dist/cjs/entity/scene/EntityObject.js.map +1 -0
- package/dist/cjs/error/MineRenderError.d.ts +4 -0
- package/dist/cjs/error/MineRenderError.js +15 -0
- package/dist/cjs/error/MineRenderError.js.map +1 -0
- package/dist/cjs/gui/scene/GuiObject.d.ts +6 -0
- package/dist/cjs/gui/scene/GuiObject.js +8 -0
- package/dist/cjs/gui/scene/GuiObject.js.map +1 -0
- package/dist/cjs/image/ImageLoader.d.ts +28 -0
- package/dist/cjs/image/ImageLoader.js +166 -0
- package/dist/cjs/image/ImageLoader.js.map +1 -0
- package/dist/cjs/index.d.ts +28 -0
- package/dist/cjs/index.js +43 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/inspector/SceneInspector.d.ts +27 -0
- package/dist/cjs/inspector/SceneInspector.js +366 -0
- package/dist/cjs/inspector/SceneInspector.js.map +1 -0
- package/dist/cjs/inspector/SceneStats.d.ts +22 -0
- package/dist/cjs/inspector/SceneStats.js +53 -0
- package/dist/cjs/inspector/SceneStats.js.map +1 -0
- package/dist/cjs/instance/InstanceManager.d.ts +14 -0
- package/dist/cjs/instance/InstanceManager.js +58 -0
- package/dist/cjs/instance/InstanceManager.js.map +1 -0
- package/dist/cjs/instance/InstanceReference.d.ts +21 -0
- package/dist/cjs/instance/InstanceReference.js +49 -0
- package/dist/cjs/instance/InstanceReference.js.map +1 -0
- package/dist/cjs/instance/Instanceable.d.ts +16 -0
- package/dist/cjs/instance/Instanceable.js +8 -0
- package/dist/cjs/instance/Instanceable.js.map +1 -0
- package/dist/cjs/lib/OrbitControls.d.ts +64 -0
- package/dist/cjs/lib/OrbitControls.js +658 -0
- package/dist/cjs/lib/OrbitControls.js.map +1 -0
- package/dist/cjs/model/DisplayPosition.d.ts +11 -0
- package/dist/cjs/model/DisplayPosition.js +16 -0
- package/dist/cjs/model/DisplayPosition.js.map +1 -0
- package/dist/cjs/model/ElementFace.d.ts +9 -0
- package/dist/cjs/model/ElementFace.js +3 -0
- package/dist/cjs/model/ElementFace.js.map +1 -0
- package/dist/cjs/model/GuiLight.d.ts +4 -0
- package/dist/cjs/model/GuiLight.js +9 -0
- package/dist/cjs/model/GuiLight.js.map +1 -0
- package/dist/cjs/model/Model.d.ts +46 -0
- package/dist/cjs/model/Model.js +20 -0
- package/dist/cjs/model/Model.js.map +1 -0
- package/dist/cjs/model/ModelElement.d.ts +21 -0
- package/dist/cjs/model/ModelElement.js +3 -0
- package/dist/cjs/model/ModelElement.js.map +1 -0
- package/dist/cjs/model/ModelGenerator.d.ts +6 -0
- package/dist/cjs/model/ModelGenerator.js +27 -0
- package/dist/cjs/model/ModelGenerator.js.map +1 -0
- package/dist/cjs/model/ModelMerger.d.ts +5 -0
- package/dist/cjs/model/ModelMerger.js +51 -0
- package/dist/cjs/model/ModelMerger.js.map +1 -0
- package/dist/cjs/model/ModelPart.d.ts +23 -0
- package/dist/cjs/model/ModelPart.js +3 -0
- package/dist/cjs/model/ModelPart.js.map +1 -0
- package/dist/cjs/model/block/Block.d.ts +6 -0
- package/dist/cjs/model/block/Block.js +3 -0
- package/dist/cjs/model/block/Block.js.map +1 -0
- package/dist/cjs/model/block/BlockState.d.ts +23 -0
- package/dist/cjs/model/block/BlockState.js +3 -0
- package/dist/cjs/model/block/BlockState.js.map +1 -0
- package/dist/cjs/model/block/BlockStateProperties.d.ts +13 -0
- package/dist/cjs/model/block/BlockStateProperties.js +3 -0
- package/dist/cjs/model/block/BlockStateProperties.js.map +1 -0
- package/dist/cjs/model/block/scene/BlockObject.d.ts +46 -0
- package/dist/cjs/model/block/scene/BlockObject.js +468 -0
- package/dist/cjs/model/block/scene/BlockObject.js.map +1 -0
- package/dist/cjs/model/defaultBlockStates.json +12337 -0
- package/dist/cjs/model/multiblock/MultiBlockStructure.d.ts +9 -0
- package/dist/cjs/model/multiblock/MultiBlockStructure.js +3 -0
- package/dist/cjs/model/multiblock/MultiBlockStructure.js.map +1 -0
- package/dist/cjs/model/multiblock/SchematicParser.d.ts +4 -0
- package/dist/cjs/model/multiblock/SchematicParser.js +23 -0
- package/dist/cjs/model/multiblock/SchematicParser.js.map +1 -0
- package/dist/cjs/model/multiblock/StructureParser.d.ts +70 -0
- package/dist/cjs/model/multiblock/StructureParser.js +52 -0
- package/dist/cjs/model/multiblock/StructureParser.js.map +1 -0
- package/dist/cjs/model/scene/ModelObject.d.ts +25 -0
- package/dist/cjs/model/scene/ModelObject.js +163 -0
- package/dist/cjs/model/scene/ModelObject.js.map +1 -0
- package/dist/cjs/nbt/NBTHelper.d.ts +8 -0
- package/dist/cjs/nbt/NBTHelper.js +42 -0
- package/dist/cjs/nbt/NBTHelper.js.map +1 -0
- package/dist/cjs/renderer/MineRenderScene.d.ts +35 -0
- package/dist/cjs/renderer/MineRenderScene.js +132 -0
- package/dist/cjs/renderer/MineRenderScene.js.map +1 -0
- package/dist/cjs/renderer/Renderer.d.ts +83 -0
- package/dist/cjs/renderer/Renderer.js +267 -0
- package/dist/cjs/renderer/Renderer.js.map +1 -0
- package/dist/cjs/renderer/SceneObject.d.ts +81 -0
- package/dist/cjs/renderer/SceneObject.js +400 -0
- package/dist/cjs/renderer/SceneObject.js.map +1 -0
- package/dist/cjs/renderer/SceneObjectOptions.d.ts +6 -0
- package/dist/cjs/renderer/SceneObjectOptions.js +3 -0
- package/dist/cjs/renderer/SceneObjectOptions.js.map +1 -0
- package/dist/cjs/request/Requests.d.ts +12 -0
- package/dist/cjs/request/Requests.js +39 -0
- package/dist/cjs/request/Requests.js.map +1 -0
- package/dist/cjs/skin/SkinGeometries.d.ts +5 -0
- package/dist/cjs/skin/SkinGeometries.js +39 -0
- package/dist/cjs/skin/SkinGeometries.js.map +1 -0
- package/dist/cjs/skin/SkinPart.d.ts +16 -0
- package/dist/cjs/skin/SkinPart.js +21 -0
- package/dist/cjs/skin/SkinPart.js.map +1 -0
- package/dist/cjs/skin/SkinTextureCoordinates.d.ts +5 -0
- package/dist/cjs/skin/SkinTextureCoordinates.js +751 -0
- package/dist/cjs/skin/SkinTextureCoordinates.js.map +1 -0
- package/dist/cjs/skin/Skins.d.ts +17 -0
- package/dist/cjs/skin/Skins.js +168 -0
- package/dist/cjs/skin/Skins.js.map +1 -0
- package/dist/cjs/skin/scene/SkinObject.d.ts +21 -0
- package/dist/cjs/skin/scene/SkinObject.js +119 -0
- package/dist/cjs/skin/scene/SkinObject.js.map +1 -0
- package/dist/cjs/texture/TextureAtlas.d.ts +29 -0
- package/dist/cjs/texture/TextureAtlas.js +26 -0
- package/dist/cjs/texture/TextureAtlas.js.map +1 -0
- package/dist/cjs/texture/TextureLoader.d.ts +6 -0
- package/dist/cjs/texture/TextureLoader.js +34 -0
- package/dist/cjs/texture/TextureLoader.js.map +1 -0
- package/dist/cjs/texture/Textures.d.ts +10 -0
- package/dist/cjs/texture/Textures.js +52 -0
- package/dist/cjs/texture/Textures.js.map +1 -0
- package/dist/cjs/three/BufferGeometryUtils.d.ts +44 -0
- package/dist/cjs/three/BufferGeometryUtils.js +554 -0
- package/dist/cjs/three/BufferGeometryUtils.js.map +1 -0
- package/dist/cjs/three/OrbitControls.d.ts +59 -0
- package/dist/cjs/three/OrbitControls.js +790 -0
- package/dist/cjs/three/OrbitControls.js.map +1 -0
- package/dist/cjs/util/BatchedExecutor.d.ts +12 -0
- package/dist/cjs/util/BatchedExecutor.js +26 -0
- package/dist/cjs/util/BatchedExecutor.js.map +1 -0
- package/dist/cjs/util/log.d.ts +1 -0
- package/dist/cjs/util/log.js +32 -0
- package/dist/cjs/util/log.js.map +1 -0
- package/dist/cjs/util/model.d.ts +11 -0
- package/dist/cjs/util/model.js +182 -0
- package/dist/cjs/util/model.js.map +1 -0
- package/dist/cjs/util/performance.d.ts +3 -0
- package/dist/cjs/util/performance.js +19 -0
- package/dist/cjs/util/performance.js.map +1 -0
- package/dist/cjs/util/three.d.ts +8 -0
- package/dist/cjs/util/three.js +28 -0
- package/dist/cjs/util/three.js.map +1 -0
- package/dist/cjs/util/util.d.ts +19 -0
- package/dist/cjs/util/util.js +143 -0
- package/dist/cjs/util/util.js.map +1 -0
- package/dist/cjs/world/BlockInfo.d.ts +6 -0
- package/dist/cjs/world/BlockInfo.js +3 -0
- package/dist/cjs/world/BlockInfo.js.map +1 -0
- package/dist/cjs/world/Chunk.d.ts +33 -0
- package/dist/cjs/world/Chunk.js +132 -0
- package/dist/cjs/world/Chunk.js.map +1 -0
- package/dist/cjs/world/MineRenderWorld.d.ts +31 -0
- package/dist/cjs/world/MineRenderWorld.js +133 -0
- package/dist/cjs/world/MineRenderWorld.js.map +1 -0
- package/dist/esm/AnimatorFunction.d.ts +3 -0
- package/dist/esm/AnimatorFunction.js +2 -0
- package/dist/esm/AnimatorFunction.js.map +1 -0
- package/dist/esm/Axis.d.ts +8 -0
- package/dist/esm/Axis.js +19 -0
- package/dist/esm/Axis.js.map +1 -0
- package/dist/esm/CubeFace.d.ts +17 -0
- package/dist/esm/CubeFace.js +20 -0
- package/dist/esm/CubeFace.js.map +1 -0
- package/dist/esm/Disposable.d.ts +4 -0
- package/dist/esm/Disposable.js +4 -0
- package/dist/esm/Disposable.js.map +1 -0
- package/dist/esm/Env.d.ts +2 -0
- package/dist/esm/Env.js +3 -0
- package/dist/esm/Env.js.map +1 -0
- package/dist/esm/ExtractableImageData.d.ts +5 -0
- package/dist/esm/ExtractableImageData.js +2 -0
- package/dist/esm/ExtractableImageData.js.map +1 -0
- package/dist/esm/Geometries.d.ts +6 -0
- package/dist/esm/Geometries.js +88 -0
- package/dist/esm/Geometries.js.map +1 -0
- package/dist/esm/ListAsset.d.ts +5 -0
- package/dist/esm/ListAsset.js +2 -0
- package/dist/esm/ListAsset.js.map +1 -0
- package/dist/esm/Materials.d.ts +9 -0
- package/dist/esm/Materials.js +147 -0
- package/dist/esm/Materials.js.map +1 -0
- package/dist/esm/Meshes.d.ts +6 -0
- package/dist/esm/Meshes.js +17 -0
- package/dist/esm/Meshes.js.map +1 -0
- package/dist/esm/MinecraftAsset.d.ts +7 -0
- package/dist/esm/MinecraftAsset.js +2 -0
- package/dist/esm/MinecraftAsset.js.map +1 -0
- package/dist/esm/MinecraftCubeTexture.d.ts +26 -0
- package/dist/esm/MinecraftCubeTexture.js +100 -0
- package/dist/esm/MinecraftCubeTexture.js.map +1 -0
- package/dist/esm/MinecraftTextureMeta.d.ts +15 -0
- package/dist/esm/MinecraftTextureMeta.js +2 -0
- package/dist/esm/MinecraftTextureMeta.js.map +1 -0
- package/dist/esm/SceneStats.d.ts +5 -0
- package/dist/esm/SceneStats.js +8 -0
- package/dist/esm/SceneStats.js.map +1 -0
- package/dist/esm/Serializable.d.ts +3 -0
- package/dist/esm/Serializable.js +2 -0
- package/dist/esm/Serializable.js.map +1 -0
- package/dist/esm/Ticker.d.ts +20 -0
- package/dist/esm/Ticker.js +51 -0
- package/dist/esm/Ticker.js.map +1 -0
- package/dist/esm/TintColors.d.ts +1 -0
- package/dist/esm/TintColors.js +2 -0
- package/dist/esm/TintColors.js.map +1 -0
- package/dist/esm/Transformable.d.ts +11 -0
- package/dist/esm/Transformable.js +4 -0
- package/dist/esm/Transformable.js.map +1 -0
- package/dist/esm/UVMapper.d.ts +40 -0
- package/dist/esm/UVMapper.js +429 -0
- package/dist/esm/UVMapper.js.map +1 -0
- package/dist/esm/WrappedImage.d.ts +17 -0
- package/dist/esm/WrappedImage.js +46 -0
- package/dist/esm/WrappedImage.js.map +1 -0
- package/dist/esm/_model/Cube.d.ts +10 -0
- package/dist/esm/_model/Cube.js +2 -0
- package/dist/esm/_model/Cube.js.map +1 -0
- package/dist/esm/_model/Element.d.ts +9 -0
- package/dist/esm/_model/Element.js +2 -0
- package/dist/esm/_model/Element.js.map +1 -0
- package/dist/esm/_model/Face.d.ts +6 -0
- package/dist/esm/_model/Face.js +2 -0
- package/dist/esm/_model/Face.js.map +1 -0
- package/dist/esm/_model/Model.d.ts +4 -0
- package/dist/esm/_model/Model.js +2 -0
- package/dist/esm/_model/Model.js.map +1 -0
- package/dist/esm/assets/AssetKey.d.ts +26 -0
- package/dist/esm/assets/AssetKey.js +76 -0
- package/dist/esm/assets/AssetKey.js.map +1 -0
- package/dist/esm/assets/AssetLoader.d.ts +26 -0
- package/dist/esm/assets/AssetLoader.js +149 -0
- package/dist/esm/assets/AssetLoader.js.map +1 -0
- package/dist/esm/assets/Assets.d.ts +14 -0
- package/dist/esm/assets/Assets.js +33 -0
- package/dist/esm/assets/Assets.js.map +1 -0
- package/dist/esm/assets/BlockStates.d.ts +11 -0
- package/dist/esm/assets/BlockStates.js +68 -0
- package/dist/esm/assets/BlockStates.js.map +1 -0
- package/dist/esm/assets/Entities.d.ts +8 -0
- package/dist/esm/assets/Entities.js +50 -0
- package/dist/esm/assets/Entities.js.map +1 -0
- package/dist/esm/assets/ModelTextures.d.ts +12 -0
- package/dist/esm/assets/ModelTextures.js +62 -0
- package/dist/esm/assets/ModelTextures.js.map +1 -0
- package/dist/esm/assets/Models.d.ts +12 -0
- package/dist/esm/assets/Models.js +91 -0
- package/dist/esm/assets/Models.js.map +1 -0
- package/dist/esm/bedrock/BedrockEntityDescription.d.ts +19 -0
- package/dist/esm/bedrock/BedrockEntityDescription.js +2 -0
- package/dist/esm/bedrock/BedrockEntityDescription.js.map +1 -0
- package/dist/esm/bedrock/BedrockEntityFile.d.ts +7 -0
- package/dist/esm/bedrock/BedrockEntityFile.js +2 -0
- package/dist/esm/bedrock/BedrockEntityFile.js.map +1 -0
- package/dist/esm/bedrock/BedrockGeometry.d.ts +27 -0
- package/dist/esm/bedrock/BedrockGeometry.js +2 -0
- package/dist/esm/bedrock/BedrockGeometry.js.map +1 -0
- package/dist/esm/bedrock/BedrockGeometryFile.d.ts +5 -0
- package/dist/esm/bedrock/BedrockGeometryFile.js +2 -0
- package/dist/esm/bedrock/BedrockGeometryFile.js.map +1 -0
- package/dist/esm/cache/CacheKey.d.ts +28 -0
- package/dist/esm/cache/CacheKey.js +19 -0
- package/dist/esm/cache/CacheKey.js.map +1 -0
- package/dist/esm/cache/Caching.d.ts +29 -0
- package/dist/esm/cache/Caching.js +89 -0
- package/dist/esm/cache/Caching.js.map +1 -0
- package/dist/esm/cache/PersistentCache.d.ts +15 -0
- package/dist/esm/cache/PersistentCache.js +105 -0
- package/dist/esm/cache/PersistentCache.js.map +1 -0
- package/dist/esm/canvas/CanvasCompat.d.ts +5 -0
- package/dist/esm/canvas/CanvasCompat.js +29 -0
- package/dist/esm/canvas/CanvasCompat.js.map +1 -0
- package/dist/esm/canvas/CanvasImage.d.ts +18 -0
- package/dist/esm/canvas/CanvasImage.js +41 -0
- package/dist/esm/canvas/CanvasImage.js.map +1 -0
- package/dist/esm/entity/EntityModel.d.ts +7 -0
- package/dist/esm/entity/EntityModel.js +2 -0
- package/dist/esm/entity/EntityModel.js.map +1 -0
- package/dist/esm/entity/blockEntityModels.json +1401 -0
- package/dist/esm/entity/entityModels.json +20623 -0
- package/dist/esm/entity/scene/EntityObject.d.ts +20 -0
- package/dist/esm/entity/scene/EntityObject.js +104 -0
- package/dist/esm/entity/scene/EntityObject.js.map +1 -0
- package/dist/esm/error/MineRenderError.d.ts +4 -0
- package/dist/esm/error/MineRenderError.js +11 -0
- package/dist/esm/error/MineRenderError.js.map +1 -0
- package/dist/esm/gui/scene/GuiObject.d.ts +6 -0
- package/dist/esm/gui/scene/GuiObject.js +4 -0
- package/dist/esm/gui/scene/GuiObject.js.map +1 -0
- package/dist/esm/image/ImageLoader.d.ts +28 -0
- package/dist/esm/image/ImageLoader.js +159 -0
- package/dist/esm/image/ImageLoader.js.map +1 -0
- package/dist/esm/index.d.ts +28 -0
- package/dist/esm/index.js +31 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/inspector/SceneInspector.d.ts +27 -0
- package/dist/esm/inspector/SceneInspector.js +362 -0
- package/dist/esm/inspector/SceneInspector.js.map +1 -0
- package/dist/esm/inspector/SceneStats.d.ts +22 -0
- package/dist/esm/inspector/SceneStats.js +49 -0
- package/dist/esm/inspector/SceneStats.js.map +1 -0
- package/dist/esm/instance/InstanceManager.d.ts +14 -0
- package/dist/esm/instance/InstanceManager.js +53 -0
- package/dist/esm/instance/InstanceManager.js.map +1 -0
- package/dist/esm/instance/InstanceReference.d.ts +21 -0
- package/dist/esm/instance/InstanceReference.js +44 -0
- package/dist/esm/instance/InstanceReference.js.map +1 -0
- package/dist/esm/instance/Instanceable.d.ts +16 -0
- package/dist/esm/instance/Instanceable.js +4 -0
- package/dist/esm/instance/Instanceable.js.map +1 -0
- package/dist/esm/lib/OrbitControls.d.ts +64 -0
- package/dist/esm/lib/OrbitControls.js +636 -0
- package/dist/esm/lib/OrbitControls.js.map +1 -0
- package/dist/esm/model/DisplayPosition.d.ts +11 -0
- package/dist/esm/model/DisplayPosition.js +13 -0
- package/dist/esm/model/DisplayPosition.js.map +1 -0
- package/dist/esm/model/ElementFace.d.ts +9 -0
- package/dist/esm/model/ElementFace.js +2 -0
- package/dist/esm/model/ElementFace.js.map +1 -0
- package/dist/esm/model/GuiLight.d.ts +4 -0
- package/dist/esm/model/GuiLight.js +6 -0
- package/dist/esm/model/GuiLight.js.map +1 -0
- package/dist/esm/model/Model.d.ts +46 -0
- package/dist/esm/model/Model.js +14 -0
- package/dist/esm/model/Model.js.map +1 -0
- package/dist/esm/model/ModelElement.d.ts +21 -0
- package/dist/esm/model/ModelElement.js +2 -0
- package/dist/esm/model/ModelElement.js.map +1 -0
- package/dist/esm/model/ModelGenerator.d.ts +6 -0
- package/dist/esm/model/ModelGenerator.js +23 -0
- package/dist/esm/model/ModelGenerator.js.map +1 -0
- package/dist/esm/model/ModelMerger.d.ts +5 -0
- package/dist/esm/model/ModelMerger.js +44 -0
- package/dist/esm/model/ModelMerger.js.map +1 -0
- package/dist/esm/model/ModelPart.d.ts +23 -0
- package/dist/esm/model/ModelPart.js +2 -0
- package/dist/esm/model/ModelPart.js.map +1 -0
- package/dist/esm/model/block/Block.d.ts +6 -0
- package/dist/esm/model/block/Block.js +2 -0
- package/dist/esm/model/block/Block.js.map +1 -0
- package/dist/esm/model/block/BlockState.d.ts +23 -0
- package/dist/esm/model/block/BlockState.js +2 -0
- package/dist/esm/model/block/BlockState.js.map +1 -0
- package/dist/esm/model/block/BlockStateProperties.d.ts +13 -0
- package/dist/esm/model/block/BlockStateProperties.js +2 -0
- package/dist/esm/model/block/BlockStateProperties.js.map +1 -0
- package/dist/esm/model/block/scene/BlockObject.d.ts +46 -0
- package/dist/esm/model/block/scene/BlockObject.js +460 -0
- package/dist/esm/model/block/scene/BlockObject.js.map +1 -0
- package/dist/esm/model/defaultBlockStates.json +12337 -0
- package/dist/esm/model/multiblock/MultiBlockStructure.d.ts +9 -0
- package/dist/esm/model/multiblock/MultiBlockStructure.js +2 -0
- package/dist/esm/model/multiblock/MultiBlockStructure.js.map +1 -0
- package/dist/esm/model/multiblock/SchematicParser.d.ts +4 -0
- package/dist/esm/model/multiblock/SchematicParser.js +19 -0
- package/dist/esm/model/multiblock/SchematicParser.js.map +1 -0
- package/dist/esm/model/multiblock/StructureParser.d.ts +70 -0
- package/dist/esm/model/multiblock/StructureParser.js +48 -0
- package/dist/esm/model/multiblock/StructureParser.js.map +1 -0
- package/dist/esm/model/scene/ModelObject.d.ts +25 -0
- package/dist/esm/model/scene/ModelObject.js +155 -0
- package/dist/esm/model/scene/ModelObject.js.map +1 -0
- package/dist/esm/nbt/NBTHelper.d.ts +8 -0
- package/dist/esm/nbt/NBTHelper.js +19 -0
- package/dist/esm/nbt/NBTHelper.js.map +1 -0
- package/dist/esm/renderer/MineRenderScene.d.ts +35 -0
- package/dist/esm/renderer/MineRenderScene.js +124 -0
- package/dist/esm/renderer/MineRenderScene.js.map +1 -0
- package/dist/esm/renderer/Renderer.d.ts +83 -0
- package/dist/esm/renderer/Renderer.js +260 -0
- package/dist/esm/renderer/Renderer.js.map +1 -0
- package/dist/esm/renderer/SceneObject.d.ts +81 -0
- package/dist/esm/renderer/SceneObject.js +392 -0
- package/dist/esm/renderer/SceneObject.js.map +1 -0
- package/dist/esm/renderer/SceneObjectOptions.d.ts +6 -0
- package/dist/esm/renderer/SceneObjectOptions.js +2 -0
- package/dist/esm/renderer/SceneObjectOptions.js.map +1 -0
- package/dist/esm/request/Requests.d.ts +12 -0
- package/dist/esm/request/Requests.js +32 -0
- package/dist/esm/request/Requests.js.map +1 -0
- package/dist/esm/skin/SkinGeometries.d.ts +5 -0
- package/dist/esm/skin/SkinGeometries.js +33 -0
- package/dist/esm/skin/SkinGeometries.js.map +1 -0
- package/dist/esm/skin/SkinPart.d.ts +16 -0
- package/dist/esm/skin/SkinPart.js +18 -0
- package/dist/esm/skin/SkinPart.js.map +1 -0
- package/dist/esm/skin/SkinTextureCoordinates.d.ts +5 -0
- package/dist/esm/skin/SkinTextureCoordinates.js +748 -0
- package/dist/esm/skin/SkinTextureCoordinates.js.map +1 -0
- package/dist/esm/skin/Skins.d.ts +17 -0
- package/dist/esm/skin/Skins.js +164 -0
- package/dist/esm/skin/Skins.js.map +1 -0
- package/dist/esm/skin/scene/SkinObject.d.ts +21 -0
- package/dist/esm/skin/scene/SkinObject.js +112 -0
- package/dist/esm/skin/scene/SkinObject.js.map +1 -0
- package/dist/esm/texture/TextureAtlas.d.ts +29 -0
- package/dist/esm/texture/TextureAtlas.js +22 -0
- package/dist/esm/texture/TextureAtlas.js.map +1 -0
- package/dist/esm/texture/TextureLoader.d.ts +6 -0
- package/dist/esm/texture/TextureLoader.js +30 -0
- package/dist/esm/texture/TextureLoader.js.map +1 -0
- package/dist/esm/texture/Textures.d.ts +10 -0
- package/dist/esm/texture/Textures.js +29 -0
- package/dist/esm/texture/Textures.js.map +1 -0
- package/dist/esm/three/BufferGeometryUtils.d.ts +44 -0
- package/dist/esm/three/BufferGeometryUtils.js +544 -0
- package/dist/esm/three/BufferGeometryUtils.js.map +1 -0
- package/dist/esm/three/OrbitControls.d.ts +59 -0
- package/dist/esm/three/OrbitControls.js +786 -0
- package/dist/esm/three/OrbitControls.js.map +1 -0
- package/dist/esm/util/BatchedExecutor.d.ts +12 -0
- package/dist/esm/util/BatchedExecutor.js +22 -0
- package/dist/esm/util/BatchedExecutor.js.map +1 -0
- package/dist/esm/util/log.d.ts +1 -0
- package/dist/esm/util/log.js +28 -0
- package/dist/esm/util/log.js.map +1 -0
- package/dist/esm/util/model.d.ts +11 -0
- package/dist/esm/util/model.js +173 -0
- package/dist/esm/util/model.js.map +1 -0
- package/dist/esm/util/performance.d.ts +3 -0
- package/dist/esm/util/performance.js +13 -0
- package/dist/esm/util/performance.js.map +1 -0
- package/dist/esm/util/three.d.ts +8 -0
- package/dist/esm/util/three.js +19 -0
- package/dist/esm/util/three.js.map +1 -0
- package/dist/esm/util/util.d.ts +19 -0
- package/dist/esm/util/util.js +107 -0
- package/dist/esm/util/util.js.map +1 -0
- package/dist/esm/world/BlockInfo.d.ts +6 -0
- package/dist/esm/world/BlockInfo.js +2 -0
- package/dist/esm/world/BlockInfo.js.map +1 -0
- package/dist/esm/world/Chunk.d.ts +33 -0
- package/dist/esm/world/Chunk.js +128 -0
- package/dist/esm/world/Chunk.js.map +1 -0
- package/dist/esm/world/MineRenderWorld.d.ts +31 -0
- package/dist/esm/world/MineRenderWorld.js +129 -0
- package/dist/esm/world/MineRenderWorld.js.map +1 -0
- package/docs/CNAME +0 -0
- package/docs/ast/source/.external-ecmascript.js.json +0 -0
- package/docs/ast/source/combined/index.js.json +0 -0
- package/docs/ast/source/entity/index.js.json +0 -0
- package/docs/ast/source/functions.js.json +0 -0
- package/docs/ast/source/gui/guiHelper.js.json +0 -0
- package/docs/ast/source/gui/guiPositions.js.json +0 -0
- package/docs/ast/source/gui/index.js.json +0 -0
- package/docs/ast/source/lib/OrbitControls.js.json +0 -0
- package/docs/ast/source/lib/merge.js.json +0 -0
- package/docs/ast/source/model/ModelWorker.js.json +0 -0
- package/docs/ast/source/model/index.js.json +0 -0
- package/docs/ast/source/model/modelConverter.js.json +0 -0
- package/docs/ast/source/model/modelFunctions.js.json +0 -0
- package/docs/ast/source/renderBase.js.json +0 -0
- package/docs/ast/source/skin/index.js.json +0 -0
- package/docs/ast/source/skin/texturePositions.js.json +0 -0
- package/docs/badge.svg +0 -0
- package/docs/class/src/combined/index.js~CombinedRender.html +0 -0
- package/docs/class/src/entity/index.js~EntityRender.html +0 -0
- package/docs/class/src/gui/index.js~GuiRender.html +0 -0
- package/docs/class/src/model/index.js~ModelRender.html +0 -0
- package/docs/class/src/renderBase.js~Render.html +0 -0
- package/docs/class/src/skin/index.js~SkinRender.html +0 -0
- package/docs/coverage.json +0 -0
- package/docs/css/github.css +0 -0
- package/docs/css/identifiers.css +0 -0
- package/docs/css/manual.css +0 -0
- package/docs/css/prettify-tomorrow.css +0 -0
- package/docs/css/search.css +0 -0
- package/docs/css/source.css +0 -0
- package/docs/css/style.css +0 -0
- package/docs/css/test.css +0 -0
- package/docs/file/src/combined/index.js.html +0 -0
- package/docs/file/src/entity/index.js.html +0 -0
- package/docs/file/src/functions.js.html +0 -0
- package/docs/file/src/gui/guiHelper.js.html +0 -0
- package/docs/file/src/gui/guiPositions.js.html +0 -0
- package/docs/file/src/gui/index.js.html +0 -0
- package/docs/file/src/lib/OrbitControls.js.html +0 -0
- package/docs/file/src/lib/merge.js.html +0 -0
- package/docs/file/src/model/ModelWorker.js.html +0 -0
- package/docs/file/src/model/index.js.html +0 -0
- package/docs/file/src/model/modelConverter.js.html +0 -0
- package/docs/file/src/model/modelFunctions.js.html +0 -0
- package/docs/file/src/renderBase.js.html +0 -0
- package/docs/file/src/skin/index.js.html +0 -0
- package/docs/file/src/skin/texturePositions.js.html +0 -0
- package/docs/function/index.html +0 -0
- package/docs/identifiers.html +0 -0
- package/docs/image/badge.svg +0 -0
- package/docs/image/brand_logo.png +0 -0
- package/docs/image/esdoc-logo-mini-black.png +0 -0
- package/docs/image/esdoc-logo-mini.png +0 -0
- package/docs/image/github.png +0 -0
- package/docs/image/manual-badge.svg +0 -0
- package/docs/image/search.png +0 -0
- package/docs/index.html +0 -0
- package/docs/index.json +0 -0
- package/docs/lint.json +0 -0
- package/docs/script/inherited-summary.js +0 -0
- package/docs/script/inner-link.js +0 -0
- package/docs/script/manual.js +0 -0
- package/docs/script/patch-for-local.js +0 -0
- package/docs/script/prettify/Apache-License-2.0.txt +0 -0
- package/docs/script/prettify/prettify.js +0 -0
- package/docs/script/pretty-print.js +0 -0
- package/docs/script/search.js +0 -0
- package/docs/script/search_index.js +0 -0
- package/docs/script/test-summary.js +0 -0
- package/docs/source.html +0 -0
- package/docs/variable/index.html +0 -0
- package/embed/model/index.html +0 -0
- package/embed/skin/index.html +0 -0
- package/favicon.ico +0 -0
- package/gulpfile.js +77 -0
- package/img/minerender-x128.png +0 -0
- package/img/minerender-x256.png +0 -0
- package/img/minerender-x256.webp +0 -0
- package/img/minerender-x512.png +0 -0
- package/img/minerender-x64.png +0 -0
- package/img/minerender.svg +0 -0
- package/img/minerender_block_gray.png +0 -0
- package/img/minerender_steve.png +0 -0
- package/img/minerender_steve_gray.png +0 -0
- package/img/minerender_steve_gray_blur.png +0 -0
- package/img/optifine_cape.png +0 -0
- package/img/optifine_hires_cape.png +0 -0
- package/index.html +0 -0
- package/js/data.js +0 -0
- package/js/data.min.js.map +1 -0
- package/js/main.js +0 -0
- package/js/main.min.js.map +1 -0
- package/keybase.txt +0 -0
- package/manifest.json +0 -0
- package/mccolor.js +1 -0
- package/nameToUuid.php +0 -0
- package/package.json +93 -24
- package/renovate.json +0 -0
- package/res/bedrockSource.txt +2 -0
- package/res/idsToNames.json +0 -0
- package/res/mc/.htaccess +0 -0
- package/res/mc/index.php +0 -0
- package/res/models/entities/agent.json +0 -0
- package/res/models/entities/armor_stand.json +0 -0
- package/res/models/entities/bat.json +0 -0
- package/res/models/entities/bed.json +0 -0
- package/res/models/entities/blaze.json +0 -0
- package/res/models/entities/cape.json +0 -0
- package/res/models/entities/chalkboard_large.json +0 -0
- package/res/models/entities/chalkboard_medium.json +0 -0
- package/res/models/entities/chalkboard_small.json +0 -0
- package/res/models/entities/chicken.json +0 -0
- package/res/models/entities/cod.json +0 -0
- package/res/models/entities/cow.json +0 -0
- package/res/models/entities/creeper.charged.json +0 -0
- package/res/models/entities/creeper.json +0 -0
- package/res/models/entities/dolphin.json +0 -0
- package/res/models/entities/dragon.json +0 -0
- package/res/models/entities/dragon_head.json +0 -0
- package/res/models/entities/enderman.json +0 -0
- package/res/models/entities/evoker.json +0 -0
- package/res/models/entities/ghast.json +0 -0
- package/res/models/entities/guardian.json +0 -0
- package/res/models/entities/horse.json +0 -0
- package/res/models/entities/horse.v2.json +0 -0
- package/res/models/entities/humanoid.armor1.json +0 -0
- package/res/models/entities/humanoid.armor2.json +0 -0
- package/res/models/entities/humanoid.custom.json +0 -0
- package/res/models/entities/humanoid.customSlim.json +0 -0
- package/res/models/entities/humanoid.json +0 -0
- package/res/models/entities/irongolem.json +0 -0
- package/res/models/entities/lavaslime.json +0 -0
- package/res/models/entities/llama.json +0 -0
- package/res/models/entities/llamaspit.json +0 -0
- package/res/models/entities/mob_head.json +0 -0
- package/res/models/entities/mooshroom.json +0 -0
- package/res/models/entities/npc.json +0 -0
- package/res/models/entities/ocelot.json +0 -0
- package/res/models/entities/parrot.json +0 -0
- package/res/models/entities/pig.json +0 -0
- package/res/models/entities/pigzombie.baby.json +0 -0
- package/res/models/entities/pigzombie.json +0 -0
- package/res/models/entities/player_head.json +0 -0
- package/res/models/entities/polarbear.json +0 -0
- package/res/models/entities/pufferfish.large.json +0 -0
- package/res/models/entities/pufferfish.mid.json +0 -0
- package/res/models/entities/pufferfish.small.json +0 -0
- package/res/models/entities/quadruped.json +0 -0
- package/res/models/entities/rabbit.json +0 -0
- package/res/models/entities/salmon.json +0 -0
- package/res/models/entities/sheep.json +0 -0
- package/res/models/entities/sheep.sheared.json +0 -0
- package/res/models/entities/shulker.json +0 -0
- package/res/models/entities/silverfish.json +0 -0
- package/res/models/entities/skeleton.json +0 -0
- package/res/models/entities/skeleton.stray.json +0 -0
- package/res/models/entities/skeleton.wither.json +0 -0
- package/res/models/entities/slime.armor.json +0 -0
- package/res/models/entities/slime.json +0 -0
- package/res/models/entities/snowgolem.json +0 -0
- package/res/models/entities/spider.json +0 -0
- package/res/models/entities/squid.json +0 -0
- package/res/models/entities/stray.armor.json +0 -0
- package/res/models/entities/trident.json +0 -0
- package/res/models/entities/tropicalfish_a.json +0 -0
- package/res/models/entities/tropicalfish_b.json +0 -0
- package/res/models/entities/turtle.json +0 -0
- package/res/models/entities/vex.json +0 -0
- package/res/models/entities/villager.json +0 -0
- package/res/models/entities/villager.witch.json +0 -0
- package/res/models/entities/vindicator.json +0 -0
- package/res/models/entities/witherBoss.armor.json +0 -0
- package/res/models/entities/witherBoss.json +0 -0
- package/res/models/entities/wolf.json +0 -0
- package/res/models/entities/zombie.drowned.json +0 -0
- package/res/models/entities/zombie.husk.json +0 -0
- package/res/models/entities/zombie.json +0 -0
- package/res/models/entities/zombie.villager.json +0 -0
- package/res/tools/bedrock/bedrockEntityConverter.js +0 -0
- package/res/tools/bedrock/convertedMobs/agent.json +0 -0
- package/res/tools/bedrock/convertedMobs/bed.json +0 -0
- package/res/tools/bedrock/convertedMobs/cape.json +0 -0
- package/res/tools/bedrock/convertedMobs/chalkboard_large.json +0 -0
- package/res/tools/bedrock/convertedMobs/chalkboard_medium.json +0 -0
- package/res/tools/bedrock/convertedMobs/chalkboard_small.json +0 -0
- package/res/tools/bedrock/convertedMobs/dragon.json +0 -0
- package/res/tools/bedrock/convertedMobs/dragon_head.json +0 -0
- package/res/tools/bedrock/convertedMobs/elytra.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor.boots.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor.chestplate.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor.helmet.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor.leggings.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor1.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.armor2.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.custom.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.customSlim.json +0 -0
- package/res/tools/bedrock/convertedMobs/humanoid.json +0 -0
- package/res/tools/bedrock/convertedMobs/irongolem.json +0 -0
- package/res/tools/bedrock/convertedMobs/mob_head.json +0 -0
- package/res/tools/bedrock/convertedMobs/player_head.json +0 -0
- package/res/tools/bedrock/convertedMobs/quadruped.json +0 -0
- package/res/tools/bedrock/convertedMobs/rsion.json +0 -0
- package/res/tools/bedrock/convertedMobs/trident.json +0 -0
- package/res/tools/bedrock/mobs.json +0 -0
- package/res/tools/java/javaSourceParser.js +0 -0
- package/res/tools/java/parsedToModel.js +0 -0
- package/server/index.js +0 -0
- package/src/AnimatorFunction.d.ts +3 -0
- package/src/AnimatorFunction.js +3 -0
- package/src/AnimatorFunction.js.map +1 -0
- package/src/AnimatorFunction.ts +3 -0
- package/src/Axis.d.ts +8 -0
- package/src/Axis.js +23 -0
- package/src/Axis.js.map +1 -0
- package/src/Axis.ts +20 -0
- package/src/CubeFace.d.ts +17 -0
- package/src/CubeFace.js +23 -0
- package/src/CubeFace.js.map +1 -0
- package/src/CubeFace.ts +20 -0
- package/src/Disposable.d.ts +4 -0
- package/src/Disposable.js +8 -0
- package/src/Disposable.js.map +1 -0
- package/src/Disposable.ts +7 -0
- package/src/Env.d.ts +2 -0
- package/src/Env.js +7 -0
- package/src/Env.js.map +1 -0
- package/src/Env.ts +2 -0
- package/src/ExtractableImageData.d.ts +5 -0
- package/src/ExtractableImageData.js +3 -0
- package/src/ExtractableImageData.js.map +1 -0
- package/src/ExtractableImageData.ts +5 -0
- package/src/Geometries.d.ts +6 -0
- package/src/Geometries.js +92 -0
- package/src/Geometries.js.map +1 -0
- package/src/Geometries.ts +99 -0
- package/src/ListAsset.d.ts +5 -0
- package/src/ListAsset.js +3 -0
- package/src/ListAsset.js.map +1 -0
- package/src/ListAsset.ts +6 -0
- package/src/Materials.d.ts +8 -0
- package/src/Materials.js +38 -0
- package/src/Materials.js.map +1 -0
- package/src/Materials.ts +160 -0
- package/src/Meshes.d.ts +6 -0
- package/src/Meshes.js +21 -0
- package/src/Meshes.js.map +1 -0
- package/src/Meshes.ts +20 -0
- package/src/MinecraftAsset.d.ts +7 -0
- package/src/MinecraftAsset.js +3 -0
- package/src/MinecraftAsset.js.map +1 -0
- package/src/MinecraftAsset.ts +9 -0
- package/src/MinecraftCubeTexture.d.ts +26 -0
- package/src/MinecraftCubeTexture.js +104 -0
- package/src/MinecraftCubeTexture.js.map +1 -0
- package/src/MinecraftCubeTexture.ts +116 -0
- package/src/MinecraftTextureMeta.d.ts +15 -0
- package/src/MinecraftTextureMeta.js +3 -0
- package/src/MinecraftTextureMeta.js.map +1 -0
- package/src/MinecraftTextureMeta.ts +18 -0
- package/src/SceneStats.d.ts +5 -0
- package/src/SceneStats.js +12 -0
- package/src/SceneStats.js.map +1 -0
- package/src/SceneStats.ts +7 -0
- package/src/Serializable.d.ts +3 -0
- package/src/Serializable.js +3 -0
- package/src/Serializable.js.map +1 -0
- package/src/Serializable.ts +3 -0
- package/src/Ticker.d.ts +20 -0
- package/src/Ticker.js +55 -0
- package/src/Ticker.js.map +1 -0
- package/src/Ticker.ts +65 -0
- package/src/TintColors.ts +3 -0
- package/src/Transformable.d.ts +10 -0
- package/src/Transformable.js +8 -0
- package/src/Transformable.js.map +1 -0
- package/src/Transformable.ts +23 -0
- package/src/UVMapper.d.ts +40 -0
- package/src/UVMapper.js +421 -0
- package/src/UVMapper.js.map +1 -0
- package/src/UVMapper.ts +506 -0
- package/src/WrappedImage.d.ts +17 -0
- package/src/WrappedImage.js +50 -0
- package/src/WrappedImage.js.map +1 -0
- package/src/WrappedImage.ts +61 -0
- package/src/_model/Cube.ts +9 -0
- package/src/_model/Element.ts +10 -0
- package/src/_model/Face.ts +7 -0
- package/src/_model/Model.ts +5 -0
- package/src/assets/AssetKey.d.ts +24 -0
- package/src/assets/AssetKey.js +70 -0
- package/src/assets/AssetKey.js.map +1 -0
- package/src/assets/AssetKey.ts +98 -0
- package/src/assets/AssetLoader.d.ts +25 -0
- package/src/assets/AssetLoader.js +132 -0
- package/src/assets/AssetLoader.js.map +1 -0
- package/src/assets/AssetLoader.ts +152 -0
- package/src/assets/Assets.d.ts +14 -0
- package/src/assets/Assets.js +24 -0
- package/src/assets/Assets.js.map +1 -0
- package/src/assets/Assets.ts +28 -0
- package/src/assets/BlockStates.d.ts +9 -0
- package/src/assets/BlockStates.js +51 -0
- package/src/assets/BlockStates.js.map +1 -0
- package/src/assets/BlockStates.ts +64 -0
- package/src/assets/Entities.d.ts +8 -0
- package/src/assets/Entities.js +40 -0
- package/src/assets/Entities.js.map +1 -0
- package/src/assets/Entities.ts +40 -0
- package/src/assets/ModelTextures.d.ts +11 -0
- package/src/assets/ModelTextures.js +42 -0
- package/src/assets/ModelTextures.js.map +1 -0
- package/src/assets/ModelTextures.ts +58 -0
- package/src/assets/Models.d.ts +11 -0
- package/src/assets/Models.js +70 -0
- package/src/assets/Models.js.map +1 -0
- package/src/assets/Models.ts +81 -0
- package/src/bedrock/BedrockEntityDescription.ts +11 -0
- package/src/bedrock/BedrockEntityFile.ts +8 -0
- package/src/bedrock/BedrockGeometry.ts +28 -0
- package/src/bedrock/BedrockGeometryFile.ts +7 -0
- package/src/cache/CacheKey.d.ts +28 -0
- package/src/cache/CacheKey.js +27 -0
- package/src/cache/CacheKey.js.map +1 -0
- package/src/cache/CacheKey.ts +90 -0
- package/src/cache/Caching.d.ts +29 -0
- package/src/cache/Caching.js +93 -0
- package/src/cache/Caching.js.map +1 -0
- package/src/cache/Caching.ts +116 -0
- package/src/cache/PersistentCache.d.ts +15 -0
- package/src/cache/PersistentCache.js +101 -0
- package/src/cache/PersistentCache.js.map +1 -0
- package/src/cache/PersistentCache.ts +132 -0
- package/src/canvas/CanvasCompat.d.ts +5 -0
- package/src/canvas/CanvasCompat.js +53 -0
- package/src/canvas/CanvasCompat.js.map +1 -0
- package/src/canvas/CanvasCompat.ts +33 -0
- package/src/canvas/CanvasImage.d.ts +18 -0
- package/src/canvas/CanvasImage.js +45 -0
- package/src/canvas/CanvasImage.js.map +1 -0
- package/src/canvas/CanvasImage.ts +58 -0
- package/src/entity/EntityModel.d.ts +7 -0
- package/src/entity/EntityModel.js +3 -0
- package/src/entity/EntityModel.js.map +1 -0
- package/src/entity/EntityModel.ts +6 -0
- package/src/entity/blockEntityModels.json +1401 -0
- package/src/entity/entityModels.json +20623 -0
- package/src/entity/scene/EntityObject.d.ts +20 -0
- package/src/entity/scene/EntityObject.js +116 -0
- package/src/entity/scene/EntityObject.js.map +1 -0
- package/src/entity/scene/EntityObject.ts +138 -0
- package/src/error/MineRenderError.d.ts +4 -0
- package/src/error/MineRenderError.js +15 -0
- package/src/error/MineRenderError.js.map +1 -0
- package/src/error/MineRenderError.ts +11 -0
- package/src/gui/scene/GuiObject.ts +13 -0
- package/src/image/ImageLoader.d.ts +28 -0
- package/src/image/ImageLoader.js +134 -0
- package/src/image/ImageLoader.js.map +1 -0
- package/src/image/ImageLoader.ts +161 -0
- package/src/index.d.ts +22 -0
- package/src/index.js +36 -0
- package/src/index.js.map +1 -0
- package/src/index.ts +39 -0
- package/src/inspector/SceneInspector.d.ts +22 -0
- package/src/inspector/SceneInspector.js +334 -0
- package/src/inspector/SceneInspector.js.map +1 -0
- package/src/inspector/SceneInspector.ts +426 -0
- package/src/inspector/SceneStats.ts +68 -0
- package/src/instance/InstanceManager.ts +53 -0
- package/src/instance/InstanceReference.d.ts +20 -0
- package/src/instance/InstanceReference.js +46 -0
- package/src/instance/InstanceReference.js.map +1 -0
- package/src/instance/InstanceReference.ts +62 -0
- package/src/instance/Instanceable.d.ts +15 -0
- package/src/instance/Instanceable.js +8 -0
- package/src/instance/Instanceable.js.map +1 -0
- package/src/instance/Instanceable.ts +33 -0
- package/src/lib/OrbitControls.js +0 -0
- package/src/model/DisplayPosition.ts +12 -0
- package/src/model/ElementFace.d.ts +9 -0
- package/src/model/ElementFace.js +3 -0
- package/src/model/ElementFace.js.map +1 -0
- package/src/model/ElementFace.ts +10 -0
- package/src/model/GuiLight.ts +4 -0
- package/src/model/Model.d.ts +43 -0
- package/src/model/Model.js +8 -0
- package/src/model/Model.js.map +1 -0
- package/src/model/Model.ts +67 -0
- package/src/model/ModelElement.ts +30 -0
- package/src/model/ModelGenerator.ts +32 -0
- package/src/model/ModelMerger.ts +36 -0
- package/src/model/ModelPart.d.ts +23 -0
- package/src/model/ModelPart.js +3 -0
- package/src/model/ModelPart.js.map +1 -0
- package/src/model/ModelPart.ts +25 -0
- package/src/model/block/Block.ts +10 -0
- package/src/model/block/BlockState.ts +25 -0
- package/src/model/block/BlockStateProperties.ts +12 -0
- package/src/model/block/scene/BlockObject.ts +475 -0
- package/src/model/defaultBlockStates.json +12337 -0
- package/src/model/legacyBlockList.json +47234 -0
- package/src/model/multiblock/MultiBlockStructure.ts +14 -0
- package/src/model/multiblock/SchematicParser.ts +11 -0
- package/src/model/multiblock/StructureParser.ts +109 -0
- package/src/model/scene/ModelObject.ts +185 -0
- package/src/nbt/NBTHelper.d.ts +8 -0
- package/src/nbt/NBTHelper.js +32 -0
- package/src/nbt/NBTHelper.js.map +1 -0
- package/src/nbt/NBTHelper.ts +15 -0
- package/src/renderer/MineRenderScene.ts +132 -0
- package/src/renderer/Renderer.ts +399 -0
- package/src/renderer/SceneObject.ts +446 -0
- package/src/renderer/SceneObjectOptions.ts +6 -0
- package/src/request/Requests.ts +44 -0
- package/src/skin/SkinGeometries.d.ts +5 -0
- package/src/skin/SkinGeometries.js +39 -0
- package/src/skin/SkinGeometries.js.map +1 -0
- package/src/skin/SkinGeometries.ts +50 -0
- package/src/skin/SkinPart.d.ts +16 -0
- package/src/skin/SkinPart.js +21 -0
- package/src/skin/SkinPart.js.map +1 -0
- package/src/skin/SkinPart.ts +19 -0
- package/src/skin/SkinTextureCoordinates.d.ts +5 -0
- package/src/skin/SkinTextureCoordinates.js +753 -0
- package/src/skin/SkinTextureCoordinates.js.map +1 -0
- package/src/skin/SkinTextureCoordinates.ts +759 -0
- package/src/skin/Skins.ts +158 -0
- package/src/skin/playerModels.json +678 -0
- package/src/skin/scene/SkinObject.d.ts +20 -0
- package/src/skin/scene/SkinObject.js +102 -0
- package/src/skin/scene/SkinObject.js.map +1 -0
- package/src/skin/scene/SkinObject.ts +148 -0
- package/src/texture/TextureAtlas.d.ts +29 -0
- package/src/texture/TextureAtlas.js +26 -0
- package/src/texture/TextureAtlas.js.map +1 -0
- package/src/texture/TextureAtlas.ts +32 -0
- package/src/texture/TextureLoader.d.ts +6 -0
- package/src/texture/TextureLoader.js +34 -0
- package/src/texture/TextureLoader.js.map +1 -0
- package/src/texture/TextureLoader.ts +41 -0
- package/src/texture/Textures.d.ts +10 -0
- package/src/texture/Textures.js +52 -0
- package/src/texture/Textures.js.map +1 -0
- package/src/texture/Textures.ts +37 -0
- package/src/three/BufferGeometryUtils.d.ts +17 -0
- package/src/three/BufferGeometryUtils.js +944 -0
- package/src/three/OrbitControls.d.ts +78 -0
- package/src/three/OrbitControls.js +1297 -0
- package/src/util/BatchedExecutor.ts +37 -0
- package/src/util/log.ts +30 -0
- package/src/util/model.d.ts +11 -0
- package/src/util/model.js +182 -0
- package/src/util/model.js.map +1 -0
- package/src/util/model.ts +213 -0
- package/src/util/performance.ts +14 -0
- package/src/util/three.d.ts +6 -0
- package/src/util/three.js +20 -0
- package/src/util/three.js.map +1 -0
- package/src/util/three.ts +26 -0
- package/src/util/util.d.ts +9 -0
- package/src/util/util.js +117 -0
- package/src/util/util.js.map +1 -0
- package/src/util/util.ts +120 -0
- package/src/world/BlockInfo.ts +7 -0
- package/src/world/Chunk.ts +165 -0
- package/src/world/MineRenderWorld.ts +149 -0
- package/test/combined.html +0 -0
- package/test/entity.html +0 -0
- package/test/gui.html +0 -0
- package/test/model.html +0 -0
- package/test/serviceworker.js +50 -0
- package/test/skin.html +0 -0
- package/test/structure.html +0 -0
- package/test/v2.html +528 -0
- package/tsconfig-cjs.json +7 -0
- package/tsconfig.json +37 -0
- package/CORSpipe.php +0 -32
- package/dist/all.js +0 -2294
- package/dist/all.min.js +0 -52
- package/dist/entity.js +0 -2282
- package/dist/entity.min.js +0 -52
- package/dist/gui.js +0 -2270
- package/dist/gui.min.js +0 -52
- package/dist/model.js +0 -2234
- package/dist/model.min.js +0 -52
- package/dist/skin.js +0 -397
- package/dist/skin.min.js +0 -24
- package/src/combined/index.js +0 -83
- package/src/entity/index.js +0 -335
- package/src/functions.js +0 -262
- package/src/gui/guiHelper.js +0 -154
- package/src/gui/guiPositions.js +0 -85
- package/src/gui/index.js +0 -222
- package/src/lib/merge.js +0 -0
- package/src/model/ModelWorker.js +0 -32
- package/src/model/index.js +0 -1128
- package/src/model/modelConverter.js +0 -290
- package/src/model/modelFunctions.js +0 -463
- package/src/renderBase.js +0 -496
- package/src/skin/index.js +0 -696
- package/src/skin/texturePositions.js +0 -1050
- package/stats.json +0 -1
- package/stats.php +0 -41
- package/webpack.config.js +0 -166
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TripleArray } from "../Model";
|
|
2
|
+
import { Block } from "../block/Block";
|
|
3
|
+
export interface MultiBlockStructure {
|
|
4
|
+
readonly size: TripleArray;
|
|
5
|
+
readonly blocks: MultiBlockBlock[];
|
|
6
|
+
}
|
|
7
|
+
export interface MultiBlockBlock extends Block {
|
|
8
|
+
position: TripleArray;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MultiBlockStructure.js","sourceRoot":"src/","sources":["model/multiblock/MultiBlockStructure.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
export class SchematicParser {
|
|
11
|
+
static parse() {
|
|
12
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
13
|
+
//TODO
|
|
14
|
+
// @ts-ignore
|
|
15
|
+
return Promise.resolve({});
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=SchematicParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SchematicParser.js","sourceRoot":"src/","sources":["model/multiblock/SchematicParser.ts"],"names":[],"mappings":";;;;;;;;;AAEA,MAAM,OAAO,eAAe;IAEjB,MAAM,CAAO,KAAK;;YACrB,MAAM;YACN,aAAa;YACb,OAAO,OAAO,CAAC,OAAO,CAAC,EAAI,CAAC,CAAC;QACjC,CAAC;KAAA;CAEJ"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { MultiBlockStructure } from "./MultiBlockStructure";
|
|
2
|
+
import { TripleArray } from "../Model";
|
|
3
|
+
import { NBT } from "prismarine-nbt";
|
|
4
|
+
export declare class StructureParser {
|
|
5
|
+
static parse(_nbt: NBT, paletteIndex?: number): Promise<MultiBlockStructure>;
|
|
6
|
+
}
|
|
7
|
+
export interface StructureNBT {
|
|
8
|
+
DataVersion: {
|
|
9
|
+
type: "int";
|
|
10
|
+
value: number;
|
|
11
|
+
};
|
|
12
|
+
size: {
|
|
13
|
+
type: "list";
|
|
14
|
+
value: {
|
|
15
|
+
type: "int";
|
|
16
|
+
value: TripleArray;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
palette?: Palette;
|
|
20
|
+
palettes?: Palette[];
|
|
21
|
+
blocks: {
|
|
22
|
+
type: "list";
|
|
23
|
+
value: {
|
|
24
|
+
type: "compound";
|
|
25
|
+
value: BlockEntry[];
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
entities: {};
|
|
29
|
+
}
|
|
30
|
+
interface Palette {
|
|
31
|
+
type: "list";
|
|
32
|
+
value: {
|
|
33
|
+
type: "compound";
|
|
34
|
+
value: PaletteEntry[];
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
interface PaletteEntry {
|
|
38
|
+
Name: {
|
|
39
|
+
type: "string";
|
|
40
|
+
value: string;
|
|
41
|
+
};
|
|
42
|
+
Properties: {
|
|
43
|
+
type: "compound";
|
|
44
|
+
value: {
|
|
45
|
+
[property: string]: PalettePropertyValue;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
interface PalettePropertyValue {
|
|
50
|
+
type: string;
|
|
51
|
+
value: string;
|
|
52
|
+
}
|
|
53
|
+
interface BlockEntry {
|
|
54
|
+
pos: {
|
|
55
|
+
type: "list";
|
|
56
|
+
value: {
|
|
57
|
+
type: "int";
|
|
58
|
+
value: TripleArray;
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
state: {
|
|
62
|
+
type: "int";
|
|
63
|
+
value: number;
|
|
64
|
+
};
|
|
65
|
+
nbt: {
|
|
66
|
+
type: "compound";
|
|
67
|
+
value: any;
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
export {};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { MineRenderError } from "../../error/MineRenderError";
|
|
11
|
+
export class StructureParser {
|
|
12
|
+
static parse(_nbt, paletteIndex) {
|
|
13
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
14
|
+
const nbt = _nbt.value;
|
|
15
|
+
let palette;
|
|
16
|
+
if ("palette" in nbt) {
|
|
17
|
+
palette = nbt.palette;
|
|
18
|
+
}
|
|
19
|
+
else if ("palettes" in nbt) {
|
|
20
|
+
palette = nbt.palettes[paletteIndex !== null && paletteIndex !== void 0 ? paletteIndex : 0];
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
throw new MineRenderError("Structure does not have palette(s)");
|
|
24
|
+
}
|
|
25
|
+
const blocks = nbt.blocks.value.value.map(block => {
|
|
26
|
+
var _a;
|
|
27
|
+
const state = palette.value.value[block.state.value];
|
|
28
|
+
if (state.Name.value === "minecraft:air")
|
|
29
|
+
return undefined;
|
|
30
|
+
const props = {};
|
|
31
|
+
for (let k in (_a = state.Properties) === null || _a === void 0 ? void 0 : _a.value) {
|
|
32
|
+
props[k] = state.Properties.value[k].value;
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
type: state.Name.value,
|
|
36
|
+
properties: props,
|
|
37
|
+
position: block.pos.value.value,
|
|
38
|
+
nbt: block.nbt
|
|
39
|
+
};
|
|
40
|
+
}).filter(m => typeof m !== "undefined");
|
|
41
|
+
return {
|
|
42
|
+
blocks: blocks,
|
|
43
|
+
size: nbt.size.value.value
|
|
44
|
+
};
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=StructureParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StructureParser.js","sourceRoot":"src/","sources":["model/multiblock/StructureParser.ts"],"names":[],"mappings":";;;;;;;;;AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,MAAM,OAAO,eAAe;IAEjB,MAAM,CAAO,KAAK,CAAC,IAAS,EAAE,YAAqB;;YACtD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAgC,CAAC;YAElD,IAAI,OAAgB,CAAC;YACrB,IAAI,SAAS,IAAI,GAAG,EAAE;gBAClB,OAAO,GAAG,GAAG,CAAC,OAAQ,CAAC;aAC1B;iBAAM,IAAI,UAAU,IAAI,GAAG,EAAE;gBAC1B,OAAO,GAAG,GAAG,CAAC,QAAS,CAAC,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,CAAC,CAAC,CAAC;aAC9C;iBAAM;gBACH,MAAM,IAAI,eAAe,CAAC,oCAAoC,CAAC,CAAC;aACnE;YAED,MAAM,MAAM,GACR,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;;gBAC/B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,eAAe;oBAAE,OAAO,SAAS,CAAC;gBAE3D,MAAM,KAAK,GAAyB,EAAE,CAAC;gBACvC,KAAK,IAAI,CAAC,IAAI,MAAA,KAAK,CAAC,UAAU,0CAAE,KAAK,EAAE;oBACnC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;iBAC9C;gBACD,OAAwB;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;oBACtB,UAAU,EAAE,KAAK;oBACjB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK;oBAC/B,GAAG,EAAE,KAAK,CAAC,GAAG;iBACjB,CAAA;YACL,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,WAAW,CAAuB,CAAE;YACpE,OAAO;gBACH,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK;aAC7B,CAAA;QACL,CAAC;KAAA;CAEJ"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SceneObject } from "../../renderer/SceneObject";
|
|
2
|
+
import { Model } from "../Model";
|
|
3
|
+
import { Maybe } from "../../util/util";
|
|
4
|
+
import { TextureAtlas } from "../../texture/TextureAtlas";
|
|
5
|
+
import { SceneObjectOptions } from "../../renderer/SceneObjectOptions";
|
|
6
|
+
import { BlockObject } from "../block/scene/BlockObject";
|
|
7
|
+
export declare class ModelObject extends SceneObject {
|
|
8
|
+
readonly originalModel: Model;
|
|
9
|
+
readonly isModelObject: true;
|
|
10
|
+
static readonly DEFAULT_OPTIONS: ModelObjectOptions;
|
|
11
|
+
readonly options: ModelObjectOptions;
|
|
12
|
+
private atlas?;
|
|
13
|
+
blockParent: Maybe<BlockObject>;
|
|
14
|
+
private meshesCreated;
|
|
15
|
+
constructor(originalModel: Model, options?: Partial<ModelObjectOptions>);
|
|
16
|
+
init(): Promise<void>;
|
|
17
|
+
dispose(): void;
|
|
18
|
+
get textureAtlas(): Maybe<TextureAtlas>;
|
|
19
|
+
protected loadTextures(): Promise<void>;
|
|
20
|
+
protected createMeshes(force?: boolean): void;
|
|
21
|
+
protected applyTextures(): void;
|
|
22
|
+
}
|
|
23
|
+
export interface ModelObjectOptions extends SceneObjectOptions {
|
|
24
|
+
}
|
|
25
|
+
export declare function isModelObject(obj: any): obj is ModelObject;
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { SceneObject } from "../../renderer/SceneObject";
|
|
11
|
+
import { Materials } from "../../Materials";
|
|
12
|
+
import { UVMapper } from "../../UVMapper";
|
|
13
|
+
import { BoxGeometry, Matrix4 } from "three";
|
|
14
|
+
import { mergeBufferGeometries } from "../../three/BufferGeometryUtils";
|
|
15
|
+
import { addBox3WireframeToObject, addWireframeToMesh, addWireframeToObject, applyElementRotation } from "../../util/model";
|
|
16
|
+
import { Ticker } from "../../Ticker";
|
|
17
|
+
import merge from "ts-deepmerge";
|
|
18
|
+
import { prefix } from "../../util/log";
|
|
19
|
+
const p = prefix("ModelObject");
|
|
20
|
+
//TODO: might want to abstract this out into a generic model, and create a separate class for Block models
|
|
21
|
+
export class ModelObject extends SceneObject {
|
|
22
|
+
constructor(originalModel, options) {
|
|
23
|
+
super();
|
|
24
|
+
this.originalModel = originalModel;
|
|
25
|
+
this.isModelObject = true;
|
|
26
|
+
this.meshesCreated = false;
|
|
27
|
+
this.options = merge({}, ModelObject.DEFAULT_OPTIONS, options !== null && options !== void 0 ? options : {});
|
|
28
|
+
}
|
|
29
|
+
init() {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
// load textures first so we have the updated UV coordinates from the atlas
|
|
32
|
+
yield this.loadTextures();
|
|
33
|
+
this.createMeshes();
|
|
34
|
+
this.applyTextures();
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
dispose() {
|
|
38
|
+
var _a;
|
|
39
|
+
super.dispose();
|
|
40
|
+
(_a = this.atlas) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
41
|
+
}
|
|
42
|
+
get textureAtlas() {
|
|
43
|
+
return this.atlas;
|
|
44
|
+
}
|
|
45
|
+
//TODO: support for replacing textures
|
|
46
|
+
loadTextures() {
|
|
47
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
48
|
+
this.atlas = yield UVMapper.getAtlas(this.originalModel);
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
createMeshes(force = false) {
|
|
52
|
+
var _a;
|
|
53
|
+
if (this.meshesCreated && !force)
|
|
54
|
+
return;
|
|
55
|
+
const mat = Materials.MISSING_TEXTURE;
|
|
56
|
+
let allGeos = [];
|
|
57
|
+
if (this.atlas) {
|
|
58
|
+
if (this.atlas.model.elements) {
|
|
59
|
+
(_a = this.atlas.model.elements) === null || _a === void 0 ? void 0 : _a.forEach(el => {
|
|
60
|
+
const elGeo = this._getBoxGeometryFromElement(el).clone();
|
|
61
|
+
// elGeo.applyMatrix4(new THREE.Matrix4().makeTranslation(-8,-8,-8));
|
|
62
|
+
elGeo.applyMatrix4(new Matrix4().makeTranslation((el.to[0] - el.from[0]) / 2, (el.to[1] - el.from[1]) / 2, (el.to[2] - el.from[2]) / 2));
|
|
63
|
+
elGeo.applyMatrix4(new Matrix4().makeTranslation(el.from[0], el.from[1], el.from[2]));
|
|
64
|
+
if (el.rotation) {
|
|
65
|
+
applyElementRotation(el.rotation, elGeo);
|
|
66
|
+
}
|
|
67
|
+
elGeo.applyMatrix4(new Matrix4().makeTranslation(-8, -8, -8));
|
|
68
|
+
if (this.options.mergeMeshes) {
|
|
69
|
+
allGeos.push(elGeo);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
const mesh = this.createAndAddMesh(undefined, undefined, elGeo, mat);
|
|
73
|
+
if (this.options.wireframe) {
|
|
74
|
+
addWireframeToMesh(elGeo, mesh);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
console.debug(p, this.atlas.model, "has no elements");
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
console.debug(p, "Missing atlas for", this);
|
|
85
|
+
}
|
|
86
|
+
if (this.options.mergeMeshes) {
|
|
87
|
+
let combinedGeo;
|
|
88
|
+
if (allGeos.length > 0) {
|
|
89
|
+
// if (this.options.wireframe) {
|
|
90
|
+
// allGeos.push(new BoxGeometry(16, 16, 16, 1, 1, 1))
|
|
91
|
+
// }
|
|
92
|
+
combinedGeo = mergeBufferGeometries(allGeos);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
combinedGeo = new BoxGeometry(16, 16, 16);
|
|
96
|
+
}
|
|
97
|
+
combinedGeo.computeBoundingBox();
|
|
98
|
+
// combinedGeo.translate(-8, -8, -8);
|
|
99
|
+
// TODO: cache the combined geometry
|
|
100
|
+
let mesh;
|
|
101
|
+
if (this.options.instanceMeshes) {
|
|
102
|
+
mesh = this.createInstancedMesh(undefined, combinedGeo, mat, this.options.maxInstanceCount || 50);
|
|
103
|
+
this.add(mesh);
|
|
104
|
+
this._isInstanced = true;
|
|
105
|
+
//TODO
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
mesh = this.createAndAddMesh(undefined, undefined, combinedGeo, mat);
|
|
109
|
+
}
|
|
110
|
+
if (this.options.wireframe) {
|
|
111
|
+
addWireframeToMesh(combinedGeo, mesh, 0x0000ff, 4);
|
|
112
|
+
addBox3WireframeToObject(combinedGeo.boundingBox, mesh, 0x00ffff, 3);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
if (this.options.wireframe) {
|
|
116
|
+
addWireframeToObject(this, 0x00ff00, 3);
|
|
117
|
+
}
|
|
118
|
+
this.meshesCreated = true;
|
|
119
|
+
}
|
|
120
|
+
applyTextures() {
|
|
121
|
+
// if (this.atlas!.model.textures) {
|
|
122
|
+
// for (let textureKey in this.atlas!.model.textures) {
|
|
123
|
+
// let asset = this.textureMap[textureKey];
|
|
124
|
+
// if (asset) {
|
|
125
|
+
//TODO: transparency
|
|
126
|
+
if (this.atlas) {
|
|
127
|
+
let mat = Materials.createShadedCanvasMaterial(this.atlas.image.canvas, this.atlas.hasTransparency, false /*TODO: get this from render options*/);
|
|
128
|
+
this.iterateAllMeshes(mesh => {
|
|
129
|
+
mesh.material = mat;
|
|
130
|
+
});
|
|
131
|
+
//TODO: move this somewhere else
|
|
132
|
+
//TODO: this seems to be ticking way too fast atm
|
|
133
|
+
if (this.atlas.hasAnimation) {
|
|
134
|
+
if (typeof this.atlas.ticker === "undefined") { //TODO: fix missing texture update for reused atlas
|
|
135
|
+
this.atlas.ticker = Ticker.add(() => {
|
|
136
|
+
for (let key in this.atlas.animatorFunctions) {
|
|
137
|
+
this.atlas.animatorFunctions[key]();
|
|
138
|
+
}
|
|
139
|
+
if ("map" in mat) {
|
|
140
|
+
mat.map.needsUpdate = true;
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
// }
|
|
147
|
+
// }
|
|
148
|
+
// }
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
ModelObject.DEFAULT_OPTIONS = merge({}, SceneObject.DEFAULT_OPTIONS, {});
|
|
152
|
+
export function isModelObject(obj) {
|
|
153
|
+
return obj.isModelObject;
|
|
154
|
+
}
|
|
155
|
+
//# sourceMappingURL=ModelObject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ModelObject.js","sourceRoot":"src/","sources":["model/scene/ModelObject.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { NBT } from "prismarine-nbt";
|
|
3
|
+
import { MinecraftAsset } from "../MinecraftAsset";
|
|
4
|
+
export declare class NBTHelper {
|
|
5
|
+
static fromBuffer(buffer: Buffer): Promise<NBTAsset>;
|
|
6
|
+
}
|
|
7
|
+
export interface NBTAsset extends MinecraftAsset, NBT {
|
|
8
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import * as prismarineNbt from "prismarine-nbt";
|
|
11
|
+
export class NBTHelper {
|
|
12
|
+
static fromBuffer(buffer) {
|
|
13
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
14
|
+
const { parsed, type, metadata } = yield prismarineNbt.parse(buffer);
|
|
15
|
+
return parsed;
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=NBTHelper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NBTHelper.js","sourceRoot":"src/","sources":["nbt/NBTHelper.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,aAAa,MAAM,gBAAgB,CAAC;AAIhD,MAAM,OAAO,SAAS;IAEX,MAAM,CAAO,UAAU,CAAC,MAAc;;YACzC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACrE,OAAO,MAAM,CAAC;QAClB,CAAC;KAAA;CAEJ"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Object3D, Scene } from "three";
|
|
2
|
+
import { SceneObject } from "./SceneObject";
|
|
3
|
+
import { Model } from "../model/Model";
|
|
4
|
+
import { ModelObject, ModelObjectOptions } from "../model/scene/ModelObject";
|
|
5
|
+
import { InstanceReference } from "../instance/InstanceReference";
|
|
6
|
+
import { SceneStats } from "../SceneStats";
|
|
7
|
+
import { BasicMinecraftAsset } from "../MinecraftAsset";
|
|
8
|
+
import { SceneObjectOptions } from "./SceneObjectOptions";
|
|
9
|
+
import { BlockState } from "../model/block/BlockState";
|
|
10
|
+
import { BlockObject, BlockObjectOptions } from "../model/block/scene/BlockObject";
|
|
11
|
+
import { InstanceManager } from "../instance/InstanceManager";
|
|
12
|
+
import { DeepPartial } from "../util/util";
|
|
13
|
+
import { SkinObject, SkinObjectOptions } from "../skin/scene/SkinObject";
|
|
14
|
+
import { EntityObject, EntityObjectOptions } from "../entity/scene/EntityObject";
|
|
15
|
+
import { EntityModel } from "../entity/EntityModel";
|
|
16
|
+
export declare class MineRenderScene extends Scene {
|
|
17
|
+
readonly isMineRenderScene: true;
|
|
18
|
+
static readonly DEFAULT_OPTIONS: MineRenderSceneOptions;
|
|
19
|
+
readonly options: MineRenderSceneOptions;
|
|
20
|
+
readonly stats: SceneStats;
|
|
21
|
+
protected readonly instanceManager: InstanceManager;
|
|
22
|
+
dirty: boolean;
|
|
23
|
+
constructor(options?: DeepPartial<MineRenderSceneOptions>);
|
|
24
|
+
add(...object: any[]): this;
|
|
25
|
+
remove(...object: any[]): this;
|
|
26
|
+
initAndAdd(...object: SceneObject[]): Promise<this>;
|
|
27
|
+
addSceneObject<A extends BasicMinecraftAsset, T extends SceneObject, O extends SceneObjectOptions>(asset: A, objectSupplier: () => T | Promise<T>, options?: Partial<O>, parent?: Object3D): Promise<T | InstanceReference<T>>;
|
|
28
|
+
addModel(model: Model, options?: Partial<ModelObjectOptions>, parent?: Object3D): Promise<ModelObject | InstanceReference<ModelObject>>;
|
|
29
|
+
addBlock(blockState: BlockState, options?: Partial<BlockObjectOptions>, parent?: Object3D): Promise<BlockObject | InstanceReference<BlockObject>>;
|
|
30
|
+
addSkin(skin?: string, options?: Partial<SkinObjectOptions>, parent?: Object3D): Promise<SkinObject>;
|
|
31
|
+
addEntity(entity: EntityModel, options?: Partial<EntityObjectOptions>, parent?: Object3D): Promise<EntityObject | InstanceReference<EntityObject>>;
|
|
32
|
+
}
|
|
33
|
+
export interface MineRenderSceneOptions {
|
|
34
|
+
}
|
|
35
|
+
export declare function isMineRenderScene(obj: any): obj is MineRenderScene;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { Scene } from "three";
|
|
11
|
+
import { isSceneObject } from "../util/three";
|
|
12
|
+
import merge from "ts-deepmerge";
|
|
13
|
+
import { ModelObject } from "../model/scene/ModelObject";
|
|
14
|
+
import { SceneStats } from "../SceneStats";
|
|
15
|
+
import { BlockObject, isBlockObject } from "../model/block/scene/BlockObject";
|
|
16
|
+
import { InstanceManager } from "../instance/InstanceManager";
|
|
17
|
+
import { SkinObject } from "../skin/scene/SkinObject";
|
|
18
|
+
import { EntityObject } from "../entity/scene/EntityObject";
|
|
19
|
+
export class MineRenderScene extends Scene {
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super();
|
|
22
|
+
this.isMineRenderScene = true;
|
|
23
|
+
this.stats = new SceneStats();
|
|
24
|
+
this.instanceManager = new InstanceManager();
|
|
25
|
+
this.dirty = true;
|
|
26
|
+
this.options = merge({}, MineRenderScene.DEFAULT_OPTIONS, options !== null && options !== void 0 ? options : {});
|
|
27
|
+
}
|
|
28
|
+
add(...object) {
|
|
29
|
+
this.dirty = true;
|
|
30
|
+
this.stats.objectCount += object.length;
|
|
31
|
+
for (let obj of object) {
|
|
32
|
+
if (isSceneObject(obj)) {
|
|
33
|
+
this.stats.sceneObjectCount++;
|
|
34
|
+
}
|
|
35
|
+
// obj.addEventListener('dirty',event=>{
|
|
36
|
+
// this.dirty = true;
|
|
37
|
+
// });
|
|
38
|
+
obj.addEventListener('change', event => {
|
|
39
|
+
this.dirty = true;
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
return super.add(...object);
|
|
43
|
+
}
|
|
44
|
+
remove(...object) {
|
|
45
|
+
this.dirty = true;
|
|
46
|
+
return super.remove(...object);
|
|
47
|
+
}
|
|
48
|
+
initAndAdd(...object) {
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
this.dirty = true;
|
|
51
|
+
for (let obj of object) {
|
|
52
|
+
yield obj.init();
|
|
53
|
+
}
|
|
54
|
+
return this.add(...object);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
addSceneObject(asset, objectSupplier, options, parent = this) {
|
|
58
|
+
var _a;
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
console.log("addSceneObject");
|
|
61
|
+
console.log("parent", parent);
|
|
62
|
+
this.dirty = true;
|
|
63
|
+
// console.log(this.instanceCache)
|
|
64
|
+
if ((options === null || options === void 0 ? void 0 : options.instanceMeshes) && asset.key && ((_a = asset.key) === null || _a === void 0 ? void 0 : _a.assetType) === "models" /*TODO*/) {
|
|
65
|
+
// console.log("instanceMeshes + key")
|
|
66
|
+
// check for existing instances
|
|
67
|
+
const key = asset.key.serialize();
|
|
68
|
+
return this.instanceManager.getOrCreate(key, () => __awaiter(this, void 0, void 0, function* () {
|
|
69
|
+
const obj = yield objectSupplier();
|
|
70
|
+
obj.scene = this;
|
|
71
|
+
yield obj.init();
|
|
72
|
+
parent.add(obj);
|
|
73
|
+
// await sleep(500)//TODO
|
|
74
|
+
return obj;
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
// console.log("!instanceMeshes | !key")
|
|
79
|
+
const obj = yield objectSupplier();
|
|
80
|
+
obj.scene = this;
|
|
81
|
+
// await this.initAndAdd(obj);
|
|
82
|
+
yield obj.init();
|
|
83
|
+
if (!isBlockObject(obj)) { //TODO: adding block objects slows things down (since each block has its own)
|
|
84
|
+
parent.add(obj);
|
|
85
|
+
}
|
|
86
|
+
// await sleep(500)//TODO
|
|
87
|
+
return obj;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
addModel(model, options, parent = this) {
|
|
92
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
return this.addSceneObject(model, () => new ModelObject(model, options), options, parent);
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
addBlock(blockState, options, parent = this) {
|
|
97
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
+
return this.addSceneObject(blockState, () => new BlockObject(blockState, options), options, parent);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
addSkin(skin, options, parent = this) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
this.dirty = true;
|
|
104
|
+
const obj = new SkinObject(options);
|
|
105
|
+
obj.scene = this;
|
|
106
|
+
yield obj.init();
|
|
107
|
+
if (skin) {
|
|
108
|
+
obj.setSkinTexture(skin);
|
|
109
|
+
}
|
|
110
|
+
parent.add(obj);
|
|
111
|
+
return obj;
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
addEntity(entity, options, parent = this) {
|
|
115
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
116
|
+
return this.addSceneObject(entity, () => new EntityObject(entity, options), options, parent);
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
MineRenderScene.DEFAULT_OPTIONS = merge({}, {});
|
|
121
|
+
export function isMineRenderScene(obj) {
|
|
122
|
+
return obj.isMineRenderScene;
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=MineRenderScene.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MineRenderScene.js","sourceRoot":"src/","sources":["renderer/MineRenderScene.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Camera, EventDispatcher, Vector3, WebGLRenderer } from "three";
|
|
3
|
+
import { MineRenderScene } from "./MineRenderScene";
|
|
4
|
+
import Stats from "stats.js";
|
|
5
|
+
import { DeepPartial } from "../util/util";
|
|
6
|
+
import { EffectComposer } from "three/examples/jsm/postprocessing/EffectComposer";
|
|
7
|
+
export declare class Renderer {
|
|
8
|
+
static readonly DEFAULT_OPTIONS: RendererOptions;
|
|
9
|
+
readonly options: RendererOptions;
|
|
10
|
+
readonly element: HTMLElement;
|
|
11
|
+
protected _scene: MineRenderScene;
|
|
12
|
+
protected _camera: Camera;
|
|
13
|
+
protected _renderer: WebGLRenderer;
|
|
14
|
+
protected _composer: EffectComposer;
|
|
15
|
+
protected _stats?: Stats;
|
|
16
|
+
protected _dirty: boolean;
|
|
17
|
+
protected _animationLoop: any;
|
|
18
|
+
protected _fpsTimer: any;
|
|
19
|
+
protected _animationTimer?: NodeJS.Timeout;
|
|
20
|
+
protected _animationFrame?: number;
|
|
21
|
+
protected _resizeListener?: () => void;
|
|
22
|
+
constructor(options?: DeepPartial<RendererOptions>, element?: HTMLElement);
|
|
23
|
+
protected createScene(): MineRenderScene;
|
|
24
|
+
protected createCamera(): Camera;
|
|
25
|
+
protected createRenderer(): WebGLRenderer;
|
|
26
|
+
protected createComposer(): EffectComposer;
|
|
27
|
+
init(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Register an EventDispatcher which may update the scene or renderer in order to redraw the scene
|
|
30
|
+
*/
|
|
31
|
+
registerEventDispatcher(dispatcher: EventDispatcher, changeEvent?: string): void;
|
|
32
|
+
resize(width: number, height: number): void;
|
|
33
|
+
get dirty(): boolean;
|
|
34
|
+
set dirty(dirty: boolean);
|
|
35
|
+
start(): void;
|
|
36
|
+
stop(): void;
|
|
37
|
+
private animate;
|
|
38
|
+
protected get attachedToBody(): boolean;
|
|
39
|
+
protected get viewWidth(): number;
|
|
40
|
+
protected get viewHeight(): number;
|
|
41
|
+
get scene(): MineRenderScene;
|
|
42
|
+
get camera(): Camera;
|
|
43
|
+
get renderer(): WebGLRenderer;
|
|
44
|
+
get composer(): EffectComposer;
|
|
45
|
+
}
|
|
46
|
+
export interface RendererOptions {
|
|
47
|
+
camera: CameraOptions;
|
|
48
|
+
render: RenderOptions;
|
|
49
|
+
composer: ComposerOptions;
|
|
50
|
+
debug: DebugOptions;
|
|
51
|
+
}
|
|
52
|
+
export interface CameraOptions {
|
|
53
|
+
type: "perspective" | "orthographic";
|
|
54
|
+
near: number;
|
|
55
|
+
far: number;
|
|
56
|
+
perspective: {
|
|
57
|
+
aspect: undefined | number;
|
|
58
|
+
fov: number;
|
|
59
|
+
};
|
|
60
|
+
orthographic: {
|
|
61
|
+
left: undefined | number;
|
|
62
|
+
right: undefined | number;
|
|
63
|
+
top: undefined | number;
|
|
64
|
+
bottom: undefined | number;
|
|
65
|
+
};
|
|
66
|
+
position: Vector3;
|
|
67
|
+
lookingAt: Vector3;
|
|
68
|
+
}
|
|
69
|
+
export interface RenderOptions {
|
|
70
|
+
fpsLimit: number;
|
|
71
|
+
stats: boolean;
|
|
72
|
+
antialias: boolean;
|
|
73
|
+
shade: boolean;
|
|
74
|
+
autoResize: boolean;
|
|
75
|
+
renderAlways: boolean;
|
|
76
|
+
}
|
|
77
|
+
export interface ComposerOptions {
|
|
78
|
+
enabled: boolean;
|
|
79
|
+
}
|
|
80
|
+
export interface DebugOptions {
|
|
81
|
+
grid: boolean;
|
|
82
|
+
axes: boolean;
|
|
83
|
+
}
|