UNPKG

gpu-curtains

Version:

gpu-curtains is a 3D WebGPU rendering engine. It can be used as a standalone 3D engine, but also includes extra classes focused on mapping 3d objects to DOM elements; It allows users to synchronize values such as position, sizing, or scale between them.

84 lines (83 loc) 6.96 kB
import { Quat } from "./math/Quat.mjs"; import { Vec3 } from "./math/Vec3.mjs"; import { Mat4 } from "./math/Mat4.mjs"; import { Object3D } from "./core/objects3D/Object3D.mjs"; import { Binding } from "./core/bindings/Binding.mjs"; import { Vec2 } from "./math/Vec2.mjs"; import { Buffer } from "./core/buffers/Buffer.mjs"; import { BufferBinding } from "./core/bindings/BufferBinding.mjs"; import { WritableBufferBinding } from "./core/bindings/WritableBufferBinding.mjs"; import { BindGroup } from "./core/bindGroups/BindGroup.mjs"; import { TextureBinding } from "./core/bindings/TextureBinding.mjs"; import { Texture } from "./core/textures/Texture.mjs"; import { Mat3 } from "./math/Mat3.mjs"; import { MediaTexture } from "./core/textures/MediaTexture.mjs"; import { DOMTexture } from "./curtains/textures/DOMTexture.mjs"; import { TextureBindGroup } from "./core/bindGroups/TextureBindGroup.mjs"; import { SamplerBinding } from "./core/bindings/SamplerBinding.mjs"; import { OrthographicCamera } from "./core/cameras/OrthographicCamera.mjs"; import { PerspectiveCamera } from "./core/cameras/PerspectiveCamera.mjs"; import { Sampler } from "./core/samplers/Sampler.mjs"; import { Material } from "./core/materials/Material.mjs"; import { ComputeMaterial } from "./core/materials/ComputeMaterial.mjs"; import { ComputePass } from "./core/computePasses/ComputePass.mjs"; import { Box3 } from "./math/Box3.mjs"; import { DOMFrustum } from "./core/DOM/DOMFrustum.mjs"; import { Geometry } from "./core/geometries/Geometry.mjs"; import { IndexedGeometry } from "./core/geometries/IndexedGeometry.mjs"; import { PlaneGeometry } from "./core/geometries/PlaneGeometry.mjs"; import { linearTosRGB, linearTosRGBFloat, sRGBToLinear, sRGBToLinearFloat } from "./math/color-utils.mjs"; import { AmbientLight } from "./core/lights/AmbientLight.mjs"; import { RenderPass } from "./core/renderPasses/RenderPass.mjs"; import { RenderTarget } from "./core/renderPasses/RenderTarget.mjs"; import { ProjectedObject3D } from "./core/objects3D/ProjectedObject3D.mjs"; import { PipelineEntry } from "./core/pipelines/PipelineEntry.mjs"; import { RenderPipelineEntry } from "./core/pipelines/RenderPipelineEntry.mjs"; import { RenderMaterial } from "./core/materials/RenderMaterial.mjs"; import { Mesh } from "./core/meshes/Mesh.mjs"; import { IndirectBuffer } from "./extras/buffers/IndirectBuffer.mjs"; import { FullscreenPlane } from "./core/meshes/FullscreenPlane.mjs"; import { RenderBundle } from "./core/renderPasses/RenderBundle.mjs"; import { DirectionalLight } from "./core/lights/DirectionalLight.mjs"; import { PointLight } from "./core/lights/PointLight.mjs"; import { SpotLight } from "./core/lights/SpotLight.mjs"; import { ComputePipelineEntry } from "./core/pipelines/ComputePipelineEntry.mjs"; import { PipelineManager } from "./core/pipelines/PipelineManager.mjs"; import { DOMElement } from "./core/DOM/DOMElement.mjs"; import { Scene } from "./core/scenes/Scene.mjs"; import { GPUDeviceManager } from "./core/renderers/GPUDeviceManager.mjs"; import { GPURenderer } from "./core/renderers/GPURenderer.mjs"; import { GPUCameraRenderer } from "./core/renderers/GPUCameraRenderer.mjs"; import { ShaderPass } from "./core/renderPasses/ShaderPass.mjs"; import { constants } from "./core/shaders/chunks/utils/constants.mjs"; import { common } from "./core/shaders/chunks/utils/common.mjs"; import { toneMappingUtils } from "./core/shaders/chunks/utils/tone-mapping-utils.mjs"; import { getLambert, lambertUtils } from "./core/shaders/chunks/shading/lambert-shading.mjs"; import { getPhong } from "./core/shaders/chunks/shading/phong-shading.mjs"; import { getPBR } from "./core/shaders/chunks/shading/PBR-shading.mjs"; import { getVertexShaderCode } from "./core/shaders/full/vertex/get-vertex-shader-code.mjs"; import { getUnlitFragmentShaderCode } from "./core/shaders/full/fragment/get-unlit-fragment-shader-code.mjs"; import { getLambertFragmentShaderCode } from "./core/shaders/full/fragment/get-lambert-fragment-shader-code.mjs"; import { getPhongFragmentShaderCode } from "./core/shaders/full/fragment/get-phong-fragment-shader-code.mjs"; import { getPBRFragmentShaderCode } from "./core/shaders/full/fragment/get-PBR-fragment-shader-code.mjs"; import { getFragmentShaderCode } from "./core/shaders/full/fragment/get-fragment-shader-code.mjs"; import { DOMObject3D } from "./curtains/objects3D/DOMObject3D.mjs"; import { DOMMesh } from "./curtains/meshes/DOMMesh.mjs"; import { Plane } from "./curtains/meshes/Plane.mjs"; import { GPUCurtainsRenderer } from "./curtains/renderers/GPUCurtainsRenderer.mjs"; import { GPUCurtains } from "./curtains/GPUCurtains.mjs"; import { ComputeShaderPass } from "./extras/computePasses/ComputeShaderPass.mjs"; import { OrbitControls } from "./extras/controls/OrbitControls.mjs"; import { HDRLoader } from "./extras/loaders/HDRLoader.mjs"; import { EnvironmentMap } from "./extras/environmentMap/EnvironmentMap.mjs"; import { BoxGeometry } from "./extras/geometries/BoxGeometry.mjs"; import { SphereGeometry } from "./extras/geometries/SphereGeometry.mjs"; import { LitMesh } from "./extras/meshes/LitMesh.mjs"; import { PingPongPlane } from "./extras/meshes/PingPongPlane.mjs"; import { Raycaster } from "./extras/raycaster/Raycaster.mjs"; import { KeyframesAnimation } from "./extras/animations/KeyframesAnimation.mjs"; import { TargetsAnimationsManager } from "./extras/animations/TargetsAnimationsManager.mjs"; import { GLTFScenesManager } from "./extras/gltf/GLTFScenesManager.mjs"; import { GLTFPointerAnimationsManager } from "./extras/gltf/GLTFPointerAnimationsManager.mjs"; import { GLTFLoader } from "./extras/loaders/GLTFLoader.mjs"; export { AmbientLight, BindGroup, Binding, Box3, BoxGeometry, Buffer, BufferBinding, ComputeMaterial, ComputePass, ComputePipelineEntry, ComputeShaderPass, DOMElement, DOMFrustum, DOMMesh, DOMObject3D, DOMTexture, DirectionalLight, EnvironmentMap, FullscreenPlane, GLTFLoader, GLTFPointerAnimationsManager, GLTFScenesManager, GPUCameraRenderer, GPUCurtains, GPUCurtainsRenderer, GPUDeviceManager, GPURenderer, Geometry, HDRLoader, IndexedGeometry, IndirectBuffer, KeyframesAnimation, LitMesh, Mat3, Mat4, Material, MediaTexture, Mesh, Object3D, OrbitControls, OrthographicCamera, PerspectiveCamera, PingPongPlane, PipelineEntry, PipelineManager, Plane, PlaneGeometry, PointLight, ProjectedObject3D, Quat, Raycaster, RenderBundle, RenderMaterial, RenderPass, RenderPipelineEntry, RenderTarget, Sampler, SamplerBinding, Scene, ShaderPass, SphereGeometry, SpotLight, TargetsAnimationsManager, Texture, TextureBindGroup, TextureBinding, Vec2, Vec3, WritableBufferBinding, common, constants, getFragmentShaderCode, getLambert, getLambertFragmentShaderCode, getPBR, getPBRFragmentShaderCode, getPhong, getPhongFragmentShaderCode, getUnlitFragmentShaderCode, getVertexShaderCode, lambertUtils, linearTosRGB, linearTosRGBFloat, sRGBToLinear, sRGBToLinearFloat, toneMappingUtils };