• Hi Guest!

    We are extremely excited to announce the release of our first Beta1.1 and the first release of our Public AddonKit!
    To participate in the Beta, a subscription to the Entertainer or Creator Tier is required. For access to the Public AddonKit you must be a Creator tier member. Once subscribed, download instructions can be found here.

    Click here for information and guides regarding the VaM2 beta. Join our Discord server for more announcements and community discussion about VaM2.
  • Hi Guest!

    VaM2 Resource Categories have now been added to the Hub! For information on posting VaM2 resources and details about VaM2 related changes to our Community Forums, please see our official announcement here.
SexyFluids

Plugins + Scripts SexyFluids

Download [<1 MB]
This is just a small update to v11.f4, adding Fluid Load trigger, similar to the Fluid Burst trigger from the previous version. This table summarizes which one triggers on which events:

Fluid Burst triggerFluid Load trigger
Start Actionnew burst startsfluid sequence starts
Value Triggerwhile bursting, time remaining until the end of the burst, in seconds (capped at 1s)while bursting, the load left as a ratio (1 at start = full load, 0 at end = done)
End Actionburst ends, or the fluid emitter is stoppedfluid sequence ends, or the fluid emitter is stopped

The smaller orange slider shows the Burst Value trigger, the bottom larger slider shows the Fluid Value trigger.
Each trigger gets brighter on the corresponding Start Action, and darker when the End Action is run.

Few notes about how the triggers behave when not running the standard Fluid Sequence (via the basic "start" action):
  • start - the standard sequence: Behaves as shown above
  • startEndless - infinite sequence: Bursts behave normally, but the load remains at full forever until the fluids are stopped manually. Therefore the Load Value trigger will output constant 1.0
  • burst, with duration specified - single burst of given length: Burst triggers behave as expected, using the duration passed to the action instead of the one configured in the fluid. Load trigger will decay from 1.0 to 0.0 during the burst.
After a long hiatus from VAM, I finally put together a small-ish update.

Fluid Parameter Multipliers​

Added a bunch of new public storables for each emitter. These can be used to specify multiplication factor for various (but not all) parameters. Unlike the previously existing overrides:
  • These are applied immediately, not only to the next burst
  • The multipliers will not auto-reset to default values on the next start/burst
The following public storables have been added, defaulting to 1.0:
  • velocityMultiplier: Adjusts to velocity of newly emitted fluid particles
  • forceMultiplier: Adjusts forces applied on bursts
  • sprayRateMultiplier: Adjusts the emission rate of new spray particles
  • streamRateMultiplier: Adjusts the emission rate of new stream particles
  • spreadAngleMultiplier: Adjust the spread angle of spray and stream emitters
  • gravityMultiplier: Overall gravity multiplier, affects all existing fluid particles, not just newly emitted ones
  • simSpeedMultiplier: Overall simulation speed multiplier, also affecting all existing fluid particles
And one triggerable actions has been added:
  • resetMultipliers: Resets all multipliers from the list above back to 1.0
Again, these exist for each emitter, prefixed by the emitter's name, as usual.

WARNING: Two of the overrides that existed before got renamed, to make them clearly distinct from the multipliers:
  • speedMultiplier -> velocityFactorOverride
  • forceMultiplier -> forceFactorOverride
Water spray emitter with parameter multipliers controlled by three sliders.

(Please do not try to understand what's the emitter supposed to be, it's just a random testing scene 😇)

Burst Triggers​

Each emitter now has configurable set of burst triggers. These are called on each emitted burst, each trigger's configuration offering three tabs:
  • Start Actions: called when a new burst starts
  • Value Actions: called during each burst, with the value being the remaining duration of the burst, in seconds. For bursts that last longer than 1s, the value will be 1.0 for some time, until the remaining time drops below 1 second
  • End Actions: called when the burst ends
These triggers can be configured on new Behavior tab (at the main level, not to be confused with some fluid types having per-preset Behavior tab). The existing Threshold and Value triggers, still exclusive to the penis emitter, have been also moved to the Behavior tab. Same for the penetration info tab, that's now also under Behaviors. For the penis emitter, the "only if penetrating specified target" conditions remain and can be used also for the Burst Triggers - so you can have one set of burst triggers which are called while penetrating "anus of girl A" for example.

