adminandClaude Opus 4.8 bd70f3b8b9 Add lobby/match-start matchmaking flow with additive scene management
Replace the connection-approval role selection with a server-authoritative
match flow built on NGO additive scene management:

- Scenes: Main is the persistent foundation (NetworkManager, GameModeManager,
  cameras, HUD); Lobby and Test Map load/unload additively. Add Lobby + Test Map
  to the build settings; remove the obsolete SampleScene.
- MatchManager (plain MonoBehaviour singleton): loads Lobby on server start,
  StartMatchTrigger lets the host start the match, rolls one random Hunter (rest
  Hider), swaps Lobby -> Test Map (strictly serialized per NGO), respawns each
  player as its role variant. Forces additive client sync mode so clients keep
  Main instead of single-loading it (fixes "Destination scene is not valid").
- Server-driven spawning: null out NetworkConfig.PlayerPrefab at runtime to
  disable auto-spawn, then spawn players after the lobby floor exists (fixes
  falling through the floor) with double-spawn and transition guards.
- StartMatchTrigger: server-gated OnTriggerEnter, only the host's own player
  starts the match.
- NetworkBootstrap: drop role selection / connection approval; everyone spawns
  as the neutral Player prefab. Host/Client/Server/Shutdown buttons stay.
- NetworkPlayerSetup.ScopedModes flag (baked on Hunter/Hider prefabs): lobby
  avatar gets the full mode set, match variants get the role-scoped set.
- GameModeManager.BindLocalPlayer reads ScopedModes and rebinds the painter
  unconditionally (fixes stale painter binding on respawn -> brush painting in
  every mode).
- MeshPainter.PaintingEnabled defaults to false (unbound/pre-spawn/remote never
  paints); PaintHud visibility now also gates on a bound painter (fixes the HUD
  showing at startup before any avatar exists).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-27 22:44:18 +02:00
2026-06-27 13:56:59 +02:00

Chameleon

A Unity mesh-painting game inspired by Meccha Chameleon — not a 1:1 clone. You paint your character directly on its 3D mesh to blend into the environment, and move with an extended traversal kit (run, jump, slope-slide, wall-climb).

Status: early prototype. Core painting and movement work; the hide-and-seek game loop (roles, rounds, scoring, multiplayer) is not built yet.

Features so far

  • Seamless mesh painting straight onto the character's 3D mesh (GPU + CPU path, edge-dilation against seams).
  • Third-person character controller — camera-relative WASD, jump, gravity, slope-sliding off too-steep surfaces, hold-to-sprint and acceleration/deceleration for smooth ramp-up and roll-out.
  • Wall-climb + mantle — climb walls/ceilings (W approach/up, S detach, A/D sideways) and pull up over top edges (or hop over slope tops) instead of dropping.
  • Cinemachine orbit camera — mouse look, interpolated scroll zoom, smoothed orbit rotation, collision deocclusion.
  • Animator hookup — drives a Running bool while moving on the ground.
  • Game mode manager — extensible state machine, switch with Tab:
    • Player Control — move + mouse look.
    • Paint — no movement, left-click paints, hold right-click to orbit.

Controls

Input Action
WASD Move (camera-relative)
Shift (hold) Sprint
Space Jump
Mouse Look / orbit camera
Mouse wheel Zoom
Left click Paint (Paint mode)
Tab Switch mode (Player Control ⇄ Paint)

Getting started

  1. Open the project with Unity 6000.3.11f1 (Unity 6).
  2. Open Assets/Scenes/SampleScene.unity.
  3. Press Play, move with WASD, press Tab to switch to Paint mode and paint.

Cinemachine (com.unity.cinemachine) and the Input System are resolved automatically via the package manifest.

Project layout

  • Assets/Scripts/ — gameplay scripts (PlayerCharacterController, MeshPainter, ThirdPersonOrbitInput, GameModeManager, modes, FrameRateLimiter).
  • Assets/Scenes/ — SampleScene (the playground).
  • Docs/GAME_DESIGN.md — design notes and the full feature checklist (German).

Roadmap

See Docs/GAME_DESIGN.md for what's done and what's next (color-picker UI, eyedropper, poses, seeker role, rounds, multiplayer).

S
Description
Unity mesh-painting game (Meccha Chameleon-inspired)
Readme
1.1 GiB
0 Stars 1 Watchers 0 Forks
Languages
C# 85.6%
ShaderLab 8%
GLSL 4%
HLSL 2.3%