One problem that I’ve already noticed is that the geometry inside the outer folded object streches and compresses as it is closed and opened. That won’t work for me as I need to test if the thing can be closed up and lie flat. It is critical that the vertical and horizontal elements retain their dimesions. Hmmm…
Ahh - yes - when you’ve finished adding all the keys (in the morpher states) pop into a Track View and convert all the key tangents to Linear - that way the effects sort of cancel each other out. That’s what I did in my example. There’s still a touch of distortion, but it’s barely noticeable. Using more snapshots (smaller angles when rotating the vertices) will also help.
Max 4.2 through 2009 (SP1), XP-Pro 64 SP2.
NVidia 8800GTX-768 (Driver 175.16).
Core 2 Quad Q6600 2.4GHz, 4Gb Ram, 4Gb Swap, DX9.0c.
Area IRC Nick is “Screwball”.
Guys? I think I’ve found a workflow that’s fast and simple. See the capture here (a bit jaggy, sorry): pop-up book
The idea is that all the inner parts remain parallel to one side of the cover or the other.
Say cover A is the master (it’s used to move, rotate and scale the whole book).
Set cover B (this one is used only to open/close the book) into position, move its pivot point on its hinging edge (hierarchy panel > pivot), apply a reset xform (utilities panel) and collapse.
Now for the inner parts (I built everything flat in the top viewport, using numbers for dimensions and positions).
- Each planar part is a separate object.
- Its pivot point has to be moved to its hinging edge (+ reset xform + collapse).
- It is linked to the part (one of the covers or another inner part) to which it would be glued in real life.
- All inherited rotations are disabled (hierarchy panel > link info > inherit rollout > rotate group).
- In the motion tab, change its rotation controller for an orientation constraint and pick as orientation target the cover to which is stays parallel.
- Et voilĂ . You can repeat the process to add as many inner levels as you want, until you run out of memory.
Note: Set the reference coordinate system to parent for the rotate tool. That way, cover A remains oriented to the world and cover B inherits cover A’s coordinate system.
And of course cover B must be rotated only around its hinging axis for the book to still look like a book!
Hmmm - tricky indeed if the folds cause the popup to do so from the top of the book towards the center (as ISTR they do). Would Script controllers be of any use? They could be used to translate the “open” angle of the pages to the “popup” angle from the horizontal to the vertical. Difficulty is there’s nothing to align them to (keep them parallel to). This may be harder than it at first seems…
Max 4.2 through 2009 (SP1), XP-Pro 64 SP2.
NVidia 8800GTX-768 (Driver 175.16).
Core 2 Quad Q6600 2.4GHz, 4Gb Ram, 4Gb Swap, DX9.0c.
Area IRC Nick is “Screwball”.
I think you are on to something here. Let me play with that concept a bit and get back to you. You absolutely understand the science behind that type of popup (opens to 90 degrees). The planes on either side do in fact have to remain parallel to a side. That’s critical or it won’t fold flat.
What I’m hoping to eventually do is to assign an image to a large plane and then start cutting it up and folding polys. I can set up a grid so the dimensions of all the folds are easy to snap to. Finding an easy and interactive way to create folds and tabs as I flow along is paramount or I might as well do it with an xacto knife and cutting base.
I’m also very interested in the other popup you are looking at...one that is flat when fully open. The 90 degree type is good for a greeting card to someone but in a book they generally open all the way. I was hesitant to ask for help on that type until I fully explored and implemented the great suggestions you and Steve have graciously spent time on for me.
I have a meeting but I’m eager to look at this new approach over the weekend.
You’re welcome, Rob. For the second kind, it’s not done yet.
Steve, I’m trying to avoid script controllers and parameter wiring. Every time I used those on rotations with linked objects and different coordinate system, I got very funky results.
The maths are no big deal (it’s just the intersection of two planes, really). But I’m going for a more mechanical way, with dummies and look at and/or orientation constraints.
I take your point about controllers - they can indeed go really strange on you - I just thought they might take some of the workload, so to speak. I’ll watch for your results with interest
Max 4.2 through 2009 (SP1), XP-Pro 64 SP2.
NVidia 8800GTX-768 (Driver 175.16).
Core 2 Quad Q6600 2.4GHz, 4Gb Ram, 4Gb Swap, DX9.0c.
Area IRC Nick is “Screwball”.