XaiJu
MacGruber_Laboratory

MacGruber_Laboratory

patreon


MacGruber_Laboratory posts

Life 9

Life is a collection of plugins intended to essentially awake a character, let him/her come to life. Central part so far is the audio-synchronized breathing, which can be used to drive complex animations. 

Another tiny maintenance update, sorry about that. However, when our Supreme Lord (MeshedVR) reports an issue, you fix it...especially, if that version is supposed to be shipped with the next VaM version :P

Changelog

  • Fixed silent exception / log spam issue with DriverThrustSFX when not all SFX audio sources are connected. Thx @ Meshed for reporting. 

Download

  • MacGruber.Life.9.var (via Hub) 
  • Download under CC BY-SA license. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Credits

  • Contains audio by VoiceLikeCandy, Bluzz44 and FreeSFX.co.uk, as well as some audio extracted from VaM. Contains morphs by DDQuidam and TimelordToby. Full credits see MacGruber_Life_Credits.txt inside VAR.


View Post

Life 8

Life is a collection of plugins intended to essentially awake a character, let him/her come to life. Central part so far is the audio-synchronized breathing, which can be used to drive complex animations. 

This is just a tiny maintenance update:

  • Making sure breathing morphs are reset to default when disabling/removing the plugin. This is to avoid unnecessary dependencies to my Life VAR. Since Life is now used in the new VaM 1.20 default scene, this becomes more relevant, a lot of people might use that scene as a basis for whatever they are doing.
  • Fixing (invisible) error when "OnChooseBreath" broadcast message has no external plugin listening for it. (This broadcast is sent to all other plugins on the same Person atom every time just before Life needs to decide for a new audio file to play. So its the perfect time for example for a third-party scene controller plugin to tweak Life settings like Intensity.)

Download

  • MacGruber.Life.8.var (via MEGA)
  • Download under CC BY-SA license. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Credits

  • Contains audio by VoiceLikeCandy, Bluzz44 and FreeSFX.co.uk, as well as some audio extracted from VaM. Contains morphs by DDQuidam and TimelordToby. Full credits see MacGruber_Life_Credits.txt inside VAR.

View Post

Essentials v5 - SuperShot/SuperVideo

These are your most essential MacGruber tools in a convenient single VAR package. Version 5 fixes PostMagic support and has some smaller new features for SuperShot and SuperVideo. Check the version 4 post for more details on what this plugin package is good for.

Changelog for Version 5

  • SuperShot: Fixing compatibility with PostMagic. Note that screenspace post-effects can behave differently when applied at higher resolution.
  • SuperShot: Clear selection while taking screenshot to avoid UI elements in the camera image.
  • SuperShot: Screenshots can be triggered by VaM action. You can hook SuperShot to your custom buttons or third-party scripts. 
  • SuperShot: Take screenshots from the perspective of the WindowCamera atom. Technically you can build your "physical camera" for VR now!
  • SuperShot: New custom camera feature! Take multiple screenshots from different perspectives at once. This could for example be useful for taking screenshots of different clothing variations from multiple perspectives or maybe like making graphic novels with VaM. To use this add one or more 'Empty' atoms into your scene and rename them to 'SuperShot#X', 'SuperShot#Y', and so on. These are used as camera positions, 'X' and 'Y' can be anything and will appear in the filename later. Atoms can be turned on/off to enabled/disable positions. You can use the WindowCamera preview for easier positioning. SuperShot uses the FoV of the WindowCamera for these custom screenshots. See this video for a quick tutorial: https://www.youtube.com/watch?v=sM8YzZXgVlk
  • SuperShot: Fixed memory leak when not using super-sampling. 
  • SuperVideo:  Fixing compatibility with PostMagic. Note that screenspace post-effects can behave differently when applied at higher resolution.
  • SuperVideo: Removed additional Blit step for better performance.

Download

  • https://www.patreon.com/posts/essentials-v5-40278678
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after August 30, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Essentials v4 - SuperShot/SuperVideo

These are your most essential MacGruber tools in a convenient single VAR package. Version 4 introduces two new plugins, SuperShot and SuperVideo, which replace the old SuperResolution plugin and bring a huge amount of improvements over the old plugin.