A slightly convoluted example - burst start triggers transition to night-time, burst end triggers transition to day-time. Of course in this specific example the same result could be achieved by attaching the triggers directly to the Start/Stop buttons. But I did not want to be responsible for someone's epilepsy by using fast transitions and having the emitter actually use short bursts...

Fixes​

  • Partially respect VAM's plugin enable/disable toggle. Disabling SexyFluids won't make them go away completely though. It will:
    • Stop emitting new fluid particles
    • Stop applying burst forces
    • Stop running triggers associated with fluids
  • Improved the penis emitter trigger conditions. Now when set to a valid target atom, with the orifice being set to None, it's interpreted as "these triggers are called only when not penetrating any orifice of the atom".

New Feature - Custom Emitters​

This brand new addition lets you create any number of additional emitters on a person atom. Each emitter is defined by a set of points directly attached to the skin. The emitters will correctly follow any motion or morph changes of the person atom, as well as soft-body physics applied to the body (if the Track GPU Physics option is enabled).

Each custom emitter comes with its own materials and set of presets, and can be triggered from outside in the usual name ; the name of the custom emitter is used as the trigger name prefix.

For more details, see the thorough documentation below. Meanwhile, enjoy the sexy Tifa by JackyCracky demonstrating this feature in the video below

In this video one custom emitter is used, based on the default Mouth shape. An arc emitter is used to spawn watery fluids around the mouth corners. Three different presets are used thorough this short scene, each with different particle rates, but otherwise very similar settings.

Other Changes​

  • Added EmitterList readable string param, with a semicolon-separated list of all emitters enabled in the plugin. Useful if other plugins want to interact with SexyFluids. For example, the SceneDirector will use this to automatically set up fluid component for each emitter.

UI Tweaks​

  • Updated to latest UI library from SceneDirector, with various tweaks and improvements.
  • The UI will remember the last selected tab for each tabbed section, instead of always switching back to the first tab when the relevant UI part is re-activated.
  • Fixed few misaligned layouts.
  • Material start/end values are better labeled.

Fixes​

  • Mixed Unity lights will now affect fluids.
  • Fixed various bugs triggered when changing the person's gender.
  • Fixed fluid stains sticking to hidden person mesh parts, such as the shell covering female genitals in many poses. Fluids should now land on and stick to the labia correctly.
  • Fluid material copy-paste pastes the name, consistently withe other preset copy-paste buttons.

Custom Emitter Documentation​

Being way more customizable than the built-in emitters, the custom emitters can be a bit more tricky to set up. Please make sure to read the documentation below first, and then ask in the discussion if there is still any confusion. But more importantly, feel free to experiment!

Short version:
  1. Add and Name a new custom emitter
  2. Choose one of the predefined shapes for it
  3. Switch it from the Point emitter type to Area or Arcif you want to emit fluids from the whole area.
    • In this case you will also want to jump to the emitter's fluid configuration tab, and the Area sub tab.
    • Enable the Randomize Each Particle toggle if you do not want the whole burst sequence to still emit from the same point.
    • Customize the area/arc as needed.
  4. Customize the fluid materials, velocity, emission rate and other options to achieve the effect you are after. The simulation speed and gravity tweaks on the Advanced tab might be also useful for custom fluids.
  5. You can always start by loading an existing cum, squirt or milk preset on a custom emitter, then tweaking it from there.

Add Shape​

By default a person atom has no custom emitters created for it. To add custom emitters, and to define their shape, use the new Custom tab. Click Add Emitter to add your first custom emitter.
doc01crop.jpg

doc02.jpg

New emitters will use the name "customN", and the default to the mouth shape.

I recommend renaming each emitter to something sensible as soon as possible. The name will be used for the new tab created for the emitter, with options very similar to the built-in emitters. It will also be used as the prefix of the triggers created for each custom emitter. Therefore I strongly recommend not renaming the emitter once you start using it in the scene, since that could easily break any triggers you might have set up for it ; be it components created automatically for them in the SceneDirector, custom triggers on a Timeline, or any other kind of triggers.

