ris-framework 0.1.0-dev.6 → 0.1.0-dev.9
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/CHANGELOG.md +4 -0
- package/LICENSE +202 -21
- package/LICENSES/Apache-2.0.txt +202 -0
- package/NOTICE +2 -0
- package/README.md +46 -47
- package/THIRD_PARTY_NOTICES.md +27 -0
- package/dist/Framework.d.ts +81 -0
- package/dist/Framework.d.ts.map +1 -0
- package/dist/api/FrameworkConfiguration.d.ts +23 -0
- package/dist/api/FrameworkConfiguration.d.ts.map +1 -0
- package/dist/api/IFramework.d.ts +125 -0
- package/dist/api/IFramework.d.ts.map +1 -0
- package/dist/api/IFrameworkConfiguration.d.ts +25 -0
- package/dist/api/IFrameworkConfiguration.d.ts.map +1 -0
- package/dist/api/_export.d.ts +27 -0
- package/dist/api/_export.d.ts.map +1 -0
- package/dist/api/camera/CameraFactory.d.ts +25 -0
- package/dist/api/camera/CameraFactory.d.ts.map +1 -0
- package/dist/api/camera/ICamera.d.ts +43 -0
- package/dist/api/camera/ICamera.d.ts.map +1 -0
- package/dist/api/camera/ICameraFactory.d.ts +46 -0
- package/dist/api/camera/ICameraFactory.d.ts.map +1 -0
- package/dist/api/camera/IOrthographicCamera.d.ts +31 -0
- package/dist/api/camera/IOrthographicCamera.d.ts.map +1 -0
- package/dist/api/camera/OrbitCamera.d.ts +120 -0
- package/dist/api/camera/OrbitCamera.d.ts.map +1 -0
- package/dist/api/camera/OrthographicCamera.d.ts +96 -0
- package/dist/api/camera/OrthographicCamera.d.ts.map +1 -0
- package/dist/api/camera/PerspectiveCamera.d.ts +108 -0
- package/dist/api/camera/PerspectiveCamera.d.ts.map +1 -0
- package/dist/api/camera/_export.d.ts +8 -0
- package/dist/api/camera/_export.d.ts.map +1 -0
- package/dist/api/content/ContentConfig.d.ts +11 -0
- package/dist/api/content/ContentConfig.d.ts.map +1 -0
- package/dist/api/content/ContentManager.d.ts +27 -0
- package/dist/api/content/ContentManager.d.ts.map +1 -0
- package/dist/api/content/IContent.d.ts +8 -0
- package/dist/api/content/IContent.d.ts.map +1 -0
- package/dist/api/content/IContentManager.d.ts +37 -0
- package/dist/api/content/IContentManager.d.ts.map +1 -0
- package/dist/api/content/IContentModule.d.ts +58 -0
- package/dist/api/content/IContentModule.d.ts.map +1 -0
- package/dist/api/content/ShaderModuleContent.d.ts +14 -0
- package/dist/api/content/ShaderModuleContent.d.ts.map +1 -0
- package/dist/api/content/_export-content.d.ts +5 -0
- package/dist/api/content/_export-content.d.ts.map +1 -0
- package/dist/api/core/IDisposable.d.ts +10 -0
- package/dist/api/core/IDisposable.d.ts.map +1 -0
- package/dist/api/core/_export-core.d.ts +2 -0
- package/dist/api/core/_export-core.d.ts.map +1 -0
- package/dist/api/data/Color.d.ts +119 -0
- package/dist/api/data/Color.d.ts.map +1 -0
- package/dist/api/data/Rect.d.ts +61 -0
- package/dist/api/data/Rect.d.ts.map +1 -0
- package/dist/api/data/State.d.ts +11 -0
- package/dist/api/data/State.d.ts.map +1 -0
- package/dist/api/data/_export.d.ts +4 -0
- package/dist/api/data/_export.d.ts.map +1 -0
- package/dist/api/geometry/BaseGeometry.d.ts +44 -0
- package/dist/api/geometry/BaseGeometry.d.ts.map +1 -0
- package/dist/api/geometry/GeometryBuilder.d.ts +11 -0
- package/dist/api/geometry/GeometryBuilder.d.ts.map +1 -0
- package/dist/api/geometry/GeometryFormat.d.ts +34 -0
- package/dist/api/geometry/GeometryFormat.d.ts.map +1 -0
- package/dist/api/geometry/IGeometry.d.ts +54 -0
- package/dist/api/geometry/IGeometry.d.ts.map +1 -0
- package/dist/api/geometry/IGeometryBuilder.d.ts +15 -0
- package/dist/api/geometry/IGeometryBuilder.d.ts.map +1 -0
- package/dist/api/geometry/VertexFormat.d.ts +14 -0
- package/dist/api/geometry/VertexFormat.d.ts.map +1 -0
- package/dist/api/geometry/_export-geometry.d.ts +5 -0
- package/dist/api/geometry/_export-geometry.d.ts.map +1 -0
- package/dist/api/image/CpuImageProcessor.d.ts +16 -0
- package/dist/api/image/CpuImageProcessor.d.ts.map +1 -0
- package/dist/api/image/IImageProcessor.d.ts +26 -0
- package/dist/api/image/IImageProcessor.d.ts.map +1 -0
- package/dist/api/image/RawImageData.d.ts +34 -0
- package/dist/api/image/RawImageData.d.ts.map +1 -0
- package/dist/api/image/_export.d.ts +4 -0
- package/dist/api/image/_export.d.ts.map +1 -0
- package/dist/api/index.d.ts +2 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/input/IInputManager.d.ts +53 -0
- package/dist/api/input/IInputManager.d.ts.map +1 -0
- package/dist/api/input/InputDeviceType.d.ts +18 -0
- package/dist/api/input/InputDeviceType.d.ts.map +1 -0
- package/dist/api/input/InputManager.d.ts +73 -0
- package/dist/api/input/InputManager.d.ts.map +1 -0
- package/dist/api/input/Key.d.ts +36 -0
- package/dist/api/input/Key.d.ts.map +1 -0
- package/dist/api/input/KeyboardState.d.ts +37 -0
- package/dist/api/input/KeyboardState.d.ts.map +1 -0
- package/dist/api/input/_export.d.ts +14 -0
- package/dist/api/input/_export.d.ts.map +1 -0
- package/dist/api/input/gamepad/Button.d.ts +22 -0
- package/dist/api/input/gamepad/Button.d.ts.map +1 -0
- package/dist/api/input/gamepad/GamePadState.d.ts +48 -0
- package/dist/api/input/gamepad/GamePadState.d.ts.map +1 -0
- package/dist/api/input/gamepad/GamePadThumbSticks.d.ts +17 -0
- package/dist/api/input/gamepad/GamePadThumbSticks.d.ts.map +1 -0
- package/dist/api/input/mouse/MouseButton.d.ts +10 -0
- package/dist/api/input/mouse/MouseButton.d.ts.map +1 -0
- package/dist/api/input/mouse/MouseState.d.ts +52 -0
- package/dist/api/input/mouse/MouseState.d.ts.map +1 -0
- package/dist/api/input/touch/TouchCollection.d.ts +79 -0
- package/dist/api/input/touch/TouchCollection.d.ts.map +1 -0
- package/dist/api/input/touch/TouchLocation.d.ts +80 -0
- package/dist/api/input/touch/TouchLocation.d.ts.map +1 -0
- package/dist/api/input/touch/TouchLocationState.d.ts +16 -0
- package/dist/api/input/touch/TouchLocationState.d.ts.map +1 -0
- package/dist/api/input/touch/TouchPanelCapabilities.d.ts +24 -0
- package/dist/api/input/touch/TouchPanelCapabilities.d.ts.map +1 -0
- package/dist/api/loaders/IImageLoader.d.ts +20 -0
- package/dist/api/loaders/IImageLoader.d.ts.map +1 -0
- package/dist/api/loaders/ImageLoader.d.ts +36 -0
- package/dist/api/loaders/ImageLoader.d.ts.map +1 -0
- package/dist/api/loaders/_export.d.ts +3 -0
- package/dist/api/loaders/_export.d.ts.map +1 -0
- package/dist/api/material/IMaterial.d.ts +35 -0
- package/dist/api/material/IMaterial.d.ts.map +1 -0
- package/dist/api/material/IMaterialFactory.d.ts +19 -0
- package/dist/api/material/IMaterialFactory.d.ts.map +1 -0
- package/dist/api/material/InspectTextureMipsMaterial.d.ts +58 -0
- package/dist/api/material/InspectTextureMipsMaterial.d.ts.map +1 -0
- package/dist/api/material/MaterialFactory.d.ts +20 -0
- package/dist/api/material/MaterialFactory.d.ts.map +1 -0
- package/dist/api/material/UnlitMaterial.d.ts +76 -0
- package/dist/api/material/UnlitMaterial.d.ts.map +1 -0
- package/dist/api/material/_export.d.ts +6 -0
- package/dist/api/material/_export.d.ts.map +1 -0
- package/dist/api/meshes/IMesh.d.ts +17 -0
- package/dist/api/meshes/IMesh.d.ts.map +1 -0
- package/dist/api/meshes/IMeshFactory.d.ts +25 -0
- package/dist/api/meshes/IMeshFactory.d.ts.map +1 -0
- package/dist/api/meshes/Mesh.d.ts +93 -0
- package/dist/api/meshes/Mesh.d.ts.map +1 -0
- package/dist/api/meshes/MeshFactory.d.ts +23 -0
- package/dist/api/meshes/MeshFactory.d.ts.map +1 -0
- package/dist/api/meshes/MeshParameters.d.ts +22 -0
- package/dist/api/meshes/MeshParameters.d.ts.map +1 -0
- package/dist/api/meshes/QuadMesh.d.ts +33 -0
- package/dist/api/meshes/QuadMesh.d.ts.map +1 -0
- package/dist/api/meshes/_export.d.ts +7 -0
- package/dist/api/meshes/_export.d.ts.map +1 -0
- package/dist/api/rendering/IGPUInfo.d.ts +35 -0
- package/dist/api/rendering/IGPUInfo.d.ts.map +1 -0
- package/dist/api/rendering/IGraphicsDevice.d.ts +88 -0
- package/dist/api/rendering/IGraphicsDevice.d.ts.map +1 -0
- package/dist/api/rendering/IGraphicsDeviceFeatures.d.ts +27 -0
- package/dist/api/rendering/IGraphicsDeviceFeatures.d.ts.map +1 -0
- package/dist/api/rendering/IRenderer.d.ts +71 -0
- package/dist/api/rendering/IRenderer.d.ts.map +1 -0
- package/dist/api/rendering/PowerPreference.d.ts +13 -0
- package/dist/api/rendering/PowerPreference.d.ts.map +1 -0
- package/dist/api/rendering/RenderingBackend.d.ts +18 -0
- package/dist/api/rendering/RenderingBackend.d.ts.map +1 -0
- package/dist/api/rendering/_export-rendering.d.ts +7 -0
- package/dist/api/rendering/_export-rendering.d.ts.map +1 -0
- package/dist/api/rendering/blending/IBlendState.d.ts +16 -0
- package/dist/api/rendering/blending/IBlendState.d.ts.map +1 -0
- package/dist/api/rendering/blending/_export.d.ts +2 -0
- package/dist/api/rendering/blending/_export.d.ts.map +1 -0
- package/dist/api/rendering/buffers/BufferUsage.d.ts +57 -0
- package/dist/api/rendering/buffers/BufferUsage.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IBuffer.d.ts +20 -0
- package/dist/api/rendering/buffers/IBuffer.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IBufferFactory.d.ts +34 -0
- package/dist/api/rendering/buffers/IBufferFactory.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IIndexBuffer.d.ts +31 -0
- package/dist/api/rendering/buffers/IIndexBuffer.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IUniformBuffer.d.ts +18 -0
- package/dist/api/rendering/buffers/IUniformBuffer.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IVertexBuffer.d.ts +26 -0
- package/dist/api/rendering/buffers/IVertexBuffer.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IVertexBufferLayout.d.ts +23 -0
- package/dist/api/rendering/buffers/IVertexBufferLayout.d.ts.map +1 -0
- package/dist/api/rendering/buffers/IndexBufferType.d.ts +14 -0
- package/dist/api/rendering/buffers/IndexBufferType.d.ts.map +1 -0
- package/dist/api/rendering/buffers/VertexAttribute.d.ts +22 -0
- package/dist/api/rendering/buffers/VertexAttribute.d.ts.map +1 -0
- package/dist/api/rendering/buffers/VertexStepMode.d.ts +14 -0
- package/dist/api/rendering/buffers/VertexStepMode.d.ts.map +1 -0
- package/dist/api/rendering/buffers/_export-buffers.d.ts +11 -0
- package/dist/api/rendering/buffers/_export-buffers.d.ts.map +1 -0
- package/dist/api/rendering/enums.d.ts +18 -0
- package/dist/api/rendering/enums.d.ts.map +1 -0
- package/dist/api/rendering/primitive/CullMode.d.ts +18 -0
- package/dist/api/rendering/primitive/CullMode.d.ts.map +1 -0
- package/dist/api/rendering/primitive/FrontFace.d.ts +14 -0
- package/dist/api/rendering/primitive/FrontFace.d.ts.map +1 -0
- package/dist/api/rendering/primitive/IPrimitiveState.d.ts +22 -0
- package/dist/api/rendering/primitive/IPrimitiveState.d.ts.map +1 -0
- package/dist/api/rendering/primitive/PrimitiveStateDescriptor.d.ts +24 -0
- package/dist/api/rendering/primitive/PrimitiveStateDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/primitive/PrimitiveTopology.d.ts +26 -0
- package/dist/api/rendering/primitive/PrimitiveTopology.d.ts.map +1 -0
- package/dist/api/rendering/primitive/_export.d.ts +6 -0
- package/dist/api/rendering/primitive/_export.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.d.ts +33 -0
- package/dist/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.d.ts +18 -0
- package/dist/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/IRenderPipeline.d.ts +39 -0
- package/dist/api/rendering/render-pipelines/IRenderPipeline.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/IRenderPipelineFactory.d.ts +42 -0
- package/dist/api/rendering/render-pipelines/IRenderPipelineFactory.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/ISpriteRenderPipeline.d.ts +22 -0
- package/dist/api/rendering/render-pipelines/ISpriteRenderPipeline.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/IUnlitRenderPipeline.d.ts +33 -0
- package/dist/api/rendering/render-pipelines/IUnlitRenderPipeline.d.ts.map +1 -0
- package/dist/api/rendering/render-pipelines/_export-render-pipelines.d.ts +7 -0
- package/dist/api/rendering/render-pipelines/_export-render-pipelines.d.ts.map +1 -0
- package/dist/api/rendering/renderer-interface.d.ts +81 -0
- package/dist/api/rendering/renderer-interface.d.ts.map +1 -0
- package/dist/api/rendering/rendering-limits.d.ts +16 -0
- package/dist/api/rendering/rendering-limits.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/IRenderPass.d.ts +15 -0
- package/dist/api/rendering/renderpass/IRenderPass.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/LoadAction.d.ts +33 -0
- package/dist/api/rendering/renderpass/LoadAction.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/RenderPassColorAttachment.d.ts +53 -0
- package/dist/api/rendering/renderpass/RenderPassColorAttachment.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/RenderPassDepthStencilAttachment.d.ts +56 -0
- package/dist/api/rendering/renderpass/RenderPassDepthStencilAttachment.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/RenderPassDescriptor.d.ts +22 -0
- package/dist/api/rendering/renderpass/RenderPassDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/StoreAction.d.ts +24 -0
- package/dist/api/rendering/renderpass/StoreAction.d.ts.map +1 -0
- package/dist/api/rendering/renderpass/_export.d.ts +7 -0
- package/dist/api/rendering/renderpass/_export.d.ts.map +1 -0
- package/dist/api/rendering/sampler/ISampler.d.ts +43 -0
- package/dist/api/rendering/sampler/ISampler.d.ts.map +1 -0
- package/dist/api/rendering/sampler/MipMapSamplerFilter.d.ts +18 -0
- package/dist/api/rendering/sampler/MipMapSamplerFilter.d.ts.map +1 -0
- package/dist/api/rendering/sampler/SamplerAddressMode.d.ts +24 -0
- package/dist/api/rendering/sampler/SamplerAddressMode.d.ts.map +1 -0
- package/dist/api/rendering/sampler/SamplerDescriptor.d.ts +40 -0
- package/dist/api/rendering/sampler/SamplerDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/sampler/SamplerFilter.d.ts +14 -0
- package/dist/api/rendering/sampler/SamplerFilter.d.ts.map +1 -0
- package/dist/api/rendering/sampler/_export.d.ts +6 -0
- package/dist/api/rendering/sampler/_export.d.ts.map +1 -0
- package/dist/api/rendering/sampler/sampler-enums.d.ts +15 -0
- package/dist/api/rendering/sampler/sampler-enums.d.ts.map +1 -0
- package/dist/api/rendering/swapchain/ISwapChain.d.ts +29 -0
- package/dist/api/rendering/swapchain/ISwapChain.d.ts.map +1 -0
- package/dist/api/rendering/swapchain/SurfacePresentMode.d.ts +23 -0
- package/dist/api/rendering/swapchain/SurfacePresentMode.d.ts.map +1 -0
- package/dist/api/rendering/swapchain/SwapChainDescriptor.d.ts +20 -0
- package/dist/api/rendering/swapchain/SwapChainDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/swapchain/_export.d.ts +4 -0
- package/dist/api/rendering/swapchain/_export.d.ts.map +1 -0
- package/dist/api/rendering/texture/ITexture2D.d.ts +83 -0
- package/dist/api/rendering/texture/ITexture2D.d.ts.map +1 -0
- package/dist/api/rendering/texture/ITextureFactory.d.ts +42 -0
- package/dist/api/rendering/texture/ITextureFactory.d.ts.map +1 -0
- package/dist/api/rendering/texture/ITextureView.d.ts +17 -0
- package/dist/api/rendering/texture/ITextureView.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureDescriptor.d.ts +42 -0
- package/dist/api/rendering/texture/TextureDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureFormat.d.ts +54 -0
- package/dist/api/rendering/texture/TextureFormat.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureUsage.d.ts +42 -0
- package/dist/api/rendering/texture/TextureUsage.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureUtilities.d.ts +54 -0
- package/dist/api/rendering/texture/TextureUtilities.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureViewDescriptor.d.ts +22 -0
- package/dist/api/rendering/texture/TextureViewDescriptor.d.ts.map +1 -0
- package/dist/api/rendering/texture/TextureViewDimension.d.ts +17 -0
- package/dist/api/rendering/texture/TextureViewDimension.d.ts.map +1 -0
- package/dist/api/rendering/texture/_export-texture.d.ts +10 -0
- package/dist/api/rendering/texture/_export-texture.d.ts.map +1 -0
- package/dist/api/shader/IShaderModule.d.ts +21 -0
- package/dist/api/shader/IShaderModule.d.ts.map +1 -0
- package/dist/api/shader/IShaderModuleLoader.d.ts +13 -0
- package/dist/api/shader/IShaderModuleLoader.d.ts.map +1 -0
- package/dist/api/shader/ShaderStage.d.ts +10 -0
- package/dist/api/shader/ShaderStage.d.ts.map +1 -0
- package/dist/api/shader/_export-shader.d.ts +4 -0
- package/dist/api/shader/_export-shader.d.ts.map +1 -0
- package/dist/api/shader/shader-loader.d.ts +12 -0
- package/dist/api/shader/shader-loader.d.ts.map +1 -0
- package/dist/api/sprites/ISpriteBatch.d.ts +114 -0
- package/dist/api/sprites/ISpriteBatch.d.ts.map +1 -0
- package/dist/api/sprites/SpriteBatch.d.ts +50 -0
- package/dist/api/sprites/SpriteBatch.d.ts.map +1 -0
- package/dist/api/sprites/SpriteBatchDrawable.d.ts +57 -0
- package/dist/api/sprites/SpriteBatchDrawable.d.ts.map +1 -0
- package/dist/api/sprites/SpriteBatchMesh.d.ts +32 -0
- package/dist/api/sprites/SpriteBatchMesh.d.ts.map +1 -0
- package/dist/api/sprites/_export_sprites.d.ts +2 -0
- package/dist/api/sprites/_export_sprites.d.ts.map +1 -0
- package/dist/api/time/GameTime.d.ts +23 -0
- package/dist/api/time/GameTime.d.ts.map +1 -0
- package/dist/api/time/ITimeManager.d.ts +19 -0
- package/dist/api/time/ITimeManager.d.ts.map +1 -0
- package/dist/api/time/TimeManager.d.ts +15 -0
- package/dist/api/time/TimeManager.d.ts.map +1 -0
- package/dist/api/time/_export_time.d.ts +4 -0
- package/dist/api/time/_export_time.d.ts.map +1 -0
- package/dist/api/utilities/AlignUtilities.d.ts +20 -0
- package/dist/api/utilities/AlignUtilities.d.ts.map +1 -0
- package/dist/api/utilities/GeometryUtilities.d.ts +13 -0
- package/dist/api/utilities/GeometryUtilities.d.ts.map +1 -0
- package/dist/api/utilities/MathHelper.d.ts +162 -0
- package/dist/api/utilities/MathHelper.d.ts.map +1 -0
- package/dist/api/utilities/_export.d.ts +4 -0
- package/dist/api/utilities/_export.d.ts.map +1 -0
- package/dist/api/window/IWindowManager.d.ts +64 -0
- package/dist/api/window/IWindowManager.d.ts.map +1 -0
- package/dist/api/window/WindowBounds.d.ts +16 -0
- package/dist/api/window/WindowBounds.d.ts.map +1 -0
- package/dist/api/window/WindowManager.d.ts +32 -0
- package/dist/api/window/WindowManager.d.ts.map +1 -0
- package/dist/api/window/_export.d.ts +3 -0
- package/dist/api/window/_export.d.ts.map +1 -0
- package/dist/core/rendering/AGraphicsDevice.d.ts +73 -0
- package/dist/core/rendering/AGraphicsDevice.d.ts.map +1 -0
- package/dist/core/rendering/ARenderer.d.ts +74 -0
- package/dist/core/rendering/ARenderer.d.ts.map +1 -0
- package/dist/core/rendering/blending/blend-component-descriptor.d.ts +25 -0
- package/dist/core/rendering/blending/blend-component-descriptor.d.ts.map +1 -0
- package/dist/core/rendering/blending/blend-state-descriptor.d.ts +29 -0
- package/dist/core/rendering/blending/blend-state-descriptor.d.ts.map +1 -0
- package/dist/core/rendering/blending/enums.d.ts +43 -0
- package/dist/core/rendering/blending/enums.d.ts.map +1 -0
- package/dist/core/rendering/enums.d.ts +20 -0
- package/dist/core/rendering/enums.d.ts.map +1 -0
- package/dist/core/rendering/sampler/sampler-descriptor.d.ts +28 -0
- package/dist/core/rendering/sampler/sampler-descriptor.d.ts.map +1 -0
- package/dist/core/rendering/texture/texture.d.ts +69 -0
- package/dist/core/rendering/texture/texture.d.ts.map +1 -0
- package/dist/core/rendering/vertex-buffer-layout.d.ts +22 -0
- package/dist/core/rendering/vertex-buffer-layout.d.ts.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8054 -0
- package/dist/libktx-Cjh8w7XG-DhnH9lxr.js +4 -0
- package/dist/webgl/WebGLGraphicsDeviceFeatures.d.ts +31 -0
- package/dist/webgl/WebGLGraphicsDeviceFeatures.d.ts.map +1 -0
- package/dist/webgl/WebGlGpuInfo.d.ts +25 -0
- package/dist/webgl/WebGlGpuInfo.d.ts.map +1 -0
- package/dist/webgl/WebGlGraphicsDevice.d.ts +47 -0
- package/dist/webgl/WebGlGraphicsDevice.d.ts.map +1 -0
- package/dist/webgl/WebGlRenderer.d.ts +18 -0
- package/dist/webgl/WebGlRenderer.d.ts.map +1 -0
- package/dist/webgl/blending/webgl-blend-state.d.ts +33 -0
- package/dist/webgl/blending/webgl-blend-state.d.ts.map +1 -0
- package/dist/webgl/buffers/WebGlBuffersFactory.d.ts +16 -0
- package/dist/webgl/buffers/WebGlBuffersFactory.d.ts.map +1 -0
- package/dist/webgl/buffers/WebGlUniformBuffer.d.ts +34 -0
- package/dist/webgl/buffers/WebGlUniformBuffer.d.ts.map +1 -0
- package/dist/webgl/buffers/WebGlVertexBuffer.d.ts +48 -0
- package/dist/webgl/buffers/WebGlVertexBuffer.d.ts.map +1 -0
- package/dist/webgl/buffers/webgl-index-buffer.d.ts +43 -0
- package/dist/webgl/buffers/webgl-index-buffer.d.ts.map +1 -0
- package/dist/webgl/cast/cast.d.ts +52 -0
- package/dist/webgl/cast/cast.d.ts.map +1 -0
- package/dist/webgl/primitive/WebGlPrimitiveState.d.ts +29 -0
- package/dist/webgl/primitive/WebGlPrimitiveState.d.ts.map +1 -0
- package/dist/webgl/render-pass/WebGlRenderPass.d.ts +34 -0
- package/dist/webgl/render-pass/WebGlRenderPass.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/AWebGlRenderPipeline.d.ts +53 -0
- package/dist/webgl/render-pipelines/AWebGlRenderPipeline.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.d.ts +30 -0
- package/dist/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/WebGlRenderPipelineFactory.d.ts +24 -0
- package/dist/webgl/render-pipelines/WebGlRenderPipelineFactory.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.d.ts +57 -0
- package/dist/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.d.ts +57 -0
- package/dist/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.d.ts.map +1 -0
- package/dist/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.d.ts +40 -0
- package/dist/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.d.ts.map +1 -0
- package/dist/webgl/rendering/webgl-vertex-attribute.d.ts +10 -0
- package/dist/webgl/rendering/webgl-vertex-attribute.d.ts.map +1 -0
- package/dist/webgl/rendering/webgl-vertex-buffer-layout.d.ts +27 -0
- package/dist/webgl/rendering/webgl-vertex-buffer-layout.d.ts.map +1 -0
- package/dist/webgl/sampler/webgl-sampler.d.ts +48 -0
- package/dist/webgl/sampler/webgl-sampler.d.ts.map +1 -0
- package/dist/webgl/shader/WebGlShaderModule.d.ts +34 -0
- package/dist/webgl/shader/WebGlShaderModule.d.ts.map +1 -0
- package/dist/webgl/shader/WebGlShaderModuleLoader.d.ts +19 -0
- package/dist/webgl/shader/WebGlShaderModuleLoader.d.ts.map +1 -0
- package/dist/webgl/swap-chain/WebGlSwapChain.d.ts +27 -0
- package/dist/webgl/swap-chain/WebGlSwapChain.d.ts.map +1 -0
- package/dist/webgl/texture/WebGlTexture2D.d.ts +37 -0
- package/dist/webgl/texture/WebGlTexture2D.d.ts.map +1 -0
- package/dist/webgl/texture/WebGlTextureFactory.d.ts +17 -0
- package/dist/webgl/texture/WebGlTextureFactory.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlBufferUtilities.d.ts +45 -0
- package/dist/webgl/utilities/WebGlBufferUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlConverter.d.ts +108 -0
- package/dist/webgl/utilities/WebGlConverter.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlFrameBufferUtilities.d.ts +54 -0
- package/dist/webgl/utilities/WebGlFrameBufferUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlSamplerUtilities.d.ts +23 -0
- package/dist/webgl/utilities/WebGlSamplerUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlShaderUtilities.d.ts +28 -0
- package/dist/webgl/utilities/WebGlShaderUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlTextureUtilities.d.ts +33 -0
- package/dist/webgl/utilities/WebGlTextureUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/WebGlUtilities.d.ts +60 -0
- package/dist/webgl/utilities/WebGlUtilities.d.ts.map +1 -0
- package/dist/webgl/utilities/spector-js-utilities.d.ts +9 -0
- package/dist/webgl/utilities/spector-js-utilities.d.ts.map +1 -0
- package/dist/webgl/utilities/webgl-blending-utilities.d.ts +17 -0
- package/dist/webgl/utilities/webgl-blending-utilities.d.ts.map +1 -0
- package/dist/webgl/utilities/webgl-culling-utilities.d.ts +13 -0
- package/dist/webgl/utilities/webgl-culling-utilities.d.ts.map +1 -0
- package/dist/webgl/utilities/webgl-filter-anisotropic-utilities.d.ts +24 -0
- package/dist/webgl/utilities/webgl-filter-anisotropic-utilities.d.ts.map +1 -0
- package/dist/webgl/utilities/webgl-program-utilities.d.ts +14 -0
- package/dist/webgl/utilities/webgl-program-utilities.d.ts.map +1 -0
- package/dist/webgl/utilities/webgl-renderbuffer-utilities.d.ts +17 -0
- package/dist/webgl/utilities/webgl-renderbuffer-utilities.d.ts.map +1 -0
- package/package.json +19 -12
- package/shaders/glsl/sprite_fs.glsl +1 -1
- package/src/{core/Framework.ts → Framework.ts} +78 -38
- package/src/api/FrameworkConfiguration.ts +29 -0
- package/src/api/IFramework.ts +153 -0
- package/src/api/IFrameworkConfiguration.ts +30 -0
- package/src/api/_export.ts +26 -0
- package/src/api/camera/CameraFactory.ts +56 -0
- package/src/api/camera/ICamera.ts +52 -0
- package/src/api/camera/ICameraFactory.ts +69 -0
- package/src/api/camera/IOrthographicCamera.ts +38 -0
- package/src/api/camera/OrbitCamera.ts +402 -0
- package/src/api/camera/OrthographicCamera.ts +257 -0
- package/src/api/camera/PerspectiveCamera.ts +206 -0
- package/src/api/camera/_export.ts +7 -0
- package/src/api/content/ContentConfig.ts +11 -0
- package/src/{core → api}/content/ContentManager.ts +4 -3
- package/src/api/content/IContent.ts +9 -0
- package/src/api/content/IContentManager.ts +41 -0
- package/src/api/content/IContentModule.ts +67 -0
- package/src/{content → api/content}/ShaderModuleContent.ts +8 -8
- package/src/api/content/_export-content.ts +4 -0
- package/src/api/core/IDisposable.ts +10 -0
- package/src/api/core/_export-core.ts +1 -0
- package/src/api/data/Color.ts +228 -0
- package/src/api/data/Rect.ts +92 -0
- package/src/api/data/State.ts +10 -0
- package/src/api/data/_export.ts +3 -0
- package/src/{geometry → api/geometry}/BaseGeometry.ts +15 -2
- package/src/{geometry → api/geometry}/GeometryBuilder.ts +1 -1
- package/src/api/geometry/GeometryFormat.ts +33 -0
- package/src/api/geometry/IGeometry.ts +66 -0
- package/src/api/geometry/IGeometryBuilder.ts +17 -0
- package/src/{VertexFormat.ts → api/geometry/VertexFormat.ts} +3 -7
- package/src/api/geometry/_export-geometry.ts +4 -0
- package/src/api/image/CpuImageProcessor.ts +125 -0
- package/src/api/image/IImageProcessor.ts +28 -0
- package/src/api/image/RawImageData.ts +47 -0
- package/src/api/image/_export.ts +3 -0
- package/src/api/index.ts +1 -0
- package/src/api/input/IInputManager.ts +62 -0
- package/src/api/input/InputDeviceType.ts +20 -0
- package/src/api/input/InputManager.ts +513 -0
- package/src/api/input/Key.ts +35 -0
- package/src/api/input/KeyboardState.ts +44 -0
- package/src/api/input/_export.ts +13 -0
- package/src/api/input/gamepad/Button.ts +21 -0
- package/src/api/input/gamepad/GamePadState.ts +65 -0
- package/src/api/input/gamepad/GamePadThumbSticks.ts +18 -0
- package/src/api/input/mouse/MouseButton.ts +9 -0
- package/src/api/input/mouse/MouseState.ts +70 -0
- package/src/api/input/touch/TouchCollection.ts +164 -0
- package/src/api/input/touch/TouchLocation.ts +159 -0
- package/src/api/input/touch/TouchLocationState.ts +15 -0
- package/src/api/input/touch/TouchPanelCapabilities.ts +31 -0
- package/src/api/loaders/IImageLoader.ts +22 -0
- package/src/api/loaders/ImageLoader.ts +93 -0
- package/src/api/loaders/_export.ts +2 -0
- package/src/api/material/IMaterial.ts +41 -0
- package/src/api/material/IMaterialFactory.ts +21 -0
- package/src/api/material/InspectTextureMipsMaterial.ts +113 -0
- package/src/api/material/MaterialFactory.ts +27 -0
- package/src/api/material/UnlitMaterial.ts +143 -0
- package/src/api/material/_export.ts +5 -0
- package/src/api/meshes/IMesh.ts +20 -0
- package/src/api/meshes/IMeshFactory.ts +28 -0
- package/src/api/meshes/Mesh.ts +256 -0
- package/src/api/meshes/MeshFactory.ts +36 -0
- package/src/api/meshes/MeshParameters.ts +25 -0
- package/src/api/meshes/QuadMesh.ts +104 -0
- package/src/api/meshes/_export.ts +6 -0
- package/src/api/rendering/IGPUInfo.ts +42 -0
- package/src/api/rendering/IGraphicsDevice.ts +103 -0
- package/src/api/rendering/IGraphicsDeviceFeatures.ts +32 -0
- package/src/api/rendering/IRenderer.ts +84 -0
- package/src/api/rendering/PowerPreference.ts +15 -0
- package/src/api/rendering/RenderingBackend.ts +20 -0
- package/src/api/rendering/_export-rendering.ts +6 -0
- package/src/api/rendering/blending/IBlendState.ts +17 -0
- package/src/api/rendering/blending/_export.ts +1 -0
- package/src/api/rendering/buffers/BufferUsage.ts +56 -0
- package/src/api/rendering/buffers/IBuffer.ts +24 -0
- package/src/api/rendering/buffers/IBufferFactory.ts +38 -0
- package/src/api/rendering/buffers/IIndexBuffer.ts +37 -0
- package/src/api/rendering/buffers/IUniformBuffer.ts +21 -0
- package/src/api/rendering/buffers/IVertexBuffer.ts +32 -0
- package/src/api/rendering/buffers/IVertexBufferLayout.ts +27 -0
- package/src/api/rendering/buffers/IndexBufferType.ts +13 -0
- package/src/api/rendering/buffers/VertexAttribute.ts +26 -0
- package/src/api/rendering/buffers/VertexStepMode.ts +13 -0
- package/src/api/rendering/buffers/_export-buffers.ts +11 -0
- package/src/api/rendering/primitive/CullMode.ts +17 -0
- package/src/api/rendering/primitive/FrontFace.ts +13 -0
- package/src/api/rendering/primitive/IPrimitiveState.ts +25 -0
- package/src/api/rendering/primitive/PrimitiveStateDescriptor.ts +27 -0
- package/src/api/rendering/primitive/PrimitiveTopology.ts +25 -0
- package/src/api/rendering/primitive/_export.ts +5 -0
- package/src/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.ts +38 -0
- package/src/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.ts +21 -0
- package/src/api/rendering/render-pipelines/IRenderPipeline.ts +47 -0
- package/src/api/rendering/render-pipelines/IRenderPipelineFactory.ts +52 -0
- package/src/api/rendering/render-pipelines/ISpriteRenderPipeline.ts +25 -0
- package/src/api/rendering/render-pipelines/IUnlitRenderPipeline.ts +38 -0
- package/src/api/rendering/render-pipelines/_export-render-pipelines.ts +6 -0
- package/src/{core/renderer → api/rendering}/renderer-interface.ts +15 -9
- package/src/api/rendering/renderpass/IRenderPass.ts +18 -0
- package/src/api/rendering/renderpass/LoadAction.ts +32 -0
- package/src/api/rendering/renderpass/RenderPassColorAttachment.ts +61 -0
- package/src/api/rendering/renderpass/RenderPassDepthStencilAttachment.ts +76 -0
- package/src/api/rendering/renderpass/RenderPassDescriptor.ts +26 -0
- package/src/api/rendering/renderpass/StoreAction.ts +23 -0
- package/src/api/rendering/renderpass/_export.ts +6 -0
- package/src/api/rendering/sampler/ISampler.ts +52 -0
- package/src/api/rendering/sampler/MipMapSamplerFilter.ts +17 -0
- package/src/api/rendering/sampler/SamplerAddressMode.ts +23 -0
- package/src/api/rendering/sampler/SamplerDescriptor.ts +46 -0
- package/src/api/rendering/sampler/SamplerFilter.ts +13 -0
- package/src/api/rendering/sampler/_export.ts +5 -0
- package/src/api/rendering/sampler/sampler-enums.ts +20 -0
- package/src/api/rendering/swapchain/ISwapChain.ts +33 -0
- package/src/api/rendering/swapchain/SurfacePresentMode.ts +22 -0
- package/src/api/rendering/swapchain/SwapChainDescriptor.ts +23 -0
- package/src/api/rendering/swapchain/_export.ts +3 -0
- package/src/api/rendering/texture/ITexture2D.ts +100 -0
- package/src/api/rendering/texture/ITextureFactory.ts +56 -0
- package/src/api/rendering/texture/ITextureView.ts +20 -0
- package/src/api/rendering/texture/TextureDescriptor.ts +52 -0
- package/src/api/rendering/texture/TextureFormat.ts +58 -0
- package/src/api/rendering/texture/TextureUsage.ts +41 -0
- package/src/api/rendering/texture/TextureUtilities.ts +149 -0
- package/src/api/rendering/texture/TextureViewDescriptor.ts +25 -0
- package/src/api/rendering/texture/TextureViewDimension.ts +16 -0
- package/src/api/rendering/texture/_export-texture.ts +9 -0
- package/src/api/shader/IShaderModule.ts +23 -0
- package/src/api/shader/IShaderModuleLoader.ts +15 -0
- package/src/api/shader/ShaderStage.ts +9 -0
- package/src/api/shader/_export-shader.ts +3 -0
- package/src/{core → api}/shader/shader-loader.ts +1 -1
- package/src/api/sprites/ISpriteBatch.ts +144 -0
- package/src/{core/sprite-batch → api/sprites}/SpriteBatch.ts +8 -5
- package/src/{core/sprite-batch → api/sprites}/SpriteBatchDrawable.ts +6 -6
- package/src/{core/sprite-batch → api/sprites}/SpriteBatchMesh.ts +8 -4
- package/src/api/sprites/_export_sprites.ts +1 -0
- package/src/api/time/GameTime.ts +30 -0
- package/src/api/time/ITimeManager.ts +22 -0
- package/src/api/time/TimeManager.ts +33 -0
- package/src/api/time/_export_time.ts +3 -0
- package/src/api/utilities/AlignUtilities.ts +39 -0
- package/src/api/utilities/GeometryUtilities.ts +20 -0
- package/src/api/utilities/MathHelper.ts +256 -0
- package/src/api/utilities/_export.ts +3 -0
- package/src/api/window/IWindowManager.ts +78 -0
- package/src/api/window/WindowBounds.ts +17 -0
- package/src/{core/window/window-manager.ts → api/window/WindowManager.ts} +2 -2
- package/src/api/window/_export.ts +2 -0
- package/src/core/rendering/AGraphicsDevice.ts +15 -9
- package/src/core/rendering/ARenderer.ts +7 -7
- package/src/core/rendering/blending/enums.ts +5 -5
- package/src/core/rendering/sampler/sampler-descriptor.ts +1 -1
- package/src/core/rendering/texture/texture.ts +4 -3
- package/src/core/rendering/vertex-buffer-layout.ts +3 -4
- package/src/glsl-raw.d.ts +4 -0
- package/src/index.ts +3 -2
- package/src/main.ts +5 -10
- package/src/webgl/WebGLGraphicsDeviceFeatures.ts +1 -1
- package/src/webgl/WebGlGpuInfo.ts +1 -1
- package/src/webgl/WebGlGraphicsDevice.ts +19 -15
- package/src/webgl/WebGlRenderer.ts +7 -5
- package/src/webgl/blending/webgl-blend-state.ts +1 -1
- package/src/webgl/buffers/WebGlBuffersFactory.ts +1 -1
- package/src/webgl/buffers/WebGlUniformBuffer.ts +1 -1
- package/src/webgl/buffers/WebGlVertexBuffer.ts +8 -7
- package/src/webgl/buffers/webgl-index-buffer.ts +2 -2
- package/src/webgl/cast/cast.ts +2 -2
- package/src/webgl/primitive/WebGlPrimitiveState.ts +7 -3
- package/src/webgl/render-pass/WebGlRenderPass.ts +17 -8
- package/src/webgl/render-pipelines/AWebGlRenderPipeline.ts +1 -1
- package/src/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.ts +10 -2
- package/src/webgl/render-pipelines/WebGlRenderPipelineFactory.ts +1 -1
- package/src/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.ts +3 -3
- package/src/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.ts +2 -2
- package/src/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.ts +2 -2
- package/src/webgl/sampler/webgl-sampler.ts +2 -2
- package/src/webgl/shader/WebGlShaderModule.ts +2 -2
- package/src/webgl/shader/WebGlShaderModuleLoader.ts +1 -1
- package/src/webgl/swap-chain/WebGlSwapChain.ts +1 -1
- package/src/webgl/texture/WebGlTexture2D.ts +6 -4
- package/src/webgl/texture/WebGlTextureFactory.ts +7 -7
- package/src/webgl/utilities/WebGlBufferUtilities.ts +1 -1
- package/src/webgl/utilities/WebGlConverter.ts +19 -62
- package/src/webgl/utilities/WebGlFrameBufferUtilities.ts +1 -1
- package/src/webgl/utilities/WebGlSamplerUtilities.ts +4 -4
- package/src/webgl/utilities/WebGlTextureUtilities.ts +29 -20
- package/src/webgl/utilities/webgl-culling-utilities.ts +1 -1
- package/src/webgl/utilities/webgl-filter-anisotropic-utilities.ts +1 -1
- package/src/webgl/utilities/webgl-renderbuffer-utilities.ts +1 -1
- package/dist/assets/_ris-ktx2-node-module-stub-DwDS30PT.js +0 -1
- package/dist/assets/cat.jpg +0 -0
- package/dist/assets/index-BmeGit54.css +0 -1
- package/dist/assets/index-qyn4pzGw.js +0 -151
- package/dist/assets/libktx-Cjh8w7XG-Ci1Fm_MH.js +0 -1
- package/dist/assets/test.png +0 -0
- package/dist/index.html +0 -16
- package/dist/vite.svg +0 -1
- package/src/TextureFormat.ts +0 -0
- package/src/common/sampler-enums.ts +0 -21
- package/src/common/vertex-step-mode.ts +0 -12
- package/src/core/FrameworkConfig.ts +0 -31
- package/src/core/buffers/buffers-factory-interface.ts +0 -0
- package/src/core/buffers/vertex-buffer-interface.ts +0 -0
- package/src/core/dependency-injection/register-services-interface.ts +0 -15
- package/src/core/framework-interface.ts +0 -0
- package/src/core/input/InputManager.ts +0 -115
- package/src/core/rendering/primitive/PrimitiveStateDescriptor.ts +0 -32
- package/src/core/rendering/primitive/enums.ts +0 -68
- package/src/core/rendering/render-pass/render-pass-descriptor.ts +0 -0
- package/src/core/rendering/render-pass/render-pass-interface.ts +0 -17
- package/src/core/rendering/vertex-attribute.ts +0 -20
- package/src/core/shader/shader-module-interface.ts +0 -1
- package/src/counter.ts +0 -9
- package/src/geometry/GeometryFormat.ts +0 -37
- package/src/webgl/utilities/webgl-render-buffer-utilities.ts +0 -23
- /package/src/{core/renderer → api/rendering}/enums.ts +0 -0
- /package/src/{core/renderer → api/rendering}/rendering-limits.ts +0 -0
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { IDisposable } from "../core/IDisposable.ts";
|
|
2
|
+
import {WindowBounds} from "./WindowBounds.ts";
|
|
3
|
+
import {vec2} from "gl-matrix";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* The interface for the window manager.
|
|
7
|
+
*/
|
|
8
|
+
export interface IWindowManager extends IDisposable {
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Gets the HTMLCanvasElement associated with this WindowManager.
|
|
12
|
+
*/
|
|
13
|
+
get canvas(): HTMLCanvasElement;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* If the window manager handles the swap chain.
|
|
17
|
+
* In some cases we don't want to handle the swap chain, for example, when embedding the framework into other applications,
|
|
18
|
+
* such as Avalonia.
|
|
19
|
+
* By default, it is true.
|
|
20
|
+
*/
|
|
21
|
+
readonly handleSwapChain: boolean;
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* The client bounds or client window size.
|
|
25
|
+
*/
|
|
26
|
+
readonly windowBounds: WindowBounds;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Gets or sets the title of the window.
|
|
30
|
+
*/
|
|
31
|
+
title: string;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Adds a listener that runs on every frame, before the render listeners.
|
|
35
|
+
*/
|
|
36
|
+
addUpdateListener(event: () => void): void;
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Removes an update listener. An unknown listener is ignored.
|
|
40
|
+
*/
|
|
41
|
+
removeUpdateListener(event: () => void): void;
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Adds a listener that runs on every frame, after the update listeners.
|
|
45
|
+
*/
|
|
46
|
+
addRenderListener(event: () => void): void;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Removes a render listener. An unknown listener is ignored.
|
|
50
|
+
*/
|
|
51
|
+
removeRenderListener(event: () => void): void;
|
|
52
|
+
|
|
53
|
+
/**
|
|
54
|
+
* Adds a listener that is called when the window is resized.
|
|
55
|
+
*/
|
|
56
|
+
addOnResizeListener(event: (arg1: IWindowManager, arg2: vec2) => void): void;
|
|
57
|
+
|
|
58
|
+
/**
|
|
59
|
+
* Removes a resize listener.
|
|
60
|
+
*/
|
|
61
|
+
removeOnResizeListener(event: (arg1: IWindowManager, arg2: vec2) => void): void;
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Initialize the window manager for WebGPU.
|
|
65
|
+
*/
|
|
66
|
+
initializeForWebGPU(): void;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* The initialization for WebGL.
|
|
70
|
+
*/
|
|
71
|
+
initializeForWebGl(): void;
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* Runs the event loop.
|
|
75
|
+
*/
|
|
76
|
+
runEventLoop(): void;
|
|
77
|
+
|
|
78
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WindowBounds represents the width and height of a window.
|
|
3
|
+
* @param width - The width of a window. By default, it is 800.
|
|
4
|
+
* @param height - The height of a window. By default, it is 600.
|
|
5
|
+
*/
|
|
6
|
+
export class WindowBounds {
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Creates window bounds with the given width and height.
|
|
10
|
+
* @param width - The width of a window. By default, it is 800.
|
|
11
|
+
* @param height - The height of a window. By default, it is 600.
|
|
12
|
+
*/
|
|
13
|
+
public constructor(
|
|
14
|
+
public readonly width: number = 800,
|
|
15
|
+
public readonly height: number = 600) {
|
|
16
|
+
}
|
|
17
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { vec2 } from "gl-matrix";
|
|
2
|
-
import {WindowBounds, type IWindowManager} from "
|
|
2
|
+
import {WindowBounds, type IWindowManager} from "../index.ts";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
5
|
* The implementation of the IWindowManager interface.
|
|
@@ -11,7 +11,7 @@ export class WindowManager implements IWindowManager {
|
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* The constructor for the WindowManager class.
|
|
14
|
-
* @param canvas An optional HTMLCanvasElement to associate with the window manager. If
|
|
14
|
+
* @param canvas An optional HTMLCanvasElement to associate with the window manager. If `null`, the window manager creates its own canvas and appends it to `document.body`.
|
|
15
15
|
*/
|
|
16
16
|
public constructor(canvas: HTMLCanvasElement | null = null) {
|
|
17
17
|
this._canvas = canvas ?? document.createElement("canvas");
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import {BlendStateDescriptor} from "./blending/blend-state-descriptor";
|
|
2
2
|
import {TextureSamplerFilteringPreset} from "./enums";
|
|
3
|
-
import type {PrimitiveStateDescriptor} from "./primitive/PrimitiveStateDescriptor.ts";
|
|
4
|
-
import type {IRenderPass} from "./render-pass/render-pass-interface";
|
|
5
3
|
import {SamplerDescriptor} from "./sampler/sampler-descriptor";
|
|
6
4
|
import {
|
|
7
5
|
type IGPUInfo,
|
|
@@ -10,20 +8,28 @@ import {
|
|
|
10
8
|
type IBlendState,
|
|
11
9
|
type IPrimitiveState,
|
|
12
10
|
type IGraphicsDevice, SwapChainDescriptor, type RenderPassDescriptor, SamplerFilter, MipMapSamplerFilter,
|
|
13
|
-
type ISwapChain
|
|
14
|
-
} from "
|
|
11
|
+
type ISwapChain, type IRenderPass, type PrimitiveStateDescriptor
|
|
12
|
+
} from "../../api/index.ts";
|
|
13
|
+
import {PowerPreferenceType} from "../../api/rendering/PowerPreference.ts";
|
|
15
14
|
|
|
16
15
|
/**
|
|
17
16
|
* The descriptor for the graphics device. This is used to configure the graphics device during initialization.
|
|
17
|
+
* @internal
|
|
18
18
|
*/
|
|
19
|
-
export
|
|
19
|
+
export interface IGraphicsDeviceDescriptor {
|
|
20
|
+
|
|
21
|
+
/** Should back buffer use alpha. */
|
|
22
|
+
alpha: boolean;
|
|
23
|
+
|
|
24
|
+
/** The preference when it comes to selecting GPU device. Only makes sense to set on multi-GPU devices. */
|
|
25
|
+
powerPreference: PowerPreferenceType;
|
|
20
26
|
|
|
21
27
|
/**
|
|
22
28
|
* Defines the preset for texture sampler filtering.
|
|
23
29
|
* This is used to configure the default texture sampler in the graphics device.
|
|
24
30
|
* The default texture sampler is used when a texture is sampled without a specific sampler being bound.
|
|
25
31
|
*/
|
|
26
|
-
|
|
32
|
+
samplerFilteringPreset: TextureSamplerFilteringPreset;
|
|
27
33
|
}
|
|
28
34
|
|
|
29
35
|
/**
|
|
@@ -31,7 +37,7 @@ export class GraphicsDeviceDescriptor {
|
|
|
31
37
|
*/
|
|
32
38
|
export abstract class AGraphicsDevice implements IGraphicsDevice {
|
|
33
39
|
|
|
34
|
-
protected readonly _descriptor:
|
|
40
|
+
protected readonly _descriptor: IGraphicsDeviceDescriptor;
|
|
35
41
|
protected _defaultTextureSampler: ISampler = null!;
|
|
36
42
|
protected _defaultBlendState: IBlendState = null!;
|
|
37
43
|
protected _defaultPrimitiveState: IPrimitiveState = null!;
|
|
@@ -40,7 +46,7 @@ export abstract class AGraphicsDevice implements IGraphicsDevice {
|
|
|
40
46
|
* The constructor.
|
|
41
47
|
* @param descriptor The descriptor for the graphics device. This is used to configure the graphics device during initialization.
|
|
42
48
|
*/
|
|
43
|
-
protected constructor(descriptor:
|
|
49
|
+
protected constructor(descriptor: IGraphicsDeviceDescriptor) {
|
|
44
50
|
this._descriptor = descriptor;
|
|
45
51
|
}
|
|
46
52
|
|
|
@@ -70,7 +76,7 @@ export abstract class AGraphicsDevice implements IGraphicsDevice {
|
|
|
70
76
|
* @returns The default texture sampler configured according to the sampler filtering preset specified in the graphics device descriptor.
|
|
71
77
|
*/
|
|
72
78
|
protected configureAndCreateDefaultSampler(): ISampler {
|
|
73
|
-
|
|
79
|
+
const samplerDescriptor = new SamplerDescriptor();
|
|
74
80
|
samplerDescriptor.minFilter = this._descriptor.samplerFilteringPreset == TextureSamplerFilteringPreset.POINT ? SamplerFilter.NEAREST : SamplerFilter.LINEAR;
|
|
75
81
|
samplerDescriptor.magFilter = this._descriptor.samplerFilteringPreset == TextureSamplerFilteringPreset.POINT ? SamplerFilter.NEAREST : SamplerFilter.LINEAR;
|
|
76
82
|
samplerDescriptor.mipMapFilter = this._descriptor.samplerFilteringPreset == TextureSamplerFilteringPreset.TRILINEAR ? MipMapSamplerFilter.LINEAR : MipMapSamplerFilter.NONE;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
import type { ITempRenderer } from "
|
|
2
|
-
import type { IRenderPass } from "./render-pass/render-pass-interface.ts";
|
|
1
|
+
import type { ITempRenderer } from "../../api/rendering/renderer-interface.ts";
|
|
3
2
|
import type { vec2 } from "gl-matrix";
|
|
4
|
-
import type { RenderingLimits } from "
|
|
3
|
+
import type { RenderingLimits } from "../../api/rendering/rendering-limits.ts";
|
|
5
4
|
import {
|
|
6
|
-
type IFramework, type IGraphicsDevice, type IMainRenderTargetRenderPipeline, type ISwapChain,
|
|
5
|
+
type IFramework, type IGraphicsDevice, type IMainRenderTargetRenderPipeline, type IRenderPass, type ISwapChain,
|
|
7
6
|
type ITexture2D, type IWindowManager,
|
|
8
7
|
RenderingBackend,
|
|
9
8
|
RenderPassColorAttachment, RenderPassDepthStencilAttachment,
|
|
10
9
|
RenderPassDescriptor, SwapChainDescriptor,
|
|
11
10
|
TextureUsage
|
|
12
|
-
} from "
|
|
13
|
-
import {TextureFormat, Color} from "
|
|
11
|
+
} from "../../api/index.ts";
|
|
12
|
+
import {TextureFormat, Color} from "../../api/index.ts";
|
|
14
13
|
|
|
15
14
|
export abstract class ARenderer implements ITempRenderer {
|
|
16
15
|
|
|
@@ -148,6 +147,7 @@ export abstract class ARenderer implements ITempRenderer {
|
|
|
148
147
|
|
|
149
148
|
let colorAttachment = new RenderPassColorAttachment();
|
|
150
149
|
colorAttachment.swapChain = this._swapChain;
|
|
150
|
+
colorAttachment.clearColor = Color.transparent();
|
|
151
151
|
this._swapChainRenderPass = this._graphicsDevice.createRenderPass({
|
|
152
152
|
colorAttachments: [colorAttachment],
|
|
153
153
|
});
|
|
@@ -164,7 +164,7 @@ export abstract class ARenderer implements ITempRenderer {
|
|
|
164
164
|
// Create a main frame buffer.
|
|
165
165
|
this._mainRenderTarget = this._framework.textureFactory.createEmpty(
|
|
166
166
|
this.backBufferSize[0], this.backBufferSize[1],
|
|
167
|
-
|
|
167
|
+
Color.transparent(),
|
|
168
168
|
TextureUsage.TEXTURE_BINDING | TextureUsage.RENDER_ATTACHMENT,
|
|
169
169
|
this.preferredTextureFormat
|
|
170
170
|
);
|
|
@@ -28,13 +28,13 @@ export enum BlendOperation {
|
|
|
28
28
|
MAX,
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
31
|
+
/**
|
|
32
|
+
* The blend factor.
|
|
33
|
+
*/
|
|
34
34
|
export enum BlendFactor {
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
37
|
+
* `1.0`
|
|
38
38
|
*/
|
|
39
39
|
ONE,
|
|
40
40
|
|
|
@@ -44,7 +44,7 @@ export enum BlendFactor {
|
|
|
44
44
|
SRC_ALPHA,
|
|
45
45
|
|
|
46
46
|
/**
|
|
47
|
-
*
|
|
47
|
+
* `1.0 - Source.Alpha`, where Source is the color being drawn.
|
|
48
48
|
*/
|
|
49
49
|
ONE_MINUS_SRC_ALPHA,
|
|
50
50
|
}
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
type TextureFormat,
|
|
6
6
|
TextureUsage,
|
|
7
7
|
TextureViewDescriptor
|
|
8
|
-
} from "
|
|
8
|
+
} from "../../../api/index.ts";
|
|
9
9
|
import {vec2} from "gl-matrix";
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -66,9 +66,10 @@ export abstract class ATexture2D implements ITexture2D {
|
|
|
66
66
|
/** @inheritDoc */
|
|
67
67
|
public removeOnDisposedListener(event: (sender: ITexture2D) => void): void {
|
|
68
68
|
|
|
69
|
-
|
|
69
|
+
const index = this._disposedListeners.indexOf(event);
|
|
70
70
|
if (index > -1) {
|
|
71
|
-
|
|
71
|
+
// splice removes in place. Its return value is the removed listener, not the remaining list.
|
|
72
|
+
this._disposedListeners.splice(index, 1);
|
|
72
73
|
}
|
|
73
74
|
}
|
|
74
75
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { VertexStepMode
|
|
2
|
-
import
|
|
3
|
-
import {VertexFormat} from "../../VertexFormat.ts";
|
|
1
|
+
import {type IVertexBufferLayout, type VertexAttribute, VertexStepMode} from "../../api/index.ts";
|
|
2
|
+
import {VertexFormat} from "../../api/geometry/VertexFormat.ts";
|
|
4
3
|
|
|
5
4
|
/**
|
|
6
5
|
* Describes the layout of a vertex buffer, including the stride, step mode, and attributes.
|
|
7
6
|
*/
|
|
8
|
-
export class VertexBufferLayout {
|
|
7
|
+
export class VertexBufferLayout implements IVertexBufferLayout {
|
|
9
8
|
/**
|
|
10
9
|
* Stride in bytes (size of one vertex)
|
|
11
10
|
*/
|
package/src/index.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export {Framework} from "./
|
|
2
|
-
export {
|
|
1
|
+
export {Framework} from "./Framework.ts";
|
|
2
|
+
export {FrameworkConfiguration} from "./api/FrameworkConfiguration.ts";
|
|
3
3
|
export {TextureSamplerFilteringPreset} from "./core/rendering/enums.ts";
|
|
4
|
+
export * from "./api/index.ts";
|
package/src/main.ts
CHANGED
|
@@ -3,9 +3,8 @@ import "reflect-metadata";
|
|
|
3
3
|
|
|
4
4
|
import typescriptLogo from './typescript.svg'
|
|
5
5
|
import viteLogo from '/vite.svg'
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {FrameworkConfig} from "./core/FrameworkConfig.ts";
|
|
6
|
+
import {Framework} from './Framework.ts';
|
|
7
|
+
import {FrameworkConfiguration} from "./api/FrameworkConfiguration.ts";
|
|
9
8
|
import {TextureSamplerFilteringPreset} from "./core/rendering/enums.ts";
|
|
10
9
|
import {
|
|
11
10
|
Color,
|
|
@@ -15,7 +14,7 @@ import {
|
|
|
15
14
|
Rect,
|
|
16
15
|
SamplerDescriptor,
|
|
17
16
|
SamplerFilter, TextureDescriptor, TextureFormat
|
|
18
|
-
} from "
|
|
17
|
+
} from "./api/index.ts";
|
|
19
18
|
|
|
20
19
|
document.querySelector<HTMLDivElement>('#app')!.innerHTML = `
|
|
21
20
|
<div>
|
|
@@ -26,18 +25,14 @@ document.querySelector<HTMLDivElement>('#app')!.innerHTML = `
|
|
|
26
25
|
<img src="${typescriptLogo}" class="logo vanilla" alt="TypeScript logo" />
|
|
27
26
|
</a>
|
|
28
27
|
<h1>Vite + TypeScript</h1>
|
|
29
|
-
<div class="card">
|
|
30
|
-
<button id="counter" type="button"></button>
|
|
31
|
-
</div>
|
|
32
28
|
<p class="read-the-docs">
|
|
33
29
|
Click on the Vite and TypeScript logos to learn more
|
|
34
30
|
</p>
|
|
35
31
|
</div>
|
|
36
32
|
`
|
|
37
33
|
|
|
38
|
-
setupCounter(document.querySelector<HTMLButtonElement>('#counter')!)
|
|
39
34
|
|
|
40
|
-
const frameworkConfig = new
|
|
35
|
+
const frameworkConfig = new FrameworkConfiguration();
|
|
41
36
|
frameworkConfig.canvas = document.getElementById("game-canvas") as HTMLCanvasElement;
|
|
42
37
|
frameworkConfig.textureFiltering = TextureSamplerFilteringPreset.BILINEAR;
|
|
43
38
|
const framework : IFramework = new Framework(frameworkConfig);
|
|
@@ -71,7 +66,7 @@ framework.addOnInitializedListener(() => {
|
|
|
71
66
|
|
|
72
67
|
framework.addOnRenderListener(() =>
|
|
73
68
|
{
|
|
74
|
-
|
|
69
|
+
const spriteBatch = framework.spriteBatch;
|
|
75
70
|
|
|
76
71
|
spriteBatch.begin(undefined, sampler);
|
|
77
72
|
spriteBatch.drawRect(rect, color);
|
|
@@ -1,25 +1,29 @@
|
|
|
1
|
-
import type {IRenderPass} from "../core/rendering/render-pass/render-pass-interface";
|
|
2
1
|
import {WebGlSampler} from "./sampler/webgl-sampler";
|
|
3
2
|
import {WebGlRenderPass} from "./render-pass/WebGlRenderPass.ts";
|
|
4
|
-
import {AGraphicsDevice,
|
|
3
|
+
import {AGraphicsDevice, type IGraphicsDeviceDescriptor} from "../core/rendering/AGraphicsDevice.ts";
|
|
5
4
|
import {type BlendStateDescriptor} from "../core/rendering/blending/blend-state-descriptor";
|
|
6
5
|
import {WebGlBlendState} from "./blending/webgl-blend-state";
|
|
7
6
|
import {WebGlPrimitiveState} from "./primitive/WebGlPrimitiveState.ts";
|
|
8
|
-
import {PrimitiveStateDescriptor} from "../core/rendering/primitive/PrimitiveStateDescriptor.ts";
|
|
9
7
|
import {WebGLGraphicsDeviceFeatures} from "./WebGLGraphicsDeviceFeatures.ts";
|
|
10
8
|
import {WebGlSwapChain} from "./swap-chain/WebGlSwapChain.ts";
|
|
11
9
|
import {WebGlGpuInfo} from "./WebGlGpuInfo.ts";
|
|
12
|
-
import type {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
import type {SamplerDescriptor} from "../core/rendering/sampler/sampler-descriptor.ts";
|
|
11
|
+
import {
|
|
12
|
+
type IBlendState,
|
|
13
|
+
type IGPUInfo, type IPrimitiveState,
|
|
14
|
+
type IRenderPass,
|
|
15
|
+
type ISampler,
|
|
16
|
+
type ISwapChain,
|
|
17
|
+
type IWindowManager,
|
|
18
|
+
PrimitiveStateDescriptor,
|
|
18
19
|
RenderPassDescriptor,
|
|
19
20
|
SwapChainDescriptor
|
|
20
|
-
} from "
|
|
21
|
-
import type {SamplerDescriptor} from "../core/rendering/sampler/sampler-descriptor.ts";
|
|
21
|
+
} from "../api/index.ts";
|
|
22
22
|
|
|
23
|
+
/**
|
|
24
|
+
* Creates WebGL2 enabled graphics device.
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
23
27
|
export class WebGlGraphicsDevice extends AGraphicsDevice {
|
|
24
28
|
|
|
25
29
|
|
|
@@ -39,7 +43,6 @@ export class WebGlGraphicsDevice extends AGraphicsDevice {
|
|
|
39
43
|
throw new Error("Method not implemented.");
|
|
40
44
|
}
|
|
41
45
|
|
|
42
|
-
|
|
43
46
|
private readonly _windowManager: IWindowManager;
|
|
44
47
|
private _canvas: HTMLCanvasElement = null!;
|
|
45
48
|
private _gl: WebGL2RenderingContext = null!;
|
|
@@ -51,7 +54,7 @@ export class WebGlGraphicsDevice extends AGraphicsDevice {
|
|
|
51
54
|
* @param windowManager The window manager that provides access to the canvas element and other window-related functionalities needed for initializing the graphics device and creating rendering contexts.
|
|
52
55
|
* @param descriptor The descriptor for the graphics device. This is used to configure the graphics device during initialization.
|
|
53
56
|
*/
|
|
54
|
-
public constructor(windowManager: IWindowManager, descriptor:
|
|
57
|
+
public constructor(windowManager: IWindowManager, descriptor: IGraphicsDeviceDescriptor) {
|
|
55
58
|
|
|
56
59
|
super(descriptor);
|
|
57
60
|
this._windowManager = windowManager;
|
|
@@ -74,15 +77,16 @@ export class WebGlGraphicsDevice extends AGraphicsDevice {
|
|
|
74
77
|
return this._gpuInfo;
|
|
75
78
|
}
|
|
76
79
|
|
|
77
|
-
|
|
78
80
|
/** @inheritdoc */
|
|
79
81
|
public initialize(): void {
|
|
80
82
|
|
|
81
83
|
this._canvas = this._windowManager.canvas;
|
|
82
84
|
|
|
85
|
+
debugger;
|
|
83
86
|
const contextOptions: WebGLContextAttributes = {
|
|
84
87
|
antialias: false,
|
|
85
|
-
|
|
88
|
+
alpha: this._descriptor.alpha,
|
|
89
|
+
powerPreference: this._descriptor.powerPreference,
|
|
86
90
|
};
|
|
87
91
|
|
|
88
92
|
this._gl = this._canvas.getContext(
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type IRendererConfiguration } from "../api/rendering/renderer-interface.ts";
|
|
2
2
|
import { ARenderer } from "../core/rendering/ARenderer.ts";
|
|
3
3
|
import { WebGlGraphicsDevice } from "./WebGlGraphicsDevice.ts";
|
|
4
|
-
import type {IFramework, IGraphicsDevice} from "
|
|
4
|
+
import type {IFramework, IGraphicsDevice} from "../api/index.ts";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* The WebGL implementation of the IRenderer interface.
|
|
8
8
|
*/
|
|
9
9
|
export class WebGlRenderer extends ARenderer {
|
|
10
10
|
|
|
11
|
-
private _renderConfiguration:
|
|
11
|
+
private _renderConfiguration: IRendererConfiguration;
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* The constructor.
|
|
@@ -17,7 +17,7 @@ export class WebGlRenderer extends ARenderer {
|
|
|
17
17
|
*/
|
|
18
18
|
constructor(
|
|
19
19
|
framework: IFramework,
|
|
20
|
-
renderConfiguration:
|
|
20
|
+
renderConfiguration: IRendererConfiguration) {
|
|
21
21
|
super(framework);
|
|
22
22
|
this._renderConfiguration = renderConfiguration;
|
|
23
23
|
}
|
|
@@ -25,7 +25,9 @@ export class WebGlRenderer extends ARenderer {
|
|
|
25
25
|
/** @inheritdoc */
|
|
26
26
|
protected createGraphicsDevice(): IGraphicsDevice {
|
|
27
27
|
return new WebGlGraphicsDevice(this._framework.windowManager, {
|
|
28
|
-
samplerFilteringPreset: this._renderConfiguration.textureFiltering
|
|
28
|
+
samplerFilteringPreset: this._renderConfiguration.textureFiltering,
|
|
29
|
+
alpha: this._renderConfiguration.alpha,
|
|
30
|
+
powerPreference: this._renderConfiguration.powerPreference,
|
|
29
31
|
});
|
|
30
32
|
}
|
|
31
33
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { BlendStateDescriptor } from "../../core/rendering/blending/blend-state-descriptor";
|
|
2
2
|
import { WebGlConverter } from "../utilities/WebGlConverter.ts";
|
|
3
3
|
import type { WebGlGraphicsDevice } from "../WebGlGraphicsDevice.ts";
|
|
4
|
-
import type {IBlendState} from "
|
|
4
|
+
import type {IBlendState} from "../../api/index.ts";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* The WebGL blend state.
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
type IIndexBuffer,
|
|
8
8
|
type IUniformBuffer,
|
|
9
9
|
type IVertexBuffer
|
|
10
|
-
} from "
|
|
10
|
+
} from "../../api/index.ts";
|
|
11
11
|
import {WebGlUniformBuffer} from "./WebGlUniformBuffer.ts";
|
|
12
12
|
|
|
13
13
|
export class WebGlBuffersFactory implements IBufferFactory {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { WebGlUtilities } from "../utilities/WebGlUtilities.ts";
|
|
2
2
|
import type { WebGlGraphicsDevice } from "../WebGlGraphicsDevice.ts";
|
|
3
|
-
import {AlignUtilities, type BufferUsage, type IFramework, type IUniformBuffer} from "
|
|
3
|
+
import {AlignUtilities, type BufferUsage, type IFramework, type IUniformBuffer} from "../../api/index.ts";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* The WebGL implementation of the uniform buffer.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {WebGlUtilities} from "../utilities/WebGlUtilities.ts";
|
|
2
2
|
import type {WebGlGraphicsDevice} from "../WebGlGraphicsDevice.ts";
|
|
3
|
-
import {BufferUsage, type IFramework, type IVertexBuffer} from "
|
|
3
|
+
import {BufferUsage, type IFramework, type IVertexBuffer} from "../../api/index.ts";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* The WebGL implementation of the vertex buffer.
|
|
@@ -18,11 +18,11 @@ export class WebGlVertexBuffer implements IVertexBuffer {
|
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* The constructor.
|
|
21
|
-
* @param _framework
|
|
22
|
-
* @param dataOrVertexCount
|
|
23
|
-
* @param _byteStride
|
|
24
|
-
* @param _bufferUsage
|
|
25
|
-
* @param _label
|
|
21
|
+
* @param _framework The framework.
|
|
22
|
+
* @param dataOrVertexCount The vertex data, or the number of vertices to allocate.
|
|
23
|
+
* @param _byteStride The size of one vertex in bytes.
|
|
24
|
+
* @param _bufferUsage The buffer usage.
|
|
25
|
+
* @param _label The optional label of the buffer.
|
|
26
26
|
*/
|
|
27
27
|
constructor(private readonly _framework: IFramework,
|
|
28
28
|
dataOrVertexCount: ArrayLike<number> | number,
|
|
@@ -35,7 +35,8 @@ export class WebGlVertexBuffer implements IVertexBuffer {
|
|
|
35
35
|
if (typeof dataOrVertexCount === "number") {
|
|
36
36
|
this._vertexCount = dataOrVertexCount;
|
|
37
37
|
this._byteSize = dataOrVertexCount * this._byteStride;
|
|
38
|
-
|
|
38
|
+
// Allocate the whole buffer, not one float per vertex.
|
|
39
|
+
this._data = new Float32Array(this._byteSize / Float32Array.BYTES_PER_ELEMENT);
|
|
39
40
|
}
|
|
40
41
|
// Is iterable
|
|
41
42
|
else {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {IFramework} from "
|
|
1
|
+
import type {IFramework} from "../../api/index.ts";
|
|
2
2
|
import {asWebGLGraphicsDevice} from "../cast/cast";
|
|
3
3
|
import {WebGlUtilities} from "../utilities/WebGlUtilities.ts";
|
|
4
|
-
import {BufferUsage, type IIndexBuffer, IndexBufferType} from "
|
|
4
|
+
import {BufferUsage, type IIndexBuffer, IndexBufferType} from "../../api/index.ts";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* The WebGLIndexBuffer class is an implementation of the IIndexBuffer interface for WebGL.
|
package/src/webgl/cast/cast.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {IBlendState, IIndexBuffer, ITexture2D, IUniformBuffer, IVertexBuffer} from "
|
|
2
|
-
import type { ITempRenderer } from "../../
|
|
1
|
+
import type {IBlendState, IIndexBuffer, ITexture2D, IUniformBuffer, IVertexBuffer} from "../../api/index.ts";
|
|
2
|
+
import type { ITempRenderer } from "../../api/rendering/renderer-interface.ts";
|
|
3
3
|
import { WebGlBlendState } from "../blending/webgl-blend-state";
|
|
4
4
|
import { WebGLIndexBuffer } from "../buffers/webgl-index-buffer";
|
|
5
5
|
import { WebGlUniformBuffer } from "../buffers/WebGlUniformBuffer.ts";
|
|
@@ -1,6 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import {
|
|
2
|
+
CullMode,
|
|
3
|
+
type FrontFace,
|
|
4
|
+
type IPrimitiveState,
|
|
5
|
+
type PrimitiveStateDescriptor,
|
|
6
|
+
type PrimitiveTopology
|
|
7
|
+
} from "../../api/index.ts";
|
|
4
8
|
import { WebGlConverter } from "../utilities/WebGlConverter.ts";
|
|
5
9
|
|
|
6
10
|
/**
|