Home Technical Talk

My Zbrush Plugin!

13
Most Up-To-Date Info on Page 4!Link!




I think I am ready to release my little plugin I have been working on. Most of them are pretty simple but I am trying to add some features that seem crazy to not have in the native program. Hopefully they can save you some time clicking stuff.

I am going to continue to add scripts as I make them. Feel free to let me know if you run into any issues or have any suggestions.
zbrush_pluginjpg
maskGrow_lggif

Mask Grow: this script will attempt to grow your mask similar to how you can grow a selection in Photoshop. Enter how many polygons you want it to grow by in the slider and click grow. This is best used at medium to low SubD levels. At higher SubD levels it takes forever and the effect is barley noticeable. Zbr3 does have a "Grow" and "Shrink" mask now but it works differently and blurs the mask.


subDall_lggif


All SubTools to SubD level: this script will put all your subtools at the SubD level indicated by the slider. This is similar to "All High" and "All Low" in the SubTool menu only with more customization.

pp2mask_lggif


PP to Mask: if you have any Polypaint this script will convert it into a mask based on color value with a single click. This is useful if you want a way to preserve complex masks. Note: this script will work with layers as long as the layer(s) are not active.


colorize_lggif


Colorize Toggle: this script sets colorize (Polypaint) on or off for all your SubTools at once. Toggling them individually if you have lots of Subtools can be super time consuming.

automaskPG_lggif

AutoMask PG: ordinarily the brush setting "AutoMask by Polygroup" is a slider. While this feature is awesome when you want it... it's irksome when you don't. This button toggles between 100 (on) and 0 (off) with a button press. Ideally this button should be pulled into your interface somewhere so it's handy.


To instal:
Place ZSC file in your *\ZStartup\ZPlugs directory.

Huge thanks to my friend Matt and Marcus on the ZBC scripting forums. Couldn't have done anything without their continual help.

