Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.10.0 #98

Merged
merged 12 commits into from
Dec 20, 2024
Merged

v0.10.0 #98

merged 12 commits into from
Dec 20, 2024

Conversation

martinlaxenaire
Copy link
Owner

Simplified the pipeline creations and added support for indirect drawing

Pipeline creation

  • added a cacheKey getter to Material and RenderMaterial
  • PipelineManager class createRenderPipeline and createComputePipeline methods now use materials as parameters
  • simplified/cleaned up pipeline entries and types
  • reset a Mesh pipeline when using useMaterial and the geometry has changed

Indirect drawing

Features

  • added support for atomic in BufferElement and BufferBinding classes
  • BufferBinding now have a buffer parameter that allows to pass an already created Buffer to a BufferBinding.
  • better BufferElement type and baseType handling thanks to static methods
  • added an IndirectBuffer class to handle indirect drawing.
  • added an option to use an IndirectBuffer with a RenderBundle.
  • Camera now have a frustumPlanes getter to compute frustum planes
  • added GPUDeviceManager and GPUCurtains destroyed context event

Bug fixes

  • added missing bindings parameters to ComputePass
  • fixed esbuild minifying constructor class names and therefore breaking all constructor names check in gpu-curtains.umd.min.js

Examples

  • GPU culling with render bundle, indirect drawing and compute pass example

martinlaxenaire and others added 12 commits December 16, 2024 21:15
- `PipelineManager` class `createRenderPipeline` and `createComputePipeline` methods now use materials as parameters
- reset a Mesh pipeline when using `useMaterial` and the `geometry` has changed
- added an option to use an `IndirectBuffer` with a `RenderBundle`.
- `BufferBinding` now have a `buffer` parameter that allows to pass an already created `Buffer` to a `BufferBinding`.
- better `BufferElement` `type` and `baseType` handling thanks to static methods
- `Camera` now have a `frustumPlanes` getter to compute frustum planes
- added a GPU culling with indirect drawing and render bundle test!
- documentation
…ing all constructor names check in umd.min.js
…r` and handled there)

- better `RenderBundle` buffer destroying and `Renderer` management (use a `Map`)
- added `GPUDeviceManagr` and `GPUCurtains` destroyed context event
- moved GPU culling from tests to examples!
@martinlaxenaire martinlaxenaire merged commit fe6f3ce into main Dec 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant