feat(voxel): Add 3D Storage Buffer / Texture streaming to 06_voxel_renderer
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 活発
- 技術スタック
- rust
調査の方向性
Start with examples/06_voxel_renderer/src/main.rs and shaders/voxel.wgsl to trace how get_voxel() supplies terrain, then read crates/lgpu/src/buffer.rs for storage buffer allocation and write_at(). The issue proposes a GPU backed voxel grid and mouse driven editing; done means the renderer streams voxel data and users can place and mine blocks interactively.
索引モデルが issue の本文から書いたものです。
説明
Summary
The real-time voxel renderer in examples/06_voxel_renderer currently evaluates procedural terrain directly in the fragment shader via get_voxel().
To enable an interactive voxel sandbox where users can place and mine blocks in real time, the world volume can be backed by a GPU storage buffer or 3D storage image.
Proposed Architecture
- Allocate an
lgpu::BufferwithBufferUsage::STORAGErepresenting the voxel grid (e.g., 28 \times 64 \times 128$ bytes $\approx 1$ MB). - Register the buffer into
lgpu's global bindless descriptor heap (buffer.id()). - Access the storage buffer in
voxel.wgslusing the bindless ID. - Add mouse click handling to pick the targeted voxel and update it dynamically on the GPU using
buffer.write_at().
Relevant Code
examples/06_voxel_renderer/src/main.rsexamples/06_voxel_renderer/shaders/voxel.wgslcrates/lgpu/src/buffer.rs
- 主要言語
- Rust
- スター
- 8
- フォーク
- 1
- 平均マージ
- 1時間 45分
- マージ済み PR(30日)
- 6
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
kuntal-devrat/lgpu のほかの issue
-
enhancement help wanted
難易度 5/5 1週間以上 初心者へのやさしさ 42/100
kuntal-devrat/lgpu#4 ·
kuntal-devrat/lgpu の issue をすべて見る
似ている issue
-
bug priority: low ui
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
storytold/photocraft#10370 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
area:doc bug in progress needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
bherbruck/solvecraft#9634 · コメント 2 件 · リアクション 1 件 ·
-
inflate: total_in uses plain += on c_ulong (32-bit on Windows), panics in debug for streams > 4 GiBオープン
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
trifectatechfoundation/zlib-rs#570 · コメント 1 件 ·
-
bug discord-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
LanternOps/breeze#10755 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
aranya-project/aranya#803 ·