PDA

View Full Version : messiah Updates Available


fwtep
03-23-2005, 08:15 PM
Hello everyone, we're happy to announce the immediate release of messiah:animate 5.2 and messiah:studio 2.2 (Workstation and Pro)!

This is a free maintenance patch that fixes some problems, such as stability and OpenGL drawing, but there are also lots of new things (as usual). Take a look at the "What's New" page after you update. (We're working on a full update of the docs that incorporates this new stuff as well as some previous things that were missed.

PLEASE NOTE: This version removes AutoRig. We're still hard at work on the next generation of AutoRig but it just hasn't made it in time for this patch. We know that this is a feature that you're all really anxious to get, so we'll get it out as soon as possible.

And by the way, an updated demo of messiah:animate will be available later today.

My Fault
03-23-2005, 09:10 PM
Hey Fred,

The update didn't seem to have any new doc files, is that a separate download like usual?

fwtep
03-23-2005, 09:16 PM
Hey Fred,

The update didn't seem to have any new doc files, is that a separate download like usual?Yeah, somehow it got missed. I put a link for it up on the site now (step 4). Sorry.

Fred

rush123
03-23-2005, 09:23 PM
Fred, It there, just in the wrong place

modules ->docs

R

My Fault
03-23-2005, 09:32 PM
Yeah, just found that as well.

Rendering the BoxController scene right now, man what a sweet shader Taron has created!

Great stuff once again pmg team!

PauHana
03-23-2005, 10:06 PM
Awesome! Thanks guys! Too bad I'm in crunch mode at work:shrug:

pnoland
03-23-2005, 10:28 PM
Nice, thanks for the update! :) ...hmm, when you say it fixes Opengl drawing does that include the ATI no text problem? I'm anxious to put my Radeon back in since this Geforce isn't cutting it anymore. :P

Leebre
03-23-2005, 10:34 PM
Doods! The armature stuff is pure ownage. That's exactly the kind of thing I was asking about a couple of months ago. Man am I pumped! I can't wait to get home so I can check it all out. Damn this software is cool. Thanks pmG!

Suricate
03-23-2005, 10:51 PM
Thanks pmG! :thumbsup:

New morph functions and finally my GeForce 5200 works properly at higher resolutions! Hooray!

pnoland
03-23-2005, 10:59 PM
WOO! Okay now I'm totally happy...My Radeon is working flawlessly now! :D

lmilton
03-23-2005, 11:17 PM
Doods! The armature stuff is pure ownage. That's exactly the kind of thing I was asking about a couple of months ago.

We know:D You probably don't remember this, but I'd mentioned that we'd be adding some features to address the Armature concerns raised by you, DMack, and others. Well... actually... this goes well beyond what you all were asking, but I doubt you all will have any problems with that;)

The new Armature/scripting/groups/setup features definatly open up the program. Just examine the boxcontroller scripts to see how you can create your own custom controllers. The new script editor should make this a lot easier.

Man am I pumped! I can't wait to get home so I can check it all out. Damn this software is cool. Thanks pmG!

Thank you :thumbsup:

-lyle

SpikeWorx
03-24-2005, 12:22 AM
Fine update guys.
Lots of cool new features and fixes :thumbsup:
Thank you :)

dfp1
03-24-2005, 12:34 AM
cI just received my PM in the mail yesterday and installed it and got all those funky graphics problems so they said download the patch and install it. Well, I tried to install but it gives and error message:

This program cannot update the installed version of Messiah:Studio because of the following reason:

C:\program files ;;;;;;;; yada yada ......\messiahstudio:unknown version.

Please help.

I have Messiah Studio 2.1a workstation.

Don (the guy with the new red coaster that says 2.1).

9192
03-24-2005, 01:02 AM
What is the new feature guys?

Thanks,

pnoland
03-24-2005, 01:04 AM
That happened to me when I downloaded the update...I realized that I downloaded the Studio version when right below that there's a Workstation update so that's the one you're going to download and install.

tjnyc
03-24-2005, 01:18 AM
Thanks, guys. A really good update. The creasing problem seems to have been fixed. Particles don't render anymore though. The Box Controllers is very cool. http://www.cgtalk.com/images/icons/icon13.gif

Cheers,

dfp1
03-24-2005, 01:20 AM
pnoland ... thank you very, very MUCH

Don.

Nando
03-24-2005, 02:00 AM
:)

Sweet now i just need to get home to get things updated

Thanks PMG Team

:thumbsup:

Amphiblien
03-24-2005, 05:17 AM
Thanks for the fix guys!

My Geforce 6800 GT display nasties are no more!

DMack
03-24-2005, 08:10 AM
Yehaa....I'm just coming to the end of a project so I can't install just yet....a couple of days and I'm there.....sounds like super exciting stuff. I have a LOT of confidence in these guys.....can't wait to install! (This did have more !'s but seems it's counted as rude rather than a sign of extreme joy!)


A big thanks from me Lyle, Fred and the rest....I have never felt so listened to by a SW developer! That kind of connection REALLY fills me with confidence for using PMG stuff on larger and larger projects! Thanks - Appreciated.

kennez
03-24-2005, 09:18 AM
Can somebody psot the direct link? I must be missing something, but I cannot find the update on the downloads page.

Suricate
03-24-2005, 09:30 AM
Particles don't render anymore though.


I think you have to activate 'Size (radius)' in the 'Random' tab of the particles and enter a range there.

GabrielW
03-24-2005, 09:43 AM
great update!!!Thank you very much!!! :bounce: :bounce: :bounce: :bounce: :bounce:

Julez4001
03-24-2005, 12:31 PM
PMG put those "delete" functions that was requested a few months back too!
Gotta give them props for that!

Sil3
03-24-2005, 01:12 PM
Downloading it :scream:

Leebre
03-24-2005, 02:45 PM
I just wanted to say that I got to play with studio for about 30 min last night after I finished some freelance work and the update is every bit as good as the "What's New" doc indicates. The new armature functionality is just phenomenal! The integrated script editor is a very nice addition. And with all the OpenGL fixes the interface seems to be screaming fast on my machine. You guys really spoiled us with such great patch.

Julez4001
03-24-2005, 05:31 PM
Wow!
Now that It wasn't integrated before ,
but being behind the wheel of this puppy is like driving a
european built car (with american musclecar power know-how!)

Kudos PMG!
Messiah just feels so well when I animate.
Nothing holds me back! You guys should look at your first
advertisement and put it on your site becase animating messiah is
just like that.


Congrats!





I need a edit button on the yahoo group, geez!

lmilton
03-24-2005, 07:32 PM
Thank you for all the wonderful feedback:D

I'd just like to point out that we don't exactly tout the BoxControllers as features; they are only intended as examples for how you can create your own controllers via scripts/armatures. It's deceptively simple, but the new features make the animation system so much more powerful & customizable.

For example, it would be very easy to create a MotionBlender version of the MultiMorph setup file. You could have the phonemes already embedded in the setup. Then it's just a matter of applying that setup to any object and fitting the bones to the new character. Very powerful;)

Come to think of it, that's not the best example... cool, but not the best example of modifying scripts/armatures. Hmmm... let's see... you could easily create your own Armature that has icons of those phonemes, then click dragging on the icons could blend in those "targets" via an action script. And since Handle hierarchies can be hidden/shown, you could create a complete interface for character interaction, all driven by BoneDeform/MotionBlender. This Setup file would be compact and easily transportable. Endless possibilities...

Just one more note: don't overlook that you have more control over the drawmodes per-view. Right click on the view drawmode activation button (upper left of any world view), and you'll see the various operators.

I'm sure there's more, but I really must get back to the Dungeon...

-lyle

DMack
03-24-2005, 08:18 PM
Luckily you are a human being Lyle, so I can say....without fear of being branded a monster....I am glad you are kept in a dungeon....it's the best place for you ;)

Keep up the good work!
David

My Fault
03-24-2005, 08:23 PM
Wow, this is a bad to the bone update. Awesome.

I'd like to cast a vote for more action script examples. There's obviously a lot of power there and some tutorials on that would certainly help get started (well me at least).

maks
03-25-2005, 01:09 AM
Hi,

here's a great breakdown of the boxcontrollermulti script from Lyle that can help you getting started :)


====================================================================================================

BOXCONTROLLERMULTI SCRIPT BREAKDOWN - by Lyle Milton

The HandleSelect function determines which handle action will be updating the handle, and the HandleUpdate function updates the handle.

In regards to the boxcontrollermulti.msa script, those functions are critical. However, they are not required. Only create those functions if you need to. Just so you have a clear understanding, I'll break down those functions step-by-step. But please keep in mind that this is all specific to the boxcontrollermulti.msa script. Your functions can be completely different. The only requirements are:








your action script *must* have a HandleAction function and have the SCRIPT_ACTION_DRAG or _CLICK defined. Otherwise, it will be recognized as an action script.
if you need to perform some operation when the frame is updated, you must create a HandleUpdate function
if you need to perform some operation when the handle is selected in the world view, you must create a HandleSelect function.
while your functions can have any number of params (you're not limited to the ones shown here), all of your Handle* funcs MUST HAVE THE SAME PARAMETERS. For example, all Handle* functions in that boxcontrollermulti.msa script have the params : object obj1, int chan1, object obj2, int chan2, int update. Your HandleAction function will be used as a "template", i.e. if your HandleSelect function doesn't have the same format as your HandleAction function, your HandleSelect function will never be called. Likewise for HandleUpdate.
Onward...


The HandleSelect function simply sets the "update" parameter. Here's the breakdown:


//The select handle function===============================================
int HandleSelect(object obj1, int chan1, object obj2, int chan2, int update)
{
int action, sib;
string class_name;


1. Get the current handle action (the script) & name of that action (the script's name)


action = ActionActive();
class_name = ActionClass(action);


2. Set this action's update parameter to 1 (on). This means that the objects/channels used by this action (obj1, chan1, obj2, chan2) will be used to update the handle's position. Note that "update" corresponds to the "int update" parameter of the HandleAction, HandleUpdate, & HandleSelect. I could have just as easily set the obj1, chan1, etc. params if needed.


ActionParamSet(action, "update", 1);


3. Set the previous & next actions' update parameter to 0 (off). This means that those actions will not attempt to update the handle. Note that we're only concerned with other instances of this script (denoted by class_name). Use the ActionIsClass function to ensure we're only modifying actions of this same class.


sib = action;
while(sib=ActionPrev(sib))
{
if (ActionIsClass(sib, class_name))
ActionParamSet(sib, "update", 0);
}

sib = action;
while(sib=ActionNext(sib))
{
if (ActionIsClass(sib, class_name))
ActionParamSet(sib, "update", 0);
}


4. Force the handle to update by calling our own HandleUpdate function. This is necessary because frame update messages are never sent when a handle is selected. Frame updating can be a costly operation, so handle updaing will need to be done explicitly.


HandleUpdate(obj1, chan1, obj2, chan2, 1);

return (1);
}


When the frame is updated, the HandleUpdate function is called. In this case, it repositions all the handles that make up the boxcontroller:


//The update handle function===============================================
int HandleUpdate(object obj1, int chan1, object obj2, int chan2, int update)
{
int handle;
int child, prev;
double x, y, posx, posy;
float r, g, b;
int stipple;


1. If this action isn't currently in charge of updating the handle, just exit the function. This value corresponds to that which was set in HandleSelect.


if (!update) return (1);


2. Get the currently processing handle. This is the handle to which this action is attached. In this case, it's the Marker handle for the boxcontroller.


handle = HandleActive();


3. Set the Marker handle's position based on the values from chan1 & chan2.


//update marker,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
posx = motchan(obj1, chan1, NOW);
posy = motchan(obj2, chan2, NOW);

x = (posx * BOX_SIZE) - BOX_HALF;
y = (posy * BOX_SIZE) - BOX_HALF;
x = Clamp(x, -BOX_HALF, BOX_HALF);
y = Clamp(y, -BOX_HALF, BOX_HALF);

HandleOffsetVecSet(handle, x, y, 0);


4. Determine the horizontal crosshair handle's attributes. In this case, it's setting an error color for the handles if the channel values go outside the boundaries of the box. And, just like on the EditSphere, it draws the lines in a stipple pattern if the corresponding channel has no key at this particular frame. The stipple number corresponds to the location in the Handle line style pattern tray (it's the 1st or 11th item in that tray).


//update crosshair,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
if ((posy<0)||(posy>1))
{
r = 1;
g = 0;
b = 0;
}
else
{
r = 0.94;
g = 0.60;
b = 0.5;
}

if (KeyChannelExists(obj2, NOW, chan2))
stipple = 0;
else
stipple = 10;


5. Set the horizontal crosshair handles's positions and attributes. The handled are repositioned so that they stay within the boxcontroller's boundaries.


child = HandleChild(handle);
HandleOffsetVecSet(child, -BOX_HALF-x, 0, 0); //horizontal line -
HandleColorVecSet(child, r, g, b);
HandleLineStippleSet(child, stipple);

child = HandleNext(child);
HandleOffsetVecSet(child, BOX_HALF-x, 0, 0); //horizontal line +
HandleColorVecSet(child, r, g, b);
HandleLineStippleSet(child, stipple);
HandleTextSet(child, str(posy));


6. Repeat steps 4 & 5, but for the vertical crosshair handles.


if ((posx<0)||(posx>1))
{
r = 1;
g = 0;
b = 0;
}
else
{
r = 0.94;
g = 0.60;
b = 0.5;
}

if (KeyChannelExists(obj1, NOW, chan1))
stipple = 0;
else
stipple = 10;

child = HandleNext(child);
HandleOffsetVecSet(child, 0, -BOX_HALF-y, 0); //vertical line -
HandleColorVecSet(child, r, g, b);
HandleLineStippleSet(child, stipple);

child = HandleNext(child);
HandleOffsetVecSet(child, 0, BOX_HALF-y, 0); //vertical line +
HandleColorVecSet(child, r, g, b);
HandleLineStippleSet(child, stipple);
HandleTextSet(child, str(posx));


7. Set the position of the box handles. This wouldn't really be necessary if the handles were originally positioned via the interface, however this method is more direct and it corrects any modifications that were made via the interface.


//update box edges,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
prev = HandlePrev(handle);
HandleOffsetVecSet(prev, BOX_HALF, BOX_HALF, 0); //start (tr)

child = HandleChild(prev);
HandleOffsetVecSet(child, 0, -BOX_SIZE, 0); //right edge (br)

child = HandleChild(child);
HandleOffsetVecSet(child, -BOX_SIZE, 0, 0); //bottom edge (bl)

child = HandleChild(child);
HandleOffsetVecSet(child, 0, BOX_SIZE, 0); //left edge (tl)

child = HandleChild(child);
HandleOffsetVecSet(child, BOX_SIZE, 0, 0); //top edge (tr)

return (1);
}

====================================================================================================

DMack
03-29-2005, 05:07 PM
PMG put those "delete" functions that was requested a few months back too!
Gotta give them props for that!

Hmmm...I guess I'm doing something wrong here but.......I can't see a change here....I've just tried highlighting a few keyframes and hitting the Delete key on my keyboard and it still brings up a requester (I thought this was being removed?) and so no KF's are deleted and if I OK the requester box, it still doesn't delete them all? Also, the dopemaster doesn't allow you to highlight and delete.......Am I missing something here????

DMack
03-30-2005, 06:11 PM
Anyone?....Lyle......Fred......Julez.....?

Julez4001
03-30-2005, 06:56 PM
Verifying .......


Lyle is AWOL for the moment. You know he's in the the dungeon.

Could have sworn this was changed.

DMack
03-31-2005, 07:48 AM
Thanks Julez,

Let me know what you have at your end....I just don't get it? I was sure that they said the delete changes were going in the next update and yet I can't see any difference?

Look forward to your findings.....and/or any info from PMG....

maks
03-31-2005, 09:07 AM
Hey DMack, there are new delete key commands, regular and also especially for the dope master. They are not assigned though, so you have to do it yourself - you can find them under Customize>KeyCommand Manager>Commands>Motion. :)
It's in the what's new page btw, and there are even more of these new commands than what's mentioned there...;)

DMack
03-31-2005, 09:54 AM
Maks,

You have once again provided solid advice - Thanks!

I did read through the what's new (in a rather excited manner) but I guess I missed it....I thought it'd be in a section about the 'graph editor'....maybe a LW kickback.

WOW! Assigned and now deleting all my hard work at break neck speeds!

A quickie Maks.....am I right in saying you can mimic the effect of the command 'Delete Keys Selected all' with the 'Delete Keys Selected' and having the A (for ALL) set as your key edit option? Still cool to have both (one on delete, one on shift delete) Great to be able to delete with the dope master aswell......so many options!

I sooooooo hope that Messiah:Animate is growing in popularity....seems like SUCH a good programme!

maks
03-31-2005, 10:17 AM
Thanks :)

Yeah, you are basically right in saying that the 'Delete Keys Selected all' does the same as 'Delete Keys Selected' with the channel edit setting set to 'A', but with the difference that the latter leaves the inactive keys intact, while the first also deletes the inactive keys. Just as do the LMB/RMB actions when clicking on the Delete button below the timeline - LMB deletes the channels according to the channel edit setting, RMB deletes all channels, including inactive keys. I just recenty reassigned my key commands as well, so that hitting enter and delete directly creates/deletes keys, without bringing up the panels, it really speeds up your workflow :D You can streamline messiah in so many ways through commands, or combined with armatures to create custom buttons, etc., it's really powerful! I think that many people new to messiah aren't necessarily aware of that fact, and that you don't have to stick to the default behaviours...

DMack
03-31-2005, 11:31 AM
So you don't use Auto Key Create? I never did in LW but have rather enjoyed it in Animate....

Sooo agree regards speed of workflow.....and as you say...the power of the commands/armatures makes for a formidable app!

I've got sooo much to learn....I would love an 'Inside Messiah:Animate'! Or a set of DVD's covering general programme features like you get for LW....But I digress and I've already mentioned this on another thread....

Once again thanks....and good to note the inactive key part....There's always another level in animate!!

maks
03-31-2005, 11:55 AM
Yeah, I use auto key, of course :D But I'm also used to create keyframe for several items at once, usually groups, and autokey alone doesn't allow to do that :)

