@woosh/meep-engine 3.0.0 → 3.0.2
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/build/bundle-worker-terrain.js +1 -1
- package/editor/ecs/component/FieldDescriptor.d.ts +26 -26
- package/editor/ecs/component/FieldValueAdapter.d.ts +6 -6
- package/editor/ecs/component/TypeEditor.d.ts +24 -24
- package/editor/ecs/component/createFieldEditor.d.ts +8 -8
- package/editor/ecs/component/createObjectEditor.d.ts +13 -13
- package/editor/ecs/component/editors/primitive/ObjectEditor.d.ts +5 -5
- package/editor/ecs/component/findNearestRegisteredType.d.ts +7 -7
- package/editor/particles/rebuildParticleEmitter.js +8 -26
- package/editor/process/symbolic/CameraSymbolicDisplay.js +146 -146
- package/editor/prototypeEditorShell.js +0 -2
- package/editor/tools/SelectionTool.js +1 -2
- package/editor/tools/TransformToolV2.js +2 -3
- package/editor/tools/v2/BlenderCameraOrientationGizmo.js +501 -501
- package/editor/tools/v2/TransformControls.js +1 -1
- package/editor/view/ecs/components/color/GaugeView.d.ts +12 -12
- package/editor/view/ecs/components/common/AutoCanvasView.d.ts +29 -29
- package/editor/view/ecs/components/common/LineView.d.ts +11 -11
- package/editor/view/ecs/components/common/NumberController.d.ts +17 -17
- package/editor/view/ecs/components/common/TextController.d.ts +20 -20
- package/editor/view/node-graph/NodeGraphCamera.d.ts +47 -47
- package/editor/view/node-graph/NodeGraphEditorView.d.ts +54 -54
- package/editor/view/node-graph/NodeGraphSelection.d.ts +55 -55
- package/editor/view/node-graph/NodeGraphView.d.ts +97 -97
- package/editor/view/node-graph/NodeView.d.ts +25 -25
- package/editor/view/node-graph/PortView.d.ts +22 -22
- package/editor/view/node-graph/actions/ConnectionCreateAction.d.ts +33 -33
- package/editor/view/node-graph/actions/ConnectionDeleteAction.d.ts +25 -25
- package/editor/view/node-graph/actions/NodeDeleteAction.d.ts +46 -46
- package/editor/view/node-graph/actions/NodeParameterSetAction.d.ts +33 -33
- package/editor/view/node-graph/actions/NodesMoveAction.d.ts +37 -37
- package/editor/view/node-graph/actions/SelectionSetAction.d.ts +37 -37
- package/editor/view/node-graph/connection_wire_geometry.d.ts +45 -45
- package/package.json +94 -96
- package/src/avif/codec/dec/avif_dec.d.ts +3 -15
- package/src/avif/codec/enc/avif_enc.d.ts +3 -38
- package/src/avif/codec/enc/avif_enc_mt.d.ts +3 -1
- package/src/avif/decode.d.ts +2 -66
- package/src/avif/decode.d.ts.map +1 -1
- package/src/avif/encode.d.ts +2 -27
- package/src/avif/encode.d.ts.map +1 -1
- package/src/avif/index.d.ts +2 -2
- package/src/avif/index.d.ts.map +1 -1
- package/src/avif/meta.d.ts +23 -39
- package/src/avif/meta.d.ts.map +1 -1
- package/src/avif/utils.d.ts +16 -16
- package/src/avif/utils.d.ts.map +1 -1
- package/src/core/bvh2/visual/BVHGeometry.d.ts +13 -14
- package/src/core/bvh2/visual/BVHGeometry.d.ts.map +1 -1
- package/src/core/bvh2/visual/BVHGeometry.js +131 -129
- package/src/core/collection/array/typed/typed_array_value_denormalize.d.ts.map +1 -1
- package/src/core/collection/array/typed/typed_array_value_denormalize.js +52 -47
- package/src/core/collection/array/typed/typed_array_value_normalize.d.ts.map +1 -1
- package/src/core/collection/array/typed/typed_array_value_normalize.js +51 -46
- package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
- package/src/core/geom/3d/frustum/frustum3_compute_closest_point.d.ts +9 -2
- package/src/core/geom/3d/frustum/frustum3_compute_closest_point.d.ts.map +1 -1
- package/src/core/geom/3d/frustum/frustum3_compute_closest_point.js +117 -110
- package/src/core/geom/3d/mat4/m4_look_at.d.ts +25 -0
- package/src/core/geom/3d/mat4/m4_look_at.d.ts.map +1 -0
- package/src/core/geom/3d/mat4/m4_look_at.js +96 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_x.d.ts +18 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_x.d.ts.map +1 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_x.js +47 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_y.d.ts +18 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_y.d.ts.map +1 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_y.js +47 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_z.d.ts +18 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_z.d.ts.map +1 -0
- package/src/core/geom/3d/mat4/m4_make_rotation_z.js +47 -0
- package/src/core/geom/3d/mat4/m4_perspective.d.ts +25 -0
- package/src/core/geom/3d/mat4/m4_perspective.d.ts.map +1 -0
- package/src/core/geom/3d/mat4/m4_perspective.js +66 -0
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_geometry.d.ts +14 -0
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_geometry.d.ts.map +1 -0
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_geometry.js +39 -0
- package/src/core/geom/3d/triangle/tri3_closest_point_barycentric.d.ts.map +1 -1
- package/src/core/geom/3d/triangle/tri3_closest_point_barycentric.js +171 -166
- package/src/engine/Engine.d.ts.map +1 -1
- package/src/engine/Engine.js +1 -2
- package/src/engine/EngineHarness.d.ts.map +1 -1
- package/src/engine/EngineHarness.js +6 -1
- package/src/engine/animation/clip/ecd_bind_animation_curve.d.ts +0 -1
- package/src/engine/animation/clip/ecd_bind_animation_curve.d.ts.map +1 -1
- package/src/engine/asset/GameAssetType.js +5 -0
- package/src/engine/asset/loaders/async_traverse_three_object.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.d.ts.map +1 -1
- package/src/engine/control/first-person/FirstPersonPlayerControllerSystem.js +2045 -2052
- package/src/engine/ecs/fow/FogOfWarEdgeMode.d.ts +1 -1
- package/src/engine/ecs/fow/FogOfWarEdgeMode.js +40 -40
- package/src/engine/ecs/gui/hud/testHudEdgeStick.js +2 -2
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.d.ts.map +1 -1
- package/src/engine/ecs/storage/populateEngineSerializationRegistry.js +265 -269
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts +1 -15
- package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/Terrain.js +0 -30
- package/src/engine/ecs/terrain/ecs/TerrainSystem.d.ts.map +1 -1
- package/src/engine/ecs/terrain/ecs/TerrainSystem.js +14 -29
- package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/loadVisibleTerrainTiles.js +129 -126
- package/src/engine/ecs/transform/copy_three_transform.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationState.d.ts +2 -2
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationState.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationState.js +207 -207
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationTransition.d.ts +2 -2
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationTransition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationTransition.js +151 -151
- package/src/engine/graphics/ecs/camera/Camera.d.ts +36 -48
- package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/Camera.js +165 -303
- package/src/engine/graphics/ecs/camera/camera_active_frustum.d.ts +14 -0
- package/src/engine/graphics/ecs/camera/camera_active_frustum.d.ts.map +1 -0
- package/src/engine/graphics/ecs/camera/camera_active_frustum.js +25 -0
- package/src/engine/graphics/ecs/camera/camera_find_active.d.ts +16 -0
- package/src/engine/graphics/ecs/camera/camera_find_active.d.ts.map +1 -0
- package/src/engine/graphics/ecs/camera/camera_find_active.js +28 -0
- package/src/engine/graphics/ecs/camera/camera_traverse_active.d.ts +12 -0
- package/src/engine/graphics/ecs/camera/camera_traverse_active.d.ts.map +1 -0
- package/src/engine/graphics/ecs/camera/camera_traverse_active.js +18 -0
- package/src/engine/graphics/ecs/camera/pp/PerfectPanner.js +170 -170
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts +5 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.js +296 -281
- package/src/engine/graphics/ecs/highlight/renderer/traverseThreeObject.d.ts.map +1 -1
- package/src/engine/graphics/ecs/light/shadow/extend_shadow_camera_near_for_casters.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh/copyToVector3.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh/setMesh.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometry.d.ts +22 -13
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometry.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/ShadedGeometry.js +29 -16
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/AbstractRenderAdapter.d.ts +1 -1
- package/src/engine/graphics/ecs/mesh-v2/render/adapters/AbstractRenderAdapter.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/three_object_to_entity_composition.d.ts.map +1 -1
- package/src/engine/graphics/ecs/render_layers_compute_depth_range.d.ts +1 -1
- package/src/engine/graphics/ecs/render_layers_compute_depth_range.js +1 -1
- package/src/engine/graphics/ecs/water/Water.d.ts +6 -19
- package/src/engine/graphics/ecs/water/Water.d.ts.map +1 -1
- package/src/engine/graphics/ecs/water/Water.js +104 -215
- package/src/engine/graphics/geometry/AttributeData.d.ts +52 -0
- package/src/engine/graphics/geometry/AttributeData.d.ts.map +1 -0
- package/src/engine/graphics/geometry/AttributeData.js +84 -0
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/computeGeometryEquality.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/computeGeometryHash.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/compute_buffer_geometry_byte_size.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/geometry_compute_vertex_normals_indexed.d.ts +5 -1
- package/src/engine/graphics/geometry/buffered/geometry_compute_vertex_normals_indexed.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/geometry_compute_vertex_normals_indexed.js +49 -45
- package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts +36 -24
- package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.d.ts.map +1 -1
- package/src/engine/graphics/geometry/buffered/query/GeometrySpatialQueryAccelerator.js +288 -288
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_buffered_geometry.d.ts +19 -0
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_buffered_geometry.d.ts.map +1 -0
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_buffered_geometry.js +52 -0
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_indexed_geometry.d.ts +1 -0
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_indexed_geometry.d.ts.map +1 -1
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_indexed_geometry.js +20 -32
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_unindexed_geometry.d.ts +1 -0
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_unindexed_geometry.d.ts.map +1 -1
- package/src/engine/graphics/geometry/bvh/buffered/bvh32_from_unindexed_geometry.js +19 -30
- package/src/engine/graphics/geometry/compute_geometry_polycount.d.ts.map +1 -1
- package/src/engine/graphics/impostors/card_cluster/FacePlaneAssignment.d.ts.map +1 -1
- package/src/engine/graphics/impostors/octahedral/ImpostorDescription.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/ParticularEngine.d.ts +1 -14
- package/src/engine/graphics/particles/particular/engine/ParticularEngine.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/ParticularEngine.js +229 -253
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts +25 -12
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticleEmitter.js +1149 -1194
- package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts +4 -8
- package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.js +472 -540
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.d.ts +19 -90
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.d.ts.map +1 -1
- package/src/engine/graphics/particles/particular/engine/shader/ShaderManager.js +135 -514
- package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
- package/src/engine/graphics/render/layers/RenderLayer.js +95 -95
- package/src/engine/graphics/sh3/fromCubeRenderTarget.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.d.ts +77 -0
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/BufferedGeometryBVH.js +507 -0
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts +2 -2
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/PathTracedMesh.js +161 -161
- package/src/engine/graphics/sh3/path_tracer/PathTracedRenderer.d.ts +6 -6
- package/src/engine/graphics/sh3/path_tracer/PathTracedRenderer.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/PathTracedRenderer.js +31 -12
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts +113 -0
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.d.ts.map +1 -0
- package/src/engine/graphics/sh3/path_tracer/PathTracedScene.js +699 -0
- package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.d.ts +10 -0
- package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/populate_path_traced_scene_from_ecd.js +73 -63
- package/src/engine/graphics/sh3/path_tracer/texture/sample_material.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/texture/sample_material.js +10 -13
- package/src/engine/graphics/shadows/vsm.glsl.d.ts.map +1 -1
- package/src/engine/graphics/shadows/vsm.glsl.js +43 -41
- package/src/engine/graphics/texture/computeThreeTextureInternalFormatFromDataType.d.ts.map +1 -1
- package/src/engine/graphics3/CameraSystem3.d.ts.map +1 -1
- package/src/engine/graphics3/CameraSystem3.js +10 -1
- package/src/engine/graphics3/GraphicsEngine3.d.ts +3 -3
- package/src/engine/graphics3/GraphicsEngine3.js +3 -3
- package/src/engine/graphics3/ParticleEmitterSystem3.d.ts +11 -0
- package/src/engine/graphics3/ParticleEmitterSystem3.d.ts.map +1 -1
- package/src/engine/graphics3/ParticleEmitterSystem3.js +289 -265
- package/src/engine/graphics3/ShadeCameraAdapter.d.ts +3 -3
- package/src/engine/graphics3/ShadeCameraAdapter.js +3 -3
- package/src/engine/graphics3/WaterSystem3.js +1 -1
- package/src/engine/graphics3/camera_sync_from_transform.d.ts +2 -2
- package/src/engine/graphics3/camera_sync_from_transform.js +2 -2
- package/src/engine/graphics3/shade_camera_projection_ray.js +2 -2
- package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts +2 -2
- package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts.map +1 -1
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
- package/src/shade/renderer/camera/Camera.d.ts +3 -5
- package/src/shade/renderer/camera/Camera.d.ts.map +1 -1
- package/src/shade/renderer/camera/Camera.js +281 -280
- package/src/shade/renderer/camera/GPUCameraContext.js +233 -233
- package/src/shade/renderer/geometry/Geometry.d.ts.map +1 -1
- package/src/shade/renderer/geometry/Geometry.js +6 -5
- package/src/shade/renderer/geometry/primitives/make_box_geometry.d.ts.map +1 -1
- package/src/shade/renderer/geometry/primitives/make_box_geometry.js +6 -1
- package/src/shade/renderer/geometry/primitives/make_cylinder_geometry.d.ts +19 -0
- package/src/shade/renderer/geometry/primitives/make_cylinder_geometry.d.ts.map +1 -0
- package/src/shade/renderer/geometry/primitives/make_cylinder_geometry.js +240 -0
- package/src/shade/renderer/geometry/primitives/make_plane_geometry.d.ts.map +1 -1
- package/src/shade/renderer/geometry/primitives/make_plane_geometry.js +6 -1
- package/src/shade/renderer/geometry/primitives/make_polyhedron_geometry.d.ts.map +1 -1
- package/src/shade/renderer/geometry/primitives/make_polyhedron_geometry.js +327 -322
- package/src/shade/renderer/geometry/primitives/make_torus_geometry.d.ts +13 -0
- package/src/shade/renderer/geometry/primitives/make_torus_geometry.d.ts.map +1 -0
- package/src/shade/renderer/geometry/primitives/make_torus_geometry.js +107 -0
- package/src/shade/renderer/geometry/primitives/make_torus_knot_geometry.d.ts +15 -0
- package/src/shade/renderer/geometry/primitives/make_torus_knot_geometry.d.ts.map +1 -0
- package/src/shade/renderer/geometry/primitives/make_torus_knot_geometry.js +165 -0
- package/src/shade/renderer/loader/usd/parse_usda.js +1 -1
- package/src/shade/renderer/loader/usd/usd_build_scene.d.ts.map +1 -1
- package/src/shade/renderer/loader/usd/usd_build_scene.js +658 -652
- package/src/shade/renderer/loader/usd/usd_compose_transform.d.ts.map +1 -1
- package/src/shade/renderer/loader/usd/usd_compose_transform.js +58 -23
- package/src/shade/renderer/particles/prototypeParticleSystem.js +450 -443
- package/src/shade/renderer/postprocess/gtao/generate_magic_square_noise.d.ts +5 -1
- package/src/shade/renderer/postprocess/gtao/generate_magic_square_noise.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/gtao/generate_magic_square_noise.js +51 -47
- package/src/shade/renderer/postprocess/nss/NSS.d.ts +1 -1
- package/src/shade/renderer/shader/chunk/texture/chunk_texture_filter_fxaa_lite.d.ts +2 -0
- package/src/shade/renderer/shader/chunk/texture/chunk_texture_filter_fxaa_lite.d.ts.map +1 -1
- package/src/shade/renderer/shader/chunk/texture/chunk_texture_filter_fxaa_lite.js +225 -223
- package/src/shade/renderer/shadow/map/DirectionalLightShadowmap.d.ts.map +1 -1
- package/src/shade/renderer/shadow/map/DirectionalLightShadowmap.js +7 -3
- package/src/view/minimap/dom/MinimapCameraView.d.ts +2 -2
- package/src/view/minimap/dom/MinimapCameraView.js +206 -206
- package/editor/Editor.d.ts +0 -162
- package/editor/Editor.d.ts.map +0 -1
- package/editor/EditorCameraNavigation.d.ts +0 -21
- package/editor/EditorCameraNavigation.d.ts.map +0 -1
- package/editor/EditorKeyMap.d.ts +0 -28
- package/editor/EditorKeyMap.d.ts.map +0 -1
- package/editor/SelectionVisualizer.d.ts +0 -49
- package/editor/SelectionVisualizer.d.ts.map +0 -1
- package/editor/actions/concrete/ActionUpdateTexture.d.ts +0 -12
- package/editor/actions/concrete/ActionUpdateTexture.d.ts.map +0 -1
- package/editor/actions/concrete/ArrayCopyAction.d.ts +0 -20
- package/editor/actions/concrete/ArrayCopyAction.d.ts.map +0 -1
- package/editor/actions/concrete/ComponentAddAction.d.ts +0 -15
- package/editor/actions/concrete/ComponentAddAction.d.ts.map +0 -1
- package/editor/actions/concrete/ComponentRemoveAction.d.ts +0 -11
- package/editor/actions/concrete/ComponentRemoveAction.d.ts.map +0 -1
- package/editor/actions/concrete/EntityCreateAction.d.ts +0 -18
- package/editor/actions/concrete/EntityCreateAction.d.ts.map +0 -1
- package/editor/actions/concrete/EntityRemoveAction.d.ts +0 -11
- package/editor/actions/concrete/EntityRemoveAction.d.ts.map +0 -1
- package/editor/actions/concrete/ModifyPatchSampler2DAction.d.ts +0 -47
- package/editor/actions/concrete/ModifyPatchSampler2DAction.d.ts.map +0 -1
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.d.ts +0 -38
- package/editor/actions/concrete/ModifyPatchTextureArray2DAction.d.ts.map +0 -1
- package/editor/actions/concrete/PaintTerrainOverlayAction.d.ts +0 -23
- package/editor/actions/concrete/PaintTerrainOverlayAction.d.ts.map +0 -1
- package/editor/actions/concrete/PatchTerrainHeightAction.d.ts +0 -32
- package/editor/actions/concrete/PatchTerrainHeightAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionAddAction.d.ts +0 -19
- package/editor/actions/concrete/SelectionAddAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionClearAction.d.ts +0 -9
- package/editor/actions/concrete/SelectionClearAction.d.ts.map +0 -1
- package/editor/actions/concrete/SelectionRemoveAction.d.ts +0 -10
- package/editor/actions/concrete/SelectionRemoveAction.d.ts.map +0 -1
- package/editor/actions/concrete/TransformModifyAction.d.ts +0 -17
- package/editor/actions/concrete/TransformModifyAction.d.ts.map +0 -1
- package/editor/actions/concrete/WriteGridValueAction.d.ts +0 -14
- package/editor/actions/concrete/WriteGridValueAction.d.ts.map +0 -1
- package/editor/camera/camera_framing.d.ts +0 -30
- package/editor/camera/camera_framing.d.ts.map +0 -1
- package/editor/clipboard.d.ts +0 -19
- package/editor/clipboard.d.ts.map +0 -1
- package/editor/ecs/EditorEntity.d.ts +0 -16
- package/editor/ecs/EditorEntity.d.ts.map +0 -1
- package/editor/ecs/EditorEntitySystem.d.ts +0 -8
- package/editor/ecs/EditorEntitySystem.d.ts.map +0 -1
- package/editor/ecs/component/editors/ColorEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ColorEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/HTMLElementEditor.d.ts +0 -7
- package/editor/ecs/component/editors/HTMLElementEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ImagePathEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ImagePathEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/LargeStringEditor.d.ts +0 -16
- package/editor/ecs/component/editors/LargeStringEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/NumericIntervalEditor.d.ts +0 -7
- package/editor/ecs/component/editors/NumericIntervalEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ObservedBooleanEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ObservedBooleanEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ObservedEnumEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ObservedEnumEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ObservedIntegerEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ObservedIntegerEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ObservedStringEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ObservedStringEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/Sampler2DEditor.d.ts +0 -7
- package/editor/ecs/component/editors/Sampler2DEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/collection/ListEditor.d.ts +0 -8
- package/editor/ecs/component/editors/collection/ListEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/common/BitFlagsEditor.d.ts +0 -12
- package/editor/ecs/component/editors/common/BitFlagsEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/common/EnumEditor.d.ts +0 -8
- package/editor/ecs/component/editors/common/EnumEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/common/makeV3_editor.d.ts +0 -15
- package/editor/ecs/component/editors/common/makeV3_editor.d.ts.map +0 -1
- package/editor/ecs/component/editors/common/noEditor.d.ts +0 -3
- package/editor/ecs/component/editors/common/noEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/common/two_way_sync.d.ts +0 -22
- package/editor/ecs/component/editors/common/two_way_sync.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/GridObstacleEditor.d.ts +0 -7
- package/editor/ecs/component/editors/ecs/GridObstacleEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/ParameterLookupTableEditor.d.ts +0 -20
- package/editor/ecs/component/editors/ecs/ParameterLookupTableEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/ParameterTrackEditor.d.ts +0 -12
- package/editor/ecs/component/editors/ecs/ParameterTrackEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/ParameterTrackSetEditor.d.ts +0 -14
- package/editor/ecs/component/editors/ecs/ParameterTrackSetEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/ParticleEmitterEditor.d.ts +0 -52
- package/editor/ecs/component/editors/ecs/ParticleEmitterEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/ParticleEmitterLayerEditor.d.ts +0 -47
- package/editor/ecs/component/editors/ecs/ParticleEmitterLayerEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/SimulationStepDefinitionEditor.d.ts +0 -16
- package/editor/ecs/component/editors/ecs/SimulationStepDefinitionEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/Trail2DEditor.d.ts +0 -30
- package/editor/ecs/component/editors/ecs/Trail2DEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/Trail3DEditor.d.ts +0 -42
- package/editor/ecs/component/editors/ecs/Trail3DEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/TransformEditor.d.ts +0 -20
- package/editor/ecs/component/editors/ecs/TransformEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/buildGridObstaclePreview.d.ts +0 -8
- package/editor/ecs/component/editors/ecs/buildGridObstaclePreview.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/terrain/SplatMappingEditor.d.ts +0 -19
- package/editor/ecs/component/editors/ecs/terrain/SplatMappingEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/terrain/TerrainEditor.d.ts +0 -39
- package/editor/ecs/component/editors/ecs/terrain/TerrainEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayerEditor.d.ts +0 -16
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayerEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayersEditor.d.ts +0 -19
- package/editor/ecs/component/editors/ecs/terrain/TerrainLayersEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/ecs/terrain/TerrainOverlayEditor.d.ts +0 -18
- package/editor/ecs/component/editors/ecs/terrain/TerrainOverlayEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/geom/QuaternionEditor.d.ts +0 -6
- package/editor/ecs/component/editors/geom/QuaternionEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/geom/Vector1Editor.d.ts +0 -7
- package/editor/ecs/component/editors/geom/Vector1Editor.d.ts.map +0 -1
- package/editor/ecs/component/editors/geom/Vector2Editor.d.ts +0 -6
- package/editor/ecs/component/editors/geom/Vector2Editor.d.ts.map +0 -1
- package/editor/ecs/component/editors/geom/Vector3Editor.d.ts +0 -6
- package/editor/ecs/component/editors/geom/Vector3Editor.d.ts.map +0 -1
- package/editor/ecs/component/editors/geom/Vector4Editor.d.ts +0 -6
- package/editor/ecs/component/editors/geom/Vector4Editor.d.ts.map +0 -1
- package/editor/ecs/component/editors/primitive/ArrayEditor.d.ts +0 -8
- package/editor/ecs/component/editors/primitive/ArrayEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/primitive/BooleanEditor.d.ts +0 -7
- package/editor/ecs/component/editors/primitive/BooleanEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/primitive/FunctionEditor.d.ts +0 -7
- package/editor/ecs/component/editors/primitive/FunctionEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/primitive/NumberEditor.d.ts +0 -8
- package/editor/ecs/component/editors/primitive/NumberEditor.d.ts.map +0 -1
- package/editor/ecs/component/editors/primitive/StringEditor.d.ts +0 -7
- package/editor/ecs/component/editors/primitive/StringEditor.d.ts.map +0 -1
- package/editor/ecs/component/registerEngineComponentEditors.d.ts +0 -8
- package/editor/ecs/component/registerEngineComponentEditors.d.ts.map +0 -1
- package/editor/enableEditor.d.ts +0 -14
- package/editor/enableEditor.d.ts.map +0 -1
- package/editor/library/MeshLibrary.d.ts +0 -13
- package/editor/library/MeshLibrary.d.ts.map +0 -1
- package/editor/particles/lut_ops.d.ts +0 -34
- package/editor/particles/lut_ops.d.ts.map +0 -1
- package/editor/particles/particleEditEvents.d.ts +0 -11
- package/editor/particles/particleEditEvents.d.ts.map +0 -1
- package/editor/particles/rebuildParticleEmitter.d.ts +0 -11
- package/editor/particles/rebuildParticleEmitter.d.ts.map +0 -1
- package/editor/persistence/EditorLayoutStore.d.ts +0 -30
- package/editor/persistence/EditorLayoutStore.d.ts.map +0 -1
- package/editor/persistence/SceneMetadata.d.ts +0 -38
- package/editor/persistence/SceneMetadata.d.ts.map +0 -1
- package/editor/persistence/SceneSlotManager.d.ts +0 -40
- package/editor/persistence/SceneSlotManager.d.ts.map +0 -1
- package/editor/persistence/buildNewSceneDataset.d.ts +0 -10
- package/editor/persistence/buildNewSceneDataset.d.ts.map +0 -1
- package/editor/persistence/files.d.ts +0 -24
- package/editor/persistence/files.d.ts.map +0 -1
- package/editor/persistence/scene_import.d.ts +0 -45
- package/editor/persistence/scene_import.d.ts.map +0 -1
- package/editor/persistence/scene_serialization.d.ts +0 -36
- package/editor/persistence/scene_serialization.d.ts.map +0 -1
- package/editor/persistence/string_buffer_codec.d.ts +0 -20
- package/editor/persistence/string_buffer_codec.d.ts.map +0 -1
- package/editor/process/DisableGameUIProcess.d.ts +0 -8
- package/editor/process/DisableGameUIProcess.d.ts.map +0 -1
- package/editor/process/EditorProcess.d.ts +0 -19
- package/editor/process/EditorProcess.d.ts.map +0 -1
- package/editor/process/GridDisplayProcess.d.ts +0 -16
- package/editor/process/GridDisplayProcess.d.ts.map +0 -1
- package/editor/process/ObstacleGridDisplayProcess.d.ts +0 -13
- package/editor/process/ObstacleGridDisplayProcess.d.ts.map +0 -1
- package/editor/process/ParticleEmitterRebuildProcess.d.ts +0 -66
- package/editor/process/ParticleEmitterRebuildProcess.d.ts.map +0 -1
- package/editor/process/ProcessEngine.d.ts +0 -30
- package/editor/process/ProcessEngine.d.ts.map +0 -1
- package/editor/process/SymbolicDisplayProcess.d.ts +0 -19
- package/editor/process/SymbolicDisplayProcess.d.ts.map +0 -1
- package/editor/process/symbolic/ComponentSymbolicDisplay.d.ts +0 -11
- package/editor/process/symbolic/ComponentSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/SymbolicDisplayInternalAPI.d.ts +0 -68
- package/editor/process/symbolic/SymbolicDisplayInternalAPI.d.ts.map +0 -1
- package/editor/process/symbolic/buildThreeJSHelperEntity.d.ts +0 -9
- package/editor/process/symbolic/buildThreeJSHelperEntity.d.ts.map +0 -1
- package/editor/process/symbolic/make3DSymbolicDisplay.d.ts +0 -10
- package/editor/process/symbolic/make3DSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makeCameraSymbolicDisplay.d.ts +0 -7
- package/editor/process/symbolic/makeCameraSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makeGridPositionSymbolDisplay.d.ts +0 -6
- package/editor/process/symbolic/makeGridPositionSymbolDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makeHelperBoxGeometry.d.ts +0 -3
- package/editor/process/symbolic/makeHelperBoxGeometry.d.ts.map +0 -1
- package/editor/process/symbolic/makeHelperBoxGeometry.js +0 -44
- package/editor/process/symbolic/makeHelperSphereGeometry.d.ts +0 -9
- package/editor/process/symbolic/makeHelperSphereGeometry.d.ts.map +0 -1
- package/editor/process/symbolic/makeHelperSphereGeometry.js +0 -73
- package/editor/process/symbolic/makeLightSymbolicDisplay.d.ts +0 -7
- package/editor/process/symbolic/makeLightSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makeParticleEmitterSymbolicDisplay.d.ts +0 -6
- package/editor/process/symbolic/makeParticleEmitterSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makePathSymbolicDisplay.d.ts +0 -7
- package/editor/process/symbolic/makePathSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makePositionedIconDisplaySymbol.d.ts +0 -9
- package/editor/process/symbolic/makePositionedIconDisplaySymbol.d.ts.map +0 -1
- package/editor/process/symbolic/makeSocketsSymbolicDisplay.d.ts +0 -7
- package/editor/process/symbolic/makeSocketsSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/makeSolidArrowGeometry.d.ts +0 -26
- package/editor/process/symbolic/makeSolidArrowGeometry.d.ts.map +0 -1
- package/editor/process/symbolic/makeSoundEmitterSymbolicDisplay.d.ts +0 -6
- package/editor/process/symbolic/makeSoundEmitterSymbolicDisplay.d.ts.map +0 -1
- package/editor/process/symbolic/synchronizeTransform.d.ts +0 -12
- package/editor/process/symbolic/synchronizeTransform.d.ts.map +0 -1
- package/editor/templates/entity_templates.d.ts +0 -19
- package/editor/templates/entity_templates.d.ts.map +0 -1
- package/editor/tools/GridPaintTool.d.ts +0 -18
- package/editor/tools/GridPaintTool.d.ts.map +0 -1
- package/editor/tools/SelectionTool.d.ts +0 -26
- package/editor/tools/SelectionTool.d.ts.map +0 -1
- package/editor/tools/engine/Tool.d.ts +0 -88
- package/editor/tools/engine/Tool.d.ts.map +0 -1
- package/editor/tools/engine/ToolEngine.d.ts +0 -22
- package/editor/tools/engine/ToolEngine.d.ts.map +0 -1
- package/editor/tools/engine/ToolState.d.ts +0 -7
- package/editor/tools/engine/ToolState.d.ts.map +0 -1
- package/editor/tools/paint/TerrainHeightPaintTool.d.ts +0 -18
- package/editor/tools/paint/TerrainHeightPaintTool.d.ts.map +0 -1
- package/editor/tools/paint/TerrainPaintTool.d.ts +0 -82
- package/editor/tools/paint/TerrainPaintTool.d.ts.map +0 -1
- package/editor/tools/paint/TerrainTexturePaintTool.d.ts +0 -19
- package/editor/tools/paint/TerrainTexturePaintTool.d.ts.map +0 -1
- package/editor/view/ecs/ComponentControlView.d.ts +0 -24
- package/editor/view/ecs/ComponentControlView.d.ts.map +0 -1
- package/editor/view/ecs/EntityEditor.d.ts +0 -25
- package/editor/view/ecs/EntityEditor.d.ts.map +0 -1
- package/editor/view/ecs/HierarchicalEntityListView.d.ts +0 -25
- package/editor/view/ecs/HierarchicalEntityListView.d.ts.map +0 -1
- package/editor/view/library/MeshLibraryView.d.ts +0 -17
- package/editor/view/library/MeshLibraryView.d.ts.map +0 -1
- package/editor/view/particles/ColorLutGradientView.d.ts +0 -19
- package/editor/view/particles/ColorLutGradientView.d.ts.map +0 -1
- package/editor/view/particles/ScalarLutCurveView.d.ts +0 -19
- package/editor/view/particles/ScalarLutCurveView.d.ts.map +0 -1
- package/editor/view/prepareMeshLibrary.d.ts +0 -7
- package/editor/view/prepareMeshLibrary.d.ts.map +0 -1
- package/editor/view/shell/EditorShellView.d.ts +0 -18
- package/editor/view/shell/EditorShellView.d.ts.map +0 -1
- package/editor/view/shell/SceneTreePanelView.d.ts +0 -17
- package/editor/view/shell/SceneTreePanelView.d.ts.map +0 -1
- package/editor/view/shell/ViewportPanelView.d.ts +0 -18
- package/editor/view/shell/ViewportPanelView.d.ts.map +0 -1
- package/editor/view/tools/ToolSettingsView.d.ts +0 -22
- package/editor/view/tools/ToolSettingsView.d.ts.map +0 -1
- package/editor/view/tools/ToolView.d.ts +0 -13
- package/editor/view/tools/ToolView.d.ts.map +0 -1
- package/samples/generation/grid/GridTags.d.ts +0 -16
- package/samples/generation/grid/GridTags.d.ts.map +0 -1
- package/samples/generation/grid/MirGridLayers.d.ts +0 -8
- package/samples/generation/grid/MirGridLayers.d.ts.map +0 -1
- package/samples/generation/rules/matcher_tag_occupied.d.ts +0 -3
- package/samples/generation/rules/matcher_tag_occupied.d.ts.map +0 -1
- package/samples/generation/rules/matcher_tag_traversable.d.ts +0 -3
- package/samples/generation/rules/matcher_tag_traversable.d.ts.map +0 -1
- package/samples/generation/rules/matcher_tag_unoccupied.d.ts +0 -3
- package/samples/generation/rules/matcher_tag_unoccupied.d.ts.map +0 -1
- package/samples/terrain/main.js +0 -115
- package/src/avif/emscripten-types.d.ts +0 -137
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_buffer_geometry.d.ts +0 -10
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_buffer_geometry.d.ts.map +0 -1
- package/src/core/geom/3d/tetrahedra/graphics/build_tetrahedral_mesh_buffer_geometry.js +0 -25
- package/src/core/geom/3d/topology/three/bt_mesh_from_three_buffer_geometry.d.ts +0 -20
- package/src/core/geom/3d/topology/three/bt_mesh_from_three_buffer_geometry.d.ts.map +0 -1
- package/src/core/geom/3d/topology/three/bt_mesh_from_three_buffer_geometry.js +0 -38
- package/src/core/geom/3d/topology/three/bt_mesh_to_three_buffer_geometry.d.ts +0 -22
- package/src/core/geom/3d/topology/three/bt_mesh_to_three_buffer_geometry.d.ts.map +0 -1
- package/src/core/geom/3d/topology/three/bt_mesh_to_three_buffer_geometry.js +0 -50
- package/src/engine/asset/loaders/material/StaticMaterialCache.d.ts +0 -31
- package/src/engine/asset/loaders/material/StaticMaterialCache.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/StaticMaterialCache.js +0 -82
- package/src/engine/asset/loaders/material/TextureAttachmensByMaterialType.d.ts +0 -6
- package/src/engine/asset/loaders/material/TextureAttachmensByMaterialType.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/TextureAttachmensByMaterialType.js +0 -136
- package/src/engine/asset/loaders/material/TextureAttachment.d.ts +0 -23
- package/src/engine/asset/loaders/material/TextureAttachment.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/TextureAttachment.js +0 -25
- package/src/engine/asset/loaders/material/TextureCoalescer.d.ts +0 -32
- package/src/engine/asset/loaders/material/TextureCoalescer.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/TextureCoalescer.js +0 -68
- package/src/engine/asset/loaders/material/bitmap2sampler_gl.d.ts +0 -8
- package/src/engine/asset/loaders/material/bitmap2sampler_gl.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/bitmap2sampler_gl.js +0 -25
- package/src/engine/asset/loaders/material/computeHashColor.d.ts +0 -6
- package/src/engine/asset/loaders/material/computeHashColor.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeHashColor.js +0 -7
- package/src/engine/asset/loaders/material/computeImageBitmapEquality.d.ts +0 -15
- package/src/engine/asset/loaders/material/computeImageBitmapEquality.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeImageBitmapEquality.js +0 -118
- package/src/engine/asset/loaders/material/computeImageBitmapHash.d.ts +0 -7
- package/src/engine/asset/loaders/material/computeImageBitmapHash.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeImageBitmapHash.js +0 -41
- package/src/engine/asset/loaders/material/computeMaterialEquality.d.ts +0 -8
- package/src/engine/asset/loaders/material/computeMaterialEquality.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeMaterialEquality.js +0 -131
- package/src/engine/asset/loaders/material/computeMaterialHash.d.ts +0 -7
- package/src/engine/asset/loaders/material/computeMaterialHash.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeMaterialHash.js +0 -72
- package/src/engine/asset/loaders/material/computeTextureEquality.d.ts +0 -21
- package/src/engine/asset/loaders/material/computeTextureEquality.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeTextureEquality.js +0 -221
- package/src/engine/asset/loaders/material/computeTextureEqualityById.d.ts +0 -8
- package/src/engine/asset/loaders/material/computeTextureEqualityById.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeTextureEqualityById.js +0 -22
- package/src/engine/asset/loaders/material/computeTextureHash.d.ts +0 -17
- package/src/engine/asset/loaders/material/computeTextureHash.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/computeTextureHash.js +0 -167
- package/src/engine/asset/loaders/material/planeHash.d.ts +0 -7
- package/src/engine/asset/loaders/material/planeHash.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/planeHash.js +0 -10
- package/src/engine/asset/loaders/material/planesEqual.d.ts +0 -8
- package/src/engine/asset/loaders/material/planesEqual.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/planesEqual.js +0 -9
- package/src/engine/asset/loaders/material/textureHashById.d.ts +0 -7
- package/src/engine/asset/loaders/material/textureHashById.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/textureHashById.js +0 -12
- package/src/engine/asset/loaders/material/traverseMaterialTextures.d.ts +0 -16
- package/src/engine/asset/loaders/material/traverseMaterialTextures.d.ts.map +0 -1
- package/src/engine/asset/loaders/material/traverseMaterialTextures.js +0 -45
- package/src/engine/asset/loaders/texture/TextureAssetLoader.d.ts +0 -6
- package/src/engine/asset/loaders/texture/TextureAssetLoader.d.ts.map +0 -1
- package/src/engine/asset/loaders/texture/TextureAssetLoader.js +0 -42
- package/src/engine/asset/loaders/texture/cloneTexture.d.ts +0 -7
- package/src/engine/asset/loaders/texture/cloneTexture.d.ts.map +0 -1
- package/src/engine/asset/loaders/texture/cloneTexture.js +0 -13
- package/src/engine/asset/loaders/texture/loadStandardImageTexture.d.ts +0 -8
- package/src/engine/asset/loaders/texture/loadStandardImageTexture.d.ts.map +0 -1
- package/src/engine/asset/loaders/texture/loadStandardImageTexture.js +0 -38
- package/src/engine/ecs/animation/AnimationOptimizer.d.ts +0 -15
- package/src/engine/ecs/animation/AnimationOptimizer.d.ts.map +0 -1
- package/src/engine/ecs/animation/AnimationOptimizer.js +0 -132
- package/src/engine/ecs/fow/shader/screenSpaceFogOfWarShader.d.ts +0 -7
- package/src/engine/ecs/fow/shader/screenSpaceFogOfWarShader.d.ts.map +0 -1
- package/src/engine/ecs/fow/shader/screenSpaceFogOfWarShader.js +0 -217
- package/src/engine/graphics/context/WebGLContextFailureReason.d.ts +0 -9
- package/src/engine/graphics/context/WebGLContextFailureReason.d.ts.map +0 -1
- package/src/engine/graphics/context/WebGLContextFailureReason.js +0 -17
- package/src/engine/graphics/context/WebGLContextMonitor.d.ts +0 -106
- package/src/engine/graphics/context/WebGLContextMonitor.d.ts.map +0 -1
- package/src/engine/graphics/context/WebGLContextMonitor.js +0 -341
- package/src/engine/graphics/context/WebGLContextState.d.ts +0 -14
- package/src/engine/graphics/context/WebGLContextState.d.ts.map +0 -1
- package/src/engine/graphics/context/WebGLContextState.js +0 -24
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraph.d.ts +0 -231
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraph.d.ts.map +0 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraph.js +0 -813
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraphSerializationAdapter.d.ts +0 -25
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraphSerializationAdapter.d.ts.map +0 -1
- package/src/engine/graphics/ecs/animation/animator/graph/AnimationGraphSerializationAdapter.js +0 -62
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts +0 -74
- package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/CameraSystem.js +0 -331
- package/src/engine/graphics/ecs/camera/auto_set_camera_clipping_planes.d.ts +0 -10
- package/src/engine/graphics/ecs/camera/auto_set_camera_clipping_planes.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/auto_set_camera_clipping_planes.js +0 -105
- package/src/engine/graphics/ecs/camera/build_three_camera_object.d.ts +0 -7
- package/src/engine/graphics/ecs/camera/build_three_camera_object.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/build_three_camera_object.js +0 -29
- package/src/engine/graphics/ecs/camera/frustum_from_camera.d.ts +0 -8
- package/src/engine/graphics/ecs/camera/frustum_from_camera.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/frustum_from_camera.js +0 -20
- package/src/engine/graphics/ecs/camera/set_camera_aspect_ratio.d.ts +0 -9
- package/src/engine/graphics/ecs/camera/set_camera_aspect_ratio.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/set_camera_aspect_ratio.js +0 -46
- package/src/engine/graphics/ecs/camera/unprojectPoint.d.ts +0 -9
- package/src/engine/graphics/ecs/camera/unprojectPoint.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/unprojectPoint.js +0 -14
- package/src/engine/graphics/ecs/camera/update_camera_transform.d.ts +0 -6
- package/src/engine/graphics/ecs/camera/update_camera_transform.d.ts.map +0 -1
- package/src/engine/graphics/ecs/camera/update_camera_transform.js +0 -17
- package/src/engine/graphics/geometry/buffered/buffer_attribute_deinterleave.d.ts +0 -8
- package/src/engine/graphics/geometry/buffered/buffer_attribute_deinterleave.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/buffer_attribute_deinterleave.js +0 -41
- package/src/engine/graphics/geometry/buffered/buffer_attribute_denormalize.d.ts +0 -8
- package/src/engine/graphics/geometry/buffered/buffer_attribute_denormalize.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/buffer_attribute_denormalize.js +0 -66
- package/src/engine/graphics/impostors/octahedral/bake/prepare_bake_material.d.ts +0 -9
- package/src/engine/graphics/impostors/octahedral/bake/prepare_bake_material.d.ts.map +0 -1
- package/src/engine/graphics/impostors/octahedral/bake/prepare_bake_material.js +0 -114
- package/src/engine/graphics/material/composeCompile.d.ts +0 -8
- package/src/engine/graphics/material/composeCompile.d.ts.map +0 -1
- package/src/engine/graphics/material/composeCompile.js +0 -37
- package/src/engine/graphics/material/manager/AbstractMaterialTransformer.d.ts +0 -9
- package/src/engine/graphics/material/manager/AbstractMaterialTransformer.d.ts.map +0 -1
- package/src/engine/graphics/material/manager/AbstractMaterialTransformer.js +0 -10
- package/src/engine/graphics/material/manager/ManagedMaterial.d.ts +0 -46
- package/src/engine/graphics/material/manager/ManagedMaterial.d.ts.map +0 -1
- package/src/engine/graphics/material/manager/ManagedMaterial.js +0 -78
- package/src/engine/graphics/material/manager/MaterialManager.d.ts +0 -82
- package/src/engine/graphics/material/manager/MaterialManager.d.ts.map +0 -1
- package/src/engine/graphics/material/manager/MaterialManager.js +0 -215
- package/src/engine/graphics/material/manager/compilers/CoalesceTextures.d.ts +0 -11
- package/src/engine/graphics/material/manager/compilers/CoalesceTextures.d.ts.map +0 -1
- package/src/engine/graphics/material/manager/compilers/CoalesceTextures.js +0 -25
- package/src/engine/graphics/material/optimization/BUFFER_GEOMETRY_UVS.d.ts +0 -5
- package/src/engine/graphics/material/optimization/BUFFER_GEOMETRY_UVS.d.ts.map +0 -1
- package/src/engine/graphics/material/optimization/BUFFER_GEOMETRY_UVS.js +0 -10
- package/src/engine/graphics/material/optimization/MaterialDescriptor.d.ts +0 -15
- package/src/engine/graphics/material/optimization/MaterialDescriptor.d.ts.map +0 -1
- package/src/engine/graphics/material/optimization/MaterialDescriptor.js +0 -43
- package/src/engine/graphics/material/optimization/UvContext.d.ts +0 -14
- package/src/engine/graphics/material/optimization/UvContext.d.ts.map +0 -1
- package/src/engine/graphics/material/optimization/UvContext.js +0 -16
- package/src/engine/graphics/material/optimization/is_compliant_mesh.d.ts +0 -7
- package/src/engine/graphics/material/optimization/is_compliant_mesh.d.ts.map +0 -1
- package/src/engine/graphics/material/optimization/is_compliant_mesh.js +0 -71
- package/src/engine/graphics/particles/ecs/ParticleEmitterSystem.d.ts +0 -67
- package/src/engine/graphics/particles/ecs/ParticleEmitterSystem.d.ts.map +0 -1
- package/src/engine/graphics/particles/ecs/ParticleEmitterSystem.js +0 -291
- package/src/engine/graphics/particles/particular/engine/renderers/billboard/ParticleBillboardMaterial.d.ts +0 -11
- package/src/engine/graphics/particles/particular/engine/renderers/billboard/ParticleBillboardMaterial.d.ts.map +0 -1
- package/src/engine/graphics/particles/particular/engine/renderers/billboard/ParticleBillboardMaterial.js +0 -497
- package/src/engine/graphics/particles/particular/engine/shader/MaterialRecord.d.ts +0 -40
- package/src/engine/graphics/particles/particular/engine/shader/MaterialRecord.d.ts.map +0 -1
- package/src/engine/graphics/particles/particular/engine/shader/MaterialRecord.js +0 -47
- package/src/engine/graphics/sh3/path_tracer/prepare_scene_gltf.d.ts +0 -21
- package/src/engine/graphics/sh3/path_tracer/prepare_scene_gltf.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/prepare_scene_gltf.js +0 -109
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.d.ts +0 -7
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.d.ts.map +0 -1
- package/src/engine/graphics/sh3/path_tracer/three_object_to_path_traced_scene.js +0 -69
- package/src/engine/graphics/shaders/CopyShader.d.ts +0 -16
- package/src/engine/graphics/shaders/CopyShader.d.ts.map +0 -1
- package/src/engine/graphics/shaders/CopyShader.js +0 -48
- package/src/engine/graphics/texture/CheckersTexture.d.ts +0 -11
- package/src/engine/graphics/texture/CheckersTexture.d.ts.map +0 -1
- package/src/engine/graphics/texture/CheckersTexture.js +0 -25
- package/src/engine/graphics/texture/makeOnePixelTexture.d.ts +0 -9
- package/src/engine/graphics/texture/makeOnePixelTexture.d.ts.map +0 -1
- package/src/engine/graphics/texture/makeOnePixelTexture.js +0 -21
- package/src/engine/graphics/texture/sampler/writeSampler2DDataToDataTexture.d.ts +0 -7
- package/src/engine/graphics/texture/sampler/writeSampler2DDataToDataTexture.d.ts.map +0 -1
- package/src/engine/graphics/texture/sampler/writeSampler2DDataToDataTexture.js +0 -40
- package/src/engine/graphics/texture/whitePixelTexture.d.ts +0 -6
- package/src/engine/graphics/texture/whitePixelTexture.d.ts.map +0 -1
- package/src/engine/graphics/texture/whitePixelTexture.js +0 -9
- package/src/engine/graphics/three/ThreeFactory.d.ts +0 -36
- package/src/engine/graphics/three/ThreeFactory.d.ts.map +0 -1
- package/src/engine/graphics/three/ThreeFactory.js +0 -70
- package/src/engine/graphics/three/cloneObject3D.d.ts +0 -7
- package/src/engine/graphics/three/cloneObject3D.d.ts.map +0 -1
- package/src/engine/graphics/three/cloneObject3D.js +0 -70
- package/src/engine/graphics/three/compare_three_objects.d.ts +0 -7
- package/src/engine/graphics/three/compare_three_objects.d.ts.map +0 -1
- package/src/engine/graphics/three/compare_three_objects.js +0 -8
- package/src/engine/graphics/three/expand_aabb_by_transformed_three_object.d.ts +0 -8
- package/src/engine/graphics/three/expand_aabb_by_transformed_three_object.d.ts.map +0 -1
- package/src/engine/graphics/three/expand_aabb_by_transformed_three_object.js +0 -46
- package/src/engine/graphics/three/material/iterate_three_material_textures.d.ts +0 -10
- package/src/engine/graphics/three/material/iterate_three_material_textures.d.ts.map +0 -1
- package/src/engine/graphics/three/material/iterate_three_material_textures.js +0 -33
- package/src/engine/graphics/three/three_object_replace_materials.d.ts +0 -7
- package/src/engine/graphics/three/three_object_replace_materials.d.ts.map +0 -1
- package/src/engine/graphics/three/three_object_replace_materials.js +0 -13
- package/src/engine/graphics/util/promiseMaterialLoaded.d.ts +0 -7
- package/src/engine/graphics/util/promiseMaterialLoaded.d.ts.map +0 -1
- package/src/engine/graphics/util/promiseMaterialLoaded.js +0 -28
- package/src/engine/graphics/util/promiseTextureLoaded.d.ts +0 -7
- package/src/engine/graphics/util/promiseTextureLoaded.d.ts.map +0 -1
- package/src/engine/graphics/util/promiseTextureLoaded.js +0 -31
- package/src/view/minimap/gl/MinimapTerrainGL.d.ts +0 -25
- package/src/view/minimap/gl/MinimapTerrainGL.d.ts.map +0 -1
- package/src/view/minimap/gl/MinimapTerrainGL.js +0 -188
- package/src/view/minimap/gl/buildMaterial.d.ts +0 -7
- package/src/view/minimap/gl/buildMaterial.d.ts.map +0 -1
- package/src/view/minimap/gl/buildMaterial.js +0 -94
|
@@ -1,110 +1,117 @@
|
|
|
1
|
-
import { v3_distance_above_plane } from "../../vec3/v3_distance_above_plane.js";
|
|
2
|
-
import Vector3 from "../../Vector3.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { ray3_compute_closest_point } from "../ray/ray3_compute_closest_point.js";
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @type {
|
|
11
|
-
*/
|
|
12
|
-
const scratch_outer_planes = [];
|
|
13
|
-
|
|
14
|
-
const scratch_v3_0 = new Vector3();
|
|
15
|
-
|
|
16
|
-
const scratch_v3_1 = new Vector3();
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
*
|
|
20
|
-
* @type {number[]}
|
|
21
|
-
*/
|
|
22
|
-
const scratch_v3_array = [];
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
const
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
1
|
+
import { v3_distance_above_plane } from "../../vec3/v3_distance_above_plane.js";
|
|
2
|
+
import Vector3 from "../../Vector3.js";
|
|
3
|
+
import { plane3_compute_3_plane_intersection } from "../plane/plane3_compute_3_plane_intersection.js";
|
|
4
|
+
import { plane3_compute_intersection } from "../plane/plane3_compute_intersection.js";
|
|
5
|
+
import { plane3_project_point } from "../plane/plane3_project_point.js";
|
|
6
|
+
import { ray3_compute_closest_point } from "../ray/ray3_compute_closest_point.js";
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Indices into the caller's plane list, for the planes the target lies outside of.
|
|
10
|
+
* @type {number[]}
|
|
11
|
+
*/
|
|
12
|
+
const scratch_outer_planes = [];
|
|
13
|
+
|
|
14
|
+
const scratch_v3_0 = new Vector3();
|
|
15
|
+
|
|
16
|
+
const scratch_v3_1 = new Vector3();
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @type {number[]}
|
|
21
|
+
*/
|
|
22
|
+
const scratch_v3_array = [];
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* The point inside a convex frustum nearest to a target point, and whether the target was already
|
|
26
|
+
* inside it.
|
|
27
|
+
*
|
|
28
|
+
* **A plane is a `Vector4`**: `x, y, z` its normal and `w` its constant, inside where
|
|
29
|
+
* `dot(normal, p) + w` is non-negative. That is the same four numbers every frustum query in the
|
|
30
|
+
* tree reads and what `camera_active_frustum` publishes; it used to be a three `Plane`, whose
|
|
31
|
+
* `normal`/`constant` pair is the same thing wearing an object (X15d).
|
|
32
|
+
*
|
|
33
|
+
* @param {Vector3} result
|
|
34
|
+
* @param {Vector4[]} planes
|
|
35
|
+
* @param {number} target_x
|
|
36
|
+
* @param {number} target_y
|
|
37
|
+
* @param {number} target_z
|
|
38
|
+
* @returns {boolean} if point is inside the frustum - true, false otherwise
|
|
39
|
+
*/
|
|
40
|
+
export function frustum3_compute_closest_point(result, planes, target_x, target_y, target_z) {
|
|
41
|
+
let j;
|
|
42
|
+
|
|
43
|
+
let outside_plane_count = 0;
|
|
44
|
+
|
|
45
|
+
const plane_count = planes.length;
|
|
46
|
+
|
|
47
|
+
for (j = 0; j < plane_count; j++) {
|
|
48
|
+
|
|
49
|
+
const plane = planes[j];
|
|
50
|
+
|
|
51
|
+
const distance = v3_distance_above_plane(
|
|
52
|
+
target_x, target_y, target_z,
|
|
53
|
+
plane.x, plane.y, plane.z, plane.w
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
if (distance < 0) {
|
|
57
|
+
|
|
58
|
+
scratch_outer_planes[outside_plane_count] = j;
|
|
59
|
+
|
|
60
|
+
outside_plane_count++;
|
|
61
|
+
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
if (outside_plane_count === 0) {
|
|
67
|
+
result.set(target_x, target_y, target_z);
|
|
68
|
+
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
// point is outside the frustum
|
|
73
|
+
|
|
74
|
+
if (outside_plane_count === 1) {
|
|
75
|
+
const plane_0 = planes[scratch_outer_planes[0]];
|
|
76
|
+
|
|
77
|
+
// point lies outside exactly one plane
|
|
78
|
+
plane3_project_point(result, target_x, target_y, target_z, plane_0.x, plane_0.y, plane_0.z, plane_0.w);
|
|
79
|
+
} else if (outside_plane_count === 2) {
|
|
80
|
+
// outside two planes, nearest point lies on the intersection line of two planes
|
|
81
|
+
|
|
82
|
+
const plane_0 = planes[scratch_outer_planes[0]];
|
|
83
|
+
const plane_1 = planes[scratch_outer_planes[1]];
|
|
84
|
+
|
|
85
|
+
const intersection_exists = plane3_compute_intersection(
|
|
86
|
+
scratch_v3_0, scratch_v3_1,
|
|
87
|
+
plane_0.x, plane_0.y, plane_0.z, plane_0.w,
|
|
88
|
+
plane_1.x, plane_1.y, plane_1.z, plane_1.w
|
|
89
|
+
);
|
|
90
|
+
|
|
91
|
+
if (!intersection_exists) {
|
|
92
|
+
throw new Error('Planes are parallel and do not intersect, likely an invalid frustum');
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
ray3_compute_closest_point(result,
|
|
96
|
+
scratch_v3_0.x, scratch_v3_0.y, scratch_v3_0.z,
|
|
97
|
+
scratch_v3_1.x, scratch_v3_1.y, scratch_v3_1.z,
|
|
98
|
+
target_x, target_y, target_z
|
|
99
|
+
);
|
|
100
|
+
} else if (outside_plane_count === 3) {
|
|
101
|
+
// outside 3 planes, nearest point is intersect of 3 planes
|
|
102
|
+
const plane_0 = planes[scratch_outer_planes[0]];
|
|
103
|
+
const plane_1 = planes[scratch_outer_planes[1]];
|
|
104
|
+
const plane_2 = planes[scratch_outer_planes[2]];
|
|
105
|
+
|
|
106
|
+
plane3_compute_3_plane_intersection(
|
|
107
|
+
scratch_v3_array, 0,
|
|
108
|
+
plane_0.x, plane_0.y, plane_0.z, plane_0.w,
|
|
109
|
+
plane_1.x, plane_1.y, plane_1.z, plane_1.w,
|
|
110
|
+
plane_2.x, plane_2.y, plane_2.z, plane_2.w
|
|
111
|
+
);
|
|
112
|
+
|
|
113
|
+
result.fromArray(scratch_v3_array, 0)
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build a view matrix that places the eye at `eye` and points it at `center`, with `up` naming
|
|
3
|
+
* which way is up.
|
|
4
|
+
*
|
|
5
|
+
* Right-handed, matching the camera basis the rest of the renderer uses: the eye looks down its own
|
|
6
|
+
* −Z, so `center` sits at a negative view-space z. The result is the inverse of the camera's world
|
|
7
|
+
* transform — it carries world space into view space, not the other way around.
|
|
8
|
+
*
|
|
9
|
+
* `up` only has to be non-parallel to the view direction; it is re-orthogonalized against it. When
|
|
10
|
+
* it *is* parallel the cross product collapses and the basis is degenerate — that is a caller error,
|
|
11
|
+
* and the assert below is what says so.
|
|
12
|
+
*
|
|
13
|
+
* Allocation-free.
|
|
14
|
+
*
|
|
15
|
+
* @param {number[]|Float32Array|Float64Array} out destination 4x4 matrix
|
|
16
|
+
* @param {ArrayLike<number>} eye position of the viewer, `[x, y, z]`
|
|
17
|
+
* @param {ArrayLike<number>} center point the viewer is looking at, `[x, y, z]`
|
|
18
|
+
* @param {ArrayLike<number>} up up direction, `[x, y, z]`, not parallel to `center - eye`
|
|
19
|
+
* @returns {number[]|Float32Array|Float64Array} `out`, for convenience
|
|
20
|
+
*
|
|
21
|
+
* @author Alex Goldring
|
|
22
|
+
* @copyright Company Named Limited (c) 2026
|
|
23
|
+
*/
|
|
24
|
+
export function m4_look_at(out: number[] | Float32Array | Float64Array, eye: ArrayLike<number>, center: ArrayLike<number>, up: ArrayLike<number>): number[] | Float32Array | Float64Array;
|
|
25
|
+
//# sourceMappingURL=m4_look_at.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m4_look_at.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/mat4/m4_look_at.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,gCATW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,OAClC,UAAU,MAAM,CAAC,UACjB,UAAU,MAAM,CAAC,MACjB,UAAU,MAAM,CAAC,GACf,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,CA2E9C"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { assert } from "../../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Build a view matrix that places the eye at `eye` and points it at `center`, with `up` naming
|
|
5
|
+
* which way is up.
|
|
6
|
+
*
|
|
7
|
+
* Right-handed, matching the camera basis the rest of the renderer uses: the eye looks down its own
|
|
8
|
+
* −Z, so `center` sits at a negative view-space z. The result is the inverse of the camera's world
|
|
9
|
+
* transform — it carries world space into view space, not the other way around.
|
|
10
|
+
*
|
|
11
|
+
* `up` only has to be non-parallel to the view direction; it is re-orthogonalized against it. When
|
|
12
|
+
* it *is* parallel the cross product collapses and the basis is degenerate — that is a caller error,
|
|
13
|
+
* and the assert below is what says so.
|
|
14
|
+
*
|
|
15
|
+
* Allocation-free.
|
|
16
|
+
*
|
|
17
|
+
* @param {number[]|Float32Array|Float64Array} out destination 4x4 matrix
|
|
18
|
+
* @param {ArrayLike<number>} eye position of the viewer, `[x, y, z]`
|
|
19
|
+
* @param {ArrayLike<number>} center point the viewer is looking at, `[x, y, z]`
|
|
20
|
+
* @param {ArrayLike<number>} up up direction, `[x, y, z]`, not parallel to `center - eye`
|
|
21
|
+
* @returns {number[]|Float32Array|Float64Array} `out`, for convenience
|
|
22
|
+
*
|
|
23
|
+
* @author Alex Goldring
|
|
24
|
+
* @copyright Company Named Limited (c) 2026
|
|
25
|
+
*/
|
|
26
|
+
export function m4_look_at(out, eye, center, up) {
|
|
27
|
+
assert.isArrayLike(eye, 'eye');
|
|
28
|
+
assert.isArrayLike(center, 'center');
|
|
29
|
+
assert.isArrayLike(up, 'up');
|
|
30
|
+
|
|
31
|
+
const eye_x = eye[0];
|
|
32
|
+
const eye_y = eye[1];
|
|
33
|
+
const eye_z = eye[2];
|
|
34
|
+
|
|
35
|
+
// backward = normalize(eye - center); the view direction is its negation
|
|
36
|
+
let z0 = eye_x - center[0];
|
|
37
|
+
let z1 = eye_y - center[1];
|
|
38
|
+
let z2 = eye_z - center[2];
|
|
39
|
+
|
|
40
|
+
const z_length = Math.sqrt(z0 * z0 + z1 * z1 + z2 * z2);
|
|
41
|
+
|
|
42
|
+
assert.greaterThan(z_length, 0, 'distance between eye and center');
|
|
43
|
+
|
|
44
|
+
const z_scale = 1 / z_length;
|
|
45
|
+
|
|
46
|
+
z0 *= z_scale;
|
|
47
|
+
z1 *= z_scale;
|
|
48
|
+
z2 *= z_scale;
|
|
49
|
+
|
|
50
|
+
const up_x = up[0];
|
|
51
|
+
const up_y = up[1];
|
|
52
|
+
const up_z = up[2];
|
|
53
|
+
|
|
54
|
+
// right = normalize(cross(up, backward))
|
|
55
|
+
let x0 = up_y * z2 - up_z * z1;
|
|
56
|
+
let x1 = up_z * z0 - up_x * z2;
|
|
57
|
+
let x2 = up_x * z1 - up_y * z0;
|
|
58
|
+
|
|
59
|
+
const x_length = Math.sqrt(x0 * x0 + x1 * x1 + x2 * x2);
|
|
60
|
+
|
|
61
|
+
assert.greaterThan(x_length, 0, 'length of cross(up, eye - center), up must not be parallel to the view direction');
|
|
62
|
+
|
|
63
|
+
const x_scale = 1 / x_length;
|
|
64
|
+
|
|
65
|
+
x0 *= x_scale;
|
|
66
|
+
x1 *= x_scale;
|
|
67
|
+
x2 *= x_scale;
|
|
68
|
+
|
|
69
|
+
// up = cross(backward, right); both operands are unit and orthogonal, so this one already is
|
|
70
|
+
const y0 = z1 * x2 - z2 * x1;
|
|
71
|
+
const y1 = z2 * x0 - z0 * x2;
|
|
72
|
+
const y2 = z0 * x1 - z1 * x0;
|
|
73
|
+
|
|
74
|
+
// rotation is the transpose of the basis, translation is the eye in that rotated frame
|
|
75
|
+
out[0] = x0;
|
|
76
|
+
out[1] = y0;
|
|
77
|
+
out[2] = z0;
|
|
78
|
+
out[3] = 0;
|
|
79
|
+
|
|
80
|
+
out[4] = x1;
|
|
81
|
+
out[5] = y1;
|
|
82
|
+
out[6] = z1;
|
|
83
|
+
out[7] = 0;
|
|
84
|
+
|
|
85
|
+
out[8] = x2;
|
|
86
|
+
out[9] = y2;
|
|
87
|
+
out[10] = z2;
|
|
88
|
+
out[11] = 0;
|
|
89
|
+
|
|
90
|
+
out[12] = -(x0 * eye_x + x1 * eye_y + x2 * eye_z);
|
|
91
|
+
out[13] = -(y0 * eye_x + y1 * eye_y + y2 * eye_z);
|
|
92
|
+
out[14] = -(z0 * eye_x + z1 * eye_y + z2 * eye_z);
|
|
93
|
+
out[15] = 1;
|
|
94
|
+
|
|
95
|
+
return out;
|
|
96
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create a 4x4 matrix that corresponds to a rotation around the X axis.
|
|
3
|
+
*
|
|
4
|
+
* Right-handed: a positive angle carries +Y towards +Z. The rotation-around-Y and
|
|
5
|
+
* rotation-around-Z companions are {@link m4_make_rotation_y} and {@link m4_make_rotation_z}; to
|
|
6
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
7
|
+
*
|
|
8
|
+
* Allocation-free.
|
|
9
|
+
*
|
|
10
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
11
|
+
* @param {number} angle rotation, in radians
|
|
12
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
13
|
+
*
|
|
14
|
+
* @author Alex Goldring
|
|
15
|
+
* @copyright Company Named Limited (c) 2026
|
|
16
|
+
*/
|
|
17
|
+
export function m4_make_rotation_x(output: number[] | Float32Array | Float64Array, angle: number): number[] | Float32Array | Float64Array;
|
|
18
|
+
//# sourceMappingURL=m4_make_rotation_x.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m4_make_rotation_x.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/mat4/m4_make_rotation_x.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,2CAPW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,SAClC,MAAM,GACJ,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,CAiC9C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { assert } from "../../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a 4x4 matrix that corresponds to a rotation around the X axis.
|
|
5
|
+
*
|
|
6
|
+
* Right-handed: a positive angle carries +Y towards +Z. The rotation-around-Y and
|
|
7
|
+
* rotation-around-Z companions are {@link m4_make_rotation_y} and {@link m4_make_rotation_z}; to
|
|
8
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
9
|
+
*
|
|
10
|
+
* Allocation-free.
|
|
11
|
+
*
|
|
12
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
13
|
+
* @param {number} angle rotation, in radians
|
|
14
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
15
|
+
*
|
|
16
|
+
* @author Alex Goldring
|
|
17
|
+
* @copyright Company Named Limited (c) 2026
|
|
18
|
+
*/
|
|
19
|
+
export function m4_make_rotation_x(output, angle) {
|
|
20
|
+
assert.isNumber(angle, 'angle');
|
|
21
|
+
assert.notNaN(angle, 'angle');
|
|
22
|
+
|
|
23
|
+
const s = Math.sin(angle);
|
|
24
|
+
const c = Math.cos(angle);
|
|
25
|
+
|
|
26
|
+
output[0] = 1;
|
|
27
|
+
output[1] = 0;
|
|
28
|
+
output[2] = 0;
|
|
29
|
+
output[3] = 0;
|
|
30
|
+
|
|
31
|
+
output[4] = 0;
|
|
32
|
+
output[5] = c;
|
|
33
|
+
output[6] = s;
|
|
34
|
+
output[7] = 0;
|
|
35
|
+
|
|
36
|
+
output[8] = 0;
|
|
37
|
+
output[9] = -s;
|
|
38
|
+
output[10] = c;
|
|
39
|
+
output[11] = 0;
|
|
40
|
+
|
|
41
|
+
output[12] = 0;
|
|
42
|
+
output[13] = 0;
|
|
43
|
+
output[14] = 0;
|
|
44
|
+
output[15] = 1;
|
|
45
|
+
|
|
46
|
+
return output;
|
|
47
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create a 4x4 matrix that corresponds to a rotation around the Y axis.
|
|
3
|
+
*
|
|
4
|
+
* Right-handed: a positive angle carries +Z towards +X. The rotation-around-X and
|
|
5
|
+
* rotation-around-Z companions are {@link m4_make_rotation_x} and {@link m4_make_rotation_z}; to
|
|
6
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
7
|
+
*
|
|
8
|
+
* Allocation-free.
|
|
9
|
+
*
|
|
10
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
11
|
+
* @param {number} angle rotation, in radians
|
|
12
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
13
|
+
*
|
|
14
|
+
* @author Alex Goldring
|
|
15
|
+
* @copyright Company Named Limited (c) 2026
|
|
16
|
+
*/
|
|
17
|
+
export function m4_make_rotation_y(output: number[] | Float32Array | Float64Array, angle: number): number[] | Float32Array | Float64Array;
|
|
18
|
+
//# sourceMappingURL=m4_make_rotation_y.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m4_make_rotation_y.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/mat4/m4_make_rotation_y.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,2CAPW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,SAClC,MAAM,GACJ,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,CAiC9C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { assert } from "../../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a 4x4 matrix that corresponds to a rotation around the Y axis.
|
|
5
|
+
*
|
|
6
|
+
* Right-handed: a positive angle carries +Z towards +X. The rotation-around-X and
|
|
7
|
+
* rotation-around-Z companions are {@link m4_make_rotation_x} and {@link m4_make_rotation_z}; to
|
|
8
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
9
|
+
*
|
|
10
|
+
* Allocation-free.
|
|
11
|
+
*
|
|
12
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
13
|
+
* @param {number} angle rotation, in radians
|
|
14
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
15
|
+
*
|
|
16
|
+
* @author Alex Goldring
|
|
17
|
+
* @copyright Company Named Limited (c) 2026
|
|
18
|
+
*/
|
|
19
|
+
export function m4_make_rotation_y(output, angle) {
|
|
20
|
+
assert.isNumber(angle, 'angle');
|
|
21
|
+
assert.notNaN(angle, 'angle');
|
|
22
|
+
|
|
23
|
+
const s = Math.sin(angle);
|
|
24
|
+
const c = Math.cos(angle);
|
|
25
|
+
|
|
26
|
+
output[0] = c;
|
|
27
|
+
output[1] = 0;
|
|
28
|
+
output[2] = -s;
|
|
29
|
+
output[3] = 0;
|
|
30
|
+
|
|
31
|
+
output[4] = 0;
|
|
32
|
+
output[5] = 1;
|
|
33
|
+
output[6] = 0;
|
|
34
|
+
output[7] = 0;
|
|
35
|
+
|
|
36
|
+
output[8] = s;
|
|
37
|
+
output[9] = 0;
|
|
38
|
+
output[10] = c;
|
|
39
|
+
output[11] = 0;
|
|
40
|
+
|
|
41
|
+
output[12] = 0;
|
|
42
|
+
output[13] = 0;
|
|
43
|
+
output[14] = 0;
|
|
44
|
+
output[15] = 1;
|
|
45
|
+
|
|
46
|
+
return output;
|
|
47
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create a 4x4 matrix that corresponds to a rotation around the Z axis.
|
|
3
|
+
*
|
|
4
|
+
* Right-handed: a positive angle carries +X towards +Y. The rotation-around-X and
|
|
5
|
+
* rotation-around-Y companions are {@link m4_make_rotation_x} and {@link m4_make_rotation_y}; to
|
|
6
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
7
|
+
*
|
|
8
|
+
* Allocation-free.
|
|
9
|
+
*
|
|
10
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
11
|
+
* @param {number} angle rotation, in radians
|
|
12
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
13
|
+
*
|
|
14
|
+
* @author Alex Goldring
|
|
15
|
+
* @copyright Company Named Limited (c) 2026
|
|
16
|
+
*/
|
|
17
|
+
export function m4_make_rotation_z(output: number[] | Float32Array | Float64Array, angle: number): number[] | Float32Array | Float64Array;
|
|
18
|
+
//# sourceMappingURL=m4_make_rotation_z.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m4_make_rotation_z.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/mat4/m4_make_rotation_z.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,2CAPW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,SAClC,MAAM,GACJ,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,CAiC9C"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { assert } from "../../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Create a 4x4 matrix that corresponds to a rotation around the Z axis.
|
|
5
|
+
*
|
|
6
|
+
* Right-handed: a positive angle carries +X towards +Y. The rotation-around-X and
|
|
7
|
+
* rotation-around-Y companions are {@link m4_make_rotation_x} and {@link m4_make_rotation_y}; to
|
|
8
|
+
* compose several, build each one and chain them with {@link m4_multiply}.
|
|
9
|
+
*
|
|
10
|
+
* Allocation-free.
|
|
11
|
+
*
|
|
12
|
+
* @param {number[]|Float32Array|Float64Array} output 4x4 matrix output will be written here
|
|
13
|
+
* @param {number} angle rotation, in radians
|
|
14
|
+
* @returns {number[]|Float32Array|Float64Array} `output` parameter, returned for convenience
|
|
15
|
+
*
|
|
16
|
+
* @author Alex Goldring
|
|
17
|
+
* @copyright Company Named Limited (c) 2026
|
|
18
|
+
*/
|
|
19
|
+
export function m4_make_rotation_z(output, angle) {
|
|
20
|
+
assert.isNumber(angle, 'angle');
|
|
21
|
+
assert.notNaN(angle, 'angle');
|
|
22
|
+
|
|
23
|
+
const s = Math.sin(angle);
|
|
24
|
+
const c = Math.cos(angle);
|
|
25
|
+
|
|
26
|
+
output[0] = c;
|
|
27
|
+
output[1] = s;
|
|
28
|
+
output[2] = 0;
|
|
29
|
+
output[3] = 0;
|
|
30
|
+
|
|
31
|
+
output[4] = -s;
|
|
32
|
+
output[5] = c;
|
|
33
|
+
output[6] = 0;
|
|
34
|
+
output[7] = 0;
|
|
35
|
+
|
|
36
|
+
output[8] = 0;
|
|
37
|
+
output[9] = 0;
|
|
38
|
+
output[10] = 1;
|
|
39
|
+
output[11] = 0;
|
|
40
|
+
|
|
41
|
+
output[12] = 0;
|
|
42
|
+
output[13] = 0;
|
|
43
|
+
output[14] = 0;
|
|
44
|
+
output[15] = 1;
|
|
45
|
+
|
|
46
|
+
return output;
|
|
47
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build a conventional perspective projection matrix: right-handed, with clip depth spanning the
|
|
3
|
+
* full −1…1 that OpenGL and three.js use.
|
|
4
|
+
*
|
|
5
|
+
* This is *not* the projection the renderer draws with — Shade's cameras use an infinite reverse-Z
|
|
6
|
+
* with a 0…1 depth range, which is what WebGPU wants. This one exists for the arithmetic that has to
|
|
7
|
+
* hold under either shape, and for reading geometry produced against the OpenGL convention.
|
|
8
|
+
*
|
|
9
|
+
* `far` is finite here on purpose: an infinite far plane is a different matrix, not a special value
|
|
10
|
+
* of this one.
|
|
11
|
+
*
|
|
12
|
+
* Allocation-free.
|
|
13
|
+
*
|
|
14
|
+
* @param {number[]|Float32Array|Float64Array} out destination 4x4 matrix
|
|
15
|
+
* @param {number} fov_y vertical field of view, in radians
|
|
16
|
+
* @param {number} aspect viewport width divided by its height
|
|
17
|
+
* @param {number} near distance to the near clipping plane, greater than 0
|
|
18
|
+
* @param {number} far distance to the far clipping plane, greater than `near`
|
|
19
|
+
* @returns {number[]|Float32Array|Float64Array} `out`, for convenience
|
|
20
|
+
*
|
|
21
|
+
* @author Alex Goldring
|
|
22
|
+
* @copyright Company Named Limited (c) 2026
|
|
23
|
+
*/
|
|
24
|
+
export function m4_perspective(out: number[] | Float32Array | Float64Array, fov_y: number, aspect: number, near: number, far: number): number[] | Float32Array | Float64Array;
|
|
25
|
+
//# sourceMappingURL=m4_perspective.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m4_perspective.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/3d/mat4/m4_perspective.js"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,oCAVW,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,SAClC,MAAM,UACN,MAAM,QACN,MAAM,OACN,MAAM,GACJ,MAAM,EAAE,GAAC,YAAY,GAAC,YAAY,CA6C9C"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { assert } from "../../../assert.js";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Build a conventional perspective projection matrix: right-handed, with clip depth spanning the
|
|
5
|
+
* full −1…1 that OpenGL and three.js use.
|
|
6
|
+
*
|
|
7
|
+
* This is *not* the projection the renderer draws with — Shade's cameras use an infinite reverse-Z
|
|
8
|
+
* with a 0…1 depth range, which is what WebGPU wants. This one exists for the arithmetic that has to
|
|
9
|
+
* hold under either shape, and for reading geometry produced against the OpenGL convention.
|
|
10
|
+
*
|
|
11
|
+
* `far` is finite here on purpose: an infinite far plane is a different matrix, not a special value
|
|
12
|
+
* of this one.
|
|
13
|
+
*
|
|
14
|
+
* Allocation-free.
|
|
15
|
+
*
|
|
16
|
+
* @param {number[]|Float32Array|Float64Array} out destination 4x4 matrix
|
|
17
|
+
* @param {number} fov_y vertical field of view, in radians
|
|
18
|
+
* @param {number} aspect viewport width divided by its height
|
|
19
|
+
* @param {number} near distance to the near clipping plane, greater than 0
|
|
20
|
+
* @param {number} far distance to the far clipping plane, greater than `near`
|
|
21
|
+
* @returns {number[]|Float32Array|Float64Array} `out`, for convenience
|
|
22
|
+
*
|
|
23
|
+
* @author Alex Goldring
|
|
24
|
+
* @copyright Company Named Limited (c) 2026
|
|
25
|
+
*/
|
|
26
|
+
export function m4_perspective(out, fov_y, aspect, near, far) {
|
|
27
|
+
assert.isNumber(fov_y, 'fov_y');
|
|
28
|
+
assert.greaterThan(fov_y, 0, 'fov_y');
|
|
29
|
+
assert.lessThan(fov_y, Math.PI, 'fov_y');
|
|
30
|
+
|
|
31
|
+
assert.isNumber(aspect, 'aspect');
|
|
32
|
+
assert.greaterThan(aspect, 0, 'aspect');
|
|
33
|
+
|
|
34
|
+
assert.isNumber(near, 'near');
|
|
35
|
+
assert.greaterThan(near, 0, 'near');
|
|
36
|
+
|
|
37
|
+
assert.isFinite(far, 'far');
|
|
38
|
+
assert.greaterThan(far, near, 'far');
|
|
39
|
+
|
|
40
|
+
const f = 1 / Math.tan(fov_y * 0.5);
|
|
41
|
+
|
|
42
|
+
// 1 / (near - far), negative, and the shared factor of both depth terms
|
|
43
|
+
const nf = 1 / (near - far);
|
|
44
|
+
|
|
45
|
+
out[0] = f / aspect;
|
|
46
|
+
out[1] = 0;
|
|
47
|
+
out[2] = 0;
|
|
48
|
+
out[3] = 0;
|
|
49
|
+
|
|
50
|
+
out[4] = 0;
|
|
51
|
+
out[5] = f;
|
|
52
|
+
out[6] = 0;
|
|
53
|
+
out[7] = 0;
|
|
54
|
+
|
|
55
|
+
out[8] = 0;
|
|
56
|
+
out[9] = 0;
|
|
57
|
+
out[10] = (far + near) * nf;
|
|
58
|
+
out[11] = -1;
|
|
59
|
+
|
|
60
|
+
out[12] = 0;
|
|
61
|
+
out[13] = 0;
|
|
62
|
+
out[14] = 2 * far * near * nf;
|
|
63
|
+
out[15] = 0;
|
|
64
|
+
|
|
65
|
+
return out;
|
|
66
|
+
}
|