ris-framework 0.1.0-dev.7 → 0.1.0

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.
Files changed (655) hide show
  1. package/CHANGELOG.md +4 -1
  2. package/LICENSE +202 -21
  3. package/NOTICE +2 -0
  4. package/README.md +29 -47
  5. package/THIRD_PARTY_NOTICES.md +1 -1
  6. package/dist/{core/Framework.d.ts → Framework.d.ts} +10 -8
  7. package/dist/Framework.d.ts.map +1 -0
  8. package/dist/api/FrameworkConfiguration.d.ts +23 -0
  9. package/dist/api/FrameworkConfiguration.d.ts.map +1 -0
  10. package/dist/api/IFramework.d.ts +125 -0
  11. package/dist/api/IFramework.d.ts.map +1 -0
  12. package/dist/api/IFrameworkConfiguration.d.ts +25 -0
  13. package/dist/api/IFrameworkConfiguration.d.ts.map +1 -0
  14. package/dist/api/_export.d.ts +27 -0
  15. package/dist/api/_export.d.ts.map +1 -0
  16. package/dist/api/camera/CameraFactory.d.ts +25 -0
  17. package/dist/api/camera/CameraFactory.d.ts.map +1 -0
  18. package/dist/api/camera/ICamera.d.ts +43 -0
  19. package/dist/api/camera/ICamera.d.ts.map +1 -0
  20. package/dist/api/camera/ICameraFactory.d.ts +46 -0
  21. package/dist/api/camera/ICameraFactory.d.ts.map +1 -0
  22. package/dist/api/camera/IOrthographicCamera.d.ts +31 -0
  23. package/dist/api/camera/IOrthographicCamera.d.ts.map +1 -0
  24. package/dist/api/camera/OrbitCamera.d.ts +120 -0
  25. package/dist/api/camera/OrbitCamera.d.ts.map +1 -0
  26. package/dist/api/camera/OrthographicCamera.d.ts +96 -0
  27. package/dist/api/camera/OrthographicCamera.d.ts.map +1 -0
  28. package/dist/api/camera/PerspectiveCamera.d.ts +108 -0
  29. package/dist/api/camera/PerspectiveCamera.d.ts.map +1 -0
  30. package/dist/api/camera/_export.d.ts +8 -0
  31. package/dist/api/camera/_export.d.ts.map +1 -0
  32. package/dist/api/content/ContentConfig.d.ts +11 -0
  33. package/dist/api/content/ContentConfig.d.ts.map +1 -0
  34. package/dist/{core → api}/content/ContentManager.d.ts +3 -2
  35. package/dist/api/content/ContentManager.d.ts.map +1 -0
  36. package/dist/api/content/IContent.d.ts +8 -0
  37. package/dist/api/content/IContent.d.ts.map +1 -0
  38. package/dist/api/content/IContentManager.d.ts +37 -0
  39. package/dist/api/content/IContentManager.d.ts.map +1 -0
  40. package/dist/api/content/IContentModule.d.ts +58 -0
  41. package/dist/api/content/IContentModule.d.ts.map +1 -0
  42. package/dist/api/content/ShaderModuleContent.d.ts.map +1 -0
  43. package/dist/api/content/_export-content.d.ts +5 -0
  44. package/dist/api/content/_export-content.d.ts.map +1 -0
  45. package/dist/api/core/IDisposable.d.ts +10 -0
  46. package/dist/api/core/IDisposable.d.ts.map +1 -0
  47. package/dist/api/core/_export-core.d.ts +2 -0
  48. package/dist/api/core/_export-core.d.ts.map +1 -0
  49. package/dist/api/data/Color.d.ts +119 -0
  50. package/dist/api/data/Color.d.ts.map +1 -0
  51. package/dist/api/data/Rect.d.ts +61 -0
  52. package/dist/api/data/Rect.d.ts.map +1 -0
  53. package/dist/api/data/State.d.ts +11 -0
  54. package/dist/api/data/State.d.ts.map +1 -0
  55. package/dist/api/data/_export.d.ts +4 -0
  56. package/dist/api/data/_export.d.ts.map +1 -0
  57. package/dist/{geometry → api/geometry}/BaseGeometry.d.ts +5 -2
  58. package/dist/api/geometry/BaseGeometry.d.ts.map +1 -0
  59. package/dist/{geometry → api/geometry}/GeometryBuilder.d.ts +1 -1
  60. package/dist/api/geometry/GeometryBuilder.d.ts.map +1 -0
  61. package/dist/api/geometry/GeometryFormat.d.ts +34 -0
  62. package/dist/api/geometry/GeometryFormat.d.ts.map +1 -0
  63. package/dist/api/geometry/IGeometry.d.ts +54 -0
  64. package/dist/api/geometry/IGeometry.d.ts.map +1 -0
  65. package/dist/api/geometry/IGeometryBuilder.d.ts +15 -0
  66. package/dist/api/geometry/IGeometryBuilder.d.ts.map +1 -0
  67. package/dist/api/geometry/VertexFormat.d.ts.map +1 -0
  68. package/dist/api/geometry/_export-geometry.d.ts +5 -0
  69. package/dist/api/geometry/_export-geometry.d.ts.map +1 -0
  70. package/dist/api/image/CpuImageProcessor.d.ts +16 -0
  71. package/dist/api/image/CpuImageProcessor.d.ts.map +1 -0
  72. package/dist/api/image/IImageProcessor.d.ts +26 -0
  73. package/dist/api/image/IImageProcessor.d.ts.map +1 -0
  74. package/dist/api/image/RawImageData.d.ts +34 -0
  75. package/dist/api/image/RawImageData.d.ts.map +1 -0
  76. package/dist/api/image/_export.d.ts +4 -0
  77. package/dist/api/image/_export.d.ts.map +1 -0
  78. package/dist/api/index.d.ts +2 -0
  79. package/dist/api/index.d.ts.map +1 -0
  80. package/dist/api/input/IInputManager.d.ts +53 -0
  81. package/dist/api/input/IInputManager.d.ts.map +1 -0
  82. package/dist/api/input/InputDeviceType.d.ts +18 -0
  83. package/dist/api/input/InputDeviceType.d.ts.map +1 -0
  84. package/dist/api/input/InputManager.d.ts +73 -0
  85. package/dist/api/input/InputManager.d.ts.map +1 -0
  86. package/dist/api/input/Key.d.ts +36 -0
  87. package/dist/api/input/Key.d.ts.map +1 -0
  88. package/dist/api/input/KeyboardState.d.ts +37 -0
  89. package/dist/api/input/KeyboardState.d.ts.map +1 -0
  90. package/dist/api/input/_export.d.ts +14 -0
  91. package/dist/api/input/_export.d.ts.map +1 -0
  92. package/dist/api/input/gamepad/Button.d.ts +22 -0
  93. package/dist/api/input/gamepad/Button.d.ts.map +1 -0
  94. package/dist/api/input/gamepad/GamePadState.d.ts +48 -0
  95. package/dist/api/input/gamepad/GamePadState.d.ts.map +1 -0
  96. package/dist/api/input/gamepad/GamePadThumbSticks.d.ts +17 -0
  97. package/dist/api/input/gamepad/GamePadThumbSticks.d.ts.map +1 -0
  98. package/dist/api/input/mouse/MouseButton.d.ts +10 -0
  99. package/dist/api/input/mouse/MouseButton.d.ts.map +1 -0
  100. package/dist/api/input/mouse/MouseState.d.ts +52 -0
  101. package/dist/api/input/mouse/MouseState.d.ts.map +1 -0
  102. package/dist/api/input/touch/TouchCollection.d.ts +79 -0
  103. package/dist/api/input/touch/TouchCollection.d.ts.map +1 -0
  104. package/dist/api/input/touch/TouchLocation.d.ts +80 -0
  105. package/dist/api/input/touch/TouchLocation.d.ts.map +1 -0
  106. package/dist/api/input/touch/TouchLocationState.d.ts +16 -0
  107. package/dist/api/input/touch/TouchLocationState.d.ts.map +1 -0
  108. package/dist/api/input/touch/TouchPanelCapabilities.d.ts +24 -0
  109. package/dist/api/input/touch/TouchPanelCapabilities.d.ts.map +1 -0
  110. package/dist/api/loaders/IImageLoader.d.ts +20 -0
  111. package/dist/api/loaders/IImageLoader.d.ts.map +1 -0
  112. package/dist/api/loaders/ImageLoader.d.ts +36 -0
  113. package/dist/api/loaders/ImageLoader.d.ts.map +1 -0
  114. package/dist/api/loaders/_export.d.ts +3 -0
  115. package/dist/api/loaders/_export.d.ts.map +1 -0
  116. package/dist/api/material/IMaterial.d.ts +35 -0
  117. package/dist/api/material/IMaterial.d.ts.map +1 -0
  118. package/dist/api/material/IMaterialFactory.d.ts +19 -0
  119. package/dist/api/material/IMaterialFactory.d.ts.map +1 -0
  120. package/dist/api/material/InspectTextureMipsMaterial.d.ts +58 -0
  121. package/dist/api/material/InspectTextureMipsMaterial.d.ts.map +1 -0
  122. package/dist/api/material/MaterialFactory.d.ts +20 -0
  123. package/dist/api/material/MaterialFactory.d.ts.map +1 -0
  124. package/dist/api/material/UnlitMaterial.d.ts +76 -0
  125. package/dist/api/material/UnlitMaterial.d.ts.map +1 -0
  126. package/dist/api/material/_export.d.ts +6 -0
  127. package/dist/api/material/_export.d.ts.map +1 -0
  128. package/dist/api/meshes/IMesh.d.ts +17 -0
  129. package/dist/api/meshes/IMesh.d.ts.map +1 -0
  130. package/dist/api/meshes/IMeshFactory.d.ts +25 -0
  131. package/dist/api/meshes/IMeshFactory.d.ts.map +1 -0
  132. package/dist/api/meshes/Mesh.d.ts +93 -0
  133. package/dist/api/meshes/Mesh.d.ts.map +1 -0
  134. package/dist/api/meshes/MeshFactory.d.ts +23 -0
  135. package/dist/api/meshes/MeshFactory.d.ts.map +1 -0
  136. package/dist/api/meshes/MeshParameters.d.ts +22 -0
  137. package/dist/api/meshes/MeshParameters.d.ts.map +1 -0
  138. package/dist/api/meshes/QuadMesh.d.ts +33 -0
  139. package/dist/api/meshes/QuadMesh.d.ts.map +1 -0
  140. package/dist/api/meshes/_export.d.ts +7 -0
  141. package/dist/api/meshes/_export.d.ts.map +1 -0
  142. package/dist/api/rendering/IGPUInfo.d.ts +35 -0
  143. package/dist/api/rendering/IGPUInfo.d.ts.map +1 -0
  144. package/dist/api/rendering/IGraphicsDevice.d.ts +88 -0
  145. package/dist/api/rendering/IGraphicsDevice.d.ts.map +1 -0
  146. package/dist/api/rendering/IGraphicsDeviceFeatures.d.ts +27 -0
  147. package/dist/api/rendering/IGraphicsDeviceFeatures.d.ts.map +1 -0
  148. package/dist/api/rendering/IRenderer.d.ts +71 -0
  149. package/dist/api/rendering/IRenderer.d.ts.map +1 -0
  150. package/dist/api/rendering/PowerPreference.d.ts +13 -0
  151. package/dist/api/rendering/PowerPreference.d.ts.map +1 -0
  152. package/dist/api/rendering/RenderingBackend.d.ts +18 -0
  153. package/dist/api/rendering/RenderingBackend.d.ts.map +1 -0
  154. package/dist/api/rendering/_export-rendering.d.ts +7 -0
  155. package/dist/api/rendering/_export-rendering.d.ts.map +1 -0
  156. package/dist/api/rendering/blending/IBlendState.d.ts +16 -0
  157. package/dist/api/rendering/blending/IBlendState.d.ts.map +1 -0
  158. package/dist/api/rendering/blending/_export.d.ts +2 -0
  159. package/dist/api/rendering/blending/_export.d.ts.map +1 -0
  160. package/dist/api/rendering/buffers/BufferUsage.d.ts +57 -0
  161. package/dist/api/rendering/buffers/BufferUsage.d.ts.map +1 -0
  162. package/dist/api/rendering/buffers/IBuffer.d.ts +20 -0
  163. package/dist/api/rendering/buffers/IBuffer.d.ts.map +1 -0
  164. package/dist/api/rendering/buffers/IBufferFactory.d.ts +34 -0
  165. package/dist/api/rendering/buffers/IBufferFactory.d.ts.map +1 -0
  166. package/dist/api/rendering/buffers/IIndexBuffer.d.ts +31 -0
  167. package/dist/api/rendering/buffers/IIndexBuffer.d.ts.map +1 -0
  168. package/dist/api/rendering/buffers/IUniformBuffer.d.ts +18 -0
  169. package/dist/api/rendering/buffers/IUniformBuffer.d.ts.map +1 -0
  170. package/dist/api/rendering/buffers/IVertexBuffer.d.ts +26 -0
  171. package/dist/api/rendering/buffers/IVertexBuffer.d.ts.map +1 -0
  172. package/dist/api/rendering/buffers/IVertexBufferLayout.d.ts +23 -0
  173. package/dist/api/rendering/buffers/IVertexBufferLayout.d.ts.map +1 -0
  174. package/dist/api/rendering/buffers/IndexBufferType.d.ts +14 -0
  175. package/dist/api/rendering/buffers/IndexBufferType.d.ts.map +1 -0
  176. package/dist/api/rendering/buffers/VertexAttribute.d.ts +22 -0
  177. package/dist/api/rendering/buffers/VertexAttribute.d.ts.map +1 -0
  178. package/dist/api/rendering/buffers/VertexStepMode.d.ts +14 -0
  179. package/dist/api/rendering/buffers/VertexStepMode.d.ts.map +1 -0
  180. package/dist/api/rendering/buffers/_export-buffers.d.ts +11 -0
  181. package/dist/api/rendering/buffers/_export-buffers.d.ts.map +1 -0
  182. package/dist/{core/renderer → api/rendering}/enums.d.ts.map +1 -1
  183. package/dist/api/rendering/primitive/CullMode.d.ts +18 -0
  184. package/dist/api/rendering/primitive/CullMode.d.ts.map +1 -0
  185. package/dist/api/rendering/primitive/FrontFace.d.ts +14 -0
  186. package/dist/api/rendering/primitive/FrontFace.d.ts.map +1 -0
  187. package/dist/api/rendering/primitive/IPrimitiveState.d.ts +22 -0
  188. package/dist/api/rendering/primitive/IPrimitiveState.d.ts.map +1 -0
  189. package/dist/api/rendering/primitive/PrimitiveStateDescriptor.d.ts +24 -0
  190. package/dist/api/rendering/primitive/PrimitiveStateDescriptor.d.ts.map +1 -0
  191. package/dist/api/rendering/primitive/PrimitiveTopology.d.ts +26 -0
  192. package/dist/api/rendering/primitive/PrimitiveTopology.d.ts.map +1 -0
  193. package/dist/api/rendering/primitive/_export.d.ts +6 -0
  194. package/dist/api/rendering/primitive/_export.d.ts.map +1 -0
  195. package/dist/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.d.ts +33 -0
  196. package/dist/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.d.ts.map +1 -0
  197. package/dist/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.d.ts +18 -0
  198. package/dist/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.d.ts.map +1 -0
  199. package/dist/api/rendering/render-pipelines/IRenderPipeline.d.ts +39 -0
  200. package/dist/api/rendering/render-pipelines/IRenderPipeline.d.ts.map +1 -0
  201. package/dist/api/rendering/render-pipelines/IRenderPipelineFactory.d.ts +42 -0
  202. package/dist/api/rendering/render-pipelines/IRenderPipelineFactory.d.ts.map +1 -0
  203. package/dist/api/rendering/render-pipelines/ISpriteRenderPipeline.d.ts +22 -0
  204. package/dist/api/rendering/render-pipelines/ISpriteRenderPipeline.d.ts.map +1 -0
  205. package/dist/api/rendering/render-pipelines/IUnlitRenderPipeline.d.ts +33 -0
  206. package/dist/api/rendering/render-pipelines/IUnlitRenderPipeline.d.ts.map +1 -0
  207. package/dist/api/rendering/render-pipelines/_export-render-pipelines.d.ts +7 -0
  208. package/dist/api/rendering/render-pipelines/_export-render-pipelines.d.ts.map +1 -0
  209. package/dist/{core/renderer → api/rendering}/renderer-interface.d.ts +11 -7
  210. package/dist/api/rendering/renderer-interface.d.ts.map +1 -0
  211. package/dist/{core/renderer → api/rendering}/rendering-limits.d.ts.map +1 -1
  212. package/dist/api/rendering/renderpass/IRenderPass.d.ts +15 -0
  213. package/dist/api/rendering/renderpass/IRenderPass.d.ts.map +1 -0
  214. package/dist/api/rendering/renderpass/LoadAction.d.ts +33 -0
  215. package/dist/api/rendering/renderpass/LoadAction.d.ts.map +1 -0
  216. package/dist/api/rendering/renderpass/RenderPassColorAttachment.d.ts +53 -0
  217. package/dist/api/rendering/renderpass/RenderPassColorAttachment.d.ts.map +1 -0
  218. package/dist/api/rendering/renderpass/RenderPassDepthStencilAttachment.d.ts +56 -0
  219. package/dist/api/rendering/renderpass/RenderPassDepthStencilAttachment.d.ts.map +1 -0
  220. package/dist/api/rendering/renderpass/RenderPassDescriptor.d.ts +22 -0
  221. package/dist/api/rendering/renderpass/RenderPassDescriptor.d.ts.map +1 -0
  222. package/dist/api/rendering/renderpass/StoreAction.d.ts +24 -0
  223. package/dist/api/rendering/renderpass/StoreAction.d.ts.map +1 -0
  224. package/dist/api/rendering/renderpass/_export.d.ts +7 -0
  225. package/dist/api/rendering/renderpass/_export.d.ts.map +1 -0
  226. package/dist/api/rendering/sampler/ISampler.d.ts +43 -0
  227. package/dist/api/rendering/sampler/ISampler.d.ts.map +1 -0
  228. package/dist/api/rendering/sampler/MipMapSamplerFilter.d.ts +18 -0
  229. package/dist/api/rendering/sampler/MipMapSamplerFilter.d.ts.map +1 -0
  230. package/dist/api/rendering/sampler/SamplerAddressMode.d.ts +24 -0
  231. package/dist/api/rendering/sampler/SamplerAddressMode.d.ts.map +1 -0
  232. package/dist/api/rendering/sampler/SamplerDescriptor.d.ts +40 -0
  233. package/dist/api/rendering/sampler/SamplerDescriptor.d.ts.map +1 -0
  234. package/dist/api/rendering/sampler/SamplerFilter.d.ts +14 -0
  235. package/dist/api/rendering/sampler/SamplerFilter.d.ts.map +1 -0
  236. package/dist/api/rendering/sampler/_export.d.ts +6 -0
  237. package/dist/api/rendering/sampler/_export.d.ts.map +1 -0
  238. package/dist/api/rendering/sampler/sampler-enums.d.ts +15 -0
  239. package/dist/api/rendering/sampler/sampler-enums.d.ts.map +1 -0
  240. package/dist/api/rendering/swapchain/ISwapChain.d.ts +29 -0
  241. package/dist/api/rendering/swapchain/ISwapChain.d.ts.map +1 -0
  242. package/dist/api/rendering/swapchain/SurfacePresentMode.d.ts +23 -0
  243. package/dist/api/rendering/swapchain/SurfacePresentMode.d.ts.map +1 -0
  244. package/dist/api/rendering/swapchain/SwapChainDescriptor.d.ts +20 -0
  245. package/dist/api/rendering/swapchain/SwapChainDescriptor.d.ts.map +1 -0
  246. package/dist/api/rendering/swapchain/_export.d.ts +4 -0
  247. package/dist/api/rendering/swapchain/_export.d.ts.map +1 -0
  248. package/dist/api/rendering/texture/ITexture2D.d.ts +83 -0
  249. package/dist/api/rendering/texture/ITexture2D.d.ts.map +1 -0
  250. package/dist/api/rendering/texture/ITextureFactory.d.ts +42 -0
  251. package/dist/api/rendering/texture/ITextureFactory.d.ts.map +1 -0
  252. package/dist/api/rendering/texture/ITextureView.d.ts +17 -0
  253. package/dist/api/rendering/texture/ITextureView.d.ts.map +1 -0
  254. package/dist/api/rendering/texture/TextureDescriptor.d.ts +42 -0
  255. package/dist/api/rendering/texture/TextureDescriptor.d.ts.map +1 -0
  256. package/dist/api/rendering/texture/TextureFormat.d.ts +54 -0
  257. package/dist/api/rendering/texture/TextureFormat.d.ts.map +1 -0
  258. package/dist/api/rendering/texture/TextureUsage.d.ts +42 -0
  259. package/dist/api/rendering/texture/TextureUsage.d.ts.map +1 -0
  260. package/dist/api/rendering/texture/TextureUtilities.d.ts +54 -0
  261. package/dist/api/rendering/texture/TextureUtilities.d.ts.map +1 -0
  262. package/dist/api/rendering/texture/TextureViewDescriptor.d.ts +22 -0
  263. package/dist/api/rendering/texture/TextureViewDescriptor.d.ts.map +1 -0
  264. package/dist/api/rendering/texture/TextureViewDimension.d.ts +17 -0
  265. package/dist/api/rendering/texture/TextureViewDimension.d.ts.map +1 -0
  266. package/dist/api/rendering/texture/_export-texture.d.ts +10 -0
  267. package/dist/api/rendering/texture/_export-texture.d.ts.map +1 -0
  268. package/dist/api/shader/IShaderModule.d.ts +21 -0
  269. package/dist/api/shader/IShaderModule.d.ts.map +1 -0
  270. package/dist/api/shader/IShaderModuleLoader.d.ts +13 -0
  271. package/dist/api/shader/IShaderModuleLoader.d.ts.map +1 -0
  272. package/dist/api/shader/ShaderStage.d.ts +10 -0
  273. package/dist/api/shader/ShaderStage.d.ts.map +1 -0
  274. package/dist/api/shader/_export-shader.d.ts +4 -0
  275. package/dist/api/shader/_export-shader.d.ts.map +1 -0
  276. package/dist/{core → api}/shader/shader-loader.d.ts +1 -1
  277. package/dist/api/shader/shader-loader.d.ts.map +1 -0
  278. package/dist/api/sprites/ISpriteBatch.d.ts +114 -0
  279. package/dist/api/sprites/ISpriteBatch.d.ts.map +1 -0
  280. package/dist/{core/sprite-batch → api/sprites}/SpriteBatch.d.ts +1 -1
  281. package/dist/api/sprites/SpriteBatch.d.ts.map +1 -0
  282. package/dist/{core/sprite-batch → api/sprites}/SpriteBatchDrawable.d.ts +1 -1
  283. package/dist/api/sprites/SpriteBatchDrawable.d.ts.map +1 -0
  284. package/dist/{core/sprite-batch → api/sprites}/SpriteBatchMesh.d.ts +1 -1
  285. package/dist/api/sprites/SpriteBatchMesh.d.ts.map +1 -0
  286. package/dist/api/sprites/_export_sprites.d.ts +2 -0
  287. package/dist/api/sprites/_export_sprites.d.ts.map +1 -0
  288. package/dist/api/time/GameTime.d.ts +23 -0
  289. package/dist/api/time/GameTime.d.ts.map +1 -0
  290. package/dist/api/time/ITimeManager.d.ts +19 -0
  291. package/dist/api/time/ITimeManager.d.ts.map +1 -0
  292. package/dist/api/time/TimeManager.d.ts +15 -0
  293. package/dist/api/time/TimeManager.d.ts.map +1 -0
  294. package/dist/api/time/_export_time.d.ts +4 -0
  295. package/dist/api/time/_export_time.d.ts.map +1 -0
  296. package/dist/api/utilities/AlignUtilities.d.ts +20 -0
  297. package/dist/api/utilities/AlignUtilities.d.ts.map +1 -0
  298. package/dist/api/utilities/GeometryUtilities.d.ts +13 -0
  299. package/dist/api/utilities/GeometryUtilities.d.ts.map +1 -0
  300. package/dist/api/utilities/MathHelper.d.ts +162 -0
  301. package/dist/api/utilities/MathHelper.d.ts.map +1 -0
  302. package/dist/api/utilities/_export.d.ts +4 -0
  303. package/dist/api/utilities/_export.d.ts.map +1 -0
  304. package/dist/api/window/IWindowManager.d.ts +64 -0
  305. package/dist/api/window/IWindowManager.d.ts.map +1 -0
  306. package/dist/api/window/WindowBounds.d.ts +16 -0
  307. package/dist/api/window/WindowBounds.d.ts.map +1 -0
  308. package/dist/{core/window/window-manager.d.ts → api/window/WindowManager.d.ts} +3 -3
  309. package/dist/api/window/WindowManager.d.ts.map +1 -0
  310. package/dist/api/window/_export.d.ts +3 -0
  311. package/dist/api/window/_export.d.ts.map +1 -0
  312. package/dist/core/rendering/AGraphicsDevice.d.ts +10 -6
  313. package/dist/core/rendering/AGraphicsDevice.d.ts.map +1 -1
  314. package/dist/core/rendering/ARenderer.d.ts +4 -5
  315. package/dist/core/rendering/ARenderer.d.ts.map +1 -1
  316. package/dist/core/rendering/blending/enums.d.ts +5 -2
  317. package/dist/core/rendering/blending/enums.d.ts.map +1 -1
  318. package/dist/core/rendering/sampler/sampler-descriptor.d.ts +1 -1
  319. package/dist/core/rendering/sampler/sampler-descriptor.d.ts.map +1 -1
  320. package/dist/core/rendering/texture/texture.d.ts +1 -1
  321. package/dist/core/rendering/texture/texture.d.ts.map +1 -1
  322. package/dist/core/rendering/vertex-buffer-layout.d.ts +2 -3
  323. package/dist/core/rendering/vertex-buffer-layout.d.ts.map +1 -1
  324. package/dist/index.d.ts +3 -2
  325. package/dist/index.d.ts.map +1 -1
  326. package/dist/index.js +4052 -596
  327. package/dist/webgl/WebGLGraphicsDeviceFeatures.d.ts +1 -1
  328. package/dist/webgl/WebGLGraphicsDeviceFeatures.d.ts.map +1 -1
  329. package/dist/webgl/WebGlGpuInfo.d.ts +1 -1
  330. package/dist/webgl/WebGlGpuInfo.d.ts.map +1 -1
  331. package/dist/webgl/WebGlGraphicsDevice.d.ts +7 -5
  332. package/dist/webgl/WebGlGraphicsDevice.d.ts.map +1 -1
  333. package/dist/webgl/WebGlRenderer.d.ts +3 -3
  334. package/dist/webgl/WebGlRenderer.d.ts.map +1 -1
  335. package/dist/webgl/blending/webgl-blend-state.d.ts +1 -1
  336. package/dist/webgl/blending/webgl-blend-state.d.ts.map +1 -1
  337. package/dist/webgl/buffers/WebGlBuffersFactory.d.ts +1 -1
  338. package/dist/webgl/buffers/WebGlBuffersFactory.d.ts.map +1 -1
  339. package/dist/webgl/buffers/WebGlUniformBuffer.d.ts +1 -1
  340. package/dist/webgl/buffers/WebGlUniformBuffer.d.ts.map +1 -1
  341. package/dist/webgl/buffers/WebGlVertexBuffer.d.ts +6 -6
  342. package/dist/webgl/buffers/WebGlVertexBuffer.d.ts.map +1 -1
  343. package/dist/webgl/buffers/webgl-index-buffer.d.ts +2 -2
  344. package/dist/webgl/buffers/webgl-index-buffer.d.ts.map +1 -1
  345. package/dist/webgl/cast/cast.d.ts +2 -2
  346. package/dist/webgl/cast/cast.d.ts.map +1 -1
  347. package/dist/webgl/primitive/WebGlPrimitiveState.d.ts +1 -3
  348. package/dist/webgl/primitive/WebGlPrimitiveState.d.ts.map +1 -1
  349. package/dist/webgl/render-pass/WebGlRenderPass.d.ts +3 -3
  350. package/dist/webgl/render-pass/WebGlRenderPass.d.ts.map +1 -1
  351. package/dist/webgl/render-pipelines/AWebGlRenderPipeline.d.ts +1 -1
  352. package/dist/webgl/render-pipelines/AWebGlRenderPipeline.d.ts.map +1 -1
  353. package/dist/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.d.ts +3 -1
  354. package/dist/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.d.ts.map +1 -1
  355. package/dist/webgl/render-pipelines/WebGlRenderPipelineFactory.d.ts +1 -1
  356. package/dist/webgl/render-pipelines/WebGlRenderPipelineFactory.d.ts.map +1 -1
  357. package/dist/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.d.ts +3 -3
  358. package/dist/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.d.ts.map +1 -1
  359. package/dist/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.d.ts +2 -2
  360. package/dist/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.d.ts.map +1 -1
  361. package/dist/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.d.ts +2 -2
  362. package/dist/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.d.ts.map +1 -1
  363. package/dist/webgl/sampler/webgl-sampler.d.ts +1 -1
  364. package/dist/webgl/sampler/webgl-sampler.d.ts.map +1 -1
  365. package/dist/webgl/shader/WebGlShaderModule.d.ts +1 -1
  366. package/dist/webgl/shader/WebGlShaderModule.d.ts.map +1 -1
  367. package/dist/webgl/shader/WebGlShaderModuleLoader.d.ts +1 -1
  368. package/dist/webgl/shader/WebGlShaderModuleLoader.d.ts.map +1 -1
  369. package/dist/webgl/swap-chain/WebGlSwapChain.d.ts +1 -1
  370. package/dist/webgl/swap-chain/WebGlSwapChain.d.ts.map +1 -1
  371. package/dist/webgl/texture/WebGlTexture2D.d.ts +1 -1
  372. package/dist/webgl/texture/WebGlTexture2D.d.ts.map +1 -1
  373. package/dist/webgl/texture/WebGlTextureFactory.d.ts +3 -3
  374. package/dist/webgl/texture/WebGlTextureFactory.d.ts.map +1 -1
  375. package/dist/webgl/utilities/WebGlBufferUtilities.d.ts +1 -1
  376. package/dist/webgl/utilities/WebGlBufferUtilities.d.ts.map +1 -1
  377. package/dist/webgl/utilities/WebGlConverter.d.ts +6 -22
  378. package/dist/webgl/utilities/WebGlConverter.d.ts.map +1 -1
  379. package/dist/webgl/utilities/WebGlFrameBufferUtilities.d.ts +1 -1
  380. package/dist/webgl/utilities/WebGlFrameBufferUtilities.d.ts.map +1 -1
  381. package/dist/webgl/utilities/WebGlSamplerUtilities.d.ts +3 -3
  382. package/dist/webgl/utilities/WebGlSamplerUtilities.d.ts.map +1 -1
  383. package/dist/webgl/utilities/WebGlTextureUtilities.d.ts +5 -5
  384. package/dist/webgl/utilities/WebGlTextureUtilities.d.ts.map +1 -1
  385. package/dist/webgl/utilities/webgl-culling-utilities.d.ts +1 -1
  386. package/dist/webgl/utilities/webgl-culling-utilities.d.ts.map +1 -1
  387. package/dist/webgl/utilities/webgl-filter-anisotropic-utilities.d.ts +1 -1
  388. package/dist/webgl/utilities/webgl-renderbuffer-utilities.d.ts +1 -1
  389. package/dist/webgl/utilities/webgl-renderbuffer-utilities.d.ts.map +1 -1
  390. package/package.json +7 -6
  391. package/shaders/glsl/sprite_fs.glsl +1 -1
  392. package/src/{core/Framework.ts → Framework.ts} +78 -38
  393. package/src/api/FrameworkConfiguration.ts +29 -0
  394. package/src/api/IFramework.ts +153 -0
  395. package/src/api/IFrameworkConfiguration.ts +30 -0
  396. package/src/api/_export.ts +26 -0
  397. package/src/api/camera/CameraFactory.ts +56 -0
  398. package/src/api/camera/ICamera.ts +52 -0
  399. package/src/api/camera/ICameraFactory.ts +69 -0
  400. package/src/api/camera/IOrthographicCamera.ts +38 -0
  401. package/src/api/camera/OrbitCamera.ts +402 -0
  402. package/src/api/camera/OrthographicCamera.ts +257 -0
  403. package/src/api/camera/PerspectiveCamera.ts +206 -0
  404. package/src/api/camera/_export.ts +7 -0
  405. package/src/api/content/ContentConfig.ts +11 -0
  406. package/src/{core → api}/content/ContentManager.ts +4 -3
  407. package/src/api/content/IContent.ts +9 -0
  408. package/src/api/content/IContentManager.ts +41 -0
  409. package/src/api/content/IContentModule.ts +67 -0
  410. package/src/{content → api/content}/ShaderModuleContent.ts +8 -8
  411. package/src/api/content/_export-content.ts +4 -0
  412. package/src/api/core/IDisposable.ts +10 -0
  413. package/src/api/core/_export-core.ts +1 -0
  414. package/src/api/data/Color.ts +228 -0
  415. package/src/api/data/Rect.ts +92 -0
  416. package/src/api/data/State.ts +10 -0
  417. package/src/api/data/_export.ts +3 -0
  418. package/src/{geometry → api/geometry}/BaseGeometry.ts +15 -2
  419. package/src/{geometry → api/geometry}/GeometryBuilder.ts +1 -1
  420. package/src/api/geometry/GeometryFormat.ts +33 -0
  421. package/src/api/geometry/IGeometry.ts +66 -0
  422. package/src/api/geometry/IGeometryBuilder.ts +17 -0
  423. package/src/{VertexFormat.ts → api/geometry/VertexFormat.ts} +3 -7
  424. package/src/api/geometry/_export-geometry.ts +4 -0
  425. package/src/api/image/CpuImageProcessor.ts +125 -0
  426. package/src/api/image/IImageProcessor.ts +28 -0
  427. package/src/api/image/RawImageData.ts +47 -0
  428. package/src/api/image/_export.ts +3 -0
  429. package/src/api/index.ts +1 -0
  430. package/src/api/input/IInputManager.ts +62 -0
  431. package/src/api/input/InputDeviceType.ts +20 -0
  432. package/src/api/input/InputManager.ts +513 -0
  433. package/src/api/input/Key.ts +35 -0
  434. package/src/api/input/KeyboardState.ts +44 -0
  435. package/src/api/input/_export.ts +13 -0
  436. package/src/api/input/gamepad/Button.ts +21 -0
  437. package/src/api/input/gamepad/GamePadState.ts +65 -0
  438. package/src/api/input/gamepad/GamePadThumbSticks.ts +18 -0
  439. package/src/api/input/mouse/MouseButton.ts +9 -0
  440. package/src/api/input/mouse/MouseState.ts +70 -0
  441. package/src/api/input/touch/TouchCollection.ts +164 -0
  442. package/src/api/input/touch/TouchLocation.ts +159 -0
  443. package/src/api/input/touch/TouchLocationState.ts +15 -0
  444. package/src/api/input/touch/TouchPanelCapabilities.ts +31 -0
  445. package/src/api/loaders/IImageLoader.ts +22 -0
  446. package/src/api/loaders/ImageLoader.ts +93 -0
  447. package/src/api/loaders/_export.ts +2 -0
  448. package/src/api/material/IMaterial.ts +41 -0
  449. package/src/api/material/IMaterialFactory.ts +21 -0
  450. package/src/api/material/InspectTextureMipsMaterial.ts +113 -0
  451. package/src/api/material/MaterialFactory.ts +27 -0
  452. package/src/api/material/UnlitMaterial.ts +143 -0
  453. package/src/api/material/_export.ts +5 -0
  454. package/src/api/meshes/IMesh.ts +20 -0
  455. package/src/api/meshes/IMeshFactory.ts +28 -0
  456. package/src/api/meshes/Mesh.ts +256 -0
  457. package/src/api/meshes/MeshFactory.ts +36 -0
  458. package/src/api/meshes/MeshParameters.ts +25 -0
  459. package/src/api/meshes/QuadMesh.ts +104 -0
  460. package/src/api/meshes/_export.ts +6 -0
  461. package/src/api/rendering/IGPUInfo.ts +42 -0
  462. package/src/api/rendering/IGraphicsDevice.ts +103 -0
  463. package/src/api/rendering/IGraphicsDeviceFeatures.ts +32 -0
  464. package/src/api/rendering/IRenderer.ts +84 -0
  465. package/src/api/rendering/PowerPreference.ts +15 -0
  466. package/src/api/rendering/RenderingBackend.ts +20 -0
  467. package/src/api/rendering/_export-rendering.ts +6 -0
  468. package/src/api/rendering/blending/IBlendState.ts +17 -0
  469. package/src/api/rendering/blending/_export.ts +1 -0
  470. package/src/api/rendering/buffers/BufferUsage.ts +56 -0
  471. package/src/api/rendering/buffers/IBuffer.ts +24 -0
  472. package/src/api/rendering/buffers/IBufferFactory.ts +38 -0
  473. package/src/api/rendering/buffers/IIndexBuffer.ts +37 -0
  474. package/src/api/rendering/buffers/IUniformBuffer.ts +21 -0
  475. package/src/api/rendering/buffers/IVertexBuffer.ts +32 -0
  476. package/src/api/rendering/buffers/IVertexBufferLayout.ts +27 -0
  477. package/src/api/rendering/buffers/IndexBufferType.ts +13 -0
  478. package/src/api/rendering/buffers/VertexAttribute.ts +26 -0
  479. package/src/api/rendering/buffers/VertexStepMode.ts +13 -0
  480. package/src/api/rendering/buffers/_export-buffers.ts +11 -0
  481. package/src/api/rendering/primitive/CullMode.ts +17 -0
  482. package/src/api/rendering/primitive/FrontFace.ts +13 -0
  483. package/src/api/rendering/primitive/IPrimitiveState.ts +25 -0
  484. package/src/api/rendering/primitive/PrimitiveStateDescriptor.ts +27 -0
  485. package/src/api/rendering/primitive/PrimitiveTopology.ts +25 -0
  486. package/src/api/rendering/primitive/_export.ts +5 -0
  487. package/src/api/rendering/render-pipelines/IInspectTextureMipsRenderPipeline.ts +38 -0
  488. package/src/api/rendering/render-pipelines/IMainRenderTargetRenderPipeline.ts +21 -0
  489. package/src/api/rendering/render-pipelines/IRenderPipeline.ts +47 -0
  490. package/src/api/rendering/render-pipelines/IRenderPipelineFactory.ts +52 -0
  491. package/src/api/rendering/render-pipelines/ISpriteRenderPipeline.ts +25 -0
  492. package/src/api/rendering/render-pipelines/IUnlitRenderPipeline.ts +38 -0
  493. package/src/api/rendering/render-pipelines/_export-render-pipelines.ts +6 -0
  494. package/src/{core/renderer → api/rendering}/renderer-interface.ts +15 -9
  495. package/src/api/rendering/renderpass/IRenderPass.ts +18 -0
  496. package/src/api/rendering/renderpass/LoadAction.ts +32 -0
  497. package/src/api/rendering/renderpass/RenderPassColorAttachment.ts +61 -0
  498. package/src/api/rendering/renderpass/RenderPassDepthStencilAttachment.ts +76 -0
  499. package/src/api/rendering/renderpass/RenderPassDescriptor.ts +26 -0
  500. package/src/api/rendering/renderpass/StoreAction.ts +23 -0
  501. package/src/api/rendering/renderpass/_export.ts +6 -0
  502. package/src/api/rendering/sampler/ISampler.ts +52 -0
  503. package/src/api/rendering/sampler/MipMapSamplerFilter.ts +17 -0
  504. package/src/api/rendering/sampler/SamplerAddressMode.ts +23 -0
  505. package/src/api/rendering/sampler/SamplerDescriptor.ts +46 -0
  506. package/src/api/rendering/sampler/SamplerFilter.ts +13 -0
  507. package/src/api/rendering/sampler/_export.ts +5 -0
  508. package/src/api/rendering/sampler/sampler-enums.ts +20 -0
  509. package/src/api/rendering/swapchain/ISwapChain.ts +33 -0
  510. package/src/api/rendering/swapchain/SurfacePresentMode.ts +22 -0
  511. package/src/api/rendering/swapchain/SwapChainDescriptor.ts +23 -0
  512. package/src/api/rendering/swapchain/_export.ts +3 -0
  513. package/src/api/rendering/texture/ITexture2D.ts +100 -0
  514. package/src/api/rendering/texture/ITextureFactory.ts +56 -0
  515. package/src/api/rendering/texture/ITextureView.ts +20 -0
  516. package/src/api/rendering/texture/TextureDescriptor.ts +52 -0
  517. package/src/api/rendering/texture/TextureFormat.ts +58 -0
  518. package/src/api/rendering/texture/TextureUsage.ts +41 -0
  519. package/src/api/rendering/texture/TextureUtilities.ts +149 -0
  520. package/src/api/rendering/texture/TextureViewDescriptor.ts +25 -0
  521. package/src/api/rendering/texture/TextureViewDimension.ts +16 -0
  522. package/src/api/rendering/texture/_export-texture.ts +9 -0
  523. package/src/api/shader/IShaderModule.ts +23 -0
  524. package/src/api/shader/IShaderModuleLoader.ts +15 -0
  525. package/src/api/shader/ShaderStage.ts +9 -0
  526. package/src/api/shader/_export-shader.ts +3 -0
  527. package/src/{core → api}/shader/shader-loader.ts +1 -1
  528. package/src/api/sprites/ISpriteBatch.ts +144 -0
  529. package/src/{core/sprite-batch → api/sprites}/SpriteBatch.ts +8 -5
  530. package/src/{core/sprite-batch → api/sprites}/SpriteBatchDrawable.ts +6 -6
  531. package/src/{core/sprite-batch → api/sprites}/SpriteBatchMesh.ts +8 -4
  532. package/src/api/sprites/_export_sprites.ts +1 -0
  533. package/src/api/time/GameTime.ts +30 -0
  534. package/src/api/time/ITimeManager.ts +22 -0
  535. package/src/api/time/TimeManager.ts +33 -0
  536. package/src/api/time/_export_time.ts +3 -0
  537. package/src/api/utilities/AlignUtilities.ts +39 -0
  538. package/src/api/utilities/GeometryUtilities.ts +20 -0
  539. package/src/api/utilities/MathHelper.ts +256 -0
  540. package/src/api/utilities/_export.ts +3 -0
  541. package/src/api/window/IWindowManager.ts +78 -0
  542. package/src/api/window/WindowBounds.ts +17 -0
  543. package/src/{core/window/window-manager.ts → api/window/WindowManager.ts} +2 -2
  544. package/src/api/window/_export.ts +2 -0
  545. package/src/core/rendering/AGraphicsDevice.ts +15 -9
  546. package/src/core/rendering/ARenderer.ts +7 -7
  547. package/src/core/rendering/blending/enums.ts +5 -5
  548. package/src/core/rendering/sampler/sampler-descriptor.ts +1 -1
  549. package/src/core/rendering/texture/texture.ts +4 -3
  550. package/src/core/rendering/vertex-buffer-layout.ts +3 -4
  551. package/src/index.ts +3 -2
  552. package/src/main.ts +5 -10
  553. package/src/webgl/WebGLGraphicsDeviceFeatures.ts +1 -1
  554. package/src/webgl/WebGlGpuInfo.ts +1 -1
  555. package/src/webgl/WebGlGraphicsDevice.ts +19 -15
  556. package/src/webgl/WebGlRenderer.ts +7 -5
  557. package/src/webgl/blending/webgl-blend-state.ts +1 -1
  558. package/src/webgl/buffers/WebGlBuffersFactory.ts +1 -1
  559. package/src/webgl/buffers/WebGlUniformBuffer.ts +1 -1
  560. package/src/webgl/buffers/WebGlVertexBuffer.ts +8 -7
  561. package/src/webgl/buffers/webgl-index-buffer.ts +2 -2
  562. package/src/webgl/cast/cast.ts +2 -2
  563. package/src/webgl/primitive/WebGlPrimitiveState.ts +7 -3
  564. package/src/webgl/render-pass/WebGlRenderPass.ts +17 -8
  565. package/src/webgl/render-pipelines/AWebGlRenderPipeline.ts +1 -1
  566. package/src/webgl/render-pipelines/WebGlMainRenderTargetRenderPipeline.ts +10 -2
  567. package/src/webgl/render-pipelines/WebGlRenderPipelineFactory.ts +1 -1
  568. package/src/webgl/render-pipelines/inspect/WebGlInspectTextureMipsRenderPipeline.ts +3 -3
  569. package/src/webgl/render-pipelines/material/WebGlUnlitRenderPipeline.ts +2 -2
  570. package/src/webgl/render-pipelines/sprite/WebGlSpriteRenderPipeline.ts +2 -2
  571. package/src/webgl/sampler/webgl-sampler.ts +2 -2
  572. package/src/webgl/shader/WebGlShaderModule.ts +2 -2
  573. package/src/webgl/shader/WebGlShaderModuleLoader.ts +1 -1
  574. package/src/webgl/swap-chain/WebGlSwapChain.ts +1 -1
  575. package/src/webgl/texture/WebGlTexture2D.ts +6 -4
  576. package/src/webgl/texture/WebGlTextureFactory.ts +7 -7
  577. package/src/webgl/utilities/WebGlBufferUtilities.ts +1 -1
  578. package/src/webgl/utilities/WebGlConverter.ts +19 -62
  579. package/src/webgl/utilities/WebGlFrameBufferUtilities.ts +1 -1
  580. package/src/webgl/utilities/WebGlSamplerUtilities.ts +4 -4
  581. package/src/webgl/utilities/WebGlTextureUtilities.ts +29 -20
  582. package/src/webgl/utilities/webgl-culling-utilities.ts +1 -1
  583. package/src/webgl/utilities/webgl-filter-anisotropic-utilities.ts +1 -1
  584. package/src/webgl/utilities/webgl-renderbuffer-utilities.ts +1 -1
  585. package/dist/TextureFormat.d.ts +0 -2
  586. package/dist/TextureFormat.d.ts.map +0 -1
  587. package/dist/VertexFormat.d.ts.map +0 -1
  588. package/dist/_ris-ktx2-node-module-stub-nzBRmiO_.js +0 -10
  589. package/dist/common/sampler-enums.d.ts +0 -16
  590. package/dist/common/sampler-enums.d.ts.map +0 -1
  591. package/dist/common/vertex-step-mode.d.ts +0 -11
  592. package/dist/common/vertex-step-mode.d.ts.map +0 -1
  593. package/dist/content/ShaderModuleContent.d.ts.map +0 -1
  594. package/dist/core/Framework.d.ts.map +0 -1
  595. package/dist/core/FrameworkConfig.d.ts +0 -26
  596. package/dist/core/FrameworkConfig.d.ts.map +0 -1
  597. package/dist/core/buffers/buffers-factory-interface.d.ts +0 -2
  598. package/dist/core/buffers/buffers-factory-interface.d.ts.map +0 -1
  599. package/dist/core/buffers/vertex-buffer-interface.d.ts +0 -2
  600. package/dist/core/buffers/vertex-buffer-interface.d.ts.map +0 -1
  601. package/dist/core/content/ContentManager.d.ts.map +0 -1
  602. package/dist/core/dependency-injection/register-services-interface.d.ts +0 -13
  603. package/dist/core/dependency-injection/register-services-interface.d.ts.map +0 -1
  604. package/dist/core/framework-interface.d.ts +0 -2
  605. package/dist/core/framework-interface.d.ts.map +0 -1
  606. package/dist/core/input/InputManager.d.ts +0 -27
  607. package/dist/core/input/InputManager.d.ts.map +0 -1
  608. package/dist/core/renderer/renderer-interface.d.ts.map +0 -1
  609. package/dist/core/rendering/primitive/PrimitiveStateDescriptor.d.ts +0 -26
  610. package/dist/core/rendering/primitive/PrimitiveStateDescriptor.d.ts.map +0 -1
  611. package/dist/core/rendering/primitive/enums.d.ts +0 -56
  612. package/dist/core/rendering/primitive/enums.d.ts.map +0 -1
  613. package/dist/core/rendering/render-pass/render-pass-descriptor.d.ts +0 -2
  614. package/dist/core/rendering/render-pass/render-pass-descriptor.d.ts.map +0 -1
  615. package/dist/core/rendering/render-pass/render-pass-interface.d.ts +0 -15
  616. package/dist/core/rendering/render-pass/render-pass-interface.d.ts.map +0 -1
  617. package/dist/core/rendering/vertex-attribute.d.ts +0 -17
  618. package/dist/core/rendering/vertex-attribute.d.ts.map +0 -1
  619. package/dist/core/shader/shader-loader.d.ts.map +0 -1
  620. package/dist/core/shader/shader-module-interface.d.ts +0 -2
  621. package/dist/core/shader/shader-module-interface.d.ts.map +0 -1
  622. package/dist/core/sprite-batch/SpriteBatch.d.ts.map +0 -1
  623. package/dist/core/sprite-batch/SpriteBatchDrawable.d.ts.map +0 -1
  624. package/dist/core/sprite-batch/SpriteBatchMesh.d.ts.map +0 -1
  625. package/dist/core/window/window-manager.d.ts.map +0 -1
  626. package/dist/geometry/BaseGeometry.d.ts.map +0 -1
  627. package/dist/geometry/GeometryBuilder.d.ts.map +0 -1
  628. package/dist/geometry/GeometryFormat.d.ts +0 -34
  629. package/dist/geometry/GeometryFormat.d.ts.map +0 -1
  630. package/dist/webgl/utilities/webgl-render-buffer-utilities.d.ts +0 -5
  631. package/dist/webgl/utilities/webgl-render-buffer-utilities.d.ts.map +0 -1
  632. package/src/TextureFormat.ts +0 -0
  633. package/src/common/sampler-enums.ts +0 -21
  634. package/src/common/vertex-step-mode.ts +0 -12
  635. package/src/core/FrameworkConfig.ts +0 -31
  636. package/src/core/buffers/buffers-factory-interface.ts +0 -0
  637. package/src/core/buffers/vertex-buffer-interface.ts +0 -0
  638. package/src/core/dependency-injection/register-services-interface.ts +0 -15
  639. package/src/core/framework-interface.ts +0 -0
  640. package/src/core/input/InputManager.ts +0 -115
  641. package/src/core/rendering/primitive/PrimitiveStateDescriptor.ts +0 -32
  642. package/src/core/rendering/primitive/enums.ts +0 -68
  643. package/src/core/rendering/render-pass/render-pass-descriptor.ts +0 -0
  644. package/src/core/rendering/render-pass/render-pass-interface.ts +0 -17
  645. package/src/core/rendering/vertex-attribute.ts +0 -20
  646. package/src/core/shader/shader-module-interface.ts +0 -1
  647. package/src/counter.ts +0 -9
  648. package/src/geometry/GeometryFormat.ts +0 -37
  649. package/src/webgl/utilities/webgl-render-buffer-utilities.ts +0 -23
  650. /package/dist/{content → api/content}/ShaderModuleContent.d.ts +0 -0
  651. /package/dist/{VertexFormat.d.ts → api/geometry/VertexFormat.d.ts} +0 -0
  652. /package/dist/{core/renderer → api/rendering}/enums.d.ts +0 -0
  653. /package/dist/{core/renderer → api/rendering}/rendering-limits.d.ts +0 -0
  654. /package/src/{core/renderer → api/rendering}/enums.ts +0 -0
  655. /package/src/{core/renderer → api/rendering}/rendering-limits.ts +0 -0
