How would you simulate Paper Folding (Origami specifically)

I know similar things have been asked before,
ultimately I’m trying to simulate paper folding in 3D. Here is what i’ve tried.

  1. Develop Inverse Kinematics - Create 3D objects that are already broken up into sections and on selection fold them over a selected axis. This way works, but I don’t have a real way of deciding when things should be connected. So after the first fold its almost like i lost all logic defining it as “paper” (See attachment)
    This way would still need a fancy way of determining what sections should be together. and i feel at that point the math behind everything might get SUPER complex.

  2. Cloth Physics - Looked so off and most likely isn’t worth exploring further.
    Maybe I will try the ObiCloth?

  3. Mesh Slicer - This could work, but inherently will have the same problem as 1. Where I need some way to “remember” where folds take place so the paper isn’t “ripped” in the middle on a second fold.

  4. Looked into this site. Origami Simulator
    Spent a fair amount of time looking at the code. While something like this seems amazing to me because of the way the algorythem works. I think it would be difficult to implement this in Unity. Would love some direction on this as well.

  5. Rigging a piece of paper with a TON of “folds/creases” and manipulating them in unity.
    This might be the best way forward imo, but ive never done rigging before!

I have a fair bit of experience in Unity and Software, but not in this level of Mathematics in spaces.

Thanks!

6120179--666848--Prototype1.gif

It is an interesting engineering / space problem to think about this, but really it is completely predicated on how you define your problem space.

For instance if you had lots of art time you would just make models and animate them from sheet to closure, and the interactive portion would just be an animator scrubber, back and forth.

If on the other hand you want a completely-generic paper folding simulation that begins to simulate thickness where 1, 2, 4, 8 layers of paper go, as well as making it impossible to fold beyond like 7 times because it looks curved, that is a completely gnarlier problem to solve.

So it sorta comes down to what do you assume your game will do?

The ultimate goal here is to make something that the user can make whatever they want, but i’m unsure if that goal is just too complex to be realistic.

As for thickness That’s some of the harder aspects.

Might be easiest for you to go into your favorite 3D program (such as Blender) and use it as though it were an origami package and try to actually fold a simple origami shape. Origami is not only folding: one must select the precise line, which implies a UI of some kind, and since a 3D program already solves that, it might give you ideas for how to approach the design.

Hello, I know I’m three years behind, but I am doing a similar project and was wondering what ever came of this.

There was no indication that any actual work was ever performed for this prototype.

But my two suggestion posts above stand as-is.

The problem space of folding paper hasn’t really changed.

Let us know what you find out!

I did go the blender route and got something working because its essentially just rigging a model.

I also created a prototype that splits a mesh and lets you fold the paper where you control the newly created side.
This worked to a degree but i had some issues with any sort of complex fold. Meaning anything more than folding to make a crease had issues with shapes because i didnt really have a great way to know which direction each new piece should go. Ultimately possible i think, but i think you would need some way for the user to select things and specify the fold type and such. Ultimately not really what i was looking for because ideally i was making this as a relaxing puzzle game not a simulation.

"Hey! I faced a similar challenge while developing my game Origami Party, which simulates interactive paper folding. Here’s an overview of the approach I used:

  1. Physical Origami Reference: I first create the origami physically, marking all creases and folds on real paper.
  2. Precise Measurements: Using a ruler and protractor, I take exact measurements of angles and fold positions.
  3. 3D Modeling in Blender: I replicate the origami structure as individual meshes in Blender, ensuring accurate proportions.
  4. Shape Keys for Animation: Instead of using physics-based deformations, I apply a series of shape keys to control rotations and transformations for each fold.
  5. Exporting to Unity: The model is exported as an .fbx file with shape keys, which are then manipulated in Unity using the Skinned Mesh Renderer via Blend Shapes to create smooth folding animations.

This method allows for precise, controlled folds without relying on complex real-time simulations. If you’re exploring origami in Unity, I’d be happy to exchange ideas! Also, feel free to check out Origami Party on Play Store if you’re interested in seeing this approach in action."*

playstore: https://play.google.com/store/apps/details?id=com.origami.party
game trailler: https://youtu.be/wjYeOGPDxw0
game update trailler: https://youtu.be/w8bwZVdFpeQ