The plugin comes with many predefined shapes. It's best to start with one of them. Just click any of the buttons with the name of the shape to reconfigure the emitter to that shape. All options on this tab will be automatically configured for the selected shape, except for the Emitter Type.

Create or Edit Custom Shape
(this is advanced stuff and I recommend using one of the predefined shapes before you get more comfortable with all other options)

If you want to create a fully custom shape, either start with one of the preconfigured ones and Edit its Shape. Or Create a brand New shape. When Creating a new shape, click on the character's skin to add points forming the shape. The first point should be placed at the logical "top" of the shape, and the points should be added in a clockwise order. Counter-clockwise order is also fine, just enable the Flip Automatic Normal toggle for them. Press Escape to finish creating or editing a shape.

When Editing an existing shape, left-click on an already placed point to move it around. Left-click on a line connecting two points to add a new one. Ctrl-click on a point to delete it.

The fluids will need to know in which direction they should emit. The usual axes visual is show to help you setting up the emitter's orientation. For emitters that are roughly circular in their shape and do not collapse during the character's motion and morphs, setting up the Base Transform to automatic is usually good enough. The forward direction will be based on the shape itself, if it points in the opposite direction change the Flip Automatic Normal toggle. The up direction will point from the emitter's center to the first point.

Alternatively, the fluid transform can be based on one of the character's body parts. As an example, the preconfigured Mouth shape uses the head transform for its orientation. This is because when the mouth is closed, the emitter collapses to a line and the automatic directions become unreliable.

Emitter Type​

Initially, a custom emitter will default to the Point type. In this mode, the shape is used only to determine the mid-point, from which all fluids will emit. This is how all built-in emitters behave.
doc03.jpg


For custom emitters, you can also choose the Area or Arc emitter type, both of which will use the full emitter's shape for fluid emission. To customize from which part of the area the fluids will be emitted, switch over to the custom emitter's tab. You should be already familiar with most of the options here, they are pretty much the same as any other emitter. Custom emitters default to materials very similar to the Squirt water-like fluids, just a bit thicker (less translucent), and without the emitter orientation tweaks specific to the squirt source.

The new tab here is the Area tab, which will appear if the emitter's type is Area or Arc. The picture here shows the Arc sample, it will be very similar to Area, just with no options for the arc angle (Area is basically Arc with the Arc Length set to 360 degrees, and fully uniform distribution across the arc).

The areas shaded in blue will match the settings, so it's better to just play with them to see how they affect the shape, rather than trying to write a wall of text for every single one of them. Few important notes:
  • By default a custom emitter will randomize its origin position for the whole burst sequence. I.e. it will still emit from one single point, but the point will be placed randomly within the area. You can choose to randomize each fluid particle instead, as shown in the example picture. Or you can randomize each burst.
  • The Radial options define whether the shape covers the custom area from the middle to the edge (0 to 1), or a "donut"-like shape somewhere inbetween.
  • The Arc Angle defines the middle of the arc, the Length the width of the arc, both in degrees. Arc Angle of zero corresponds to the first point on the shape, which is why I recommend placing that one at the "logical top".
  • The Uniform/Normal sliders let you choose whether the random selection has the same chance to choose any point in the selected shape (if both sliders are fully left, i.e. Uniform distribution), or if the edges have lower chance than the middle. This will be shown by the transparency of the blue shape.
  • If you do not see the blue shape at all, there is a chance the whole emitter is flipped around. Go back to the Custom tab and try changing the Flip Automatic Normal toggle.
And that's really all there is to it. Since the shape selection is part of fluid preset, you can have many different areas utilized with one custom emitter, depending on which preset you choose the start. You will also most definitely want to tweak the fluids settings themselves. The default velocity will most likely make no sense for any kind of "dripping" fluids. The materials default to a water-like substance, you might want to emit something else of course, and you can. You can load any preset or materials set onto custom emitters, same as the built-in ones.

Changes Overview​

Major visual update, complete rewrite of most shaders:
  • New universal cumstain compute shader: generates much better stain geometry (no more overlapped capsule-like particles), on multiple person skins and world colliders
  • New fluid lighting model: no more fake lighting, uses VAM global diffuse and specular lighting as well as actual scene lights
  • New fluid surface and volume material model
  • New fluid post-processing shader: overall smoother and fluid-like look