Overview

  • SkyMagic: Allows you to create cubemaps within VaM to be used for customized global illumination and ReflectionProbes. This can immensely improve shiny materials like metal, latex, leather, etc.
  • SuperShot + SuperVideo: Take ultra-high resolution screenshots or use super-sampling to for your screenshots or recorded video. This improves image quality a LOT, especially shadows and hair, but also textures.  Make sure to look at the above comparison image in native resolution, not the thumbnail. Pixel size has been increased by 200% to make the improvement more obvious. SuperShot (formerly SuperResolution) is the de facto standard for VaM screenshots.
  • FrameRateControl: This plugin allows more fine control over VaM's VSync settings and framerate. Especially recommended when recording video or you want to reduce power usage or fan noise when working with VaM.
  • AudioAttenuation: Improves how audio volume fades over distance. It should be a lot easier to get the volume right with this.
  • EditMode: Let VaM automatically switch to 'Edit Mode' on scene load. Just put this on your default scene. When in 'Desktop Mode', it also opens the MainMenu and enables 'Targets' (the green atom icons).
  • MSAAToggle: Hotkeys to toggle VaM's MSAA settings, this helps with Reshade issues.

Changelog for Version 4

  • Two new plugins, SuperShot and SuperVideo, replace the old SuperResolution plugin. The plugin has essentially been rewritten from ground up. SuperShot is intended for screenshots. SuperVideo modifies the WindowCamera, intended for video recording by external software like OBS.
  • SuperShot: Choose among common aspect ratios: 16:9, 16:10, 21:9, 4:3 and 1:1. Each ratio comes with a list of common resolutions. Of course you can now also take portrait screenshots in inverted ratios such as 9:16.
  • SuperShot: Instead of just outputting in ultra-high resolution, the plugin can now also super-sample the screenshot for you. Quality-wise this is almost identical with downscaling in GIMP, although its done on the GPU. With the old plugin the bottleneck was always saving the large image as JPG on disk, which took a second or so while freezing VaM. If you only need the normal sized shot, this is now MUCH MUCH faster! For supersampling you have the choice between Linear (Blurring) and Lanczos3 (Sharpening) and resolution multipliers 2x, 3x and 4x. Internal texture size is limited to 8192x8192.
  • SuperShot: You have the choice now between saving as PNG (Quality) and JPG (Filesize).
  • SuperShot: The build-in VaM screenshot tool has been modified with a much larger preview (freely scalable now) as well as support for the different aspect ratio. As an alternative, while in Desktop mode, you can also take screenshots directly from the player perspective.
  • SuperShot: Some people mentioned that they had trouble holding their head exactly straight when taking shots in VR. This why you can now "Lock Z Rotation" to make your screenshots exactly level.
  • SuperShot: Should someone be annoyed by the flashlight, you can turn it off now.
  • SuperShot: Since it might not be that clear for some how much graphics memory is needed, there is now an memory estimation. In the worst cases with everything cranked up, SuperShot can (momentary) need up to 3-6 GB (!!) of graphics memory, excluding VaM itself and your scene. If you get incomplete/black pictures you did probably run out of memory. Please don't complain if this doesn't work on your 2 GB laptop card...
  • SuperVideo: Super-samples the WindowCamera with the same options as SuperShot. The output resolution and aspect ratio is always defined by your VaM window. Note that you need a massive rig to record 1920x1080 video with 8xMSAA and 4xSS at a stable 30fps frame rate, my RTX2070 won't do that. However, you can try 2x or 3xSS or lower MSAA.
  • SuperVideo: The plugin is intended to be used with the FrameRateControl (also in this package) to sync your framerate with the OBS capture rate. For example record 2x super-sampled FullHD at 30Hz using VSync-Half. (Note that this doesn't work in VR.)
  • SuperVideo: Preview image matches the aspect ratio of your VaM window now. By default the preview is always attached right of the WindowCamera atom, you can now center it or shift it to the left, which can be helpful when filming in VR. Preview can also be scaled.

Known issues

  • For some reason SuperShot and SuperVideo are not applying effects from PostMagic.

Download

  • https://www.patreon.com/posts/essentials-v4-40278678
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after August 30, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Essentials v5 - SuperShot/SuperVideo - Download

This is an EarlyAccess release! Download will be available for free under CC BY-SA license after August 30, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Unchanged from Essentials.3:

View Post

Monthly Report: July

Time for another monthly report! This time there is also a poll at the end, I would appreciate if you could take the time to answer it! 

I'm posting a report like this near the end of each month, reporting on what I worked on behind the scenes and what the vague plans for the next month are. It is intended to help you decide if you want buy-in on the coming month or not.

IdlePoser

This month I released another IdlePoser update, focusing on debug rendering and UI, trying to make it easier to use. This was in response to feedback that the plugin was too complicated to understand. Well, making something complex easy to use is very hard.

Anyway behind the scenes I also worked on some other planned features, which did not yet result in anything releasable, yet:

  • Arc-Length-Parameterization: This is a feature intended to improve animation quality as it normalizes the velocity while blending between poses. On top of the normalized velocity I can then add a proper SmoothStep for ease in/out. However, after basically finishing the implementation and already working on my demo scene, I realized that this makes only sense for either positional or rotational changes. You can only use one or the other for normalizing velocity, not both. If the wrong method is chosen, it can actually make animation a lot worse. Technically one would have to configure which method to chose for every transition for every controller. That's exactly the kind of combinatoric explosion I'm trying to avoid with IdlePoser. Not sure how to solve this yet.
  • Vertex Anchoring system: Also did some research on the planned  vertex anchoring. The idea here is that instead of picking a bone node to anchor against, you could pick an actual vertex. In theory this could allow to anchor with a lot more precision, since it could be directly where for example a hand touches the body, not several centimeters away. Also it would respect morphs, meaning it could adjust to different Looks more easily, say small vs. large breast. By now I managed to access the morphed mesh in T-Pose before skinning, meaning the positions of the control nodes have not yet been applied. So I have to figure out how to clone the exact way of VaM doing skinning on the GPU on my own while doing it for a single vertex on the CPU. Not impossible, just takes time.

Since I have been working on IdlePoser for more or less 3 months straight, I'm gonna switch to other things for a while. No worries, I will come back to IdlePoser eventually.

SuperResolution for Video?

In the last few days I have been working on some ideas for improving my SuperResolution plugin (which is part of the Essentials package). The idea is to implement GPU image downscaling already in VaM, which has two benefits:

  • Saving a screenshot would be way faster. Taking the screenshot itself doesn't take long, only saving the file takes ages, so no more 1-2 second freezes when taking screenshots. (If you actually want those 8K images and downscale yourself, you will still have the option, of course.)
  • Once we have GPU downscaling, I could also hook SuperResolution to other cameras in the game. E.g. the WindowCamera or the regular desktop player camera. Meaning your video recordings can benefit from better AA as well as better hair and shadow quality you get from using SuperResolution. If you have the GPU power, in theory you could also just activate it for general desktop mode. (In VR you already got the RenderScale slider)

Right now I have a simple linear downscale already implemented. However, that's of course not optimal quality, as it makes the image slightly blurry. Ideally I should probably implement Lanczos resampling, which is what most software uses these days. However, all the explanations and shader implementations I found so far are only for upscaling, which is easier, but we need downscaling. 

Here is a comparison of the methods at 200% zoom. Image is also attached to the post as download, so you can look at it without Patreon messing with it. First image is native VaM, middle image where I'm at right now, last image is where I'm trying to get to. Look at hair vs. background and at the eyes.


Poll: Are these MonthlyReports interesting?

Anyone actually reading my walls of text? I'm trying to figure out if it actually makes sense writing these or should I rather spend time of making useful stuff? I have some 400+ followers right now, so if only 5 people are actually interested in reading this, it's probably not worth spending time on ;)

