What's New - messiah:studio 2.2a & messiah:animate 5.2a
This new version (2.2a for messiah:studio and 5.2a for messiah:animate) is a maintenance update that also contains lots of new features and modifications. The list below will fill you in on what's new. More info will follow soon.
Features & Modifications
Armatures
Armatures can be added to groups/setup files. This feature makes it possible to store complete character components that include armature controls.
Armature menu (right-click on an Armature in the List)
Copy Armature - Makes a copy of the currently selected Armature
Delete Armature - Deletes the currently selected Armature from your scene.
Note: The above two choices replace the buttons that used to be on the block.
New Group... - Creates a new Group and makes this Armature a member of that Group.
Add To Group... - Add the current Armature to an existing Group.
Remove From Group... - Remove the current Armature from a Group that it is in.
Note: The "Group" menu items are identical to those available when accessing the item menu in the main list. This is how you add/remove armatures to/from groups.
Handle Menu (right-click on a Handle in the List)
Copy Handle
Delete Handle
Action Menu (right-click on an Action in the List)
Copy Action
Delete Action
Rearranged Handle block
Added Appearance block for handles
Armature & Handle now have the color picker
The alignment controls now have a "center" option instead of just left and right.
Handle Text - You can now create text to be displayed instead of the handle name. This is convenient for situations where a line of text is needed that is not constrained by the requirements of item naming (i.e. can have spaces & special characters).
Label Source
Handle name or Text. This lets you put a label on the handle for the World View and it can have spaces in it. One use for it is to make a handle that doesn't do anything other than have descriptive text, like instructions to the animator.
Label Alignment
Left, Center, or Right justification
Selected Icon - Often there are times when you need to override the highlight coloring when a handle is selected. Just click the "Selected" tab and choose an icon. In other words, you can have the icon change when it is selected.
Cool Samples of Armature/Script: Box Controllers |
||
Each of the following samples make use of a messiah:script that illustrates the use of scripts with Armatures. There are three scripts included with this release: boxcontroller.msa, boxcontrollermulti.msa, and boxcontrollerquad.msa. If scripting is your thing, take a look at the scripts and see how easy they are to create. |
||
Sample 1
Now stop the animation and drag the controller in the box (the arrows) around. As you can see, each direction that you move the control goes to a different morph. By the way, those of you with messiah:studio should press F9 and look at a render. This is a scene created by Taron, and he used his Basic Shader (with sub-surface scattering) on the character. It looks quite nice! |
Sample 2 Load the MorphPortions_Sample.mpj scene and press play. What you're seeing is just one object and one morph target! What I've done in this scene is split the morph into six different targets by setting six different portions (on the Portions sub-tab of the Cluster Value block in Setup mode). Each slider is tied to a different portion of the morph and the sliders are tied to a box controller. The left, middle and right mouse buttons each control different pairs of morphs. Drag from top to bottom to activate one target, and left to right to activate the other. Anywhere in between will blend between them. |
|
Setting Up A Box
Controller 1. Load & select your base mesh. 2. Double-click on the MultiMorphControl setup in the Setups palette (press F5 to open the palette). 3. Add your morph targets to the already created cluster slider. (Select Cluster in the list, load your morphs, select the Morph_Slider and use the pulldowns to assign the targets to its channels. You're good to go! Go to Animate mode and try it! This gives you just a little idea of the power of this feature. For example, another thing you can do if you want to is have one box controller operate more than one slider. In other words, the left button would operate Slider_1, the middle button would operate Slider_2, etc. (To do that, set the box controller handles, which are the last items in the Armature-- with the blue dots-- to whichever slider you want.) |
MorphBlender
Weighting - Each target now has a weight popup on the VSlider in Setup (F3 area).
The new Portion tab on the Cluster Value block allows you to use a portion of the morph target. Full (the entire model), Left and Right. Axis changes the axis used in portioning the target; normally the x axis is used (for left|right), but there may be a need to use y (top|bottom), or z (front|back). The Center value allows you to choose where along the axis a target will be portioned.
Note: This lets you use less morph targets. For example, one target can have both eyebrows up, but you can set each eyebrow to a different slider.
Note: That the popup options don't change when changing the axis. That will come in a future rev.
Groups
Now uses the Color Picker
Setup Saving has been redesigned.
Icon Cropping Tool
Note: Because Armatures can now be added to groups, it became necessary to change the mechanism by which setup icons are created. When you click Activate Setup Saving, the world view will change to reveal a cropping tool. Use the move & resize controls on that tool to isolate the area you'd like for your icon. The "saving" block will automatically update with that icon.
Draw Group Only
Note: When this is active, only the members of the group will be drawn for the icon.
Tray Background
Note: This option will use the background color of the Setup palette tray.
Auto Line Factor
Note: If there are edges and/or armature handle lines in your icon, they may be too thin to be seen on the final icon. Using this option will automatically compute an appropriate line weight.
Line Factor
Note: Enter a factor for the line weights. When Auto Line Factor is active, this value is also used to factor the resultant weight
Script Editor - Right-click on a script in the tray (F5) to edit the script. We are most concerned with how the edit window itself performs, we're not so much concerned with the rest of the windows stuff at this point. Please focus your testing on editing scripts.
Script Editor Features:
1) Syntax highlighting (i.e. comments, keywords, preprocessor directives etc.)
2) Built-in function and keyword highlighting (so you know you typed the right name)
3) Auto-indentation (so your code is nice and clean)
Bugs/Issues:
1) File->Close doesn't work.
2) File->New and messiah's Edit->New Script... are different (File->New will conform to Edit->New Script...)
3) Window->* doesn't have check mark next to open script (however, you can look at the title bar)
4) Splitter bar between edit and output windows does not work
5) Output window is not hooked up yet
Also new is a progress meter for script compilation
Scripting
Action scripts can have a HandleUpdate function
Note 1: This function allows scripts to update the handles. See boxcontroller.msa for an example.
Note 2: Your HandleUpdate function must have the same arg format as your HandleAction function, as demonstrated in boxcontroller.msa.
Action Script define:
SCRIPT_ACTION_COORDSYSOPS
Note: The mouse items that are children of handle actions normally have channel selection and coordinate system choices. Most actions do not need this info, and is now hidden by default. You must now request those options by using the above define. Note that scripts don't currently have access to that channel/coordsys data.
Action script function: HandleSelect
Note: Drag action scripts can now have a HandleSelect function. This function will be called when the action's handle is selected. See the boxcontrollermulti.msa script for an example.
Script Functions
ActionParamSet
ActionActive
ActionParamSet
ActionClass
ActionPrev
ActionNext
ActionIsScript
ActionIsModule
ActionIsCommand
ActionIsClass
Note: See boxcontrollermulti.msa for example usage.
DeselectAllObjs
HandleSearch
HandleHide
HandleShow
HandleHidden
Commands
Delete Keys Selected (All)
Delete Keys Range (All)
Delete Keys Master Selected (All)
Delete Keys Master Range (All)
Note: the "All" variant of these commands will delete the entire key (all channels).
Palette item names - When item names are clipped, a popup displays the full name.
List/Palette item highlighting
Particles
Particle Axis Orientation - Lets you choose and set certain parameters for the axis of particles. ZtoVel is "Z to Velocity," which means that the Z axis of the particle becomes the direction of the particle.
direction the particle is going becomes its Z axis, and the rotations are calculated accordingly. (On the Random block when Particles is selected.)
Particle Rotation Velocity - This have been broken out into three separate controls: Heading Velocity, Pitch Velocity, and Bank Velocity. (Random block)
Scale By Age - Lets you scale the particles by their age. For example, smoke can get bigger as it ages.
Scale By Weight - Lets you scale the particles by their weight.
Particle Axis Draw Type - A new particle drawing type: Axis. It shows the particles as little null objects so you can see their rotation.
Note: The particle size must be set to larger than 0. This is done on the Random block, with the Size (radius) setting.
Inherit Emitter Velocity - Can allow particles to shoot forward even if the object is moving.
Emit Based on Velocity - Set particles to be generated based on the velocity of the emitter.
Box Emitter - Another emitter type (others are Cone, Object, and Plane)
Graph curve resolution
Customize->Graph View->Draw Smooth Curves
Command: Graph Smooth Curves Toggle
Note: Normally when zooming into the graph, you'll notice that curves are quantized to frames (i.e. they will appear to have low resolution). The preceding feature smoothes the curves no matter how far you're zoomed.
Global Draw Mode Selection - The top right corner of the World View now has a global draw mode selector (=). Click it to turn on, then choose the draw mode.
Right-click to bring up the menu for :
Limit Object Drawmode - Sets the maximum drawmode for a world viewport. For example, if the viewport is set to Smooth, and an object is set for Texture, the object will be drawn as Smooth because Texture is listed after Smooth in the drawmode menus.
Replace Object Drawmode - If the object is set for any drawmode other than None, it will be drawn in the global drawmode set in the viewport.
Draw If Exactly - An object will only be drawn if it is set for exactly the same drawmode as the viewport. All other objects will not be drawn. For example, if the viewport is set to Anime, only objects that are set to Anime will be drawn.
Draw If Not Equal - An object will only be drawn if it is NOT the same drawmode as the viewport. For example, if the viewport is set to Anime, an object set to Anime will not be drawn.
Draw If Less Than - An object will only be drawn if its drawmode is less than that of the viewport. For example, if the viewport is set to Smooth, an object set for TextureWire will not be drawn. However, if an object is set for Points it will be drawn.
Draw If Greater Than - An object will only be drawn if its drawmode is greater than that of the viewport. For example, if the viewport is set to Smooth, an object set for TextureWire will be drawn. However, if an object is set for Points it will not be drawn.
Item List Expand/Collapse
Alt-click to expand/collapse the hierarchy starting at where you click (i.e. click on an item in the middle of a hierarchy and it will expand/collapse the items below it). If a hierarchy is expanded and you click on the channel expander (the +) it will expand/collapse the channels.
Alt-Shift-click to expand entire hierarchy including channels, starting at where you click.
Groups
Now uses the Color Picker
Setup Saving has been redesigned.
Icon Cropping Tool
Note: because Armatures can now be added to groups, it became necessary to change the mechanism by which setup icons are created. When you click Activate Setup Saving, the world view will change to reveal a cropping tool. Use the move & resize controls on that tool to isolate the area you'd like for your icon. The "saving" block will automatically update with that icon.
Draw Group Only
Note: When this is active, only the members of the group will be drawn for the icon.
Tray Background
Note: This option will use the background color of the Setup palette tray.
Auto Line Factor
Note: If there are edges and/or armature handle lines in your icon, they may be too thin to be seen on the final icon. Using this option will automatically compute an appropriate line weight.
Line Factor
Note: Enter a factor for the line weights. When Auto Line Factor is active, this value is also used to factor the resultant weight.
Miscellaneous
Removed the confirmation when editing keys
Pre-Generated Polygons is now the default Displacement Type (messiah:studio)
Smoothes creases when using bump and displacement. (messiah:studio)
Scripting
Action scripts can have a HandleUpdate function
Note 1: This function allows scripts to update the handles. See boxcontroller.msa for an example.
Note 2: Your HandleUpdate function must have the same arg format as your HandleAction function, as demonstrated in boxcontroller.msa.
Action script function: HandleSelect
Note: Drag action scripts can now have a HandleSelect function. This function will be called when the action's handle is selected. See the boxcontrollermulti.msa script for an example.
Clusters are automatically excluded from rendering when added to cluster sliders
Note: Since the majority of the time clusters are not meant to be rendered, they are disabled for rendering when created. Also, the cluster's draw mode is set to None.
The current object is used as the target for effects loaded with setup files
Worldview polygon tessellation
Note: This eliminates the drawing problem with non-convex polygons.
Issue: Texture mapping and/or weighting may not draw on tessellated polys. This will be addressed in a later update.
Scrollwheel modifies minisliders
Warning: Each move get's recorded for undo on undo-compatible controls
Setup value marker for sliders
Note: This marker gives a simple representation of the setup position of the slider values when in "animate".
Setup objects are no longer required to be located in the proxy directory
Functions
ActionActive
ActionParamSet
ActionClass
ActionPrev
ActionNext
ActionIsScript
ActionIsModule
ActionIsCommand
ActionIsClass
Note: See boxcontrollermulti.msa for example usage.
GetObjectName
SelectObj, DeselectObj
IsCurrentMode
CreateKey
CreateChannelKey
KeyChannelExists
HandleActive
HandlePos/Set/VecSet
HandleOffset/Set/VecSet
HandlePrev/Next/Child/Parent
HandleIconSet
HandleIconActiveSet
HandleText/Set
HandleColor/Set/VecSet
HandleLineStipple/Set
Note: many of the Handle functions are demonstrated in the boxcontroller.msa script.
Fixes
Missing text on some NVidia cards
OpenGL drawing mode errors
Note: This represents a major fix that should eliminate most of the reported OpenGL anomalies. Most notable:
"legal" (3-4 point) MetaNURBS polys not drawing
First bone not being drawn
Crash when loading clusters via the cluster sliders
Crash when setting certain objects to Edges drawing mode
OnionSkin falloff
Effect values are no longer mirrored
OpenGL shininess fixed
Section overlapping
Note: The interface no longer get's misaligned when the graph|trackeditor|shaderflowchart are oversized; they are resized within the boundaries of the interface.
Cracks with rendered metablobs
Gradient no longer crashes on network rendering
Atmosphere scattering samples now saves/loads properly
Pivot point now functions properly
Delete Key command functions properly
Scripts that have the copyright symbol will compile properly
No longer crashes when saving setups from some previously loaded setup files
Multiple targets reattach when loading setup files
API
Features
Armatures can now be added to Groups.
Fixes
fxRayHitDelete functions properly
Note: This will fix a memory leak problem with some shaders that cast rays.
And don't forget to check out Zoogono for the latest goodies from other users-- there's some great stuff there!
Converted from CHM to HTML with chm2web Pro 2.82 (unicode) |