Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
256 commits
Select commit Hold shift + click to select a range
44c02c9
feat: add new dependencies and CLI improvements to Part3D
maikramer Apr 3, 2026
8b6a035
feat: add SDNQ support and CLI refactoring to Paint3D
maikramer Apr 3, 2026
f011447
feat: enhance Paint3D vendored modules for SDNQ support
maikramer Apr 3, 2026
82f5406
feat: improve Text3D CLI and generation pipeline
maikramer Apr 3, 2026
664198b
feat: enhance Animator3D with debug rendering
maikramer Apr 3, 2026
6aab37d
docs: update GameAssets documentation and CLI
maikramer Apr 3, 2026
f832c19
refactor: improve Text2D CLI and generator
maikramer Apr 3, 2026
9b9dc31
refactor: improve Text2Sound CLI
maikramer Apr 3, 2026
574f0cf
refactor: improve Rigging3D CLI
maikramer Apr 3, 2026
b603121
docs: update main README and RTX 4050 guide
maikramer Apr 3, 2026
4f843b9
chore: update CI, Makefile and linting configuration
maikramer Apr 3, 2026
e0e27ae
feat: enhance Text3D with backing plate detection and removal
maikramer Apr 3, 2026
dc8e4aa
chore: remove obsolete files related to base plate detection experiment
maikramer Apr 3, 2026
6e88632
refactor: unify installers, cli_rich, and skill_install
maikramer Apr 4, 2026
61e64d0
ci: use uv for Python venv creation with specific versions
maikramer Apr 4, 2026
882e44f
ci: use uv with setup-python for correct Python versions
maikramer Apr 4, 2026
cff7720
ci: revert to original workflow (without uv)
maikramer Apr 4, 2026
eff4c49
fix: add sdnq to dev dependencies for CI
maikramer Apr 4, 2026
3da549f
fix: add sdnq to GameDevLab dev dependencies for CI
maikramer Apr 4, 2026
c62a25d
fix: remove accidentally created file
maikramer Apr 4, 2026
db1e9bb
fix: validate preset before importing sdnq in create_config
maikramer Apr 4, 2026
373adbe
fix: add trimesh to GameDevLab dev deps, handle bpy import in Rigging…
maikramer Apr 4, 2026
9f78b60
fix: exclude .venv312 from ruff checks
maikramer Apr 4, 2026
caf8a61
chore: remove .venv312 from git tracking
maikramer Apr 4, 2026
a15d568
ci: use uv venv + pip install like install.sh
maikramer Apr 4, 2026
7902626
fix: add install-python to setup-uv (required for uv venv to work)
maikramer Apr 4, 2026
0cde53e
ci: simplify workflow to match install.sh (python -m venv + pip)
maikramer Apr 4, 2026
a5a8881
chore(deps): bump actions/checkout from 4 to 6
dependabot[bot] Apr 4, 2026
9cd2e15
ci: fix install path for packages (./Shared/ instead of ../)
maikramer Apr 4, 2026
c69aaa7
ci: use absolute paths for pip install in matrix jobs
maikramer Apr 4, 2026
efecf5c
test(GameDevLab): skip known failures in mesh_inspector tests
maikramer Apr 4, 2026
f2bcac8
fix(Rigging3D): skip if rigging3d not installed
maikramer Apr 4, 2026
5f5092b
ci: try --no-deps to avoid file:../Shared build issue
maikramer Apr 4, 2026
01f1e64
Revert "ci: try --no-deps to avoid file:../Shared build issue"
maikramer Apr 4, 2026
88182ab
Merge pull request #2 from maikramer/dependabot/cargo/Materialize/wgp…
maikramer Apr 4, 2026
bc610db
Merge pull request #3 from maikramer/dependabot/github_actions/action…
maikramer Apr 4, 2026
e7dda7b
Merge pull request #4 from maikramer/dependabot/cargo/Materialize/ima…
maikramer Apr 4, 2026
f161ca2
Merge pull request #5 from maikramer/dependabot/cargo/Materialize/pol…
maikramer Apr 4, 2026
29f7591
Update ci.yml to fix the smoke-heavy job installation order
maikramer Apr 4, 2026
f353a37
fix: restore CI workflow from dependabot corruption
maikramer Apr 4, 2026
990ed90
ci: make cargo non-blocking (known issue with Rust toolchain)
maikramer Apr 4, 2026
b72159e
fix(Materialize): revert wgpu to 0.19 and pollster to 0.3
maikramer Apr 4, 2026
2e01ed6
feat(materialize): update to Rust edition 2024, wgpu 29, and latest d…
cursoragent Apr 5, 2026
ac8de47
Merge pull request #6 from maikramer/cursor/development-environment-s…
maikramer Apr 5, 2026
90b0075
feat(installer): integrate uv for fast venv creation and package inst…
cursoragent Apr 5, 2026
226e226
fix(installer): use venv pip for editable installs, uv venv --seed fo…
cursoragent Apr 5, 2026
b07f95d
fix(installer): correct min_python for Text3D (3.10) and Paint3D (3.1…
cursoragent Apr 5, 2026
7802c0f
fix(installer): fallback to venv pip when uv fails on relative file: …
cursoragent Apr 5, 2026
7c42084
style(installer): apply ruff format to installer files
cursoragent Apr 5, 2026
0886080
Merge pull request #7 from maikramer/cursor/development-environment-s…
maikramer Apr 5, 2026
bf77312
fix(ci): python3/pytest fallbacks and resilient SDNQ quantized matmul
cursoragent Apr 5, 2026
d9e8e0c
test(gamedev-lab): skip tests when numpy, yaml, or trimesh missing
cursoragent Apr 5, 2026
a581fbd
test: skip Paint3D CLI and Part3D autotune without torch/trimesh
cursoragent Apr 5, 2026
cbccdf8
Merge pull request #8 from maikramer/cursor/-bc-a5e6b433-67c2-42f2-96…
maikramer Apr 5, 2026
2068ef9
fix(Rigging3D): add propagate_profile to mock signatures in test_cli
maikramer Apr 5, 2026
410a23a
fix(ci): ruff E501 + smoke --no-deps for file:../Shared resolution
maikramer Apr 5, 2026
bfb19d3
fix(ci): remove smoke-heavy job — not viable without GPU
maikramer Apr 5, 2026
11a7aee
docs(AGENTS.md): update CI pipeline section
maikramer Apr 5, 2026
77eac98
feat: add Bun installer and VibeGame to unified installer
maikramer Apr 5, 2026
6d54212
feat: add VibeGame TypeScript 3D engine package
maikramer Apr 5, 2026
94df171
docs: add VibeGame pipeline guides and update install docs
maikramer Apr 5, 2026
9ce4f7f
chore: add VibeGame job and Makefile targets
maikramer Apr 5, 2026
976830a
feat(gameassets): add handoff command and batch dry-run JSON
maikramer Apr 5, 2026
2129df5
feat(vibegame): add gltf-xml plugin and equirect sky environment
maikramer Apr 5, 2026
935014c
docs: handoff pipeline, Animator3D after rig, and AI workflow updates
maikramer Apr 5, 2026
ee01d1a
feat(text3d): vendor hy3dshape and wire DiT flow pipeline
maikramer Apr 5, 2026
926d8d6
feat(paint3d): bake tuning, bilateral texture smooth, optional origin…
maikramer Apr 5, 2026
ecb91f7
feat(gameassets): dream scaffold, handoff animated GLB, batch 3d-only…
maikramer Apr 5, 2026
77b17d2
feat(animator3d): run/jump clips and improved humanoid chain detection
maikramer Apr 5, 2026
9e3098a
feat(rigging3d): warn when merged GLB feet origin drifts from Y≈0
maikramer Apr 5, 2026
b869f3c
feat(vibegame): gltf animator, follow camera, simple-rpg example, inp…
maikramer Apr 5, 2026
1460d80
docs: refresh monorepo guides, dream workflow, and ruff per-file ignores
maikramer Apr 5, 2026
1594818
fix(ci): resolve ruff RUF001/I001 errors and VibeGame cancelAnimation…
maikramer Apr 5, 2026
a497d0d
feat(gameassets): extend dream emitter, manifest/profile, CLI
maikramer Apr 6, 2026
fa310f9
feat(vibegame): gltf-anim plugin, player gltf systems, bridge helpers
maikramer Apr 6, 2026
aeb3772
docs: update AGENTS and ZERO_TO_GAME_AI for dream and VibeGame GLTF flow
maikramer Apr 6, 2026
0eaac72
docs(paint3d): mention bilateral texture smoothing in README intro
maikramer Apr 6, 2026
a88a660
docs(paint3d): expand texture CLI examples and key options table
maikramer Apr 6, 2026
dab1c29
docs(paint3d): mention bilateral smoothing in Portuguese README intro
maikramer Apr 6, 2026
446c94c
docs: refresh pipeline guides, AGENTS, GameAssets READMEs, and Cursor…
maikramer Apr 6, 2026
05fb715
fix(shared): include BunProjectInstaller in install_tool inst union
maikramer Apr 6, 2026
3299ce2
docs: sync root READMEs, install guides, AGENTS with dream and GLB APIs
maikramer Apr 6, 2026
5160661
docs(gameassets): extend embedded skill for --with-animate and Animat…
maikramer Apr 6, 2026
aa290ea
refactor(shared): remove redundant type ignores in install_tool actions
maikramer Apr 6, 2026
cf05de2
docs(gameassets): document PART3D/ANIMATOR3D bins and animate trouble…
maikramer Apr 6, 2026
792b1d0
docs: clarify VibeGame ECS wording and minor ZERO_TO_GAME tweak
maikramer Apr 6, 2026
267c13e
docs: update ZERO_TO_GAME_AI_PT with additional player-gltf details
maikramer Apr 6, 2026
21823bc
fix(mypy): add BunProjectInstaller to union type in unified installer
maikramer Apr 6, 2026
4aed2b8
feat(Shared): add run_uninstall/run_reinstall to PythonProjectInstaller
maikramer Apr 6, 2026
621cb07
docs: add references to external projects in AGENTS and README files
maikramer Apr 6, 2026
4877abd
ci: add pip/bun caching and expand dependabot coverage
maikramer Apr 6, 2026
efa226a
feat: sky auto-discovery, E2E pipeline tests, release workflow
maikramer Apr 6, 2026
aab47c3
docs: update pipeline improvements progress tracking
maikramer Apr 6, 2026
4274ede
feat: implement all 18 pipeline & engine improvements
maikramer Apr 6, 2026
10d8060
fix(CI): add Pillow to Shared dev deps + exclude .venv-ci from ruff
maikramer Apr 6, 2026
de6f3a5
refactor: clean up whitespace and improve type hints in various modules
maikramer Apr 6, 2026
97f76ca
fix: clean up imports and enhance plugin exports in Vite configuration
maikramer Apr 6, 2026
2d0ed4f
chore(experiments): remove malhas GLB e script remove_plates do base-…
maikramer Apr 6, 2026
ef5f01b
chore(vibegame): remove exemplo monorepo-game
maikramer Apr 6, 2026
bbc609b
feat(vibegame): plugin de terreno LOD, Three 0.183 e GLTF com loaders.gl
maikramer Apr 6, 2026
00d1197
test(vibegame): Playwright E2E smoke simple-rpg e artefatos de teste
maikramer Apr 6, 2026
3f20806
chore(VibeGame): sincronizar bun.lock com package.json
maikramer Apr 6, 2026
68eacfe
fix(VibeGame): remover BOM UTF-8 de package.json para o build Vite
maikramer Apr 6, 2026
1eb9eae
fix(installer): persistir PATH do utilizador para bin_dir (vibegame e…
maikramer Apr 6, 2026
28f3df0
fix(installer): usar ~/.local/bin no Windows (alinhado ao PATH e outr…
maikramer Apr 6, 2026
c9b0db0
feat(cli): enhance `vibegame` CLI with Playwright integration
maikramer Apr 6, 2026
273ffb6
feat(vibegame): water rendering plugin with waves, depth coloring and…
maikramer Apr 6, 2026
012a9c3
feat(vibegame): debug bridge plugin for AI-driven state introspection
maikramer Apr 6, 2026
7a3dee7
feat(vibegame): register WaterPlugin and DebugPlugin in DefaultPlugins
maikramer Apr 6, 2026
e2bca28
test(vibegame): Playwright debug-cycle infrastructure and visual regr…
maikramer Apr 6, 2026
3882af6
feat(vibegame): add water entity to simple-rpg and export water/debug…
maikramer Apr 6, 2026
24ca98c
docs(vibegame): add terrain/water/debug/player-gltf documentation for…
maikramer Apr 6, 2026
f50c25c
feat(vibegame): use player-gltf for hero model and commit example assets
maikramer Apr 6, 2026
87a279c
refactor(vibegame): simplify gltf-bridge to use Three.js GLTFLoader d…
maikramer Apr 7, 2026
2d00172
fix(vibegame): change PlayerGltfSetupSystem group to draw
maikramer Apr 7, 2026
759a43f
feat(vibegame): add underwater rendering, fog, and sensor collision t…
maikramer Apr 7, 2026
9917b80
docs(vibegame): update water plugin context.md with underwater unifor…
maikramer Apr 7, 2026
dd478f6
feat(vibegame): activate underwater fog and update hero model in simp…
maikramer Apr 7, 2026
1dfa075
fix(ci): resolve ruff errors, VibeGame lint, and Shared Windows path …
maikramer Apr 7, 2026
16a0473
fix(ci): ruff format + tsc WebGLShader/WebGLProgram types
maikramer Apr 7, 2026
a4bdfb4
fix(ci): mypy winreg via early return + remove stale package-lock ref
maikramer Apr 7, 2026
d75eea7
fix(ci): use 'bun run test' to exclude playwright specs from bun test…
maikramer Apr 7, 2026
951d6d7
feat(water): add player interaction, underwater post-processing, and …
maikramer Apr 7, 2026
ecc3c39
feat(terrain): 8 improvements — material config, debug, height querie…
maikramer Apr 7, 2026
453dfae
feat(gameassets): reorigem de GLB na base e comando CLI
maikramer Apr 7, 2026
d735b43
feat(vibegame): Spawner, GLTF dinâmico/bounds e amostragem de terreno
maikramer Apr 7, 2026
5df3ecb
feat(vibegame): melhora vibegame run (engine via file:, BOM em JSON)
maikramer Apr 7, 2026
c3cd3fe
feat(examples): simple-rpg com Spawner e GLBs reorigados na base
maikramer Apr 7, 2026
1dd3791
docs(agents): preferências e factos do workspace (spawner, terreno, v…
maikramer Apr 7, 2026
cd3fcaf
chore(vibegame): script Blender reorigem GLB (pés na base)
maikramer Apr 7, 2026
2c94743
feat(state): add continual learning state files
maikramer Apr 7, 2026
3f8d9f8
chore(requirements): update click version in requirements.txt
maikramer Apr 7, 2026
9ee08b5
fix(skymap2d): resize HF e correção latitude equirect Flux-LoRA
maikramer Apr 7, 2026
d8ebdc3
feat(vibegame): sky-env com ajuste UV equirect antes do PMREM
maikramer Apr 7, 2026
fcc7bf7
feat(vibegame): GLTF dinâmico com collider-fit e sync de cena; Spawne…
maikramer Apr 7, 2026
fb45741
docs(agents): notas Skymap2D Flux, PMREM/equirect e colisores GLTF di…
maikramer Apr 7, 2026
474ee26
fix(state): update continual learning state files with new timestamps…
maikramer Apr 7, 2026
6d61186
docs(vibegame): update context documentation for GLTF-XML, physics, a…
maikramer Apr 7, 2026
92f701a
fix: resolve all CI errors (ruff lint + tsc + eslint)
maikramer Apr 7, 2026
b9247f4
style: apply ruff format to 4 Python files
maikramer Apr 7, 2026
63db35c
feat(vibegame): add volumetric fog plugin with declarative XML support
maikramer Apr 8, 2026
19d2c24
chore: ignore .sisyphus/ and .playwright-mcp/ agent artifacts
maikramer Apr 8, 2026
9b613bc
feat(fog): add volumetric fog effect with postprocessing integration
maikramer Apr 8, 2026
d8e117b
refactor: extrai parseColor/parseNumber de schemas.ts e reusa no fog …
maikramer Apr 8, 2026
090b019
feat: documenta arquitetura de plugins (#10) + adiciona plugin Sky (#…
maikramer Apr 8, 2026
09c01f4
feat(scene-manifest): integra GameAssets pipeline + shared types cont…
maikramer Apr 8, 2026
1cb3df6
fix(text-3d, texture-recipe): corrige erros TypeScript - type safety …
maikramer Apr 8, 2026
1d809a9
style: apply prettier to modified files
maikramer Apr 8, 2026
4777ac1
style: apply prettier to plugins README
maikramer Apr 8, 2026
32b3be5
docs(vibegame): add documentation for shared module, plugins, effect …
maikramer Apr 8, 2026
c5b5cb4
feat(vibegame): add vignette, dof, chromatic-aberration, noise compon…
maikramer Apr 8, 2026
3253e3c
feat(vibegame): register new postprocessing effect definitions with D…
maikramer Apr 8, 2026
ca53621
feat(vibegame): add PostprocessingPlugin to defaults
maikramer Apr 8, 2026
0f5e6f1
feat(vibegame): add postprocessing effects to simple-rpg demo
maikramer Apr 8, 2026
ae8e887
test(vibegame): add postprocessing effects tests
maikramer Apr 8, 2026
8d5bae9
fix(vibegame): correct colorSpace, add aoMap channel, and smoothness …
maikramer Apr 8, 2026
17d16aa
feat(vibegame): implement AudioSystem with Howler.js playback and reg…
maikramer Apr 8, 2026
7ab7787
feat(vibegame): adapt SceneManifest loader to handoff format with aud…
maikramer Apr 8, 2026
3efaf7f
feat(gameassets): use player-gltf in dream emitter and update llm_con…
maikramer Apr 8, 2026
3d4a9ce
style: apply prettier to VibeGame README and plugins README
maikramer Apr 8, 2026
eee0119
fix(vibegame): align SceneManifestPlugin default URL with handoff loader
maikramer Apr 8, 2026
ff386ca
fix(vibegame): wire TextureRecipeLoadSystem and add displacementMap c…
maikramer Apr 8, 2026
faf2d6c
feat(vibegame): sync AudioListener position with MainCamera each frame
maikramer Apr 8, 2026
c208c84
feat(vibegame): auto-play GLB animations from handoff loader
maikramer Apr 8, 2026
d6732c4
feat(vibegame): consume PBR textures from SceneManifest handoff
maikramer Apr 8, 2026
5ccceac
feat(gameassets): export PBR maps in handoff and pass --with-textures
maikramer Apr 8, 2026
b090614
feat(gameassets): add sky element and loadSceneManifest to dream emitter
maikramer Apr 8, 2026
670c7f8
style: apply prettier to VibeGame config files
maikramer Apr 8, 2026
e21d47a
feat(vibegame): enhance audio system and dependency management
maikramer Apr 9, 2026
beb6cc3
docs(agents): refine vibegame run notes and learned terrain/particles…
maikramer Apr 9, 2026
320afa2
feat(vibegame): steering, hud, i18n, joints, navmesh, network, partic…
maikramer Apr 9, 2026
079459e
fix(vibegame): working tree bug fixes
maikramer Apr 9, 2026
b8d1769
fix(vibegame): enhance postprocessing in simple-rpg example
maikramer Apr 9, 2026
15afecc
fix(particles): complete barrel exports and unique presets
maikramer Apr 9, 2026
db0b67e
fix(hud): add dynamic text refresh for i18n integration
maikramer Apr 9, 2026
31c8278
fix(network): add error logging and complete exports
maikramer Apr 9, 2026
25ab2c4
fix(joints): wire motor/limit config and add error logging
maikramer Apr 9, 2026
b5ff2c8
fix(i18n): add skip optimization in resolve system
maikramer Apr 9, 2026
84057bc
fix(joints): add entity cleanup system
maikramer Apr 9, 2026
00f10e9
fix(i18n): add XML recipe and key adapter
maikramer Apr 9, 2026
67f7565
feat(raycast): implement Three.js BVH raycast mode
maikramer Apr 9, 2026
083ebe9
feat(ai-steering): add yuka type declarations and rotation sync
maikramer Apr 9, 2026
b6b2c2e
fix(particles): add entity cleanup on remove
maikramer Apr 9, 2026
80d86fd
feat(navmesh): runtime scene-to-navmesh build
maikramer Apr 9, 2026
0f94df0
feat(network): extend sync with rotation/scale and jitter buffer
maikramer Apr 9, 2026
03807da
fix(i18n): add hud dependency guard and documentation
maikramer Apr 9, 2026
4cbc38e
test(vibegame): add unit and integration tests for 9 new plugins
maikramer Apr 9, 2026
fdb88b5
feat(vibegame): recipe audio-clip, validação e ajustes em plugins
maikramer Apr 10, 2026
df40b0c
feat(examples): atualizar simple-rpg com BGM/SFX e sample-gameassets
maikramer Apr 10, 2026
d1ca593
fix(vibegame): sincronizar listener espacial com Howler.pos
maikramer Apr 10, 2026
e1be73d
fix(vibegame): resolve CI errors - TS type fixes for hud, network, pa…
maikramer Apr 10, 2026
b631307
fix: remove unused noqa directive (ruff --fix)
maikramer Apr 10, 2026
eff8194
feat(simple-rpg): add 9 new 3D models - bush, hay_bale, milestone, ro…
maikramer Apr 10, 2026
529fc62
docs(agents): entity-script preference and world XML vs HTML script n…
maikramer Apr 10, 2026
b2b316d
feat(vibegame): entity-script plugin and gltf-load script attribute
maikramer Apr 10, 2026
7ce702e
feat(gameassets): export_origin Text3D e paint_preserve_origin no perfil
maikramer Apr 10, 2026
07a3a3e
feat(vibegame): spawner por entidade, recipes, sombras e plugins
maikramer Apr 10, 2026
f28d08b
docs: AGENTS e pipeline alinhados com Text3D/VibeGame
maikramer Apr 10, 2026
91183ab
chore(vibegame): remove lorenz e visualization; atualiza simple-rpg
maikramer Apr 10, 2026
194169f
style: apply prettier to gameassets_handoff.json
maikramer Apr 10, 2026
3f087d2
feat(vibegame): add CSM shadows, PointLight, SpotLight, SSAO, SSR, pa…
maikramer Apr 10, 2026
48f7f00
fix(vibegame): handle SSR runtime incompatibility gracefully
maikramer Apr 10, 2026
e5b7de5
feat(ecs): add entity destruction callback registry to State
maikramer Apr 11, 2026
d9f50e7
feat(entity-script): add OnDestroy lifecycle callback
maikramer Apr 11, 2026
1b3dcae
feat(ecs): add 'late' scheduler group between simulation and draw
maikramer Apr 11, 2026
5d63acd
feat(entity-script): add Awake, OnEnable, OnDisable lifecycle callbacks
maikramer Apr 11, 2026
b7979b2
feat(ecs): add full Unity lifecycle + Time utility
maikramer Apr 11, 2026
a83ad8f
feat(ecs): add Tag, Layer, UnityEvent, GetComponent systems
maikramer Apr 11, 2026
b47cb73
feat(ecs): add yield instructions for coroutines (WaitForSeconds, Wai…
maikramer Apr 11, 2026
ca941da
feat(ecs): add prefab/template system with Instantiate
maikramer Apr 11, 2026
3333b7e
feat(ecs): add scene reload system (Scene.reload, Scene.reloadAsync)
maikramer Apr 11, 2026
7f3fa68
refactor(ecs): rename component variable names to Unity names
maikramer Apr 11, 2026
59afd9b
refactor!(ecs): rename registration keys and XML recipe tags to Unity…
maikramer Apr 11, 2026
8bf9397
refactor!(entity-script): rename to MonoBehaviour API
maikramer Apr 11, 2026
c334fb3
feat(ecs): add GameObject container syntax with component-as-children
maikramer Apr 11, 2026
9dc52c3
feat(ecs): cascade destroy + all components as GameObject children
maikramer Apr 11, 2026
7dc9bee
refactor!(examples): migrate hello-world and simple-rpg to Unity XML …
maikramer Apr 11, 2026
14a69c8
refactor!(examples): migrate scripts and sample-gameassets to MonoBeh…
maikramer Apr 11, 2026
5fd573d
feat(vibegame): preload Howl, SFX de salto sincronizado e WAVs trim (…
maikramer Apr 11, 2026
bb66bbd
feat(text2sound): trim de silêncio no início e no fim do clip
maikramer Apr 11, 2026
387a13c
refactor(gameassets): update dream emitter for Unity XML tag names
maikramer Apr 11, 2026
85539cb
docs(vibegame): update all documentation for Unity XML tag names
maikramer Apr 11, 2026
c26cd22
docs: update monorepo pipeline and AGENTS.md for Unity XML tags
maikramer Apr 11, 2026
6a51e66
refactor(spawner): normalize tag name comparisons to lowercase
maikramer Apr 11, 2026
db7b90d
refactor(tweening): normalize tag name comparisons to lowercase
maikramer Apr 11, 2026
560c384
fix(continual-learning): update turnsSinceLastRun and lastProcessedGe…
maikramer Apr 11, 2026
168778e
fix(vibegame): resolve tsc/eslint errors from Unity ECS refactor
maikramer Apr 11, 2026
ccdb37b
feat(vibegame): add Health and ProjectileData components with unit tests
maikramer Apr 11, 2026
9d8c532
feat(vibegame): add CombatPlugin registration with Health and Project…
maikramer Apr 11, 2026
bd04b64
feat(vibegame): add DamageResolution and ProjectileCleanup systems
maikramer Apr 11, 2026
a9d5e63
feat(simple-rpg): add enemy and projectile MonoBehaviour scripts
maikramer Apr 11, 2026
bf1a4ff
feat(simple-rpg): add heal drops and wave manager
maikramer Apr 11, 2026
5258bb4
feat(simple-rpg): add combat HUD, game over, remove crystals, fix imp…
maikramer Apr 11, 2026
5f4611c
style(vibegame): fix prettier formatting in combat test files
maikramer Apr 11, 2026
810f7b5
fix(simple-rpg): resolve vite import resolution and script glob timing
maikramer Apr 11, 2026
41d8050
chore: update VibeGame documentation and continual learning state
maikramer Apr 11, 2026
a5f5c96
feat(vibegame): add body-type to GLTFDynamic pending physics
maikramer Apr 12, 2026
d6a8254
feat(vibegame): obstacle avoidance from fixed physics colliders
maikramer Apr 12, 2026
cc719f0
feat(simple-rpg): scene colliders, chest loot, projectile visuals
maikramer Apr 12, 2026
e9b3eae
chore: ignore local baseline meshes and QA screenshots
maikramer Apr 12, 2026
5f8ed23
feat: add TerrainGen package and CI
maikramer Apr 12, 2026
bd32d4e
feat(Text3D): mesh LOD utilities and baseline repair workflow
maikramer Apr 12, 2026
4032695
feat(VibeGame): GLTF LOD, terrain data, lake renderer, water spawner
maikramer Apr 12, 2026
42bc9b8
feat(simple-rpg): terrain assets, textures, and tree LOD models
maikramer Apr 12, 2026
a4ed91a
feat(GameAssets): dream pipeline terrain stage
maikramer Apr 12, 2026
ae40584
feat(InferenceServer): align text3d handler with updated schemas
maikramer Apr 12, 2026
1ccf0b0
docs: update monorepo README and AGENTS for TerrainGen and VibeGame
maikramer Apr 12, 2026
7e2593e
chore: update continual learning state and session data
maikramer Apr 12, 2026
0db4735
feat(water): add player interaction, underwater post-processing, swim…
maikramer Apr 12, 2026
2e450e4
chore(deps): update torch requirement in /Text2Sound
dependabot[bot] Apr 13, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .cursor/create-skill/gameassets/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ Sem `--presets-local`, o comando falha com **preset desconhecido**.
- **`texture2d`**: opções do CLI seamless + **`materialize`** para PBR a partir da difusa (mapas em `materialize_maps_subdir`).
- **`text2sound`** (opcional): `duration`, `steps`, `cfg_scale`, `audio_format`, etc. — ver Text2Sound; `audio_subdir` no perfil para destino relativo a `output_dir`.
- **`text3d`**: `preset` (`fast` \| `balanced` \| `hq`), `low_vram`, `texture` (omitido = **`true`**), ou **Hunyuan explícito** (`steps`, `octree_resolution`, `num_chunks` — nesse caso não se passa `--preset` ao CLI), `no_mesh_repair`, `mesh_smooth`, `mc_level`, `phased_batch`, GPU (`allow_shared_gpu`, `full_gpu`, …). PBR no GLB: **Paint 2.1** — ver `Text3D/docs/PBR_MATERIALIZE.md`.
- **Paint3D tuning:** `paint_max_views`, `paint_view_resolution`, `paint_render_size`, `paint_texture_size`, `paint_bake_exp` (default 6 — costuras mais nítidas).
- **`rigging3d`** (opcional): `output_suffix`, `root`, `python` — usado com `batch --with-rig` e `generate_rig` no CSV.

**Atenção:** `text3d.low_vram: true` em GPU faz o Hunyuan “shape” cair para CPU e **costuma degradar a forma**; preferir reduzir resolução 2D ou fechar outras apps que consumam VRAM.
Expand Down
12 changes: 6 additions & 6 deletions .cursor/create-skill/text3d/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
name: text3d
description: Gera meshes 3D a partir de texto ou imagem (Text2D + Hunyuan3D-2mini), só geometria; textura/PBR no GLB via Paint3D 2.1 ou GameAssets (`text3d.texture`). Use quando o utilizador pedir 3D, GLB/PLY/OBJ, Hunyuan, text-to-3D, image-to-3D, TEXT3D_BIN, PAINT3D_BIN, ou integração com GameAssets.
description: Gera meshes 3D a partir de texto ou imagem (Text2D + Hunyuan3D-2.1 SDNQ INT4), só geometria; textura/PBR no GLB via Paint3D 2.1 ou GameAssets (`text3d.texture`). Use quando o utilizador pedir 3D, GLB/PLY/OBJ, Hunyuan, text-to-3D, image-to-3D, TEXT3D_BIN, PAINT3D_BIN, ou integração com GameAssets.
---

# Text3D — Text2D + Hunyuan3D-2mini
# Text3D — Text2D + Hunyuan3D-2.1 SDNQ

## Quando usar

Expand All @@ -13,7 +13,7 @@ description: Gera meshes 3D a partir de texto ou imagem (Text2D + Hunyuan3D-2min

## O que é

Pipeline **text-to-3D**: geração de imagem (**Text2D** / FLUX Klein) + **Hunyuan3D-2mini** (imagem → mesh). Entrada **só por imagem** (`--from-image` / `-i`) sem correr Text2D.
Pipeline **text-to-3D**: geração de imagem (**Text2D** / FLUX Klein) + **Hunyuan3D-2.1** SDNQ INT4 (imagem → mesh). Entrada **só por imagem** (`--from-image` / `-i`) sem correr Text2D.

## Pré-requisitos

Expand All @@ -28,7 +28,7 @@ Pipeline **text-to-3D**: geração de imagem (**Text2D** / FLUX Klein) + **Hunyu
| `text3d generate --from-image img.png -o mesh.glb` | Só Hunyuan (sem Text2D); alias `-i` |
| `text3d generate … --preset fast\|balanced\|hq` | Perfis (substituem steps/octree/chunks por defeito) |
| `text3d generate … --save-reference-image` | Guarda PNG de referência (útil antes de `paint3d texture`) |
| `paint3d texture mesh.glb -i ref.png -o tex.glb` | Textura + material PBR no GLB (Paint3D 2.1) |
| `paint3d texture mesh.glb -i ref.png -o tex.glb` | Textura + material PBR no GLB (Paint3D 2.1); smooth bilateral ativo por defeito |
| `text3d doctor` | PyTorch, CUDA |
| `text3d info` | Sistema e GPU |
| `text3d convert entrada.ply -o saida.glb` | Conversão PLY/OBJ/GLB |
Expand All @@ -40,7 +40,7 @@ Pipeline **text-to-3D**: geração de imagem (**Text2D** / FLUX Klein) + **Hunyu
```bash
text3d generate "uma cadeira de madeira" -o cadeira.glb
text3d generate "robô" --preset hq -o robo_shape.glb --save-reference-image
paint3d texture robo_shape.glb -i robo_shape_text2d.png -o robo_tex.glb
paint3d texture robo_shape.glb -i robo_shape_text2d.png -o robo_tex.glb # smooth + bake_exp=6 por defeito
text3d generate --from-image referencia.png -o so_mesh.glb
text3d doctor
```
Expand Down Expand Up @@ -94,7 +94,7 @@ O sistema aplica **prompt enhancement automático** (v2, framing positivo) que e

## Licenças e pesos

- **Hunyuan3D-2mini** e ecossistema Tencent: ver model cards e licença **Tencent Hunyuan Community** (restrições de uso).
- **Hunyuan3D-2.1** e ecossistema Tencent: ver model cards e licença **Tencent Hunyuan Community** (restrições de uso).
- Primeira execução: downloads grandes para `~/.cache/huggingface/`.

## Ferramentas relacionadas
Expand Down
126 changes: 126 additions & 0 deletions .cursor/hooks/state/continual-learning-index.json

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions .cursor/hooks/state/continual-learning.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"version": 1,
"lastRunAtMs": 1776011352369,
"turnsSinceLastRun": 7,
"lastTranscriptMtimeMs": 1776011352127,
"lastProcessedGenerationId": "735aa7a2-055e-4c60-a060-728055dba871",
"trialStartedAtMs": null
}
48 changes: 48 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,51 @@ updates:
schedule:
interval: "weekly"
open-pull-requests-limit: 3

- package-ecosystem: "pip"
directory: "/Shared"
schedule:
interval: "weekly"
open-pull-requests-limit: 3

- package-ecosystem: "pip"
directory: "/GameAssets"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "pip"
directory: "/Texture2D"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "pip"
directory: "/Skymap2D"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "pip"
directory: "/GameDevLab"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "pip"
directory: "/Part3D"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "pip"
directory: "/Text2Sound"
schedule:
interval: "weekly"
open-pull-requests-limit: 2

- package-ecosystem: "npm"
directory: "/VibeGame"
schedule:
interval: "weekly"
open-pull-requests-limit: 3
119 changes: 65 additions & 54 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
# CI for the GameDev monorepo.
# Text2D, Text3D, and Paint3D are not in the pytest matrix: heavy PyTorch / git deps; see smoke-heavy.
# Text2Sound and Part3D run pytest on CPU-only runners (torch wheels).
# Text2D, Text3D, and Paint3D excluded: heavy PyTorch / diffusers deps, not viable on GPU-less runners.

name: CI

Expand All @@ -19,14 +18,18 @@ jobs:
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install ruff
run: python -m pip install ruff
- name: Cache pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: pip-lint-${{ runner.os }}-${{ hashFiles('ruff.toml', '.pre-commit-config.yaml') }}
restore-keys: pip-lint-${{ runner.os }}-
- name: Install tools
run: pip install --upgrade pip && pip install ruff pre-commit
- name: Ruff check
run: ruff check .
- name: Ruff format
run: ruff format --check .
- name: Install pre-commit
run: pip install pre-commit
- name: Run pre-commit
run: pre-commit run --all-files

Expand All @@ -37,64 +40,73 @@ jobs:
fail-fast: false
matrix:
include:
# Light packages — 3.10 + 3.12
# Shared only (no inter-package dependencies)
- package: Shared
python-version: "3.10"
install_cmd: cd Shared && pip install -e '.[dev]'
- package: Shared
python-version: "3.12"
install_cmd: cd Shared && pip install -e '.[dev]'
# Other packages need Shared installed first via absolute path
- package: GameAssets
python-version: "3.10"
install_cmd: cd Shared && pip install -e . && cd ../GameAssets && pip install -e '.[dev]'
- package: GameAssets
python-version: "3.12"
install_cmd: cd Shared && pip install -e . && cd ../GameAssets && pip install -e '.[dev]'
- package: Texture2D
python-version: "3.10"
install_cmd: cd Shared && pip install -e . && cd ../Texture2D && pip install -e '.[dev]'
- package: Texture2D
python-version: "3.12"
install_cmd: cd Shared && pip install -e . && cd ../Texture2D && pip install -e '.[dev]'
- package: Skymap2D
python-version: "3.10"
install_cmd: cd Shared && pip install -e . && cd ../Skymap2D && pip install -e '.[dev]'
- package: Skymap2D
python-version: "3.12"
install_cmd: cd Shared && pip install -e . && cd ../Skymap2D && pip install -e '.[dev]'
# Rigging3D — requires-python >=3.11,<3.12
- package: Rigging3D
python-version: "3.11"
install_cmd: cd Shared && pip install -e . && cd ../Rigging3D && pip install -e '.[dev]'
# Torch on CPU (single Python to keep CI time reasonable)
- package: Part3D
python-version: "3.12"
install_cmd: cd Shared && pip install -e . && cd ../Part3D && pip install -e '.[dev]'
- package: Text2Sound
python-version: "3.12"
install_cmd: cd Shared && pip install -e . && cd ../Text2Sound && pip install -e '.[dev]'
# GameDevLab
- package: GameDevLab
python-version: "3.10"
- package: GameDevLab
python-version: "3.12"
# TerrainGen
- package: TerrainGen
python-version: "3.10"
- package: TerrainGen
python-version: "3.12"
# bpy wheel (cp313)
- package: Animator3D
python-version: "3.13"
install_cmd: cd Shared && pip install -e . && cd ../Animator3D && pip install -e '.[dev]'
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: |
Shared/pyproject.toml
${{ matrix.package }}/pyproject.toml
- name: Install package (Shared + target)
run: ${{ matrix.install_cmd }}
- name: Run pytest
working-directory: ${{ matrix.package }}
run: pytest -v --tb=short
- name: Get repo path
id: repo
run: echo "path=$(pwd)" >> $GITHUB_OUTPUT
- name: Cache pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: pip-${{ matrix.python-version }}-${{ matrix.package }}-${{ hashFiles(format('Shared/pyproject.toml', matrix.package, '/pyproject.toml')) }}
restore-keys: |
pip-${{ matrix.python-version }}-${{ matrix.package }}-
pip-${{ matrix.python-version }}-
- name: Install Shared (editable, by absolute path)
run: pip install --upgrade pip && pip install -e ${{ steps.repo.outputs.path }}/Shared/.[dev]
- name: Install package and run tests
run: |
pip install -e ${{ steps.repo.outputs.path }}/${{ matrix.package }}/.[dev]
pytest -v --tb=short
working-directory: ${{ steps.repo.outputs.path }}/${{ matrix.package }}

test-rust:
name: cargo (Materialize)
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
Expand All @@ -107,33 +119,32 @@ jobs:
- name: Tests
run: cargo test --manifest-path Materialize/Cargo.toml

# Smoke: editable install + import do pacote (nomes de módulo reais).
# Paint3D excluded: has bpy (huge) + pytorch deps, too heavy for CI.
smoke-heavy:
name: smoke (${{ matrix.dir }} → ${{ matrix.module }})
vibegame:
name: VibeGame (Bun)
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
include:
- dir: Text2D
module: text2d
- dir: Text3D
module: text3d
defaults:
run:
working-directory: VibeGame
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
- uses: oven-sh/setup-bun@v2
with:
python-version: "3.12"
cache: pip
cache-dependency-path: |
Shared/pyproject.toml
${{ matrix.dir }}/pyproject.toml
- name: Install Shared
run: cd Shared && pip install -e .
- name: Install package (editable)
working-directory: ${{ matrix.dir }}
run: pip install -e .
- name: Import check
run: python -c "import importlib; importlib.import_module('${{ matrix.module }}'); print('import OK:', '${{ matrix.module }}')"
bun-version: "1.2.21"
- name: Cache bun
uses: actions/cache@v4
with:
path: ~/.bun/install/cache
key: bun-${{ runner.os }}-${{ hashFiles('VibeGame/bun.lock') }}
restore-keys: bun-${{ runner.os }}-
- name: Install dependencies
run: bun install --frozen-lockfile
- name: TypeScript check
run: bun run check
- name: ESLint
run: bun run lint
- name: Prettier check
run: bun run format:check
- name: Tests
run: bun run test
- name: Vite build
run: bun run build
67 changes: 67 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Release workflow — version bump + git tag + npm publish (VibeGame)
# Triggered manually or on tag push.
# Python packages are not published here (no PyPI config); this handles
# VibeGame npm publish and git tag creation.

name: Release

on:
workflow_dispatch:
inputs:
version:
description: 'Version (e.g. 1.0.0, 0.4.1)'
required: true
prerelease:
description: 'Prerelease? (skip npm publish)'
type: boolean
default: false

jobs:
version-bump:
name: Bump version
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Bump VibeGame version
run: |
cd VibeGame
npm version ${{ github.event.inputs.version }} --no-git-tag-version
- name: Commit and tag
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add -A
git commit -m "release: v${{ github.event.inputs.version }}"
git tag "v${{ github.event.inputs.version }}"
git push origin main --tags

publish-vibegame:
name: Publish VibeGame to npm
needs: version-bump
runs-on: ubuntu-latest
if: ${{ github.event.inputs.prerelease == 'false' }}
defaults:
run:
working-directory: VibeGame
steps:
- uses: actions/checkout@v4
with:
ref: main
- uses: actions/setup-node@v4
with:
node-version: '20'
registry-url: 'https://registry.npmjs.org'
- uses: oven-sh/setup-bun@v2
with:
bun-version: "1.2.21"
- name: Install and build
run: |
bun install --frozen-lockfile
bun run build
- name: Publish
run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
18 changes: 17 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -70,4 +70,20 @@ Paint3D/src/paint3d/hy3dpaint/utils/realesrgan_weights/
*_test*/
*_demo_*/
*_demo*/
*demo_*/
*demo_*/.venv
.venv312
__pycache__
*.egg-info
build
dist
# Text3D — meshes baseline cruas geradas localmente (ver testdata/.../README.txt)
Text3D/testdata/baseline_meshes_raw/*
!Text3D/testdata/baseline_meshes_raw/README.txt

# Screenshots / QA locais na raiz do monorepo (não versionar)
/qa-*.png
/f3-game-loaded.png

# Agent tool artifacts
.sisyphus/
.playwright-mcp/
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Loading
Loading