Files
jimmyabvandClaude Sonnet 4.6 ab31bba21e Adopt Claude Code Game Studios template, configure Unity engine, document Combat Mode
- Install CCGS agent/skill/hook framework (.claude/, docs templates, GitHub issue/PR templates)
- Configure CLAUDE.md and technical-preferences.md for Unity 6000.3.3f1 (C#, URP, collider-based mouse picking)
- Point engine reference import at docs/engine-reference/unity/ and remove unused Godot/Unreal reference docs
- Add Version Awareness section to unity-specialist agent
- Set production/review-mode.txt to lean
- Add design/gdd/combat-mode.md: reverse-documented GDD for the vs-AI Combat mode, confirming it as the foundation for the guion.md narrative campaign (separate from Classic mode)
- Add docs/architecture/ADR-0001: documents the existing board-state/singleton/per-mode architecture and the decision to keep Classic and Combat modes permanently separate
- Add docs/architecture/control-manifest.md: programmer rules sheet sourced from ADR-0001 and Unity 6 engine reference docs
- Continue in-progress Mono/Classic and Mono/Combat refactor (ScoreManager, scene/prefab updates)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-20 10:08:10 -03:00

1.9 KiB

paths
paths
assets/shaders/**

Shader Code Standards

All shader files in assets/shaders/ must follow these standards to maintain visual quality, performance, and cross-platform compatibility.

Naming Conventions

  • File naming: [type]_[category]_[name].[ext]
    • spatial_env_water.gdshader (Godot)
    • SG_Env_Water (Unity Shader Graph)
    • M_Env_Water (Unreal Material)
  • Use descriptive names that indicate the material purpose
  • Prefix with shader type: spatial_, canvas_, particles_, post_

Code Quality

  • All uniforms/parameters must have descriptive names and appropriate hints
  • Group related parameters (Godot: group_uniforms, Unity: [Header], Unreal: Category)
  • Comment non-obvious calculations (especially math-heavy sections)
  • No magic numbers — use named constants or documented uniform values
  • Include authorship and purpose comment at the top of each shader file

Performance Requirements

  • Document the target platform and complexity budget for each shader
  • Use appropriate precision: half/mediump on mobile where full precision isn't needed
  • Minimize texture samples in fragment shaders
  • Avoid dynamic branching in fragment shaders — use step(), mix(), smoothstep()
  • No texture reads inside loops
  • Two-pass approach for blur effects (horizontal then vertical)

Cross-Platform

  • Test shaders on minimum spec target hardware
  • Provide fallback/simplified versions for lower quality tiers
  • Document which render pipeline the shader targets (Forward/Deferred, URP/HDRP, Forward+/Mobile/Compatibility)
  • Do not mix shaders from different render pipelines in the same directory

Variant Management

  • Minimize shader variants — each variant is a separate compiled shader
  • Document all keywords/variants and their purpose
  • Use feature stripping where possible to reduce build size
  • Log and monitor total variant count per shader