st-tech / st-tech/ppf-contact-solver

[Bug] Solver panics on the start of the simulation

Open
#64 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug worked
Dominant language
Python
Stars
4.5k
Forks
334
PR merge metrics
No merged PRs in 30d

Description

Summary

The solver crashes at the beginning of the simulation when I am trying to inflate an airbag mesh. The scene only contained one shell geometry which is the airbag mesh itself with no other solid or shell or rods.

Here is the screenshot:
Image

Steps to Reproduce
  1. Build a scene with a complex quad formation
  2. Create a shell dynamic group
  3. Tick inflate and set a desirable pressure
  4. Transfer and run simulation
Expected Behavior

The simulation runs as usual

Actual Behavior
[2026-06-03 11:49:09] thread 'main' (27012) panicked at crates\ppf-cts-solver\src\mesh.rs:160:9:
[2026-06-03 11:49:09] assertion failed: keys.insert(e)
Environment

OS : Windows 11
Model : HP ZBook Fury
Blender : 5+
Solver version : c51dd0d

Contribution Agreement
  • I confirm that any code, patches, scripts, attachments, or other copyrightable material I include in this issue may be used, reproduced, modified, and distributed by this project under the Apache License 2.0 or as otherwise described in CONTRIBUTING.md.
  • This is a bug report from the community (please provide a reference below).
Community Reference

No response

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at crates/ppf-cts-solver/src/mesh.rs:160, where the assertion failure is reported, and reproduce the Blender scene with one inflated shell mesh. Compare the mesh input and solver state at the start of the simulation; done means the reported scene no longer panics and the simulation runs as expected.

Written by the indexing model from the issue text.

Assessment

Tech stack
blender, rust
Domain
computer-graphics
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.