Home Artists Posts Import Register
Join the new SimpleX Chat Group!

Content

Hello, time for some new features! 

The major changes for 5.1 are nearly finished, and there's other smaller changes to be done. However, 5.1 will start early access in the latter half of next month (September), so it'll be in alpha for quite some time.

Positional hard collider friction

This feature makes hard colliders less sticky when you push or slide another object along the breast. Each hard collider's friction is adjusted dynamically based on distance from its normal position inside the breast. This prevents objects from getting stuck to colliders that have slid outside of the breast volume due to friction.

The individual friction values aren't shown anywhere, nor are they directly adjustable, it all happens automatically in the background.

A bit more technical info for those interested:

At the end of calibration, the plugin decides that the current position of each collider (relative to breast volume center) is where it's supposed to be, and in that position, the collider has the maximum amount of friction. Each collider can be displaced up to half of the radius of the smallest collider before friction drops to 0. (This means that even if colliders are very different in size, even the bigger ones will stay more or less inside the breast.)
You can see this effect of friction decreasing with distance when visualizing colliders in the Configure Hard Colliders view and sliding e.g. a small capsule atom sideways along the skin.
The large Pectoral1 collider in the center is a special case with lower friction than others.

Skin materials adaptive friction

The plugin adds the above content to the Skin Materials 2 tab. The feature is off by default since you'll usually want to tweak the skin materials settings to make sense for your model's skin first and then enable the adaptive adjustment. For many skins in the Select Skin tab, and for many community skin presets, the default settings aren't necessarily well optimized. E.g. you'll want Gloss Texture Offset to not be so low that it prevents high Gloss values from actually looking glossy.

Use the Dry Skin Friction slider to determine a baseline friction for the skin - how smooth, clean or young the model's skin is. Also, light sweat on the skin is sticky but doesn't look shiny, so you could increase dry skin friction to achieve that effect.

To keep the UI simple, the shown Collider Friction value is just the soft collider friction, i.e. the friction of individual small colliders right at the skin surface. Hard collider friction is a bit lower by default, but also adjusts dynamically (as explained in the above section). Hard colliders also always have at least a small amount of static friction which helps a bit with e.g. pushing very slippery breasts up and keeping them up.

Increasing Gloss reduces friction along a curve. I've tried to calibrate the curve so that the friction matches what you'd expect from the skin visually:

  • Low-mid gloss values will have fairly high friction because at those values, the skin is just different "shades of dry".
  • At the high end there's a small range where friction is consistently very low because the skin is very shiny. Basically I'm assuming there's a coating of oil that isn't getting significantly more slippery with increased thickness.

When Specular Bumpiness is low, friction is also very low - this simulates oiled skin. Usually this is what you want for realism. However you can also increase specular bumpiness to make the layer of skin gloss look granular and "goopy", and friction will increase accordingly.

You can tweak the final visual result independently of the friction value by adjusting the Gloss Texture Offset slider as well as the Specular sliders.

The adaptive friction toggle as well as the dry skin friction value are triggerable and save with the preset/scene.

Finally, fat collider radius increases when friction drops. Low soft collider friction makes it easier for objects to slip through the colliders, this compensates for that. The effect is tiny for small breasts, more significant for large breasts.

Other

  • Small adjustments to hard collider positions, sizes and collision forces to prevent the breast center gap area from causing bounces too easily.
  • Fat collider size increased a bit for large breasts to prevent objects sliding through (though they might still do that pretty easily when friction is low)
  • A bit more fat back force for soft breasts.
  • Instances of TittyMagic v5.1.x now connect to each other and calibrate in sequence, correctly unchecking the Freeze Motion/Sound checkbox when all instances are done calibrating. This allows you to load and autoplay animation in a scene where multiple person atoms have the plugin without having to uncheck the freeze.

-----

I'm looking for feedback on whether you find the friction to work in an intuitive way when adjusting the skin materials sliders, and if it's easy enough to understand what the plugin does. I realize that explaining it took quite a few paragraphs, but at the same time, I'm not really sure how to make it any simpler. Looking forward to hearing your thoughts!

Speaking of explaining stuff, I'm considering doing a Guide post on the Hub for getting the most out of the plugin. It would be easier to explain things in detail there than try to condense everything to the resource's main post on the Hub. If you have ideas on what kind of issues you'd like explained in the guide, or questions you would like answered, let me know. 💙

-everlaster

Comments

Silean Twelve

hey everlaster! I love your plugin its a MUST plugin for almost every scene Im doing! Im a dude who doesnt bother with colliders/ the advanced stuff since I dont know where to start so i just using default titty magic. LOVE YOUR STUFF

babul

Out of curiosity, what physics rate/update cap is intended with this? I realized I've been using cap of 1 which is bad for realism. When switching cap to 2 and rate to 72Hz (auto), I noticed it's kind of better. In 28 FPS fast chest movement and cap of 1 I got kind of ridiculous wobbling, but at cap 2 it was much less pronounced. Also cap 2 at 60Hz had less pronounced movement than the same cap at 90Hz.. I guess I'll stick to auto refresh with cap of 2.. I assume you're testing it where your fps is at/higher than physics rate, so physics are behaving as they should?

everlaster

Just use cap 3. The cap only says how many physics updates it's possible for VAM to do per frame, which means if your framerate is lower than (physics rate)/(update cap), physics will slow down. With update cap 1, literally any framerate drop below the number that is your physics rate will make physics slow down. 30 fps with 60hz physics and update cap 1 means physics runs at 50% speed because every other physics update is skipped. Setting the update cap to 3 just ensures that you will never get any physics slow down at any reasonable framerate - you can also use 2 and usually there's no difference, but might as well use 3 since you don't really want physics to slow down randomly. As for physics rate, check the section about it on the plugin's hub page: https://hub.virtamate.com/resources/tittymagic.4067/ Physics rate should be a value that you can lock your fps to (or a multiple of that value e.g. 60 hz at 120 fps or the other way around), this synchronizes physics with frame updates perfectly and produces the smoothest looking motion. This is especially important for the dynamic breast morphing that TittyMagic does. For PC monitors, a suitable value is usually 60 Hz - you can lock the game to 60 fps using MacGruber FrameRateControl. You can try 90 Hz @ 90 fps too - TittyMagic works pretty well with any physics rate of at least 60 as long as you can match the framerate. For VR headsets, it depends on the headset. E.g. Valve Index - go for 60 Hz @ 60fps. But e.g. Vive uses 45Hz or 90Hz refresh rate, which means it will sync in-game fps to 45 fps or 90 fps, and then that's the physics rate you'd want. But 45 Hz physics looks bad, and 90 Hz physics is expensive for the CPU and it becomes hard to maintain 90 fps in VR. Hope that helps :)