0a1859cab18dee1f5d4a9bf2c49e806663de0e9c
When running backwards toward the camera into a wall, the grab decided on the camera-relative world direction (S pushes into the wall -> grab) while the base release decided on the raw S axis (v < 0 -> immediately let go), causing a per-frame grab/release flicker. Mirror the existing _wallStrafeSign A/D latch with a new _wallClimbSign: the camera picks, per climb-key press, which of W/S climbs up (the one pushing into the wall) via Dot(camForward, wallNormal) and latches it. All up/down tests now run through the effective climb axis vEff - wall->ceiling handoff, top-out detach/hop, the alongSurface mapping and the base release - so grab and release can no longer contradict each other. Reset on grab and in ExitWallClimb. Facing the wall and grabbing with W is unchanged (vEff == v). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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
Runningbool 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
- Open the project with Unity 6000.3.11f1 (Unity 6).
- Open
Assets/Scenes/SampleScene.unity. - 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).
Description
Unity mesh-painting game (Meccha Chameleon-inspired)
1.1 GiB
0 Stars
1 Watchers
0 Forks
Languages
C#
85.6%
ShaderLab
8%
GLSL
4%
HLSL
2.3%