Replies

  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    This is so awesome, you have my thanks and a beer on me my good Sir!

    Just a question, would it be possible to create and 'automatic' tool which is essentially a mask at 80-90* angle? Basically, the same as your AutoMaskPG, but something which (maybe cavity mask) does an auto angle mask?

    Just curious.

    Either way, still awesome and thanks!
  • nyx702
    Thanks man! I will take you up on that.

    So about your question. I am not 100% sure I know what you mean. Do you want a brush or a button?

    You just don't want to be able to sculpt on geo that is at a 90 degree angle to a surface?
  • Inhert
    Offline / Send Message
    Inhert polycounter lvl 9
    It keeps saying page not found when I click on the download link. Same on the Zbrushcentral website where you also posted this plugin. I was hoping the download link would work here in Polycount but it didn't.
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    Yep, that's about it, a simple click which will mask at hard angles, I keep on forgetting the settings for it usually, so that would be nice.
  • SpeCter
  • Inhert
    Offline / Send Message
    Inhert polycounter lvl 9
    SpeCter wrote: »


    Thanks SpeCter for the link!!! Any idea why the download link didn't work in the first place? Is it because of the browser that I am using which is Firefox but not Chrome?
  • nyx702
    Link should work now. I am just stupid and wasn't paying attention to my copy and pastin.
  • SpeCter
    Offline / Send Message
    SpeCter polycounter lvl 14
    The problem was the link itself, it contained the polycount url + the real link ;)
  • nyx702
    Ace-Angel wrote: »
    Yep, that's about it, a simple click which will mask at hard angles, I keep on forgetting the settings for it usually, so that would be nice.

    Ah interesting! Is this brush similar to what you were thinking about?
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    ^
    Ah, nice! Black updated his Brush set, cool. Thanks for the info and link, much appreciated!
  • Jeff Parrott
    Offline / Send Message
    Jeff Parrott polycounter lvl 19
    Very awesome! Thanks for sharing this.
  • Bal
    Offline / Send Message
    Bal polycounter lvl 17
    nyx702 wrote: »
    Colorize Toggle: this script sets colorize (Polypaint) on or off for all your SubTools at once. Toggling them individually if you have lots of Subtools can be super time consuming.

    I love you! I waste so much time turning polypaint on and off one by one for color-mask baking.
    The rest looks great too, grow should come in handy, often wanted something like that, thanks!
  • nyx702
    Bal wrote: »
    I waste so much time turning polypaint on and off one by one for color-mask baking.

    Gah I know!!! This annoyance was the whole reason I started making Zscripts! Seriously... how is that not the default option when hit colorize?!
  • nyx702
    I have updated the Plugin with another script!
    randomColor_lg.gif
    - Random Color: this script was requested by someone on the ZBC fourms. It will assign a random color to each of your subtools. This is useful when rendering a flat color pass so you can easily select your subtools when compositing.

  • nyx702
    I have updated my plugin with a couple new features. You'll notice there are a few more buttons! These new buttons will hopefully reduce the amount of time spent browsing for commonly used files and get you sculpting faster.

    There are two main things these buttons do. Store and Load Ztools and Zprojects to be quickly loaded on your next Zbrush session. Ztools and Zprojects are handled a little different so listen up. As always feel free post any questions or suggestions.

    zbrush_plugin.jpg

    recentFiles_lg.gif
    ***
    - Load Stored ZPR: This button will load a project stored with the "Open" button to the right.

    -Open: This button will open the browser for you to select a project. This button also automatically stores the project you open. So after you "Open" a project once its forever stored until you open other with this button.

    - Store Tool 1-3: These buttons will store the current tool you are on. You can have three different tools stored at once. Clicking it again will overwrite the previous save. If you CRTL-Click the button it will display the path of the tool saved so you know which Tool is assigned to which button.

    - Load Tool 1-3: These buttons will load the Ztools assigned to the neighboring buttons.

    Note: To get optimal use out of these scripts I HIGHLY recommend making a custom menu with these buttons and docking it above the "Tools" palette so that it will be close to your other Save/Load buttons. As seen in the GIF image.

    If you don't know how to make a custom menu this is a great How To:[ame="http://www.youtube.com/watch?v=-oTAllGY8DY"]How To[/ame] I also recommend saving a copy of your UI before doing this.

    ***

    DOWNLOAD!

  • pabgo
  • BeatKitano
    Offline / Send Message
    BeatKitano polycounter lvl 16
    I don't know if it works, but I think you can delete menus just by renaming them with nothing.
  • WarrenM
    BeatKitano wrote: »
    I don't know if it works, but I think you can delete menus just by renaming them with nothing.

    You're right, thank you! I've been searching high and low for how to get rid of my custom menus. I can't believe it was this hard to find. Anyway, yes, renaming to a blank name does it, awesome!
  • BeatKitano
    Offline / Send Message
    BeatKitano polycounter lvl 16
    I know I wouldn't have found out myself if it wasn't for some pixo guy at work telling us...
    That's why I share here cause I know a lot of people decided to scrap their entire config to get rid of their custom menus.
  • WarrenM
    If that's in the pixo documentation, I'll eat my hat. It's really annoying that they tell you how to create menus but not get rid of them. :) Again, thanks!

    EDIT : Haha, just noticed that the title bar of the rename pop up tells you to leave it blank to delete the menu. I guess I just never saw that before ... but then, once I create the menu what are the odds I'll be renaming it and notice that? Bah!
  • nyx702
    BeatKitano wrote: »
    I don't know if it works, but I think you can delete menus just by renaming them with nothing.

    Well I'll be dipped! Thanks so much for mentioning it. Like the others I had searched forever to find a way. I tried removing all the buttons from the menu but that just breaks it all to hell.
  • nyx702
    Hey guys! I have added a couple features to the plugin. These have to do with Subtool visibility. When you have lots of Subtools nothing is more aggravating then when you accidentally unhide all the Subtools you just took the time to carefully hide.

    **IMPORTANT!**
    I have also made the plugin look at a folder for some of the new data files the plugin generates to keep the clutter to a minimum. If you have used this plugin in the past, more specifically the Quick Load features, you will have to move the file "storedpath.zvr" into the "NicksToolsdata" folder to keep any stored Tool or Project paths. If you don't care or use those features then you can delete the .zvr files and Zbrush will make new ones in the right directory.

    zbrush_plugin.jpg


    hideAboveBelow_lg.gif
    - Hide Above/Below: this script hides Subtools above or below the active Subtool in the Subtool menu. This is best used if your Subtools are somewhat organized. Just so their isn't any confusion this DOES NOT hide Subtools above or below based on the canvas position.

    storeVisibility_lg.gif
    -Store/Restore Visibility: this feature is like an extended "Solo" or Isolation mode. When you press "Store Visibility" the current visibility status of all your Subtools are stored. You can hide/unhide subtools any way you want and then recall the stored visibility later. This is useful when you have alot of Subtools and want to just work on just a section. This is saved in between ZB sessions as well.

    The script can be kind of slow with high SubD levels. If you want to speed the script up, select the top Subtool before running!

    It is very important you do not add/delete or rearrange subtools after storing if you want to recall them again. It will give you an error and you will have to store the visibility again. The script looks at total subtool count so if you change it then it gets confused.

    ***

    DOWNLOAD!
  • Lamont
    Online / Send Message
    Lamont polycounter lvl 15
  • Bal
    Offline / Send Message
    Bal polycounter lvl 17
    Thanks nyx702! :)
  • Spatz
    Offline / Send Message
    Spatz polycounter lvl 13
    this is wonderful thanks for making these little helpers :)

    i have a question ...when zbrush updates next time will they still working?
  • nyx702
    Thanks guys!
    Spatz wrote: »
    this is wonderful thanks for making these little helpers :)

    i have a question ...when zbrush updates next time will they still working?

    Thanks Spatz. They "should" be fine. The update from 4 to all the new versions didn't break anything. Most of the scripts reference interface paths so if they move buttons around all hell is going to break loose!
  • nyx702
    I had some comments that the written description for the Quick Load scripts were confusing. I made a video demo of how they work to hopefully make it clearer :)

    [ame="http://www.youtube.com/watch?v=xK9Rq_6lztg"]QuickLoad Demo - YouTube[/ame]
  • BeatKitano
    Offline / Send Message
    BeatKitano polycounter lvl 16
    Is it possible to do the same but with zpr ?
    I like your script but I tend to work on scene files not tool anymore.
  • nyx702
    There is an option for Zprojects (zpr) but only one. It's the "Load Stored ZPR" and the "Open" button right next to it.

    It works differently than the Tool storing however. You have to open the project first with the special "Open" button within the plugin. It's automatically stored and you can load it again anytime with the "Load Stored ZPR" button.

    It's shown in the video near the end and/or their is a written description on the previous page.
  • BeatKitano
    Offline / Send Message
    BeatKitano polycounter lvl 16
    Erf, ok sorry. And thank you :)
  • sltrOlsson
    Offline / Send Message
    sltrOlsson polycounter lvl 14
    Thx, just downloaded it. Gonna try it out!

    I've got an idea that would be very handy for some more advanced masking (kinda).
    Lets say that you sculpting a damaged concrete surface, chipping away layers. To have a mask of what you just chipped away would be great, but it's a hustle to get that mask. What you can do is to use different colors on you brush when you sculpting and that way get a perfect mask in the polypaint. But the annoying thing is that you have a lot of annoying colors all over making it hard to see what you'r doing.

    So, I thought that it could be a cool feature for your script to be able to paint with polypaint without seeing the actual paint. Like a hidden mask kinda thing. Just a toggle that hides it but doesn't turn it of more or less.
  • nyx702
    Cool! Thanks for the idea!

    I will look into it but off the top of my head I am not sure that is possible. It isn't exactly what you are looking for but you can always turn "View Mask" off to hide the mask.
  • nyx702
    I got a couple cool updates to share. Firstly, I tried to make the UI a little more readable by making some pseudo-sections. I also have started including a "READ ME" file that includes all the descriptions for the scripts. This way you will always have them locally if you need them.

    **IMPORTANT!**
    If you have used this plugin in the past, please remove the old content first by deleting the "NicksToolsdata" folder.

    If you want to keep the Quick Load project settings, you can copy the file "storedpath.zvr" into the new "NicksToolsdata" folder. If Zbrush fails to start you should just delete this file.

    zbrush_plugin.jpg

    matCycle_lg.gif
    - Material Cycle: This script was inspired by our very own Hazardous. Check out the link to see an better example than my GIF. He and many other artists swap their matcaps frequently during sculpting. I wanted to try and make this process faster and easier.

    To use this script pick your desired material and then select a number to assign it to. Click "Set Mat" and the material will be assigned to that number. Whenever you scroll to that number or use the "<<Mat/Mat>>" buttons the material will be assigned to the mesh. Continue doing this for your other favorite materials. You can overwrite a material using the same process or clear it out altogether using the button. Note however that if a number is "blank" you will have to press the "<<Mat/Mat>>" again to move on to the next mat so I don't recommend leaving "blank" spots between numbers. The materials will stay assigned between ZB sessions as well.

    For optimum use, you should assign the "<<Mat/Mat>>" buttons to hotkeys. I use the Left and Right Arrows. This script can also speed up your startup. Immediately after ZB loads I just tap the left arrow key and my sculpting gray blinn material is assigned and I am ready to rock!

    Also note that the materials HAVE to be loaded first before they be cycled to. So ether use the materials in your Zstartup folder or load them before hand.
    Rename_lg.gif
    - Batch Rename: This one has been requested ALOT. Rightfully so! This script is mostly self-explanatory. You can set a prefix/suffix as well as any padding before the serial. You can also adjust the starting number of the serial with the slider. The "Underscore" button toggles if underscores will be placed before/after the prefix/suffix. (Ordinarily ZB will change all your underscores to hyphens.) Pressing "Rename" will rename only the visible subtools.

    This script has to temporarily save the Subtool to rename it. This can make the script somewhat slow with multiple very dense meshes. I have renamed multiple 8-million polygon meshes with this with no problem. HOWEVER....PLEASE save your Tool before using this. You never know.

    Download!

    Thanks again to Marcus on the ZBC forums for constantly answering my nagging questions!
  • shogunato
    Offline / Send Message
    shogunato polycounter lvl 12
    nice update, thank you
    Your link to download seems to be broken :poly121:
  • Spatz
    Offline / Send Message
    Spatz polycounter lvl 13
    very nice update ... why is this not part of zbrush ?

    are you talking with the guys from pixologic about implementing this stuff ...or are they talking to you?
  • Bal
    Offline / Send Message
    Bal polycounter lvl 17
    Nice work again, the quick material switch is nice. I have my favorite materials bound to shift + numpad numbers for quick use, but I'll switch over to this 2 button method instead now I think, thanks!
  • nyx702
    Dang it! Why does it always add "polycount.com" in front of my links?! So annoying!

    The link is fixed.

    Thank you shogunato for letting me know.

    Spatz : Haha I know right? I wish they were talking to me! Some of these things seem so crazy that they are not apart of the software. If I can do it then I know they can do it probably better and faster

    Bal : Thanks man. I am glad to hear that. I hope you like it. Shift + Numpad is a good idea tho. I hadn't thought of that before.
  • Justin DeVore
    Offline / Send Message
    Justin DeVore polycounter lvl 4
    Nice additions! I'll be using both of these daily, I'm sure, especially the batch renamer.

    Funny - I was actually just thinking about harassing you about a new feature yesterday morning. I work mostly in ZPRs and tend to save out incremental versions manually (mimicking Maya's incremental save feature) until I'm done with the asset. I'd love a button that would automagically save my current ZPR file (as defined in your Load ZPR slot) without me having to open the Save As dialog, and at the same time save a numerically incremented copy with two or three digits of padding (ie "realFileName_001", "realFileName_002", etc).
  • nyx702
    Thanks!

    Cool idea. I should be able to make that pretty quick.
  • nyx702
    I have implemented a Quick/Iterate Save feature as requested by Justin DeVore.

    zbrush_plugin.jpg
    Sorry. No Gif for this. Should be pretty self-explanatory. You guys are smart fellows.

    To start the "Iterate Save", first chose or create a file with the "Set Save" button. In most cases you will be choosing the file you already have open however you can create a new name for the iterations if you wish. Then whenever "Iterate Save" is pressed a copy of your current tool will be saved. This can be hotkeyed.

    If "S" button is enabled the original file will be overwritten too (on by default). This works for both Ztools and Zprojects.
  • Pabs
    Offline / Send Message
    Pabs polycounter lvl 11
    thanks a lot bro, your stuff saves me a couple of minutes
  • [Deleted User]
    Offline / Send Message
    [Deleted User] insane polycounter
    The user and all related content has been deleted.
  • Ace-Angel
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    OMG! Seriously, who the fuck are you? Santa Clause of the ZB world?

    Awesome mate! Much love :D
  • Justin DeVore
    Offline / Send Message
    Justin DeVore polycounter lvl 4
    LOL, Ace-Angel. Good job, Nyx. This addition has been immensely helpful.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    Thanks to Ace-Angel for pointing me to this thread!



    I must be doing something wrong because it keeps asking me to pick a file whenever I want to save the iteration. I'll do that, sculpt some more then hit my hot key I made for saving and it again asks to pick a file.....
  • nyx702
    Woo Ace-Angel is my hero!

    Hmmm... is a Save/Open Windows dialog popping up or a note inside Zbrush that says "Please set a file first."?

    Chaserm2 wrote: »
    Thanks to Ace-Angel for pointing me to this thread!


    I must be doing something wrong because it keeps asking me to pick a file whenever I want to save the iteration. I'll do that, sculpt some more then hit my hot key I made for saving and it again asks to pick a file.....
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    Yeah it says to set file. I'm doing just that, hitting the iteration button and all is well. I made a hot key for the iteration button but I get that set file message. Pretty much the hot key isn't working to save iterations
  • shogunato
    Offline / Send Message
    shogunato polycounter lvl 12
    thank you so much
  • nyx702
    Chaserm2 wrote: »
    Yeah it says to set file. I'm doing just that, hitting the iteration button and all is well. I made a hot key for the iteration button but I get that set file message. Pretty much the hot key isn't working to save iterations

    There are a couple situations where it could be popping up this message.

    If the "projectPath.zvr" is not loading correctly from "NicksToolsdata." This could be caused by not having a "NicksToolsdata" folder in your Zplugs folder or by having some wacky permissions on your Program Files folders.

    If this isn't the case, I will PM you a different compile and we can try that.
  • Chase
    Offline / Send Message
    Chase polycounter lvl 9
    I tried reloading the newest file you uploaded, but it resulted in the same outcome. It has to do with setting a hot key to the "Iterate Save" button. For some reason the script doesn't remember everything before that. That'd be great if you could PM me another solution we might try.
13
Sign In or Register to comment.