-
Notifications
You must be signed in to change notification settings - Fork 2
feat(lambda-rs): Add support for textures #69
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR adds comprehensive texture and sampler support to the lambda-rs rendering engine. It introduces 2D and 3D texture creation, sampling configuration, and depth testing capabilities, along with tutorial documentation and working examples.
- Implements platform-level texture and sampler builders with proper padding and validation
- Adds high-level API wrappers for textures, samplers, and depth attachments
- Extends bind group system to support texture and sampler bindings
- Provides depth buffer support with configurable clear operations
Reviewed Changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| docs/tutorials/uniform-buffers.md | Adds conclusion section and updates metadata; contains duplicate last_updated field |
| docs/tutorials/textured-quad.md | New tutorial demonstrating 2D texture sampling with a quad |
| docs/tutorials/textured-cube.md | New tutorial showing 3D transforms with textured cube rendering |
| docs/tutorials/README.md | Updates index with links to new texture tutorials |
| docs/specs/textures-and-samplers.md | Technical specification for texture/sampler API; contains list marker typo |
| crates/lambda-rs/tests/runnables.rs | Removes empty test file |
| crates/lambda-rs/src/render/texture.rs | New high-level texture and sampler API module |
| crates/lambda-rs/src/render/render_pass.rs | Adds depth attachment operations and configuration |
| crates/lambda-rs/src/render/pipeline.rs | Adds depth testing support to render pipelines |
| crates/lambda-rs/src/render/mod.rs | Integrates depth texture management into render context |
| crates/lambda-rs/src/render/bind.rs | Extends bind groups to support texture and sampler bindings |
| crates/lambda-rs/examples/textured_quad.rs | Working example of 2D texture sampling |
| crates/lambda-rs/examples/textured_cube.rs | Working example of 3D textured rendering with depth |
| crates/lambda-rs-platform/tests/*.rs | Integration tests for texture upload and binding |
| crates/lambda-rs-platform/src/wgpu/texture.rs | Platform-level texture implementation with padding logic |
| crates/lambda-rs-platform/src/wgpu/render_pass.rs | Adds depth attachment support; contains redundant cast |
| crates/lambda-rs-platform/src/wgpu/pipeline.rs | Adds depth/stencil state configuration |
| crates/lambda-rs-platform/src/wgpu/mod.rs | Exports new texture module |
| crates/lambda-rs-platform/src/wgpu/bind.rs | Implements texture and sampler binding at platform level |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Copilot reviewed 24 out of 24 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.