Related changes:
  • Improved shape of generated cumstains, with more natural look and more tweakable settings
  • Material settings are configured separately from Spray/Stream/Cumstain settings and can be shared
  • UI overhaul, moved many parameters around
  • All presets recreated from scratch

Warning

New material settings are very different from previous versions. The new version of the plugin will load old presets and scene settings, and preserve some of them, but the visuals won't be the same or "correct". You will need to either tweak the materials, or if using relatively standard settings, load one of the remade presets and tweak that.

Please make sure to update all SexyFluids and DildoLanguage instances in the scene to the .f4 versions. Mixing .f2 and .f4 won't work too well.


Major bug fixes:
  • Fixed handling of builtin VAM glow effect ; it will no longer add blurred version of all fluids, visible through any geometry
  • Fixed VR visuals, v8 version of the fake lighting had very different looks in left/right eyes
This video show the new look. Many overlapping cumstains no longer appear as many individual lines, but smoothly blend together. All with correct lighting.

New lighting and material system​

The new shaders will apply the scene's lighting correctly instead of mostly faking it:
  • VAM's global lighting is fully supported:
    • All intensity and exposure sliders affect the lighting
    • Direction of specular reflection is correct, taking the cubemap's orientation into account, and their sharpness is affected by the material's shininess
    • Global diffuse lighting (spherical harmonics magics) now works as well
  • Scene's point, spot and directional lights are supported:
    • Up to 8 lights from the scene will be used to apply specular, diffuse and volume lighting to the fluids
    • If the scene has more lights, the most influential ones are chosen based on their on/off state, intensity, color and range
    • Since all fluids are drawn in one pass, from all sources in the scene, this selection is universal for all fluids. So if you have many small lights in the scene, this might not work so great for you. If heavily requested, manual light selection might be added in the future for such scenes.
The material model has been re-done from scratch as well. It combines surface diffuse lighting, surface specular reflections, refracted transmission through the fluid's volume and light scattering. It's designed to be fast to render and tweakable, but it's not really physically-based, many aspects are efficient approximations of what's actually happening.

Material definitions are now separated from Spray/Stream/Cumstain settings. The UI was getting way too messy, and the separation allows the same materials to be re-used from different fluid components. Materials can now be copy-pasted - between material slots, between different fluid presets, or even between different fluids). It's also possible to load materials from a saved preset, while keeping all other fluid settings unchanged.

Surface Lighting​

The good old Color and Specular Strength values still exist, but now affect purely the surface of the fluid. The color affects the diffuse lighting at the surface, and will be less influential if the fluid is more opaque. Even very thin and transmissive surfaces will have full specular reflections at the surface, material thickness will no longer scale the specularity ; but it's still affected by Fresnel.

The Reflectiveness slider is basically the Specular Strength, but applied only to the VAM's global lighting. While Specular Strength is used for point, spot and directional lights. Realistically, they should both be the same, but it might make sense to use different values to achieve more interesting looks in your scene.

Light Transmission and Material Thickness​

In the previous versions, the Thickness slider was just a glorified alpha value. Now it's the most important value that influences many visual properties of the material. It's closer to the old version's Transmission slider, which is now gone, with the opposite meaning - less thick materials are more transmissive. The main difference is that while Transmission was a simple material property, the Thickness used for final shading scales with the fluid's volume correctly. So it's not just the slider that affects how transmissive a fluid will be, but also the volume of the fluid at each given shaded pixel (this is affected by the fluid particle Size, as well as simply the amount of fluid at given point).

In general, use Thickness values around 1 or a bit below for water-like materials. Thicker fluids usually look the best with Thickness around 30 to 70. With Thickness 200 and above, fluids will start looking opaque and solid (depending on the particle amount and size, i.e. the actual fluid volume, of course).

