Rigging Window Blinds?

CrissieBCrissieB Posts: 195

Hi All,

I'm pondering whether to put window blinds in my diner set. It has large windows that face south and east, shown in the render below. I did a quick sketch of my plan for the blinds, shown in the Blender screenshot below.

​Note: My only rigging experience so far has been to rig doors to open on their hinges, as shown in the DAZ screenshot below.

My thought is to use Vertex Groups in Blender make each blind a bone, with two bones for the aligning tapes between each blind. My sketch shows only one aligning tape, but there would be three: one near each end and one at the center. I'm pretty sure all three top-tape-pieces between each blind need top be one bone, and all three bottom-tape-pieces would be another. So the bone hierarchy would be like this:

Blind1 > TopTape1 > BottomTape1 > Blind 2 >TopTape2 > BottomTape2 ...

Window blinds need two controls:

ROTATE OPEN/CLOSED: I'd like to have a master controller that rotates each blind in a fixture around the center of its endpoint. I think that will involve setting X-rotation limits for each blind and then an ERC Freeze so all the blinds rotate together ... but I'm not sure how to do it.

RAISE/LOWER: I'd like to have a master controller that raises and lowers the blinds, so the aligning tapes accordion-fold out as the blinds are raised (and get closer together) and accordion-fold in as the blinds are lowered (and get farther apart). I suspect this involves setting Y-translation limits for each blind-bone, and then an ERC Freeze so that raising the blinds 50% lifts each blind half-way along its Y-translation limit.

I know that's not actually how blinds work. In reality the bottom blind lifts the next one when they meet, and so on as the blinds are raised. So if you raised the blinds halfway, the blinds on the bottom half would be in contact and the blinds on the top half would still be at their regular spacing. But I have no clue how to rig that.

If I make blinds, I'll model pull strings to rotate and raise/lower the blinds, but they'll be static. I'm not even going to try to make the strings respond to the blind controls.

My questions:

(1) How would I use ERC Freeze to make each blind in a fixture rotate around the center of its endpoint, and to make each blind raise/lower in proportion to its position in the fixture?

(2) How do I make sure the aligning tapes stay connected to the blinds, and accordion-fold out as the blinds are raised and in as the blinds are lowered?

(3) Is this likely to become one of those seems-simple-but-grows-into-a-nightmare ideas where I'll wish I'd just left the windows without blinds?

Thanks in advance for any help you can offer.

Crissie

Grass Through Window.png
1280 x 720 - 1M
WindowBlindSketch.jpg
1280 x 720 - 116K
DoorPartlyOpenScreenshot.jpg
1440 x 900 - 351K
Post edited by CrissieB on
«1

