3DCoat
3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
|
Menu in the 3D-Coat defined using c++ like script (angelscript). Each room may have own menu structure. If the room has own menu structure it is placed in
app_path_customrooms() + "CustomRooms/room_name_menu.cpp"
If the room has not own menu structure the menu script will ba taken from
app_path_customrooms() + "menu.cpp"
Usually menu script looks like
3D-Coat's menu consists of items referred in menu script using commands menu_item(ElementIdentifier) and other
You need to declare the elements somewhere in code within the __defineui(...){...} . This is typical example of elements declaration
There are several pattens to create menu items
Be careful! All parameters will be bound one time in the element, so if referred object will be destroyed it will lead to crash.
You may create custom ui elements using ui_create. The second parameter may be skipped.
Toolset in the 3D-Coat defined using c++ like script (angelscript). Each room may have own toolset structure. Toolset structure is placed in
"Documents/3D-CoatXXXX/" + app_path_customrooms() + "CustomRooms/room_name/toolset.cpp"
If you want to put the roon into the distributive, place the folder room_name into the
3D-coat data in the repository + app_path_customrooms() + "Default/"
Usually toolset script looks like
There are 3 types of toolset items
You need to create ItemName somewhere in code. If your tool is derived from VoxelExtension, your item will be created automatically, yoy may refer it in script like
Older tool registered using
But probably you will not use it, this style is deprecated. Gradually all tools will be replaced with VoxelExtensions.
Just write in script to define tools section:
It just calls some function. In script:
To define the action, use reg_tool_button within __defineui(..) routine.