The resulting Thickness controls how the volume lighting is computed:
  • New Subsurface Color property is used to define the tint of the light transmitted through the fluid
  • More transmissive materials will transmit more color from the background scene through the fluid. The transmission is refracted, with color absorption controlled by the material's Thickness and Subsurface Color.
  • Subsurface light scattering is also simulated. A light source does not affect just lighting at the surface, but it can also shine through the fluid's volume, with color absorption controlled by the thickness and subsurface color, just light color transmission does. The Scattering slider controls this behavior. Larger scattering values will generally scatter the light towards the camera more evenly regardless of the lighting angle, while lower values will mostly let the light shine directly through the volume. The effect is just an approximation and quite subtle. It's mostly visible on medium-thickness fluids, which are not obstructed by any surface right behind them ; so you will not really notice it on cumstains, the slime preset shows this the most.
  • Fresnel still controls the ratio between transmissions and specular reflections. At higher Fresnel values, more light will be reflected than transmitted at glancing angles, and more will be transmitted when viewing the fluid straight on. At lower Fresnel values, the difference won't be so large.
In this video, the only lights are placed in front of the camera, pointing towards the camera. So the fluid is lit only from behind. It shows the difference in scattered lighting between a water-like fluid with low Thickness, and a thicker fluid with brown-ish subsurface color.

Other Material Properties​

The remaining properties behave mostly the same way as before, with some smaller tweaks and additions:
  • Refraction is now also affected by the fluid's volume (thickness)
  • Shininess also affects how blurry the VAM's global lighting specular reflections will be. Just like the native VAM solid material shaders do
  • Alpha is a new property which does what it says. It controls the blend of the fluid material with the background scene. Usually best left at 1. It might make visually sense to reduce it for Spray end-material.

Referencing Materials from Fluids​

Up to six materials can be defined per preset, so you can have different starting and ending material for each of Spray, Stream and Cumstain, if needed. But usually 2-4 materials are enough. The materials are referenced from Spray, Stream and Cumstain, on their first tab, which includes:
  • The two materials to use
  • Starting and Ending material mix factor.
The left factor defines which material mix should be used at the time the fluid is emitted, and the right value defines the mix to use just before the fluid expires and disappears. Value 0 means to use the first material, value 1 will use the second material. Values inbetween will use the corresponding mix of the two materials.

The basic setup is to have the Starting Factor at 0, and the Ending Factor at 1, blending from the first material to the second material during the fluid's lifetime. This is usually used for the Stain fluid component. For Spray/Stream, the same materials can be sometimes reused, with different starting and ending mix factors. In other presets, Spray/Stream use their own two materials, but Spray uses different mixes ; usually more towards the end material, which tends to be more faded out.

New Stain Properties​

These are all available on tab Stain 2 in the updated UI.

Stain Shape​

Generated cumstains have more natural look, tweakable by these new properties:
  • The lower end of each cumstain can have nice droplet-like enlarged shape. Controlled by the Enlarge Bottom on Slope slider.
  • Instead of having very smooth tube-like shape, each cumstain can have randomized shape/size. This is controlled by two new Segment Size Random sliders: the Strength slider controls how much the sizes of individual segments can be randomized, the Frequency slider controls how "noisy" the effect is (lower values will be smoother, large values will lead to segments right next to each other having completely different sizes)
  • The overall length-wise narrowing has now more pleasing shape, still controlled by the Narrow Stain End To slider.
The new cumstain geometry generator produces much smoother shapes, no longer consisting of overlapped capsules. However, for some stains, such as those from water, a bit more chaotic overlap might look better. For those cases (water, squirt, etc), enable the Draw as Overlapped Capsules toggle. It will still use the new unified shader, but stains will be generated as short overlapping segments instead of long smooth lines, with visuals being closer to the old version. This applies only to newly generated stains.

cumstainComputeShader.jpg

Comparison of old stain geometry consisting of overlapping capsules, with new geometry generator

cumstainShape.jpg

New improved cumstain shape. Combination of drip-shape at the bottom, randomized segment sizes, overall better geometry and greatly improved post-processing, blending overlapping stains together in a more natural way

Stretching​

A cumstain segment can be attached between two different body parts ; this could happen in previous versions too. New in this version is visual handling of such segments if they get stretched by the character's movements. The stain will narrow and fade as it gets stretched, and when it reaches the length configured by the Segment Length (max stretch) slider, the stain will completely disappear. It won't reappear even when the corresponding body parts get closer together afterwards.