View Post

Life - IdlePoser v4 - Tutorial

The tutorial was updated with new screenshots to match the new UI and and cover the new features. Also added 2 more pages giving some background on Bézier curves and a tips & tricks section. I hope it helps a bit those who had trouble understanding how the plugin works.

Find it here:  https://hub.virtamate.com/resources/idleposer-introduction.632/ 

View Post

Life - IdlePoser v4

IdlePoser is a solution for idle animation, part of the Life plugin collection. This new update brings a number of usability improvements and some new features: 

  • Improved curve debug render, now with colors to highlight the different state groups! Transitions can also be rendered now.
  • Improved Bézier evaluation using Bernstein polynomials for better performance.
  • Various UI improvements, most notably a new menu tab bar that replaces the clumsy dropdown menu.
  • Implemented a checkbox in the play menu to pause animation. This allows you to save animations in paused state. Also gives you the option to have anchors updated while animation is still paused, helpful when dealing with multiple IdlePoser instances at once.
  • Implemented option to not update captured position/rotation or morph values. This allows you to interact with plugins like Gaze and it can be used to copy&paste values between states.
  • Updated demo scene with tweaked VaM physics settings, to have way less awkward body parts slapping into each other. While its essentially still the same scene, the animation looks much better now in my opinion.
  • Various minor bugfixes/polish things.
  • Updated the tutorial with new screenshots to match the new UI and added 2 more pages giving some background on Bézier curves and a tips & tricks section

 

Download

  • https://www.patreon.com/posts/life-idleposer-39489477
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after August 2, 2020. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Life - IdlePoser v4 - Download

