adminandClaude Opus 4.8 62cf0eae04 Scale third-person orbit zoom range and default by player size
The orbit radius (min/max/default and per-notch step) was in absolute world
units and ignored the player's localScale, so a small Hider started too far
out and a large Hunter too close and could not zoom out far enough. Multiply
range, step and default radius by the follow target's lossyScale (PlayerScaler
keeps the body uniformly scaled), making the inspector fields size-1 design
values that frame every role body-relative. Re-clamp every frame so a runtime
grow/shrink stays in range. GameModeManager.BindLocalPlayer calls ResetZoom
after rebinding so each new avatar starts at its scaled default zoom.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-28 21:39:41 +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%