The new generator handles all atoms covered by stains at the same time. Not only does it unify some of the code at technical level, but it also allows one stain to stretch between two different atoms. So you can have a cumstain joining butt and chair, or mouth and penis tip, if the cumstain manages to land and connect in such a way.

This video shows cumstains joining different body parts, moving and stretching as the hand moves.

UI changes and other new features​

This sections lists other features and changes to the Fluid UI:
  • As the Load gets lower when consumed by the Bursts, some properties can be proportianlly reduced:
    • Burst Length - on the Orgasm tab (fluid bursts will be shorter near the end of the burst sequence)
    • Burst Emission Velocity - on the Velocity tab (fluid will be emitted at lower velocity near the end of the burst sequence)
    • Drip Emission Rate - on the Drip tab (drip emission slows down as the load decreases)
  • Spray, Stream and Drip emission rates are now defined separately, instead of one common rate and ratio sliders.
  • The Orgasm/Squirt/Milk tab now defines only the Burst duration parameters. Velocity and Particle Rate have been moved to their own tabs.
  • New Emitter tab combines the emitter angles, offsets and rotations on one tab. Previously scattered in more places.
  • The Forces tab should be organized in a more readable way.
  • Spray, Stream and Cumstain tabs have been separated into pairs. Tab 1 defines the lifetime, material, size and height (for stains). Tab 2 defines the shape.
Implemented a workaround for Eosin's VRRenderer sometimes disabling depth-buffer capture on its camera for whatever reason. This resulted in the fluids being visible through other objects in the Renderer's output.
Quick hotfix. I forgot to initialize the trigger helper, so it was not possible to add actions to penetration triggers.

Also fixed potential exception thrown from penetration monitor on scene unload, which (when it randomly happened) required VAM hard reset to be able to load another scene.

Changes Overview​

  • Implemented penetration monitoring for penis, similar to DildoLanguage v12.f2.
  • Exposed penetration state through storables and triggers.
  • Basic behavior based on penetration - do not emit cum fluids while the penis is penetrating.
  • Changed all emitters (penis, squirt, nipples) to be positioned relatively to the person's visual skin, instead of using rigidbodies or colliders. You might have to tweak positions of your colliders, especially nipples, where the base position is now much more precise.
  • Emitted fluid particles can now have all collisions turned off until they travel certain distance away from the emitter. No more pesky collision with protruding nipple colliders. Squirt no longer has to emit from outside the vagina to prevent collisions.
  • Updated all presets accordingly.
  • Rendering of gizmos and debugging features has been rewritten to be more efficient, and use more consistent line-based visuals.

Skin Tracking​

Internally, the largest change is the ability of the plugin to track exact positions of the character's visual geometry on the CPU. This includes poses and morphs (but not softbody physics).
This tech is used to:
  • Track the visual shape of the penis, compute its intersection with vagina/anus/mouth orifices (aka penetration monitoring).
  • Track preconfigured parts of the skin and position the fluid emitters relatively to them, no longer relying on rigidbodies or colliders.

Penetration Monitor
penetration.png

If you also use DildoLanguage, you might be already familiar with this feature, it's been added to DL in update v12. The plugin tracks the visual shape and position of the penis and computes its penetration with all person atom orifices ; the targets do not need to have SexyFluids enabled on them. The penetration parameters are exposed to scene creators as Storables and also as Triggers. You can check them on the new Penetration tab. The Info tab shows the names of the exported storables, as well as their current values:
  • OrificeId: 0 = none, 1 = anus, 2 = vagina, 3 = mouth
  • Depth is in centimeters
  • Girth is also in centimeters. If the value looks too large, that's because it's the girth circumference, not radius or diameter.
  • Speed in in centimeters per second.
  • So is the Strength, although it's better to think of it as a unitless value. It's derived from weighted running average of recent positive (push) speeds. It does not take the girth into account.
  • For penis tracking, there is no difference between atom/orifice and target atom/orifice, that's used by DildoLanguage where a dildo can have manual orifice target selected and be attracted to it. There are already enough addons that implement such feature for penis, so I decided to not include the DildoLanguage's manual target and smart forces here.
For information about setting up the triggers, please refer to DildoLanguage v12.f2 update notes .