Dependencies for Demo

View Post

Monthly Report: June

Hi! I'm posting a report like this near the end of each month, reporting on what I worked on behind the scenes and what the vague plans for the next months are. It is intended to help you decide if you want buy-in on the coming month or not.

As indicated in the release of IdlePoser v3 last week, I will continue working on that. There are various improvements I have in mind. Probably only one or maybe two of those will make it in the next version:

  • Arc-Length-Parameterization. Yesterday I started on implementing Arc-Length-Parameterization. Once finished that should improve animation quality as it normalizes the velocity while blending between poses. On top of the normalized velocity I can then add a proper SmoothStep for ease in/out. Its something that always annoyed me when using VaM's AnimationPatterns.
  • Vertex Anchoring system. Currently you can only anchor against bones or control nodes. However, I have an idea how to anchor against a specific mesh vertex. This would be far more precise as it also takes morphs into account. E.g. the photo shooting demo scene could be independent of boob size. Not sure if this is actually gonna work and how much performance it's gonna eat.
  • Gaze integration. When combining the Gaze plugin with IdlePoser you will have the issue that both want to drive the headControl. The demo scene solves this by just not moving the head with IdlePoser. If you want your character to move around, this will be an issue. I need to figure out how to make this work. Possibly there will be a "Gaze-Anchor".
  • Micro-idle layer. I'm planning to add some micro-idle animations that would be applied on top of the pose. These would be very tiny random animations you could scale and tweak for each capture node in each pose.
  • Interacting IdlePosers! Possibly it makes sense to let IdlePosers interact with each other directly. Like simultaneously triggering state transitions, possibly with restrictions on which states to select. If hands move independently like in the demo scene you want to make sure that can't unintentionally collide.
  • Improved debug rendering. While the current path rendering (blue lines) is very neat, it could use improvement. Right now its quite easy to loose track of what's connected to what. I will see if I can color the various state groups as well as highlight actual transitions, not just the resulting path. The main issue is to find a shader suited for colored line rendering among those included in VaM. As you know there is no VaM documentation at all, so its time consuming trail&error to try all the build-in shaders.
  • Commission for more poses! I plan to put out a commission for a selection of some hopefully reusable poses that will be shipped with the Life plugin suite. Facial animation and more like the demo scene comes to mind, we will see what else makes sense. The issue here is that I'm a bit unsure when its good time for that as IdlePoser has only half of its features at this point and the quality of the commissioned poses could be better when those features are implemented.


Cheers,

MacGruber

View Post

Life - IdlePoser v3 - Tutorial

Since the response to IdlePoser was a bit slow, I assume it might not be clear for many what it can do and how to use it. Hence a short 7 page tutorial!

The tutorial is a free download....shameless advertisement for IdlePoser, which is still in EarlyAccess. As usual, it's released under CC BY-SA license.

https://hub.virtamate.com/resources/idleposer-introduction.632/ 


View Post

Life - IdlePoser v3

In the last few weeks I continued working on my idle animation solution, called IdlePoser. After the prototype released a few weeks ago, it's time to make a proper release. There have been countless bug fixes and usability improvements. Morph capture and debug rendering have been implemented. Obviously I also spend some time on a demo scene and making a video. However, it's still a standalone plugin, it is still not properly integrated into my Life plugin suite.

It's important to understand that the demo scene/video is NOT showing a simple animation loop. These are three different animation systems randomly interacting with each other. In theory this scene has 120 different possible poses for the character. Due to independent random timings, it's actually an almost infinite amount of animations. Creating this with other animation solutions available in VaM would be extremely time consuming, with IdlePoser it can be done in a few hours.

