Skip to content

Validation: flag Full-Mesh/Remesh collider combined with rigid-body tag #670

Description

@Weisl

Context

Cross-engine research (Unity/Unreal/Godot official docs) confirms all three engines independently converge on the same rule: concave/trimesh collision only works on static, non-simulated bodies.

  • Unity: a non-convex (concave) Mesh Collider cannot attach to a non-kinematic Rigidbody.
  • Godot: ConcavePolygonShape3D is documented as usable only within StaticBody3D.
  • Unreal: using Complex Collision As Simple explicitly disables physics simulation for that object.

Simple Collider's Full-detail Mesh (copy) and Re-meshed collider types are exactly this kind of concave/trimesh geometry. Nothing in the addon currently checks whether one of these is attached to an object also tagged as a rigid body (via set_rigid_body's naming). That combination would silently misbehave on import to any of the three target engines - the object would either fail to simulate, be rejected, or behave unpredictably depending on the engine.

Proposal

Add a new validation check (alongside the existing checks in validation/checks.py) that flags a collider using the Full-Mesh or Re-meshed shape type when its render-mesh parent (or the collider itself) is also tagged as a rigid body per the active naming convention. Follows the same pattern as the existing check_collision_shape_mismatch-style checks.

Acceptance criteria

  • New check appears in Validation panel results with a clear message explaining the concave-collision-on-simulated-body conflict.
  • Check correctly identifies rigid-body tagging via the same naming-detection logic already used elsewhere (e.g. convert_from_name).
  • Test coverage alongside existing validation check tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions