any ZScript gurus around here could possibly write this very simple but very handy script idea? The idea? A script that fires off some little audio clip/alarm when Zbrush is finished with a given task, whether that be baking out textures, super dense dynameshing… I know, it’s silly sounding, but I would LOVE to be able to set it to a task, turn away to other things in my studio and have some kind of alarm go off to let me know it’s finished. Babysitting Zbrush while it says “processing…” is such a waste of time.
Unfortunately, ZScripting doesn’t have that deep of control over ZBrush. You can’t constantly monitor operations in a meaningful way. And if you load another script/plugin, then the plugin making the sound is disabled, so it won’t do anything until you click it in your Plugins menu again.
Thus such a script would only work for ZBrush operations and not other script/plugin’s operations.
That said, it did pique my interest and I’ve managed to create something that seems to work, at least for ZBrush stock functions. But you do have to turn it on again if you use another script/plugin.
I have to manually create definitions for each type of operation that could possibly take long processing times. Once I get that done and some UI related stuff I’ll release it.
I once wrote a plugin to play a user selected alert but never released it; I think because [SoundPlay,…] stopped working. The way I implemented it did not require the plugin to be in focus nor include a list of functions to apply the alert to.
By requiring the alert plugin be activated by a hotkey you can hover the cursor over the time intensive ZBrush function and activate the alert plugin with the hotkey. The plugin then gets the interface item ID from Preferences > Utilities > View Window ID, IPresses the interface ID and plays the alert sound. This will still not work when triggering other ZPlugin functions, as you mentioned, but can save you from having to include a list of functions.
How are you playing the alert sound?
I have a version that does the same, though it doesn’t need to look up the ID. But I wanted to create a version that was less restrictive to the user, so they could activate it but still interact with the UI before clicking the operation, thus the need for creating pre-defined IDs to make conditionals with.
Mine don’t need to stay in focus either, indeed if you assign a hotkey, then pressing that hotkey will re-enable the script to allow it to function again, as it’s effectively the same as going to the plugin and clicking the button.
I’m playing audio with the same old SoundPlay function.
I love code slingers.
Seriously, though… if either of you folks have something along these lines that works at all, I would be more than happy to test it and probably put it to a ton of use. I’m constantly bouncing between machines in the studio, basically giving one machine a job to do then turning to another to do something hands on, but it royally sucks to find that I’ve gotten embroiled in something on another workstation, lost track of time and had Zbrush complete something I should have spun back around to give my attention to. It’s kinda manic in here… an alert like this would be a surprisingly awesome bit of help.
Hey, sorry, I’ve been really busy with work/life, so I havn’t had a chance to put the finishing touches on it and release it. I’ll try to soon!
No rush. It’s all good