Current Features

  • State-based instead of Transition-based animation. When using for example AcidBubbles Timeline plugin or regular AnimationPatterns, you would need to define an animation for each combination of poses. With 10 different poses, that would be 90 animations someone needs to setup. With IdlePoser you define just the poses and some additional transition poses which can be partially shared. If the poses are similar you might be able to get away with defining just some 15 poses total.
  • Anchoring system. Each control position for a pose can be defined relative to another control or bone position. For example many of the lower hand poses in the demo scene are defined relative to the lThigh/rThigh bones of the character. That means if you happen to move the hip due to some other animation, the hands will still be placed correctly. By default poses are relative to the character atom, meaning if you can move or rotate the character, you move or rotate the entire animation poses as well.
  • Load and save as JSON. All animation data is saved in the scene, but can also be saved separately in a JSON file. That means your animations and poses can easily be transferred between characters or scenes.
  • Modular control capture. Similar to the Timeline plugin you can define which control nodes you want to include in an animation set. AcidBubbles called this "Controllers". The demo scene actually uses two instances of the IdlePoser, one for the hands and a second one for the feet and hip.
  • Modular morph capture. Just like control nodes, you can also capture morph states. Obviously you would want to animate fingers, toes and other pose morphs as well. You could also use this for facial emotion animations, although the demo doesn't do that, yet.
  • Tabbed-UI. Also inspired by the Timeline plugin is a tabbed UI, simply to avoid throwing all UI buttons and sliders in your face at one.
  • Debug display options. With a lot of pose states and captures it is difficult to keep track of what is what. I have implemented some lines and colored cubes that will help you understand what's going on. You can enable/disable this in the Debug tab.
  • Fancy demo scene. I took the time to make a nice photo shooting scene. The environment was made by VamXFan, the hair as usual by NoStage3. Of course I added some custom global illumination using SkyMagic and I'm using Life 7.

Planned Features

Vague plans for the next few months in random order:

  • Micro-idle layer. I'm planning to add some micro-idle animations that would be applied on top of the pose. These would be very tiny random animations you could scale and tweak for each capture node in each pose.
  • Vertex Anchoring system. Currently you can only anchor against bones or control nodes. However, I have an idea how to anchor against a specific mesh vertex. This would be far more precise as it also takes morphs into account. E.g. the demo scene above could be independent of boob size. Not sure if this is actually gonna work and how much performance it's gonna eat.
  • Gaze integration. When combining the Gaze plugin with IdlePoser you will have the issue that both want to drive the headControl. The demo scene solves this by just not moving the head with IdlePoser. If you want your character to move around, this will be an issue. I need to figure out how to make this work. Possibly there will be a "Gaze-Anchor".
  • Interacting IdlePosers! Possibly it makes sense to let IdlePosers interact with each other directly. Like simultaneously triggering state transitions, possibly with restrictions on which states to select. If hands move independently like in the demo scene you want to make sure that can't unintentionally collide.
  • Commission for more poses! Soon I will put out a commission for a selection of some hopefully reusable poses that will be shipped with the Life plugin suite. Facial animation and more like the demo scene comes to mind, we will see what else makes sense. Stay tuned!

Download

  • https://www.patreon.com/posts/life-idleposer-38474694
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after July 5, 2020. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Life - IdlePoser v3 - Download

Dependencies for Demo

View Post

Tutorial: Custom Audio for Life 7

This tutorial gives you an introduction on how to add custom breathing audio and matching animation data to the Life#Breathing plugin. Adding audio to the plugin is a bit complex and most importantly, very time-consuming. This is because we want our animations nicely synchronized to the audio, which requires some data that can’t be gathered automatically.

