Point VibeGeometry at CultGeometry CSG
This commit is contained in:
parent
85ac60a7f5
commit
59fa3ef503
9 changed files with 40 additions and 40 deletions
6
.gitmodules
vendored
6
.gitmodules
vendored
|
|
@ -1,3 +1,3 @@
|
|||
[submodule "crates/vg_csg"]
|
||||
path = crates/vg_csg
|
||||
url = https://github.com/GameCult/vg-csg
|
||||
[submodule "crates/gamecult_geometry_csg"]
|
||||
path = crates/gamecult_geometry_csg
|
||||
url = https://github.com/GameCult/GameCult.Geometry.Csg
|
||||
|
|
|
|||
10
AGENTS.md
10
AGENTS.md
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
## Purpose
|
||||
|
||||
VibeGeometry is the repository shell for the `vg-csg` Rust work surface.
|
||||
VibeGeometry is the repository shell for the CultGeometry CSG Rust work surface.
|
||||
|
||||
The previous scene-generation mission has been deleted from the live tree. Do
|
||||
not recreate it unless the user explicitly asks to recover a historical artifact
|
||||
|
|
@ -19,10 +19,10 @@ domain/tree intent
|
|||
|
||||
## Ownership
|
||||
|
||||
- `crates/vg_csg` owns implementation.
|
||||
- `crates/gamecult_geometry_csg` owns implementation.
|
||||
- The root workspace owns only wiring, submodule state, and very small guidance.
|
||||
- If a new domain-tree DSL, selected-cut planner, streaming mesh cache, or
|
||||
frustum query API is needed, start inside `vg-csg`.
|
||||
frustum query API is needed, start inside CultGeometry CSG.
|
||||
- Do not add root-level helper runtimes, prompt packs, visual translation
|
||||
corpora, or schema scaffolds.
|
||||
|
||||
|
|
@ -32,14 +32,14 @@ domain/tree intent
|
|||
git submodule update --init --recursive
|
||||
cargo test
|
||||
cargo clippy --all-targets --all-features
|
||||
cargo run -p vg_csg --release --example csg_perf_fixture
|
||||
cargo run -p gamecult-geometry-csg --release --example csg_perf_fixture
|
||||
```
|
||||
|
||||
## Discipline
|
||||
|
||||
- Keep the runtime path legible: input tree, selected cut, brush/CSG lowering,
|
||||
emitted triangles, and timing evidence.
|
||||
- Prefer tests and performance receipts inside `vg-csg` over root-level notes.
|
||||
- Prefer tests and performance receipts inside CultGeometry CSG over root-level notes.
|
||||
- Preserve exact parity only for public behavior the crate claims to mirror.
|
||||
- RealtimeCSG is a reference seam, not an idol.
|
||||
- Do not let historical scene-generation work become a live dependency again.
|
||||
|
|
|
|||
22
Cargo.lock
generated
22
Cargo.lock
generated
|
|
@ -326,6 +326,17 @@ dependencies = [
|
|||
"slab",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "gamecult-geometry-csg"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"approx",
|
||||
"bevy_math",
|
||||
"rmp-serde",
|
||||
"serde",
|
||||
"sha2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "generic-array"
|
||||
version = "0.14.7"
|
||||
|
|
@ -889,17 +900,6 @@ version = "0.9.5"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
|
||||
|
||||
[[package]]
|
||||
name = "vg_csg"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"approx",
|
||||
"bevy_math",
|
||||
"rmp-serde",
|
||||
"serde",
|
||||
"sha2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "wasip2"
|
||||
version = "1.0.3+wasi-0.2.9"
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
[workspace]
|
||||
members = ["crates/vg_csg"]
|
||||
members = ["crates/gamecult_geometry_csg"]
|
||||
resolver = "3"
|
||||
|
|
|
|||
15
README.md
15
README.md
|
|
@ -1,6 +1,7 @@
|
|||
# VibeGeometry
|
||||
|
||||
VibeGeometry is now the working shell around `vg-csg`.
|
||||
VibeGeometry is the historical shell around **CultGeometry CSG**, whose clean
|
||||
package identity is `GameCult.Geometry.Csg`.
|
||||
|
||||
The previous scene-generation research era is gone from the live tree. It can
|
||||
stay in git history, where failed experiments are useful without being allowed
|
||||
|
|
@ -17,17 +18,17 @@ domain/tree intent
|
|||
|
||||
The actual work surface is the Rust crate at:
|
||||
|
||||
- `crates/vg_csg`
|
||||
- upstream: `https://github.com/GameCult/vg-csg`
|
||||
- `crates/gamecult_geometry_csg`
|
||||
- upstream: `https://github.com/GameCult/GameCult.Geometry.Csg`
|
||||
|
||||
## What This Repo Owns
|
||||
|
||||
- The `vg-csg` submodule pointer.
|
||||
- The CultGeometry CSG submodule pointer.
|
||||
- A minimal Rust workspace that builds that crate.
|
||||
- Thin operating notes that keep future work pointed at runtime CSG, not legacy
|
||||
scene-generation scaffolding.
|
||||
|
||||
## What `vg-csg` Owns
|
||||
## What CultGeometry CSG Owns
|
||||
|
||||
- Brush and CSG tree APIs.
|
||||
- RealtimeCSG-shaped public seams where useful.
|
||||
|
|
@ -42,9 +43,9 @@ The actual work surface is the Rust crate at:
|
|||
git submodule update --init --recursive
|
||||
cargo test
|
||||
cargo clippy --all-targets --all-features
|
||||
cargo run -p vg_csg --release --example csg_perf_fixture
|
||||
cargo run -p gamecult-geometry-csg --release --example csg_perf_fixture
|
||||
```
|
||||
|
||||
If a future task needs domain-tree DSL work, put it in `vg-csg` unless there is
|
||||
If a future task needs domain-tree DSL work, put it in CultGeometry CSG unless there is
|
||||
a proven reason it must live outside the crate. The default answer is simple:
|
||||
the geometry machine belongs where the geometry machine runs.
|
||||
|
|
|
|||
1
crates/gamecult_geometry_csg
Submodule
1
crates/gamecult_geometry_csg
Submodule
|
|
@ -0,0 +1 @@
|
|||
Subproject commit b476a05eb5ea93ea86f44b09892e83f4bf9499b0
|
||||
|
|
@ -1 +0,0 @@
|
|||
Subproject commit a3197f413997f90fb53c609274e025d58fadc31b
|
||||
|
|
@ -1,22 +1,21 @@
|
|||
experiment:
|
||||
name: VibeGeometry
|
||||
status: runtime_csg_shell
|
||||
phase: vg_csg_focus
|
||||
phase: cultgeometry_csg_focus
|
||||
premise: >
|
||||
VibeGeometry is now the thin repository shell around the `vg-csg` Rust
|
||||
work surface. Historical scene-generation research machinery has been
|
||||
removed from the live tree.
|
||||
VibeGeometry is the thin historical shell around the CultGeometry CSG Rust
|
||||
work surface, whose clean package identity is GameCult.Geometry.Csg.
|
||||
|
||||
mission:
|
||||
primary: >
|
||||
Build a fast runtime CSG machine capable of lowering domain/tree intent into
|
||||
an LOD-aware CSG hierarchy and emitting triangle/collider output for a
|
||||
camera or frustum query in milliseconds.
|
||||
work_surface: crates/vg_csg
|
||||
work_surface: crates/gamecult_geometry_csg
|
||||
|
||||
hard_boundaries:
|
||||
- Do not rebuild the historical scene-generation pipeline in this repo.
|
||||
- Put implementation in `crates/vg_csg` unless a task proves a root-level
|
||||
- Put implementation in `crates/gamecult_geometry_csg` unless a task proves a root-level
|
||||
surface is necessary.
|
||||
- Preserve exact parity only for public RealtimeCSG-style behavior the crate
|
||||
explicitly claims to mirror.
|
||||
|
|
@ -25,25 +24,25 @@ hard_boundaries:
|
|||
|
||||
live_architecture:
|
||||
pipeline:
|
||||
- Domain or tree intent enters `vg-csg`.
|
||||
- Domain or tree intent enters CultGeometry CSG.
|
||||
- The runtime chooses an LOD-aware selected cut for the requested view,
|
||||
budget, dirty state, or output scope.
|
||||
- The selected cut lowers to CSG/brush operations.
|
||||
- The crate emits triangle and collider output plus receipt/timing evidence.
|
||||
root:
|
||||
- Minimal Cargo workspace.
|
||||
- `crates/vg_csg` git submodule.
|
||||
- `crates/gamecult_geometry_csg` git submodule.
|
||||
- Minimal README/AGENTS/state pointers.
|
||||
|
||||
current_status:
|
||||
summary: >
|
||||
Root-level scene-generation surfaces have been deleted. `vg-csg` is the live
|
||||
Root-level scene-generation surfaces have been deleted. CultGeometry CSG is the live
|
||||
work surface for future domain-tree, LOD CSG, selected-cut, and triangle
|
||||
emission work.
|
||||
next_action: >
|
||||
Continue inside `crates/vg_csg`: define the first LOD/query contract for
|
||||
Continue inside `crates/gamecult_geometry_csg`: define the first LOD/query contract for
|
||||
selected CSG output rather than adding new root scaffolding.
|
||||
|
||||
remotes:
|
||||
vibegeometry: https://github.com/GameCult/VibeGeometry
|
||||
vg_csg: https://github.com/GameCult/vg-csg
|
||||
gamecult_geometry_csg: https://github.com/GameCult/GameCult.Geometry.Csg
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Scratch
|
||||
|
||||
Current live cut: `vg-csg` owns the work surface.
|
||||
Current live cut: CultGeometry CSG (`GameCult.Geometry.Csg`) owns the work surface.
|
||||
|
||||
Do not rehydrate old scene-generation plans from memory. The live tree has been
|
||||
intentionally reduced to a Rust CSG workspace shell.
|
||||
|
|
|
|||
Loading…
Reference in a new issue