Jump to content
3DCoat Forums

[SCRIPT] VoxTree layer and shader names to CSV

Recommended Posts


I wrote the script for my own use several weeks ago, but I think there's nothing wrong with sharing it. Perhaps someone will find it useful.

DESCRIPTION: The script iterates through the whole VoxTree, collecting names and bound shaders of each visible layer. It then writes this information to a CSV file which can be opened by a spreadsheet application of one's choice.
The script might be useful if you have a very complex scene with dozens of objects and shaders and you want to inspect which objects use which shaders. It can also be helpful when planning things in the retopo room.
If you forget where you saved your file, check the script execution log: Scripts->View execution log.

INSTALLATION: Copy ajz_voxTreeShaders2csv.txt and ajz_voxTreeShaders2csv.xml to %USERPROFILE%\Documents\3D-CoatV4\Scripts\ExtraMenuItems and restart 3D Coat. The script will be accessible through File->Export menu.

CONFIGURATION: There's more detailed information on how to configure the script in the ajz_voxTreeShaders2csv.txt file. Please read it before using the script.


Drop me a word if you have any questions, ideas or find a bug.




Edited by ajz3d
  • Like 1

Share this post

Link to post
Share on other sites


Share this post

Link to post
Share on other sites

Thank you for a great script. 

I read scripting Manual and ajz scripts.

It became the great help of my script learning.


Now,I am would like to create a similar script to change the voxel parent.

I am looking for a way to get the parent of voxel or to count the number of subTree.


I know these selection and adding voxel scripts will work.


Do you know something about VoxTreeBranch command?
Is it exist like this Function?

Share this post

Link to post
Share on other sites

Hello Coverman.

Thanks, I'm glad you like the script. :thank_you:


I don't know how you can get the parent of a volume. Sadly, I don't think it's possible ATM.

But to set the parent of currently selected volume, you can use:

cmd("$Root") // To move the layer to Root level.

cmd("$ChangeParentElm_"+layerName); // To change its parent to layerName (string data type).

I strongly encourage you to make a feature request on Mantis (http://3d-coat.com/mantis/) regarding VoxTree parent getters and setters.

Edited by ajz3d

Share this post

Link to post
Share on other sites

Thank you for replying ajz3d.

I was probably understand that it's impossible to make the change  parent script.


I want to simplify the reconstucting of subtree, so I'm going to think about my needs carefully.

Thank you. :)

Share this post

Link to post
Share on other sites

This is pretty great.  I am hoping to modify it so that it can print out the transforms of each vox layer for exporting instances.  I can't seem to find any references to a getTransform command.  am I being dense?

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now