The future of Poser is the Fitting Room
But what I am ideally hoping for is JCMs that are spawned from simulations done automatically in the cloth room. Rotating jeans around a plumber's ass might require several JCMs (since morphs work linearly, unless deltas can be told to move around a certain axis in a certain curve?) but stuff like knees folding works a little more linearly and could provide the nice look of cloth folds, stuff that is a little harder to get accurate in zBrush.
I understand you mean something like:
simulate knee bend and get nice folds
calculate rigged bent knee shape
calculate deltas of JCM as difference between simulated shape and rigged bend.
Good idea. This could work for knees and elbows that have typically only one bending axis.
Luck for thighs, having one dominant rotation may be less but still convincing.
Results for shoulder joint having two equally important axises remain to be seen.
The issue with pant legs and sleeves is that the rotation point of the leg/sleeve surface at the knee/elbow varies with the bend of the thigh (and the spine).
Pant legs slide up the leg when the thigh bends, so which vertices are at the knee flexure point will depend on the amount of thigh bending and the fixation of the waistbelt on the hip.
You will therefore have to determine the JCM's using only one bend at the time to avoid this effect and ignore the slide-up from the thigh/shoulder bend.
I would expect several JCMs per axis when it comes to nightmare joints like the ones you mention, the thigh and shoulder. Also on the level of the figure, so much happens. Tendons and fat displacing along, diametrically, and perpendicular to the joint axis for example, the cloth needs to ahere to those morphs. So if they would ever design such a function, I would offer the user the ability to set certain angle points for Poser to go and make sims for (or just indicate what the JCMs in the figure are, and make it calculate sims for when those are loaded to 1). The thigh going from 0 to 90 is one thing, but from 90 to 135 is a very different thing (not to forget the side-bend). Currently the JCMs I have transfer pretty ok, but to have clothroom decide the shape of it instead of just dumbly transferring it would be better. The question is indeed will the non-linear behaviour of cloth transfer well to a JCM? I think it might. Vertices sliding up the leg should be ok, but if they need to slide over a curved surface, that might be tricky!
That would be a cool feature though, if bullet physics could be extended to even let clothsim results make impressions on the flesh of the host figure. But that would be for the future. For now I recommend they focus on refining the fitting room as much as possible.
Cloth on object collision? Ie: Two simulations run at the same time? Not sure if that is possible using the Cloth Room in a one-click step.
But, if you could run a combined simulation, with cloth and the draping figure reacting to it, then you could define a central point for "constricting" both the cloth being draped and the target object where the collision points would be.
What about just a shrink wrap feature? (which imo the cloth room should have anyway)? Right now all Cloth Room does is drape stuff, and flutter about. And if I want to make a skintight bra or panties, I need to grow the figure into them, up-side-down (otherwise they drop to the floor). So if there would be something that is alternative to drape, basically a wrap function for things like bras, panties, swimwear, skin-tight jeans, you just set your character temporarily to skinny, you wrap those jeans around that girl, and then do a soft-body sim growing your figure back into her jeans.
I would expect several JCMs per axis when it comes to nightmare joints like the ones you mention, the thigh and shoulder. Also on the level of the figure, so much happens. Tendons and fat displacing along, diametrically, and perpendicular to the joint axis for example, the cloth needs to ahere to those morphs.
Sounds like this will be very complicated and an illustration of the 80-20 Rule.
How about dual mode clothing that can be both dynamic and conforming/choreographed?: For the conforming/choreographed mode it has a (possibly simple generated) rigging that provides the speed and ease of matching for the scene setup. In dynamic mode the garment can be made to settle and drape for the position it is brought into. This will settle any poke-thru and cause the clothing to slide and wrinkle. The shape so defined would be the geometry definition in the choreographed mode.
It would need of course the simulator to have knowledge of unstrained facet edge lenghs and non-linear material properties will be needed to correct the over-strained state of the clothing.
Where and how to switch between dynamic and choreographed mode is up to the user depending on the situation and needs.
In fact it would be making the JCM's needed for the situation on the fly. .
Mesh should be structurally inact of course.
Before anyone begins piping about meshes being cut upon rigging and falling apart when used dynamically: Yes thank you; such herewith is already noted as a thing to solve.
@F_Verbaas Yes I like that idea. I've requested a few times to have a kind of frame-by-frame drape function for conforming clothes because I use Poser and its animation palette for comic stills and not animations.
Someone behind the scenes asked me recently: why not just use the cloth room instead of making such complex constructions to combine conforming and cloth tech to fit your clothing. The problem for me is quite simple: I hardly ever make animations in Poser (and nor do many other Poser users probably), because its very time-consuming. Simulations are mostly built for animations, and although it can be used to make pin-ups and single-image stills, its entirely impractical to use for comics... or at least the way I make them.
I make comics using mostly step-frames where each frame is a new snapshot in the comic. So there's absolutely no interpolation at all, the camera jumps around, showing a different scene at every frame, with different poses and expressions. Its much more efficient to do it like this because you can just set a movie render going and the next day you have another 20 images of your comic ready (some folks, bless their souls, make comics with every comic frame as an actual scene file... VERY inefficient). But having cloth sim involved in this becomes a problem because:
- you'll need at least 30 frames to jump from one frame to the next, otherwise the clothing will get ripped apart and look like they're sitting in a hurricane. My comics average about 200-400 frames. Imagine that times 30... :O 12,000 frames to scroll through becomes very unwieldy.
- because you need interpolation, you'll need to make sure the movements are sensible enough to result in clothing that looks relaxed
- Sometimes a pose might be off half-way down the comic and then you need to re-simulate 12000 frames for that one pose.
- if you have to update a character half way, the dynamics might work different and you'll have to re-simulate another 12000 frames
- If you have 12 characters you'll have to run 12 simulations over 12,000 frames, PER clothing item! That's 144,000 frames. That's 40 Hours if each frame takes a second to calculate... which is being very optimistic. Now imagine that each girl wears more than one item... O.o
- In short, simulations are a LOT of work and cost a lot of time I don't have.
So what now if Poser could be told to calculate, per frame, the drape, or wrapping, of some clothing item, with the rigging as a base-line, or perhaps starting from zero per frame (smartly this time, also including bodypart controllers!!!!). That becomes a morph for that frame, and stays there forever until you re-sim it. The morph calculated for the next frame would be independent of the morphs that were calculated from before that.
So yeah, I think something like drape-per-frame, or a dynamic-conforming system like you suggest might just make things much easier for a lot of Poser artists. You don't have to set things up 30 frames in advance, the cloth is already almost in position (of course if you want accurate sims then you calculate from zero or an A-pose) and comics can be kept simple frame-by-frame with dynamic morphs baked per frame, and if one needs re-simulating, it can be done without affecting the one from before.
Of course this doesn't take away the problem of things being rigged/JCMmed smartly to begin with. But if this was made more accessible and easier to handle, and we could clothify the rigged clothing on the spot, and not in context of a time-based animation, this could be a very interesting option!
One thing that could help with that is to allow the cloth simulation to simulate in-between consecutive frames. For example, if you have poses at frame 2 and 6, then don't simulate just 2, 3, 4, 5, 6 (5 frames), but simulate it at say x6 rate = 30 frames, but only keep every 6th simulation step to be in frames 2, 3,..., 6.
I once requested something similar for movies; that is, that you keyframe at say 6 fps, but then you generate the movie at 24 fps or 30 fps (that is, at x4 or x5 the frame rate), by interpolating in-between frames for movie rendering only, so that the timing remains the same, only at a higher frame rate.
@fbs7 That's how Poser's animation works anyway, mostly by interpolation. That's also why it takes so long, the computer is "filling in" The missing frames in an animation. The computer is "guessing" where the next movement will be in the next frame to make it end up in your final pose. It will usually take the most direct route to get there though, which is why you have to pose the model in certain frames to make the movement seem more natural. Or am I misunderstanding what you're talking about?
This dial does exactly what you are looking for:
The default is 2 steps per frame, so with 30 frames that is 2*30 = 60 steps.
You could also crank up the dial to 60 and have in frame 2 the same end result in as you had in frame 30. This would theoretically save some cpu capacity spent on 28 redraws but you would have no overview of the process. In any case the sim runs in one core only so there would be no gain in time.
Like @eclark1849 says, simulation steps can involve iterations, and that is why the progress may vary.
Hello Verbaas; thank you for the tip. I thought that steps per simulation didn't change the speed of the movement, but instead tried to find a solution to the cloth in 30 different steps.
Say I have a toon in z=0 in frame 1, and then in z=10 in frame 2; that will certainly make the cloth fly away, as the toon is moving with 10 units/frame, which is like super-speed.
Now instead put z=10 in frame 100; now the toon is moving at 0.10 units/frame, which is a much slower movement, and the cloth will behave much better.
I never really thought of having 100 simulation steps with z=10 in frame 2 (I played insted with that setting for simulations that failed, but they still failed, haha); you understand that the cloth will move nicely to frame=2, as if it was frame=100 instead?
Just to be sure (I probably didn't explain myself properly)
With z=10 in frame=2 and 100 steps/simulation, I thought the cloth would still fly away as the toon is moving at super-speed of 10 units/frame, so even if the cloth might look better for more simulation steps, it would still be flying up and away.
Sorry forgot to mention that you should then retime the sim also. If you fist used 30 frames per second the retimed equivalent would be 1 frame per second.
What matters is the time lapse per simulation step, which in either case is 1/60 second.
@fverbaas No need for apologies, my friend. I do appreciate your input on this; and it's been many years since I last played with that Steps control, so it was a good opportunity to check that it behaves as before.
I with it would work as erogenesis indicated, because I use 1 fps to storyboard my animation and camera angles; then after that is done I retime all to 4 fps (to setup walking and hand movements), and then I retime to 12 fps, which is my final frame rate.
But at 1 fps and 4 fps the cloth simulator is horrible as the clothes just fly around; it's pretty useless that that. So I end up with dynamic cloth adjustments at my last pass at 12 fps, when what I really wanted was to do that at 4 fps, as there are way less keyframes to handle by then.
Once again I appreciate your input.