Skip to content
Skillv1.0.0

physics-rendering-expert

Real-time rope/cable physics using Position-Based Dynamics (PBD), Verlet integration, and constraint solvers. Expert in quaternion math, Gauss-Seidel/Jacobi solvers, and tangling detection. Activate o

by curiositech(0) 0 installs
Free
Sign in to install

Free account. Installing gives you the manifest plus copy-paste snippets.

See reviews

About

Imported from curiositech/some_claude_skills (.claude/skills/physics-rendering-expert/SKILL.md). Install upstream with npx skills add curiositech/some_claude_skills --skill physics-rendering-expert. Copyright stays with the author.

Physics & Rendering Expert: Rope Dynamics & Constraint Solving

Expert in computational physics for real-time rope/cable dynamics, constraint solving, and physically-based simulations.

When to Use This Skill

Use for:

  • Real-time rope/cable/chain simulation (leashes, climbing ropes)
  • Position-Based Dynamics (PBD) implementation
  • Constraint solvers (Gauss-Seidel, Jacobi)
  • Quaternion/dual-quaternion rotation math
  • Verlet integration for particle systems
  • Tangle detection (multi-rope collisions)

Do NOT use for:

  • Fluid dynamics → specialized SPH/MPM solvers
  • Fracture simulation → requires FEM or MPM
  • Offline cinematic physics → different constraints
  • Unity/Unreal physics → use built-in systems

Expert vs Novice Shibboleths

Topic Novice Expert
Constraint approach Uses spring forces (F=ma) Uses PBD (directly manipulates positions)
Why PBD "Springs work fine" Springs require tiny timesteps; PBD is unconditionally stable
Solver choice "Just iterate until done" Gauss-Seidel for chains, Jacobi for GPU
Iterations 20+ iterations 5-10 is optimal; diminishing returns after
Rotation Uses Euler angles Uses quaternions (no gimbal lock)
Integration Forward Euler Verlet (symplectic, energy-conserving)

Common Anti-Patterns

Force-Based Springs for Stiff Constraints

What it looks like Why it's wrong
force = k * (distance - rest_length) with high k High k requires tiny dt for stability; low k gives squishy ropes
Instead: Use PBD - directly move particles to satisfy constraints

Euler Angles for Rotation

What it looks like Why it's wrong
rotation = vec3(pitch, yaw, roll) Gimbal lock at 90° pitch; unstable composition
Instead: Use quaternions - 4 numbers, no gimbal lock, stable SLERP

Over-Iteration

What it looks like Why it's wrong
solver_iterations = 50 Diminishing returns after 5-10; wastes cycles
Instead: Use 5-10 iterations; if more needed, use XPBD compliance

Single-Threaded Gauss-Seidel for Large Systems

What it looks like Why it's wrong
Gauss-Seidel on 1000+ constraints Gauss-Seidel is inherently sequential
Instead: Use Jacobi solver for GPU parallelization

Quick Reference

Why PBD Beats Force-Based Physics

  • Unconditionally stable (large timesteps OK)
  • Direct control over constraint satisfaction
  • No spring constants to tune
  • Predictable behavior

Solver Choice

Solver Parallelizable Convergence Use Case
Gauss-Seidel No Fast Chains, ropes
Jacobi Yes (GPU) Slower Large meshes, cloth

Rotation Representation

  • 3D rotation → Quaternion (never Euler)
  • Rotation + translation → Dual quaternion
  • Skinning/blending → Dual quaternion (no candy-wrapper artifact)

Performance Targets

System Budget Notes
Single rope (100 particles) <0.5ms 5 iterations sufficient
Three-dog leash (60 particles) <0.7ms Include tangle detection
Cloth (1000 particles) <2ms Use Jacobi on GPU

Evolution Timeline

Era Key Development
Pre-2006 Mass-spring systems, stability issues
2006-2015 PBD introduced (Müller et al.), unconditional stability
2016-2020 XPBD adds compliance for soft constraints
2021-2024 ALEM (2024 SIGGRAPH), BDEM, neural physics
2025+ XPBD standard, hybrid CPU/GPU, learned corrections

Decision Trees

Choosing constraint solver:

  • Sequential structure (rope/chain)? → Gauss-Seidel
  • Large parallel system (cloth/hair)? → Jacobi (GPU)
  • Need soft constraints? → XPBD with compliance

Choosing integration:

  • Position-only needed? → Basic Verlet
  • Need velocity for forces? → Velocity Verlet
  • High accuracy required? → RK4 (but PBD usually sufficient)