The tutorial covers:

  • Some free software needed: Audacity, Unity, Notepad++
  • Where to get good audio? (spoiler: ripping audio some video most likely won't do)
  • Adding your audio to the JSON database
  • Animation Scales and Timing Markers
  • Multi-Breath Entries
  • Unity Export (assumes you have read my Unity AssetBundles Tutorial)
  • Breathing Debug Tool (new in Life 7)
  • Tips for handling audio with Audacity
  • Includes the Life breathing audio files as well as the uncut original source files from VoiceLikeCandy.

Download

View Post

Tutorial: Custom Audio for Life 7 - Download

View Post

Life 7

This is just a tiny free update for those of you who would like to add custom breathing audio. It is adding the breath debug tool mentioned in the custom audio tutorial. This allows hot-reloading the JSON database without having to rebuild the AssetBundle and manually queuing of specific audio files. Also fixes the rhythm damping setting in the Life01 scene.

Download

  • MacGruber.Life.7.var (via MEGA) 
  • Download under CC BY-SA license. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Credits

  • Contains audio by VoiceLikeCandy, Bluzz44 and FreeSFX.co.uk, as well as some audio extracted from VaM. Contains morphs by DDQuidam and TimelordToby. Full credits see MacGruber_Life_Credits.txt inside VAR.


View Post

Monthly Report: May

Hi! I'm posting a report like this near the end of each month, reporting on what I worked on behind the scenes and what the vague plans for the next months are. It is intended to help you decide if you want buy-in on the coming month or not.

This month quite some time went into an unplanned project...which is Meshed's new hub site, of course. It's probably going public in the next few days, you probably saw the announcement on Discord. Many of the major VaM creators had already been involved,  participating in various discussions and experiments how things should work. All my recent content, since the switch to VAR at least, is already uploaded there now. So we are prepared for a glorious near future when VaM will be able to automatically download missing VAR dependencies.

Other than that I was obviously working on Life#IdlePoser, which I had already hinted in last months report. Future plans for that plugin have been shared already with its prototype release on Monday. I will continue working on this in June, maybe even July.

Besides that I will try to squeeze in the tutorial about how to make custom audio for my Life#Breathing plugin. I promised that some ages back already, so I should finally do it. From the requests I'm getting I think many people think the plugin is just playing audio files in random order, but it does a lot more than that. It's a complex and time-consuming process to add your own audio properly. A tutorial can't change that, so don't expect magic ;)

Cheers, MacGruber

View Post

Life - IdlePoser Prototype

Life is a collection of plugins intended to essentially awake a character, let him/her come to life. Central part so far was the audio-synchronized breathing, which can be used to drive complex animations. This month I started working on an idle animation solution, called IdlePoser

Today I'm releasing an early standalone prototype of this, more like a proof of concept. I recommend to not yet use it for larger scenes, as the file format might still change. Also this will be properly integrated into Life at a later point.

Current Features

  • State-based instead of Transition-based animation. When using for example AcidBubbles Timeline plugin or regular AnimationPatterns, you would need to define an animation for each combination of poses. With 10 different poses, that would be 90 animations someone needs to setup. With IdlePoser you define just the poses and some additional transition poses which can be partially shared. If the poses are similar you might be able to get away with defining just some 15 poses total.
  • Anchoring system. Each control position for a pose can be defined relative to another control or bone position. For example the hands in the demo scene are placed relative to the lThigh/rThigh bones of the character. That means if you happen to move the hip due to some other animation, the hands will still be placed correctly. By default poses are relative to the character atom, meaning if you can move or rotate the character, you move or rotate the entire animation poses as well.
  • Load and save as JSON. All animation data is saved separately from the scene in a JSON file. That means your animations and poses can easily be transferred between characters or scenes.
  • Modular capture system. Similar to the Timeline plugin you can define which control nodes you want to include in an animation set. AcidBubbles called this "Controllers". The demo scene actually uses two instances of the IdlePoser, one for the hands and a second one for the feet and hip.
  • Tabbed-UI. Also inspired by the Timeline plugin is a tabbed UI, simply to avoid throwing all UI buttons and sliders in your face at one.
  • Very simple demo scene, just to show the concept. Clicked together quickly, still looks a bit robot-like.

Planned Features

  • Morph capture. Currently you can only capture atom control nodes. Obviously you would want to animate fingers, toes and other pose morphs as well. This will enable you to use IdlePoser for facial emotion animations as well.
  • Micro-idle layer. I'm planning to add some micro-idle animations that would be applied on top of the pose. These would be very tiny random animations you could scale and tweak for each capture node in each pose.
  • Debug display options. With a lot of pose states and captures it is difficult to keep track of what is what. I hope to implement some debug rendering, probably displaying the state graph for a selected control capture using line rendering. This will be similar to the rendered curve of the AnimationPattern.
  • Demo scene? I probably should make a more impressive demo scene, it might be difficult for some to see the potential of this tool.

Download

  • https://www.patreon.com/posts/life-idleposer-37518802 
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after June 8, 2020. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Life - IdlePoser Prototype - Download

  • MacGruber.IdlePoser.2.var (via MEGA)
  • Requires MacGruber.Life.6.var 
  • This is an EarlyAccess release! Distribution is NOT allowed before June 8, 2020. Afterwards this will be under CC BY-SA license. However, you are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence.

Edit: Fixed a file reference issue, if you downloaded already, please re-download. Thx @ orpheus_reup for pointing it out.

View Post

Essentials Plugin Package v3

These are your most essential MacGruber tools in a convenient single VAR package. 

Overview

  • SkyMagic: Allows you to create cubemaps within VaM to be used for customized global illumination and ReflectionProbes. This can immensely improve shiny materials like metal, latex, leather, etc.
  • SuperResolution: Take ultra-high resolution screenshots using VaMs build-in screenshot tool. This improves image quality a LOT, especially shadows and hair. It is the de facto standard for VaM screenshots.
  • FrameRateControl: This plugin allows more fine control over VaM's VSync settings and framerate. Especially recommended when recording video or you want to reduce power usage or fan noise when working with VaM.
  • AudioAttenuation: Improves how audio volume fades over distance. It should be a lot easier to get the volume right with this.
  • EditMode: Let VaM automatically switch to 'Edit Mode' on scene load. Just put this on your default scene. When in 'Desktop Mode', it also opens the MainMenu and enables 'Targets' (the green atom icons).
  • MSAAToggle: Hotkeys to toggle VaM's MSAA settings, this helps with Reshade issues.

Changelog for Version 3

  • FrameRateControl: When "Pause VaM when not focused" is active, do no longer pause VaM while a scene is loading. You can be productive now while waiting on a complex scene to load!
  • SkyMagic: Direct export of PNG files. You still need to go through Unity to apply the convolution step, but at least you get a preview now.
  • SkyMagic: Fixed rendering issue with characters and other native VaM objects, by essentially re-implementing the cubemap render step. You can create reflections of characters now, although it is very tricky to make that look good!
  • SkyMagic: Added support for PostMagic. Note however, that UserLUT is the only effect where this is actually useful. Other effects will produce visible seams at the cubemap edges.
  • SkyMagic: Removed rotation-sync feature, since ReflectionProbes do not support rotation and it was pointless. Added a warning instead.
  • SkyMagic: Can spawn a small reflective sphere now for viewing ReflectionProbes.
  • SkyMagic: Fixed a silent crash during cleanup phase.
  • SkyMagic: Tutorial updated.

Download

  • https://www.patreon.com/posts/essentials-v3-36628302 
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after May 15, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Essentials Plugin Package v3 - Download

This is an EarlyAccess release! Download will be available for free under CC BY-SA license after May 15, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Edit: Links fixed, thx @ tC_VR.

View Post

Monthly Report: April

Hi! I'm posting a report like this near the end of each month, reporting on what I worked on behind the scenes and what the vague plans for the next months are. It is intended to help you decide if you want buy-in on the coming month or not.

Note while I will of course continue to release stuff, I will have to reduce my VaM time a bit, as the time I put in was not long-term sustainable. Most people don't realize how much time quality takes. The monthly schedule Patreon is forcing on me is not healthy, I rather release things when they are done. So you will see more irregular releases, but I will be still be releasing something for you every month.

SkyMagic had been an unplanned release this month. I had a stupid idea that could maybe work and manged to build a working prototype after a few hours. Then it "just" needed some more days to make a workable plugin out of it....and even more time to build a demo, screenshots and tutorial to explain what this actually is. I think many still did not understand. Anyway, there are still a few known issues, I would like to improve. I will see what I can do with investing a few more hours.

Other than that I will continue with the plan on adding some more idle animation to the Life plugin. I called the plugin "Life" for a reason, it isn't supposed to be "just breathing". Not sure what exactly I want to do here and how long it will take.

SecretRoom took way more time than anticipated until the result was satisfying. However, now I'm back to spec with my Blender skills again, which was the intent. That might mean I produce some more cuffs and/or other toys matching the set at some point. Probably not before June/July, though.

Stay safe in VR,

MacGruber

View Post

SecretRoom 3: Playroom Construction Kit

SecretRoom is not just one environment, its an AssetBundle containing a kit of matching parts you can use to build your own custom playroom room. A couple of scripts help with keeping everything aligned nicely. Here is a video showcasing what can be customized. 

New in Version 3

  • New set of heavy metal handcuffs and anklecuffs with baked ambient occlusion. Of course these come with the matching hex/allen key.
  • New hook/fixture and chain meshes. They got some more polygons and baked ambient occlusion to match the quality of the cuffs.
  • New room script allows to configure the color of leather and floor freely. Before you only had the option between red and black leather.
  • The 3 existing demo scenes have been upgraded and put in a separate VAR package. All are using Life6 now plus got some simple idle animation. Obviously I'm also using custom global illumination and custom reflection probes for each scene made with SkyMagic. Latex and metal would just not look right without it.
  • New spotlight model as the old one could not be put under CC licence.
  • New textures due to a licencing issue I discovered. Older versions of SecretRoom have been taken offline because of this. Now everything is either self-made or from CC0 sources.

Credits

  • Blonde hair by our awesome NoStage3.
  • My favorite latex catsuit used in the screenshots cannot be included. The demo scenes use one of the VaM build-in bodysuits instead. However, you can purchase the used catsuit in the Daz3d store, if you know how to import it yourself.

Download

  • https://www.patreon.com/posts/secretroom-3-36382992
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after May 9, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

SecretRoom 3 - Download

This is an EarlyAccess release! Download will be available for free under CC BY-SA license after May 9, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

SkyMagic: Scene customized global illumination

(MacGruber Essentials Plugin Package v2)

This one is NOT an April Fools post :P During the extended Easter weekend I had another attempt at my trial&error research for making custom global illumination work in VaM. I had a new idea to try. After already wasting a weekend on this back in September, this time there was glorious success!

Now you can not only import cubemaps from Unity, you can also bake a custom cubemap from within VaM! This allows you to setup a scene as normal and then produce a scene specific cubemap that matches your light setup perfectly. Of course, SkyMagic works on both, native VaM assets (such as characters, clothing, ...) as well as native Unity assets (imported through a CustomUnityAsset). The latter enables you to use AmbientOcclusion textures for PBR materials, e.g. when using the Standard shader, which can spice things up a lot.

In the included demo scene I first imported a high resolution sky as a CustomUnityAsset. Then I setup my scene and baked a cubemap to be used for global illumination.

The process to bake cubemaps within VaM requires you go through Unity and reimport as AssetBundle. Since this is slightly wonky, I included a tutorial explaining the 3 parts of the plugin: SkyMagicExporter, SkyMagicImporter and SkyMagicLoader. As an extra the tutorial also covers how to import a high resolution sky from hdrihaven.com.

(Latex catsuit from the second comparison picture is not included.)

Download

  • https://www.patreon.com/posts/skymagic-package-35944585
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after April 27, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Credits

The beach demo scene contains a sky under CC0 licence from HDRIHaven and some public domain audio from SoundBible. The hair was made by our awesome NoStage3.

View Post

SkyMagic / Essentials Package - Download

This is an EarlyAccess release! Download will be available for free under CC BY-SA license after April 27, 2020. You are allowed to reference these packages in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

View Post

Hathor: NextGen render pipeline + RTX Support

(April Fool Joke)

Hathor is a FULL replacement of VaM's render pipeline with some of our NextGen engine tech. This runs in REALTIME, actually slightly faster than a common VaM scene! More details and FREE download here:

Note that this is NOT a Patreon release. This was put together with the help of several colleagues at the office, I'm just one more contributor in this.

View Post

Monthly Report: March

Hi! I'm posting a report like this near the end of each month, reporting on what I worked on behind the scenes and what the vague plans for the next months are. It is intended to help you decide if you want buy-in on the coming month or not.

March has been a busy month which has seen 3 releases of the Life plugin! That was mostly because I had some vacation to burn that was left over from last year. It would have expired otherwise. Obviously, the next months won't be as busy, as there is this thing called "real life". You might have heard about that one?

However, of course I'm gonna keep working on stuff. I don't want to make promises I might not be able to keep. Therefore I'm gonna keep it vague:

  • Possibly a little surprise release next week (will be free)
  • Port the SecretRoom to VaM 1.19. However, I discovered a stupid licence issue that needs to be resolved, so this is not that straight forward.
  • For the more long-term some additional sub-plugin(s) for the Life collection, focusing on various idle animation.


Cheers, MacGruber

View Post

Life 6

Life is a collection of plugins intended to essentially awake a character, let him/her come to life. Central part so far is the audio-synchronized breathing, which can be used to drive  complex animations.

This version focuses on adding mouth breathing and a new orgasm system. Find a fancy video here.

New features

  • Added 36 new mouth breathing sounds!
  • Implemented Orgasm support! Added 6 different orgasms to the AudioBundle, these are 3-8 chained breaths each.
  • Implemented JSON scaling options to scale nose, mouth and lung animations independently for each breath. Use to fine-tune your custom audio!
  • Implemented Multi-Breath support, these are multiple breaths in a single audio file.
  • Implemented 'OnChooseBreath' broadcast message. This is essential for those who implement their own controller plugin to direct my Life plugin. It notifies you when it is about to choose the next breath and you should update settings (Intensity, ThrustMultiplier, etc.) See the updated Scene_Life03 demo controller plugin to support orgasms.
  • Potential silent crash fixes for ThrustSFX.

Download

  • https://www.patreon.com/posts/life-6-download-35329027
  • This is an EarlyAccess release! Download will be available for free under CC BY-SA license after April 10, 2020. You are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence. Links to my Patreon are always appreciated.

Credits

Contains audio by VoiceLikeCandy, Bluzz44 and FreeSFX.co.uk, as well as some audio extracted from VaM. Contains morphs by DDQuidam and TimelordToby. Full credits see MacGruber_Life_Credits.txt inside VAR.

View Post

Life 6 - Download

  • MacGruber.Life.6.var (via MEGA)
  • This is an EarlyAccess release! Distribution is NOT allowed before April 10, 2020. Afterwards this will be under CC BY-SA license. However, you are allowed to reference this package in your own VAR packages, even if they are paid or use a different licence.

View Post