@@ -0,0 +1,52 @@
1
+ import type { IDisposable } from "../core/IDisposable.ts";
2
+ import {mat4} from "gl-matrix"
3
+ import type { IUniformBuffer } from "../rendering/buffers/IUniformBuffer.ts";
4
+ import {GameTime} from "../time/GameTime.ts";
5
+
6
+ /** The camera interface. */
7
+ export interface ICamera extends IDisposable {
8
+
9
+ /**
10
+ * The projection matrix.
11
+ */
12
+ readonly projectionMatrix: mat4;
13
+
14
+ /**
15
+ * The view matrix.
16
+ */
17
+ readonly viewMatrix: mat4;
18
+
19
+ /**
20
+ * The projection view matrix.
21
+ */
22
+ readonly projectionViewMatrix: mat4;
23
+
24
+ /**
25
+ * The projection view buffer.
26
+ */
27
+ readonly projectionViewBuffer: IUniformBuffer;
28
+
29
+ /**
30
+ * The projection buffer.
31
+ */
32
+ readonly projectionBuffer: IUniformBuffer;
33
+
34
+ /**
35
+ * The view buffer.
36
+ */
37
+ readonly viewBuffer: IUniformBuffer;
38
+
39
+ /**
40
+ * Update the GPU buffers.
41
+ * This needs to be called when camera properties are changed.
42
+ */
43
+ updateBuffers(): void;
44
+
45
+ /**
46
+ * Update the camera.
47
+ * @param time - The game time object.
48
+ Use this for time-based movements.
49
+ */
50
+ update(time: GameTime): void;
51
+
52
+ }
@@ -0,0 +1,69 @@
1
+ import type { IOrthographicCamera } from "./IOrthographicCamera.ts";
2
+ import {vec2} from "gl-matrix";
3
+ import {OrbitCamera} from "./OrbitCamera.ts";
4
+ import {PerspectiveCamera} from "./PerspectiveCamera.ts";
5
+
6
+ /**
7
+ * The camera factory.
8
+ */
9
+ export interface ICameraFactory {
10
+
11
+ /**
12
+ * Creates a new perspective camera.
13
+ * @param fov The field of view. By default, 60 degrees.
14
+ * @param aspectRatio The aspect ratio. By default, 1.
15
+ * @param near The near plane. By default, 0.01.
16
+ * @param far The far plane. By default, 100.
17
+ * @return The perspective camera.
18
+ */
19
+ createPerspectiveCamera(
20
+ fov?: number,
21
+ aspectRatio?: number,
22
+ near?: number,
23
+ far?: number): PerspectiveCamera;
24
+
25
+ /**
26
+ * Creates a new orthographic camera which is suitable for 2D games, or for UI rendering.
27
+ * Also, suitable when orthographic projection is required, such as shadow mapping.
28
+ * @param left - The left edge of the camera volume.
29
+ * @param right - The right edge of the camera volume.
30
+ * @param top - The top edge of the camera volume.
31
+ * @param bottom - The bottom edge of the camera volume.
32
+ * @param far - The far plane.
33
+ * @param near - The near plane.
34
+ * @returns The orthographic camera.
35
+ */
36
+ createOrthographicCamera(left: number, right: number, top: number, bottom: number, near: number, far: number): IOrthographicCamera;
37
+
38
+ /**
39
+ * The default orthographic camera.
40
+ * @param origin - The origin point of the camera.
41
+ * @returns The default orthographic camera.
42
+ */
43
+ createDefaultOrthographicCamera(origin?: vec2): IOrthographicCamera;
44
+
45
+ /**
46
+ * Creates a new Orbit Camera.
47
+ * @param fov - The field of view. By default, 60 degrees.
48
+ * @param aspectRatio - The aspect ratio. By default, 1.
49
+ * @param near - The near plane. By default, 0.01f.
50
+ * @param far - The far plane. By default, 100.0f.
51
+ * @returns The camera that acts as free and orbit camera.
52
+ */
53
+ createOrbitCamera(fov?: number, aspectRatio?: number, near?: number, far?: number): OrbitCamera;
54
+
55
+ /**
56
+ * Creates a new .
57
+ *
58
+ * Holds both free camera and orbit camera like controls.
59
+ *
60
+ * Suitable for editor.
61
+ * @param fov - The field of view. By default, 60 degrees.
62
+ * @param aspectRatio - The aspect ratio. By default, 1.
63
+ * @param near - The near plane. By default, 0.01f.
64
+ * @param far - The far plane. By default, 100.0f.
65
+ * @returns The camera that acts as free and orbit camera.
66
+ */
67
+ // createFreeAndOrbitCamera(fov: number, aspectRatio: number, near: number, far: number): FreeAndOrbitCamera;
68
+
69
+ }
@@ -0,0 +1,38 @@
1
+ import type { ICamera } from "./ICamera.ts";
2
+
3
+ /**
4
+ * The orthographic camera interface.
5
+ */
6
+ export interface IOrthographicCamera extends ICamera {
7
+
8
+ /**
9
+ * The left edge of a camera volume.
10
+ */
11
+ left: number;
12
+
13
+ /**
14
+ * The right edge of a camera volume.
15
+ */
16
+ right: number;
17
+
18
+ /**
19
+ * The top edge of a camera volume.
20
+ */
21
+ top: number;
22
+
23
+ /**
24
+ * The bottom edge of a camera volume.
25
+ */
26
+ bottom: number;
27
+
28
+ /**
29
+ * The near plane of the camera.
30
+ */
31
+ nearPlane: number;
32
+
33
+ /**
34
+ * The far plane of the camera.
35
+ */
36
+ farPlane: number;
37
+
38
+ }
@@ -0,0 +1,402 @@
1
+ import {vec3, mat4, vec2} from "gl-matrix";
2
+ import type { IUniformBuffer } from "../rendering/buffers/IUniformBuffer.ts";
3
+ import {PerspectiveCamera} from "./PerspectiveCamera.ts";
4
+ import type { IInputManager } from "../input/IInputManager.ts";
5
+ import {MathHelper} from "../utilities/MathHelper.ts";
6
+ import type { ICamera } from "./ICamera.ts";
7
+ import {MouseState} from "../input/mouse/MouseState.ts";
8
+ import {GameTime} from "../time/GameTime.ts";
9
+ import {MouseButton} from "../input/mouse/MouseButton.ts";
10
+ import {TouchCollection} from "../input/touch/TouchCollection.ts";
11
+ import {TouchLocation} from "../input/touch/TouchLocation.ts";
12
+ import {InputDeviceType} from "../input/InputDeviceType.ts";
13
+
14
+ /**
15
+ * Camerae that support orbit movement.
16
+ */
17
+ export class OrbitCamera implements ICamera {
18
+
19
+ private readonly POSITIVE_89_DEG = 1.55334;
20
+ private readonly POSITIVE_179_DEG = 3.124139;
21
+
22
+ private readonly _tempVec3 = vec3.create();
23
+ private readonly _tempDirection = vec3.create();
24
+ private readonly _tempNextDirection = vec3.create();
25
+ private readonly _tempNextEye = vec3.create();
26
+
27
+ /** For pinch zoom. The distance between the two touches on the previous pinch frame. */
28
+ private _lastTouchDistance = 0;
29
+
30
+ private readonly _coreCamera: PerspectiveCamera;
31
+ private readonly _inputManager: IInputManager
32
+
33
+ /** The rotation around the vertical axis. */
34
+ private _yaw = 0;
35
+
36
+ /** The tilt of the camera.*/
37
+ private _pitch = 0;
38
+
39
+ /**
40
+ * The constructor.
41
+ * @param coreCamera The underlying core camera.
42
+ * @param inputManager The input manager.
43
+ * @param supportedInputTypes The input devices that control the camera.
44
+ */
45
+ public constructor(coreCamera: PerspectiveCamera,
46
+ inputManager: IInputManager,
47
+ public supportedInputTypes: InputDeviceType = InputDeviceType.MOUSE | InputDeviceType.TOUCHPAD) {
48
+ this._coreCamera = coreCamera;
49
+ this._inputManager = inputManager;
50
+ this.eye = vec3.fromValues(0, 0, -3);
51
+ this.target = vec3.fromValues(0, 0, 0);
52
+ void this.POSITIVE_179_DEG;
53
+ void this.findTarget;
54
+ }
55
+
56
+ /** The mouse sensitivity. */
57
+ public sensitivity = 0.05;
58
+
59
+ /** The speed of scrolling related options. */
60
+ public scrollSpeed = 1;
61
+
62
+ /** The maximum scrolling speed. */
63
+ public maxScrollSpeed: number = 50;
64
+
65
+ /** The speed of pinch.*/
66
+ public pinchSpeed: number = 1;
67
+
68
+ /** The up vector. */
69
+ public up = vec3.fromValues(0, 1, 0);
70
+
71
+ /** The clamp values of pitch axis */
72
+ public pitchClamp = vec2.fromValues(-this.POSITIVE_89_DEG, this.POSITIVE_89_DEG);
73
+
74
+ /** @inheritDoc */
75
+ public get projectionViewBuffer(): IUniformBuffer {
76
+ return this._coreCamera.projectionViewBuffer;
77
+ }
78
+
79
+ /** @inheritDoc */
80
+ public get projectionBuffer(): IUniformBuffer {
81
+ return this._coreCamera.projectionBuffer;
82
+ }
83
+
84
+ /** @inheritDoc */
85
+ public get viewBuffer(): IUniformBuffer {
86
+ return this._coreCamera.viewBuffer;
87
+ }
88
+
89
+ /** @inheritDoc */
90
+ public get positionBuffer(): IUniformBuffer {
91
+ return this._coreCamera.positionBuffer;
92
+ }
93
+
94
+ /** @inheritDoc */
95
+ public get projectionMatrix(): mat4 {
96
+ return this._coreCamera.projectionMatrix;
97
+ }
98
+
99
+ /** @inheritDoc */
100
+ public get viewMatrix(): mat4 {
101
+ return this._coreCamera.viewMatrix;
102
+ }
103
+
104
+ /** @inheritDoc */
105
+ public set viewMatrix(value: mat4) {
106
+ this._coreCamera.viewMatrix = value;
107
+ }
108
+
109
+ /** @inheritDoc */
110
+ public get projectionViewMatrix(): mat4 {
111
+ return this._coreCamera.projectionViewMatrix;
112
+ }
113
+
114
+ /** @inheritDoc */
115
+ public get direction(): vec3 {
116
+ return this._coreCamera.direction;
117
+ }
118
+
119
+ /** Orbit controls can be used if this button is pressed. */
120
+ public orbitButton = MouseButton.LEFT;
121
+
122
+ /**
123
+ * The eye position of the camera.
124
+ */
125
+ public get eye(): vec3 {
126
+ return this._coreCamera.eye;
127
+ }
128
+
129
+ /**
130
+ * The eye position of the camera.
131
+ */
132
+ public set eye(value: vec3) {
133
+ this._coreCamera.eye = value;
134
+ this._setPitchAndYawFromDirection(this._coreCamera.direction);
135
+ }
136
+
137
+ /**
138
+ * The eye position of the camera.
139
+ */
140
+ public get target(): vec3 {
141
+ return this._coreCamera.target;
142
+ }
143
+
144
+ /**
145
+ * The eye position of the camera.
146
+ */
147
+ public set target(value: vec3) {
148
+ this._coreCamera.target = value;
149
+ this._setPitchAndYawFromDirection(this._coreCamera.direction);
150
+ }
151
+
152
+ /** Gets the core camera.*/
153
+ public get coreCamera(): ICamera | undefined {
154
+ return this._coreCamera;
155
+ }
156
+
157
+ /**
158
+ * Find a target from yaw and pitch.
159
+ */
160
+ private findTarget(): void {
161
+ throw new Error('Not implemented');
162
+ }
163
+
164
+
165
+ /** @inheritDoc */
166
+ public initialize(): void {
167
+ throw new Error('Not implemented');
168
+ }
169
+
170
+ public updateBuffers(): void {
171
+ throw new Error('Not implemented');
172
+ }
173
+
174
+ private _pitchClamp(value: number): number {
175
+ return MathHelper.clamp(value, this.pitchClamp[0], this.pitchClamp[1]);
176
+ }
177
+
178
+ /**
179
+ * Sets the pitch and yaw from look direction.
180
+ * @param lookDirection The direction.
181
+ * @private
182
+ */
183
+ private _setPitchAndYawFromDirection(lookDirection: vec3) {
184
+ vec3.normalize(lookDirection, lookDirection);
185
+ const y = MathHelper.clamp(lookDirection[1], -1, 1);
186
+ this._pitch = -this._pitchClamp(Math.asin(y));
187
+ this._yaw = -Math.atan2(lookDirection[0], lookDirection[2]);
188
+ }
189
+
190
+ private _calculateOrbitMovement() {
191
+ // Clamp between [1.0, 179.0] degrees.
192
+ this._pitch = this._pitchClamp(this._pitch);
193
+
194
+ // Convert spherical coordinates to Cartesian
195
+ vec3.sub(this._tempVec3, this._coreCamera.target, this._coreCamera.eye);
196
+ const radius = vec3.len(this._tempVec3);
197
+
198
+ const sinPitch = Math.sin(this._pitch);
199
+ const cosPitch = Math.cos(this._pitch);
200
+
201
+ const x = radius * cosPitch * Math.sin(this._yaw);
202
+ const y = radius * sinPitch;
203
+ const z = radius * cosPitch * Math.cos(this._yaw);
204
+
205
+ this._tempVec3[0] = x;
206
+ this._tempVec3[1] = y;
207
+ this._tempVec3[2] = -z;
208
+ vec3.add(this._coreCamera.eye, this._coreCamera.target, this._tempVec3);
209
+ }
210
+
211
+ /**
212
+ * Handles the mouse movement for orbit camera.
213
+ * @param mouseState The mouse state.
214
+ * @param deltaTime The delta time.
215
+ */
216
+ private _handleOrbitMouseMovement(mouseState: MouseState, deltaTime: number): void {
217
+ const dt = deltaTime * this.sensitivity;
218
+ this._yaw -= mouseState.dX * dt;
219
+ this._pitch += mouseState.dY * dt;
220
+ this._calculateOrbitMovement();
221
+ }
222
+
223
+ /**
224
+ * Handles touch orbit and pinch zoom.
225
+ * One finger down orbits. Two fingers down pinch. Released and cancelled contacts are ignored.
226
+ * @param touches The touch locations.
227
+ * @param deltaTime The delta time.
228
+ */
229
+ private _handleOrbitTouch(touches: TouchCollection, deltaTime: number): void {
230
+ let down = 0;
231
+ let first: TouchLocation | undefined;
232
+ let second: TouchLocation | undefined;
233
+ const count = touches.count;
234
+ for (let i = 0; i < count; i++) {
235
+ const touch = touches.get(i);
236
+ if (touch === undefined || !touch.isDown) {
237
+ continue;
238
+ }
239
+ if (down === 0) {
240
+ first = touch;
241
+ } else if (down === 1) {
242
+ second = touch;
243
+ }
244
+ down++;
245
+ }
246
+
247
+ // One finger orbits.
248
+ if (down === 1 && first !== undefined) {
249
+ const dt = deltaTime * this.sensitivity;
250
+ this._yaw -= first.dX * dt;
251
+ this._pitch += first.dY * dt;
252
+ this._calculateOrbitMovement();
253
+ return;
254
+ }
255
+
256
+ if (down !== 2 || first === undefined || second === undefined) {
257
+ return;
258
+ }
259
+
260
+ const d = vec2.distance(first.position, second.position);
261
+ const diff = d - this._lastTouchDistance;
262
+ this._lastTouchDistance = d;
263
+
264
+ // Nothing to do, same distance.
265
+ if(diff == 0) {
266
+ return;
267
+ }
268
+
269
+ // Find the current distance.
270
+ vec3.copy(this._tempDirection, this.direction);
271
+
272
+ // Find the next eye position.
273
+ vec3.normalize(this._tempDirection, this._tempDirection);
274
+ vec3.copy(this._tempNextEye, this.eye);
275
+
276
+ if (diff < 0) {
277
+ vec3.scale(this._tempVec3, this._tempDirection, this.pinchSpeed * deltaTime);
278
+ vec3.sub(this._tempNextEye, this._tempNextEye, this._tempVec3);
279
+ } else {
280
+ vec3.scale(this._tempVec3, this._tempDirection, this.pinchSpeed * deltaTime);
281
+ vec3.add(this._tempNextEye, this._tempNextEye, this._tempVec3);
282
+ }
283
+
284
+ // Find the new potential length.
285
+ vec3.sub(this._tempNextDirection, this.target, this._tempNextEye);
286
+ const nextLength = this._tempNextDirection.length;
287
+ vec3.normalize(this._tempNextDirection, this._tempNextDirection);
288
+
289
+ // Difference between next direction and direction.
290
+ vec3.sub(this._tempVec3, this._tempNextDirection, this._tempDirection);
291
+ const lenSq =vec3.sqrLen(this._tempVec3);
292
+
293
+ // Only if within bounds set and no change in direction of a vector.
294
+ if (nextLength < this._coreCamera.nearPlane
295
+ || nextLength > this._coreCamera.farPlane
296
+ || lenSq > 0.1
297
+ ) {
298
+ return;
299
+ }
300
+
301
+ vec3.copy(this._coreCamera.eye, this._tempNextEye);
302
+ this._setPitchAndYawFromDirection(this._coreCamera.direction);
303
+ }
304
+
305
+ /** Handles forward/backward movement */
306
+ private _handleMouseForwardBackwardMovement(mouseState: MouseState, deltaTime: number) {
307
+
308
+ const mouseScrollPos = mouseState.scrollWheelPosition[1];
309
+
310
+ if (mouseScrollPos == 0) {
311
+ return;
312
+ }
313
+
314
+ // Find the current distance.
315
+ vec3.copy(this._tempDirection, this.direction);
316
+ const distance = vec3.len(this._tempDirection);
317
+
318
+ // Map it to [1,0.1f] space.
319
+ const step = MathHelper.map(distance,
320
+ this._coreCamera.nearPlane, this._coreCamera.farPlane,
321
+ 1, 0.1);
322
+
323
+ // Scroll speed is scaled with the distance between eye and target.
324
+ // - The closer the target is, the slower the scroll speed.
325
+ let trueScrollSpeed = step * this.scrollSpeed;
326
+
327
+ // Clamp to the max scroll speed.
328
+ if (trueScrollSpeed > this.maxScrollSpeed) {
329
+ trueScrollSpeed = this.maxScrollSpeed;
330
+ }
331
+
332
+ // Find the next eye position.
333
+ vec3.normalize(this._tempDirection, this._tempDirection);
334
+ vec3.copy(this._tempNextEye, this.eye);
335
+
336
+ if (mouseScrollPos > 0) {
337
+ vec3.scale(this._tempVec3, this._tempDirection, trueScrollSpeed * deltaTime);
338
+ vec3.sub(this._tempNextEye, this._tempNextEye, this._tempVec3);
339
+ } else {
340
+ vec3.scale(this._tempVec3, this._tempDirection, trueScrollSpeed * deltaTime);
341
+ vec3.add(this._tempNextEye, this._tempNextEye, this._tempVec3);
342
+ }
343
+
344
+ // Find the new potential length.
345
+ vec3.sub(this._tempNextDirection, this.target, this._tempNextEye);
346
+ const nextLength = this._tempNextDirection.length;
347
+ vec3.normalize(this._tempNextDirection, this._tempNextDirection);
348
+
349
+ // Difference between next direction and direction.
350
+ vec3.sub(this._tempVec3, this._tempNextDirection, this._tempDirection);
351
+ const lenSq =vec3.sqrLen(this._tempVec3);
352
+
353
+ // Only if within bounds set and no change in direction of a vector.
354
+ if (nextLength < this._coreCamera.nearPlane
355
+ || nextLength > this._coreCamera.farPlane
356
+ || lenSq > 0.01
357
+ ) {
358
+ return;
359
+ }
360
+
361
+ vec3.copy(this._coreCamera.eye, this._tempNextEye);
362
+ this._setPitchAndYawFromDirection(this._coreCamera.direction);
363
+ }
364
+
365
+ /** @inheritDoc */
366
+ public update(time: GameTime): void {
367
+
368
+ // vec3.sub(this._tempVec3, this.target, this.eye);
369
+ // this._setPitchAndYawFromDirection(this._tempVec3);
370
+
371
+ const deltaTime = time.deltaTimeSec;
372
+
373
+ const mouseSupported = (this.supportedInputTypes & InputDeviceType.MOUSE) !== 0;
374
+ const touchSupported = (this.supportedInputTypes & InputDeviceType.TOUCHPAD) !== 0;
375
+
376
+ // Control pitch and yaw with mouse.
377
+ const mouseState = this._inputManager.getMouseState();
378
+
379
+ // If we have a mouse, use mouse.
380
+ if (mouseSupported && mouseState.isButtonDown(this.orbitButton)) {
381
+ this._handleOrbitMouseMovement(mouseState, deltaTime);
382
+ } else {
383
+
384
+ // Otherwise orbit and pinch with touch.
385
+ if (touchSupported) {
386
+ this._handleOrbitTouch(this._inputManager.getTouchCollection(), deltaTime);
387
+ }
388
+
389
+ // Usually done with scroll wheel.
390
+ if (mouseSupported) {
391
+ this._handleMouseForwardBackwardMovement(mouseState, deltaTime);
392
+ }
393
+ }
394
+
395
+ this._coreCamera.update(time);
396
+ }
397
+
398
+ /** @inheritDoc */
399
+ public dispose(): void {
400
+ this._coreCamera.dispose();
401
+ }
402
+ }