As for an "Inside messiah" book, I believe that Dan Ablan is working on something...;)

lmilton
04-05-2005, 05:09 PM
WOW! Assigned and now deleting all my hard work at break neck speeds!

LOL!:scream: It's always great to begin the day with a good laugh, thanx DMack:)

I sooooooo hope that Messiah:Animate is growing in popularity....seems like SUCH a good programme!

Yep, messiah is definately growing in popularity:D

Thanx for your support!

-lyle

lmilton
04-05-2005, 05:18 PM
You can streamline messiah in so many ways through commands, or combined with armatures to create custom buttons, etc., it's really powerful! I think that many people new to messiah aren't necessarily aware of that fact, and that you don't have to stick to the default behaviours...

Hmmm... this looks like a good opportunity to take advantage of Armature. Did you know you could configure your hotkeys in one shot with the LoadKeyAssignments function? All you have to do is create multiple key configurations and save them to a file. Then create an Armature with handles that call LoadKeyAssignments with the appropriate files. This would be a cool way to, say, reconfigure the keypad keys to either change channels, set/get viewport configurations, etc. In fact, you could use a hotkey to change hotkeys.

Just thinking off the top... I hope that all made sense...

-lyle

lmilton
04-05-2005, 05:24 PM
Yeah, I use auto key, of course :D But I'm also used to create keyframe for several items at once, usually groups, and autokey alone doesn't allow to do that :)

I believe that's been requested before and should be on the List. If not, it is now;)

-lyle

CGTalk Moderation
04-05-2005, 05:24 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.