On the Debug tab, you can enable the visualization of the penetration or the orifices. The image on the right shows the penis shape visualization in green/blue, and the penetration girth visualization in white.

Internally, the penetration monitoring it not used for any big features yet. The Penis has a new Behavior tab, where you can configure it to not emit cum particles while penetrating. It usually does not look good, with the fluid particles just randomly finding their way through the penetrated atom's colliders. By default it's set to disable cum fluids when the penetration is 1cm or more. Set it to 0 to disable this feature.
behavior.png

But for now the monitoring is mostly aimed at scene creators. Use the values to drive morphs, expressions, sounds or anything else you want. The DildoLanguage v12 update has a video attached, showing a light driven by penetration depth value, and squirt triggered at certain depths.

Skin-based Emitters
skinshapeemitter.png

All fluid emitters are now attached to the person's skin, rather than their rigidbodies or colliders. This makes their position much more precise, also they should stick to the skin, update with morphs, and not lag behind the person visual geometry's motion. While on the Burst Shape tab, the yellow outline shows the body polygons tracked to place the emitter.

For example, the nipple emitters should now be always positioned correctly, no matter what morphs are used. Even on males ; or more importantly, legacy futas. Those have no nipple colliders, so the position was rather approximate before and needed manual tuning matching the used morphs.

This means the emitter positions are slightly different from the previous version. So if updating an existing scene, you might have to tweak the offsets or rotations in Burst Shape. There is a chance you had to fiddle with those to position the emitter where you wanted it to be, now it should not be as necessary.

A feature closely related to this is the Do not Collide Near Emitter advanced option. Because the emitters now stick to the skin, they might be obscured by VAM's colliders. This option runs initial few ticks of the simulation with collisions turned off, otherwise the fluids particles would collide immediately. In general, you should not have to pay attention to this, it's configured for all existing emitters in a way that should make sense.

1747955743367.png
The overview post has been updated to match features of v5.f2. Many tweaks all over the place, the more significant changes are:
  • Added description of Burst Values Curves to the "how does it all work" part
  • Separated Forces Settings from the Orgasm Settings, just like in the UI. And updated the information with the new forces features
Added slider to various forces that changes the behavior from applying the value as a force to directly rotating the emitter instead.

For example, for the penis orgasm and the Left-Right force, if set the Use Side Force to Rotate Emitter slider all the way to 1.0, instead of applying a sideways force to the penis' tip, the cum will just shoot sideways. Values between 0 and 1 will combine forces and emitter rotation at given ratio.

This can be useful if you want to randomize the "shooting direction". When using only forces, the first few particles will always shoot directly forwards since it takes a while for the force to actually move the tip.

As usual, updated all defaults and presets to use this effect to some degree, and to overall improve their look.

Here is a video demonstrating the forces settings, using AltFuta penis and the sideways forces as an example. But it also works in a similar fashion for the tip (upwards) forces, for both nipple forces, and for squirt pelvis force. Squirt sideways "force" always rotates the emitter directly. And the orgasm pelvis force is always used as a force.

Nasty hack to hopefully fix remaining Eosin's VRRenderer's issues:​

  • Because the VRRenderer plugin breaks fluid renderer's command buffers on its cameras every frame, the fluids plugin will now verify that its command buffers are activated where they should be, and go around and fix things if they are not.
  • Hopefully this will always run after VRRenderer breaks stuff and before the camera is actually rendered.
  • The Use Command Buffer Effects toggle is no longer necessary, since fluids will reinstall their buffers if they get deleted anyway. But it won't hurt to have it enabled - my plugin will also remove fluid command buffers installed by VRRenderer where they should not be.
  • Did I mention I dislike how it mucks with command buffers on cameras? I probably did too many times already.
Or short version:
  • Correct fluid command buffers will run on VRRenderer cameras after this fix. Instead of none at all or the main camera's buffers.
I am not too happy with this workaround. But other than modifying the VRRenderer directly I see no other options. Hopefully this hacky fix won't break something else.

Other fixes:​

  • Fixed squirt UI for AltFuta person atoms
  • Fixed SexyFluids UI not refreshing correctly when switching person atom types with the plugin already installed.
Back
Top Bottom