Integrates With

  • metal-shader-expert - GPU compute shaders for Jacobi solver
  • native-app-designer - Visualization and debugging UI

Reference Files

File Contents
references/core-algorithms.md PBD loop, Verlet, quaternions, solver implementations
references/tangle-physics.md Multi-rope collision, Capstan friction, TangleConstraint

Remember: Real-time physics is about stability and visual plausibility, not physical accuracy. PBD with 5-10 iterations at 60fps looks great and runs fast.

Use it

Copy one of these into your project. Installing also returns the manifest and these snippets.

yaml
targets:
  - https://api.opensmartroute.ai/api/v1/registry/curiositech-some-claude-skills-physics-rendering-expert/manifest   # or paste the manifest below

Manifest

An Open Capability Manifest: the router reads it to know what this does, what it costs and when to pick it.

curiositech-some-claude-skills-physics-rendering-expert.ocm.jsonjson
{
  "ocm": "1",
  "id": "curiositech-some-claude-skills-physics-rendering-expert",
  "kind": "skill",
  "name": "physics-rendering-expert",
  "description": "Real-time rope/cable physics using Position-Based Dynamics (PBD), Verlet integration, and constraint solvers. Expert in quaternion math, Gauss-Seidel/Jacobi solvers, and tangling detection. Activate on 'rope simulation', 'PBD', 'Position-Based Dynamics', 'Verlet', 'constraint solver', 'quaternion', 'cable dynamics', 'cloth simulation', 'leash physics'. NOT for fluid dynamics (SPH/MPM), fracture simulation (FEM), offline cinematic physics, molecular dynamics, or general game physics engines (use Unity/Unreal built-ins).",
  "publisher": "curiositech",
  "version": "1.0.0",
  "capabilities": {
    "domains": [
      "general"
    ],
    "tags": [
      "skill-md",
      "physics",
      "pbd",
      "verlet",
      "simulation",
      "constraints",
      "skills-sh"
    ],
    "languages": [
      "en"
    ]
  },
  "quality_prior": 0.6,
  "examples": [
    "Real-time rope/cable physics using Position-Based Dynamics (PBD), Verlet integration, and constraint solvers. Expert in quaternion math, Gauss-Seidel/Jacobi solvers, and tangling detection. Activate on 'rope simulation', 'PBD', 'Position-Based Dynamics', 'Verlet', 'constraint solver', 'quaternion', 'cable dynamics', 'cloth simulation', 'leash physics'. NOT for fluid dynamics (SPH/MPM), fracture simulation (FEM), offline cinematic physics, molecular dynamics, or general game physics engines (use Unity/Unreal built-ins)."
  ],
  "primary": false,
  "metadata": {
    "source": {
      "provider": "skills.sh",
      "repository": "https://github.com/curiositech/some_claude_skills",
      "path": ".claude/skills/physics-rendering-expert/SKILL.md",
      "ref": "HEAD",
      "url": "https://github.com/curiositech/some_claude_skills/blob/HEAD/.claude/skills/physics-rendering-expert/SKILL.md",
      "key": "curiositech/some_claude_skills/.claude/skills/physics-rendering-expert/SKILL.md"
    },
    "allowed_tools": [
      "Read,Write,Edit,Bash,mcp__firecrawl__firecrawl_search,WebFetch"
    ]
  },
  "instructions": "# Physics & Rendering Expert: Rope Dynamics & Constraint Solving\n\nExpert in computational physics for real-time rope/cable dynamics, constraint solving, and physically-based simulations.\n\n## When to Use This Skill\n\n**Use for:**\n- Real-time rope/cable/chain simulation (leashes, climbing ropes)\n- Position-Based Dynamics (PBD) implementation\n- Constraint solvers (Gauss-Seidel, Jacobi)\n- Quaternion/dual-quaternion rotation math\n- Verlet integration for particle systems\n- Tangle detection (multi-rope collisions)\n\n**Do NOT use for:**\n- Fluid dynamics → specialized SPH/MPM solvers\n- Fracture simulati",
  "cost": {
    "context_tokens": 1174
  }
}

Fetch it by URL: GET /api/v1/registry/curiositech-some-claude-skills-physics-rendering-expert/manifest?version=1.0.0

Reviews

Star ratings from people who tried it. One review per account; edit yours any time.

No reviews yet. Install it, try it, and be the first to rate it.