Comments

  • mjc1016mjc1016 Posts: 15,001

    Basically you've picked one of the hardest things to rig I can think of....

    The 'up/down' with tapes is going to be the killer.  To 'fold' it each section will need to be two bones working in opposite directions, linked together. I'd probably ceneter each bone on a section of tape and have them point vertically...but linking each pair to a master will betedious...and you'll need to do each tape.

    The slats would be fairly easy, just spin them on the long axis, but linking will again be tedious.

    Personally, I'd not worry about raising an lowering...

  • Making the slats rotate is simple - just put their twist axis lengthwise, with their centre point at the pivot. You could split each tape in two, one half a child of the current slat and one a child of the previous, and set the two to point at each other (that's the way pistons are usually rigged) but getting the concertina folds would be very tricky I fear. Often blinds like these are handled with morphs, though that means the rotation will look odd if animated.

  • You are setting it up incorrectly - that I can say already by looking at the 2nd image.

    To be honest - this isn't that hard to rig. It's just a bit tricky.
    You will achieve most of your movement with Pose Controls. You simply apply the pose you want and ERC Freeze it to create the dial.

    Lemme make a simple object - I'll have a rig to display this in a moment.

  • CrissieBCrissieB Posts: 195
    edited November 2016

    Thank you for the replies, mjc and Richard! smiley

    I'd guessed that rigging the blinds to rotate open/closed would be relatively easy (if tedious) ... and rigging them to raise/lower with the aligning tapes folding out would be VERY hard.

    I think mjc may be right that raising/lowering is far more work than it's worth, especially as the blinds will be just one prop in a set that I hope to sell.

    So assume I want to rig the blinds only to open/close, rotating so the bottom sides of the slats face in and the top sides face the window. Assume I model the blinds fully open (no rotation). To rig the slats to Open-Close with a master controller, I would need to:

    1. Set up each slat as a separate bone rigged to twist along its horizontal axis, and set rotation limits (say: 0 and 80 degrees).
    2. Pose each slat bone rotated to its limit.
    3. Do an ERC Freeze to capture the fully-closed poses for all slats. Call this controller Blinds Open-Closed, with the fully-closed poses 100%.

    I should then be able to slide the Blinds Open-Closed controller from 0% (modeled positions with slats level) to 100% (all slats rotated top-out 80 degrees).

    If I'm not rigging the blinds to raise/lower, and if the slats always rotate in unison, then the vertical distance between their outer edges should never change. Thus the tape-bones only need to follow the edges of the slats, rotating so that each tape bone is always pointed at a null point/bone on the edge of the slat below, as shown in the Blender screenshot.

    So the bone hierarchy would be: Slat1 > (FrontTapes, BackTapes), Slat 2 > (FrontTapes, BackTapes)....

    That is, the three FrontTapes below each Slat could be one bone and the three BackTapes below each Slat another bone, each parented to a null point/bone just outside its edge of the Slat above, each pointing at the null point/bone just outside the corresponding edge of the Slat below.

    Thus, as the slats rotate open/closed, the tapes should move with them and counter-rotate so the tapes always remain vertical and just outside the edges of the slats. Yes?

    If so, how do I rig the Tape bones on each Slat to point at the null point/bones on the Slat below?

    WindowBlindSketch2.jpg
    1280 x 720 - 169K
    Post edited by CrissieB on
  • CrissieBCrissieB Posts: 195

    Thomas, your comment came in as I was writing mine. I'll wait to see your example before I reply. smiley

  • Alright, so excuse the bad quality stuff, but I'm kinda doing a quick one on this.
    The whole rig would be messy to showcase so here is how this would work in a nutshell:

    The hierarchy of the bones goes like this:

    • You create a root bone to move the whole window. From the root bone, you have a bone for every Blind. They go through the bone, so you can rotate them around. (They are not in a child-parent relation to one another - each is a sibling bone)
    • If you want a rope to go through them - it will be a seperate bone was well. Its origin is at the far Top of the Window. You scale on its Y axis when you want to raise the blinds.
    • The Tape is like a snake tail. It is NOT WELDED to the blinds. It is just in a position so it seems it is.

    The most important part is creating Pose Controls for them.

    You have to use Translations for the bones to move the blinds up and down. When they are rotated or moved up/down, you rotate the harmonica of the Tape to match the blades. It's a TEDIOUS process, but once its ready, you save a Pose Control for it and it should work fine.

    As for the Raising of the Window Blinds - You have gather an animated range for a Pose Control.

    • Set a Keyframe at frame 1. It's your Zero pose (no change yet).
    • Set a Keyframe at frame 2. Raise the lowest Blind with Translate Y till it hits the blind above it.
      Scale the rope on the Y axis till it matches with the Blinds.
      Rotate the bones of the Tape till the match the new position of the blinds.
    • Set a Keyframe at frame 3. Raise the two blinds together and repeat the process till you have enough frames to match all possible poses.

    Now just use ERC Freeze and use an animated Range to capture all the key frames as a Pose Control.
    It will now function with one dial.

    If you have any questions, let me know.

    Blinds 01.png
    600 x 415 - 13K
    Blinds 02.png
    606 x 428 - 13K
    Blinds 03.png
    552 x 494 - 25K
    Blinds 04.png
    212 x 185 - 5K
  • macleanmaclean Posts: 2,438

    I've made venetian blinds numerous times, and I've always used a morph for each movement of the entire blind - ie. Open/Close and Raise/Lower (Both these movements also affect the cord).

    (For an example, see my Model Agency - http://www.daz3d.com/interiors/interiors-the-model-agency).

    Obviously, it can be done with rigging, but if you have several blinds in a room, the advantage of using morphs is that they can be body parts of the room, rather than separate figures.

  • CrissieBCrissieB Posts: 195

    Thanks for the reply, Thomas! smiley

    Your method would work if users want to either​ open-close (rotate) or raise-lower (translate) the blinds. But will it work if users try to do some of each, i.e.: half-close a half-raised set of blinds? My guess is it would work fine for the slats, and for the tapes above the raise-point, where the tapes are still in their original positions. But I think it would not work well for the tapes below the raise point, which are already accordion-folded because their slats have been raised.

    All things considered, because the window blinds would be just one prop in a set that I hope to sell, I think it's easier to just rig the blinds to rotate open-closed but not raise-lower.

    That way eash slat would have five bones: Slat1 > ((Slat1FrontNode > Slat1FrontTape), (Slat1BackNode > Slat1BackTapes)), and likewise for Slat2, Slat3, etc.

    Because the slats only rotate around their long axes, the FrontNode-to-FrontNode and BackNode-to-BackNode distances never change. Thus, each Tape bone could be rigid with its origin at the Front (or Back) Node of the Slat above, and point to the Front (or Back) Node of the Slat below. Then I shouldn't have to do any manual posing of the Tape bones; they should move with and counter-rotate to the Slat bones.

    So I would 'only' need to pose each Slat bone to its fully closed position, and do an ERC Freeze to capture all of the Slats' pose controls. That should give me a single Blinds Open-Close slider to rotate all of the Slats ... and the parenting and point-at rigging should move and counter-rotate all of the Tapes. Yes?

  • My method will let you both close/open the blinds and have it raise/lower. Even at the same time. The setup is longer, but it should grant the required functionality in its fullest.

    maclean also gave you a good method - Just create Morphs for the thing. It negates the need for any rigging and will function perfectly.

     

    Also - the thing you wanna do right now will not function how you think it will.
    But you can try it.

  • CrissieBCrissieB Posts: 195

    Thanks for the replies, Thomas and maclean! smiley

    There will be six sets of blinds, one in each of the four front (south) windows and two end (east) windows. I'd planned to make two original fixtures -- one front and one end, as the front and end windows are different widths -- and instance the others. Thus, adjusting the original front blind would adjust the other three front blinds, and adjusting the original end blind would adjust the other end blind.

    Again, I don't plan to have moving drawstrings. The windows are fairly tall (1.25m top to bottom) and I don't want long strings dangling if the blinds are raised. If I rig (or morph) them to raise/lower, I'll just model the drawstring wrapped around a cleat mounted on the wall.

    I assume that -- whether I do rigging or morphs -- the tapes still need to be separate bones that only appear to move with the slats?

    I've done character morphs, and they were fairly easy. Custom clothing-fit morphs were more of a challenge, but I've done those too. If I do morphs to control my blinds, do I simply rotate the slats and reposition the tapes for the Open-Close, save that morph, then go back to the original and raise the slats and reposition the tapes for the Lower/Raise?

    If so, how will the tape position-changes interact when the two morphs are used together, e.g.: half-opening a half-raised blind?

  • macleanmaclean Posts: 2,438
    edited November 2016
    If I do morphs to control my blinds, do I simply rotate the slats and reposition the tapes for the Open-Close, save that morph, then go back to the original and raise the slats and reposition the tapes for the Lower/Raise?

    If so, how will the tape position-changes interact when the two morphs are used together, e.g.: half-opening a half-raised blind?

    That's how I do it - a separate morph for each movement.

    I'm not sure about the tapes when both morphs are used. It will depend on your tapes and how you do the morphs.

    My tapes were simple cords - 4 inside the slats (2 on either side) and a pair open/close up/down cords (positioned at one side of the blind). In the open/close morph, I bring the blind cords nearer the center (so they lie flush with the slats when closed), and lengthen the open/close cord. In the up/down morph, the blind cords and the up/down cord are all shortened to match the height of the slats. Using them together (say at the halfway point) means the blind cords move inwards and shorten, and both open/close and up/down cords shorten/lengthen.

    It's a bit tricky to explain without seeing it, but it works for me.

    Post edited by maclean on
  • CrissieBCrissieB Posts: 195
    edited November 2016

    Thank you for the reply, @maclean. smiley

    I did some research, and the tapes I had in mind are an extra option. Most commercial blind fixtures don't have tapes -- only cords, as maclean described -- and the owners of my diner would not have spent the extra money for tapes.

    To give an idea, here's a render of the diner from the parking lot. It was built in 1983 to serve the EPA crews cleaning up the toxic waste dump across the street. They finished the cleanup in 1989 and The Powers That Be built a new city hall (cheap land!) and regional high school (Go Glowworms!) nearby. So the diner hung on, but it was flooded in Hurricane Sandy (you can see the high-water stain). The insurance paid for a new front door, a new neon sign, and replacement (used) appliances and furnisnings inside. But the insurance company hired fly-by-night painters, so the diner shows its age.

    So, again, the owners could not afford the extra cost of window blind tapes ... and that greatly simplifies my rigging.

    Below is a Blender screenshot of the window blind model. The header, footer, and each slat are separate vertex groups, so they'll import into DAZ as separate bones. The three blind cords are centered front-to-back, so they don't need to move as the blinds rotate. Because they only need to shorten as the blinds raise, they're all one vertex group and will be one bone.

    In reality there would also be front and back cords that rotate the blinds. But I was watching TV last night and several scenes had window blinds in the background, as the blinds will be in my set. I couldn't see the front or back cords that rotate the blinds, but I could definitely see the light leaking through the cord cutouts in the slats. So I'm leaving the front and back cords out of the model, but I modeled the cord cutouts, as shown in the detail screenshot. I'll also model the pull cords, but they will be static, wrapped around a cleat that will appear to be mounted on the wall. The diner staff would rewrap the pull cords when they raise or lower the blinds -- to keep the cords out of the way -- so there's no need to make the pull cords dynamic.

    These changes make the rigging much easier. Each slat bone and the footer bone will be rigged to rotate on their horizontal axes, and the inner cord bone will be rigged with its origin at the top. I'll then pose the footer and each slat closed (rotated 80 degrees), and use ERC Freeze to make a single Open-Close control. Then I'll follow @Thomas_Windar's advice and use animation keyframes to pose the blinds raising: Keyframe 1 with the original positions, Keyframe 2 with the footer up to Slat24, Keyframe 3 with the footer and Slat24 up to Slat23, and so on, shortening the inner cords at each step. Finally I'll use ERC Freeze to capture all 24 Keyframes into a Lower-Raise control.

    I haven't yet decided whether I'll duplicate or instance the other blinds. Instancing saves geometry and would allow a single controller (the original) to open-close or raise-lower all of six blinds in unison. But the geometry isn't very intense and I've never seen anyone get six sets of blinds to match exactly ... so I may duplicate to let users control each blind independently.

    Anyway, that's the current plan. Thank you all for your helpful replies! smiley

    Crissie

    DumpsterBesideDiner.png
    1280 x 720 - 763K
    WindowBlindSketch3.jpg
    1280 x 720 - 241K
    WindowBlindDetail.jpg
    1280 x 720 - 152K
    Post edited by CrissieB on
  • CrissieBCrissieB Posts: 195

    It worked! smiley ... so far.... blush

    The renders below show the blinds in my basic Build Scene, an empty scene with three lights (front, fill, back) and the object I'm working on.

    I haven't done the ERC Freeze to create the master Open-Closed controller yet. And I haven't begun the animation for the Lower-Raise. But the blinds are modeled, textured, and rigged. The rigging was much​ easier than I feared. Setting the orientations in Figure Setup (YZX for the inner cords, twist rod, pull cord, and pull bob, XYZ for the slats and footer) did most of the work. After that it was just changing the bones' Parameter Settings (renaming, setting limits) ... and that went very quickly once I realized I could block-select the slats and do them all at once.

    @Thomas_Windar, I'm not certain how to do an ERC Freeze for animation keyframes, to make the Lower-Raise controller. I've searched the documentation and forums, and can't find an answer. How do I do that?

    Thanks to all of you for your help! smiley

    Crissie

    BlindsOpen.png
    1280 x 720 - 291K
    BlindsHalfClosed.png
    1280 x 720 - 492K
    BlindsClosed.png
    1280 x 720 - 509K
  • macleanmaclean Posts: 2,438

    Glad you got it figured out!

    For ERC Freeze, select the body part, then go to Parameters, right-click and choose Edit Mode, then right-click and choose ERC Freeze. You may have to create a master controller and link all the body parts to it.

    Have a look at Josh Darling's YouTube page. He has a lot of useful videos.

    https://www.youtube.com/channel/UCtqhpxQyGa7fm0LPoDz4s4A

  • CrissieBCrissieB Posts: 195
    edited November 2016

    Thanks for the reply, @maclean! smiley

    I watched that very video earlier this morning, and used it to create an Blinds Open-Close controller, set the footer all the slats to fully closed, and ERC Freeze that into a single slider for the WindowBlinds figure, as shown below. (BTW, the Y-rotation for the WindowBlinds figure is merely face the inside toward the camera in my Build Scene, rather than moving my Build Scene camera and lights.)

    The next step is to create the Lower-Raise controller. @Thomas_Windar said I should do that with animation keyframes: Keyframe1 with the blinds fully lowered, Keyframe2 with the Footer Y-translated up to just beneath Slat24, Keyframe3 with the Footer and Slat24 Y-translated up to just beneath Slat23 ... and so on until Keyframe25 has the Footer and all other slats stacked under Slat1. And at each keyframe, the InnerCords shorten and the PullCord lengthens (Y-scaling each).

    The idea is that with the blinds 50% raised, I would be at Keyframe 13 ... with the Footer raised enough to stack the bottom 12 slats under Slat12 and the top 12 slats still in their original positions. I've never done animation in DAZ, but I've found plenty of tutorials on DAZ animation and I'm confident I can create the 25 keyframes.

    @Thomas_Windar then suggested using ERC Freeze to capture the keyframes into a Blinds Lower-Raise controller ... and I've found no​ documentation or tutorials on how to use ERC Freeze to capture animation keyframe positions.

    If you or anyone else knows how to do that, I'd be very grateful for the assistance.

    Thank you all so much for your help! smiley

    Crissie

    WindowBlindsRigged.jpg
    1440 x 900 - 288K
    Post edited by CrissieB on
  • Go to Property Hierarchy and right click on your Blinds in there. Choose ERC Freeze.
    A new window will open. Select "Keyed )Extract from Play Range)

    The following is a cut out from my Rigging Guide:

    Keyed (Extract from Play Range) – Extracts parameters from Key frames in the Animation Play Range. This option allows you to extract parameter changes from an animation range. To use this option – create key frames on the timeline. In each key frame set your parameter change (like a different pose or shaping morph). Afterwards go to ERC freeze and check the Keyed box. The Freeze Properties will be taken from the Key Frames and create a new Slider that upon use will dial between the different changes you have set in your key frames.
    The main use for this is when you are creating a dial for a Pose Control or Shaping preset that is supposed to be a specific pose/shape up to a point before turning into a different one. For example, you can make a slider that first builds up muscles on the figure, but when they reach maximum value, the character starts growing in height and mass further.
    Or you can make a Pose Control that raises the leg with the knee bent, but upon reaching its limit, the shin will start going up into a straight leg.

  • CrissieBCrissieB Posts: 195

    Thank you, Thomas Windar! smiley

    One more question:

    I began doing a 25-frame animation, making each frame a keyframe and changing the positions of the footer, slats, inner cords, and pull cord in each frame ... and each new keyframe I created seemed to change the keyframes before. I think it was DAZ trying to interpret smooth movement, as for a movie, but I need only a series of 25 snapshots.

    Is there anyway to stop the 'interpretation' so my previous keyframes don't change as I add new ones?

    Thanks, Crissie

  • Well, indeed yes.

    When using the Timeline, you have to do it like this:
    1) Create Frame 1. - this is your "Zero Pose" frame,.
    2) Now on frame two, create a KEY FRAME. In the timeline window, you should see button in the center. Repeat, Play, Next Frame, etc. The Key icon that has a + in it will read "Create a Keyframe at the current time. Press it".
    3) Create your pose now.
    4) Go to Frame 3, it should now look as the one on Frame 2.
    5) Create a Keyframe again. Create your pose.

    You have to create a Keyframe for each frame. However you do it ONE AFTER THE OTHER. Not just 25 Keyframes, or you will lock in the Zero Pose into every single frame. 
    So to re-iterate.

    Go to next frame. 
    Create Keyframe in it.
    Adjust pose.
    Go to next frame.
    Create Keyframe in it.
    Adjust pose.
    Etc. 

  • CrissieBCrissieB Posts: 195

    Thanks for the reply, Thomas! smiley

    That's what I've been doing, but apparently the keyframes positions only 'apply' to bones that I selected. The blinds are in their original positions for Keyframe1. For Keyframe2 I changed only the Footer (moving it up beneath Slat24), the InnerCords, and the PullCord. So when I move to Keyframe3, it has no previous keyframe data for Slat 23 (which didn't move from Keyframe1 to Keyframe2).

    So when I move Slat23 up beneath Slat22 in Keyframe3 (along with moving the Footer, Slat24, and the InnerCords and PullCord) ... DAZ repositions Slat23 in Keyframe1 and Keyframe2 (for which Slat23 had no keyframe data, because I didn't move it).

    I guess after I do the moving bones for each keyframe, I then need to block-select all of the other bones and set keyframe data for them too?

    Thank you for your patience!

    Crissie

  • CrissieBCrissieB Posts: 195

    Yep, that was the problem. At each keyframe I need to save position data for every bone that will move in any frame during the animation: the footer, all 24 slats, the inner cords, and the pull cord.

    So the procedure is: (1) block-select all 27 bones that the Lower-Raise controller will move during the animation; (2) set a new keyframe; (3) translate bones that move in this keyframe; (4) advance to next frame and repeat steps 1-3.

    Thank you all for your help! smiley

  • CrissieBCrissieB Posts: 195

    Hi all,

    Well, I have all 25-keyframes done and raising the blinds works perfectly in the animation. If I step through the animation, the footer and slats raise, the inner cords shorten, and the pull cord lengthens ... all exactly as intended.

    But when I created a new controller (Blinds Lower-Raise) and used ERC Freeze to capture the animation, that controller does not​ shorten the inner cords as the footer and slats raise.

    I've tried deleting the Blinds Lower-Raise controller, creating a new one, and redoing the ERC Freeze. That rescaled the slats and footer to 200% (I've no idea why) but left the header, twist rod, inner cords, pull cord, and pull bob at their original sizes (again, I've no idea why).

    I've tried redoing the ERC Freeze on the existing Blinds Lower-Raise controller, and checking ONLY the InnerCords parameters, and that rescaled the inner cords by 200% and then shortened them from there (yet again, I've no idea why).

    I am out of ideas for how to capture the (correct!) animation keyframe data into a controller.

    I've attached both the scene file and the window blinds figure file below. If anyone could review them and find out what's wrong, I would be ever-so-grateful.

    Thanks,

    Crissie

    duf
    duf
    WindowBlindsBuild.duf
    65K
    duf
    duf
    WindowBlinds.duf
    39K
  • Oh my God...

    YOUR FIGURE IS NOT WEIGHT MAPPED.

    That is the error....

    Look - you have to use General Weight Maps to create the figure.
    Afterwards it will be possible to create Pose Controls.

  • What is this even... 
    DAZ Studio is stating this is neither a Prop nor a Figure. 
    Where did you import this from?
    It's technically rigged, but the errors are coming from the fact this not being an actual Figure for DAZ Studio.

  • CrissieBCrissieB Posts: 195
    edited November 2016

    The figure is​ weight-mapped. I'm looking at its general weights right now. I just turned on the Weight Map Brush (Alt-Shift-W) and clicked through each bone, with General Weights set in the Tool Settings tab, and each bone is red (weight=1). That's what I wanted ... rigid bones.

    I modeled the Header, Footer, Twist Rod, InnerCords, PullCord, PullBob, and Slats in Blender -- each with UV maps, material zones, and vertex groups -- and exported them together as an obj file. Then I imported and rigged it through Figure Setup, per this Sickleyield tutorial. The steps in that tutorial worked fine with my door models.

    And again, the figure is​ weight-mapped, at least in my file, because I'm looking at the bone weights right now.

    Post edited by CrissieB on
  • CrissieBCrissieB Posts: 195
    edited November 2016

    Hi all,

    The blinds are done. Not the way I wanted them, but they raise and lower, open and close, and I'm done with them.

    For some reason, DAZ kept changing my animation to 30 keyframes. I have no idea why. But it did. Or maybe there's a 25-keyframe animation overlaid over a 30-keyframe animation. Regardless, using the ERC Freeze to capture the animation keyframe data will always and only get the animation sequence that does not have the inner cords raising. I have no idea how to get that​ animation keyframe data ...

    ... and I'm absolutely not going to clear the animation and do it all over again. Been there, done that, twice. Not worth doing a third time.

    Instead I used ERC Bake to undo my Lower-Controller (thanks for the tip, Richard!), stepped through my animation to the end position, and used the regular ERC Freeze. So now the footer and slats rise proportionally, rather than the footer lifting Slat24, which then lifts Slat23, etc. What I have now is what they would have done had I controlled them with a morph.

    But the Blinds Lower-Raise controller now shortens the inner cords and extends the pull cord correctly, as the slats go up -- as shown in the renders below -- and that's good enough.

    Thanks to all for your help!

    Crissie

    BlindsClosed.png
    1280 x 720 - 523K
    BlindsHalfClosed.png
    1280 x 720 - 498K
    Blinds Half-Raised Half-Closed.png
    1280 x 720 - 351K
    BlindsOpen.png
    1280 x 720 - 289K
    Blinds Fully-Raised Fully-Closed.png
    1280 x 720 - 122K
    Post edited by CrissieB on
  • mjc1016mjc1016 Posts: 15,001

    Tedious? wink

    Looks good. 

  • CrissieBCrissieB Posts: 195

    Thank you, mjc! smiley

  • I'll be honest - the files you gave me had literally no weight maps on them. Makes me wonder why it did that...

    Well, since you did somehow solve your problem - I guess it is alright now?
    I'll experiment with that file though. I wonder if I can set it up at my end. Just out of pure curiosity.

  • CrissieBCrissieB Posts: 195
    edited November 2016

    Hi Thomas,

    This is the first time I've tried to share a DAZ scene and figure (as opposed to an obj) and those two DUF files weren't enough. You also need the DSON files. I'll PM you a Dropbox link so you can get those too.

    As best I can figure, you'll probably find there are two animations overlaid together: a 31-frame version for the WindowBlinds figure and a 25-frame version for the individual bones. (I have no idea why the 31-frame version or its keyframes exist, as I made only the 25-keyframe version.) Anyway, apparently the movements of the Footer, Slats, TwistRod, and PullCord bones got into the 31-keyframe version, but the movements of the InnerCords bone did not. (Again, I have no idea why.) Regardless, an ERC Freeze to create a controller for the WindowBlinds figure captures only the 31-frame version ... and that doesn't include the movements of the InnerCords bone.

    To get it exactly the way I wanted -- with the footer lifting the bottom slat, which lifts the one above, etc., so at Lower-Raise=50% the footer and bottom 12 slats would be stacked under Slat12, with the top 12 slats in their original positions -- I would need to clear the entire animation and redo it frame-by-frame, making sure all of the bones' movements are included.

    Again, I have no idea why I got two animations, or why the movements of the InnerCords bone are only in one animation. I redid the animation once (or I thought I did) and it came out wrong both times, for reasons I don't yet understand. So I don't want to try again and hope it comes out right the third time, at least not without knowing why it came out wrong the first two times.

    Thanks for your help,

    Crissie

    Post edited by CrissieB on
  • I'll work on your file when I get back from work.
    I'll notify you once I am done.

Sign In or Register to comment.