Version 14 adds the new SoundFromAB brick and other improvements around the topic of handling large amounts of sounds.
So, pick your favorite text-to-speech AI out there and have it generate your voices. Put them into an AssetBundle. Then enable VaM's new build-in lip-sync and use LogicBricks to play your voices. Having hundreds of voice lines in a scene isn't an issue anymore!
Changelog for LogicBricks v14
Download
- SoundFromAB: New brick that exposes audio files found in Unity AssetBundles to VaM's Trigger system. Folders inside the bundle will be exposed by two triggers each: PlaySpecific and PlayRandom. Each trigger includes the folder path in brackets. The first offers a drop-down menu with the audio files in that folder, while the other will play one audio file out of that folder at random. The benefit of this approach is that you do not need an individual brick for each sound or small random set of sounds you want to play. You just need one instance of this brick per AssetBundle and AudioSource. That finally allows managing hundreds of sounds in scene without long load times!
- RandomSoundFromAB + RandomSound: Improvements for handling lots of files by adding "Add by Filter" and "Remove by Filter" buttons. These allow you to add/remove the current filter result (searchbox above) to/from the selection. Also there is now a "Remove ALL" button and I did some other UI rearrangements to create more space.
- RandomSoundFromAB + RandomSound: Fixing issue with not playing audio sometimes when "Avoid Repetition" was disabled.
- New demo scene with examples 29 and 30.
- https://www.patreon.com/posts/logicbricks-v14-80025941
- This is an EarlyAccess release! Download will be available for free under CC BY-SA license a few days after 2023-03-28.
Probably very random seeming list of changes....but it all makes sense! I need them for an upcoming minor scene release
Changelog for LogicBricks v13
- New RandomAnimation brick. Simple plugin provides a random motion within a sphere for the main control of an atom. This is intended to be used as anchor for IdlePoser states, for example providing some small continuous idle motion for a hand when it's not touching the body.
- New FrequencyLoop brick. Triggers multiple times with at an accelerating or decelerating frequency after being triggered. Can also be used for constant frequency by setting start/end to the same value.
- "Quadratic" option for ValueRandom brick. This provides an easy way to bias towards the lower values. That kind of thing can be desired if you use this brick to roll random durations for example.
- Fixed issue with SequenceChoice after order of choices changed. Thx @coll69 for providing repro steps.
- New example scene. Examples 27 and 28 to show the new bricks.
Version 12 just adds a small feature to the ValueRelay brick.
Changelog for LogicBricks v12
- ValueRelay: Adding RangeMin/Max sliders, so you can remap the value range. This allows you to adjust range of a float trigger via trigger.
- Updated demo scenes to refer current versions of packages.
Version 11 introduces two new bricks, SequenceMachine and SequenceChoice.
Changelog for LogicBricks v11
- SequenceChoice: Similar to RandomChoice and SelectChoice. However, each time it's triggered, it executes the next item in the sequence. There is also a RandomShuffle option. This was a request by @lapiroman.
- SequenceMachine: This is a variant of the same, but with more powerful options. It's similar to StateMachine, except transitions are fixed so states are gone through in sequence. This makes handling this common case a lot easier. Again, there is also a RandomShuffle option.
- New example 26, see video. Demonstrates how SequenceMachine could be combined with SuperShot (from Essentials) to automatically take screenshots in different poses, light settings, etc from a single button click. Perfect for creators who want to quickly produce screenshots to show off their clothing, looks or hair. Or maybe simply for quick quality control to make sure everything fits as expected.
Among other things, two new bricks for LogicBricks. These will be needed for the Benchmark project to reduce motion sickness as much as possible. Due to the locked VR head tracking, motion sickness is a problem in that scene you usually would not have to this degree. So I need to use every trick in the book, at least those that won't affect benchmark results, to reduce it as much as possible. In this case fading to black before teleporting the player. However, we all know VaM's jerky loading, so nicely covered up scene transitions this will be useful for lots of other scenes. So it made sense to add this to LogicBricks.
Changelog for LogicBricks v10
- ScreenFade: New brick that can fade the entire scene to any color. Nice to cover up loading transitions, see video above, or other things like player teleports or simply helping with telling the story of your scene.
- LoadingDelay: New brick similar to the good old Delay, except that it internally resets its timer while there is any loading in progress. So you trigger it before you start loading stuff and get a trigger back X seconds after loading finished. The extra delay allows you to wait for hair/clothing/body physics to settle into place.
- EventAudioQueueEmpty: Added option to retry every frame while the queue is empty. This solves the problem that VaM may report everything is "fully loaded", and you can trigger audio already, except nothing happens because the audio is not yet there. So if you want to play music when your scene launches and immediately schedule a new track once the previous one is finished, this is your thing to trigger that.
- Timer, RandomTimer: Reset timer on re-enable.
- Delay, Blend, Loop (and RandomX variants): Reset bricks on being disabled. Fixed bricks not being able to trigger themselves.
- Separated the example scenes into its own VAR package. This way I can use Life and IdlePoser in the examples without having them as dependencies for the main package.
- Reworked example 24, instead of weird and unpractical stacked AnimationPatterns its now using IdlePoser. So, its an all-in-one example showing how you can combine StateMachine and ValueUpDown to control animation of IdlePoser, also using Empty atom anchors animated by LinearAnimation bricks and TriggerSync to keep the state changes synced.
- New example 25, see video. Demonstrates how to use the new LoadingDelay and ScreenFade bricks to make nicely smooth loading scene transitions. Of course backed by a StateMachine brick.
As said in my Monthly Report, I started producing video tutorials. The first 3 cover a bit of LogicBricks as well as a more generic introduction to VaM's trigger system, which is kind of a requirement to understand LogicBricks. Find them here:
MacGruber's Video Tutorials - Guides -
This page will gather my hopefully growing collection of video tutorials about various VaM topics. "Pay after watching, IF you liked it!" Producing quality video tutorials consumes a LOT of time. Just producing 10min of video takes about 6-8...hub.virtamate.com
Another maintenance release.
Changelog
- StateMachine: Added UI toggle "Show Advanced Options". This hopefully makes this very versatile plugin less intimidating to use, if the more complex options are hidden by default. First I considered releasing a "SimpleMachine" variant of this brick, but a toggle takes less long-term maintenance effort and also you can switch easily at any time. The label turns red if you have some advanced options not at their default but you are hiding them.
- EventSceneLoad: Fixed issue with not triggering after scene load when LogicBricks had not yet been given permission to run.