MACE (Morph Animation Compiler & Editor)
Goto page 1, 2, 3, 4, 5, 6, 7  Next
 
Post new topic   Reply to topic    IMVU Forum Index -> 3D Developing
View previous topic :: View next topic  
Author Message
Deliverance

Deliverance's page


Joined: 12 Dec 2006
Posts: 274
Location: Denmark

PostPosted: Thu Dec 24, 2009 7:28 am    Post subject: MACE (Morph Animation Compiler & Editor) Reply with quote

MACE (Morph Animation Compiler & Editor)

This tool is now available as a Flash sticker for your page, or at the time of writing, online here. Please remember to put your page into preview mode in order to use the sticker version. Respect and thanks to those who’ve helped out in testing it, and to FounderEffect for some awesome as3 programming. Requires Flash 10, so please update if you have not done so in a while.


What is it?

This is a tool that allows you to create morph animations simply. Specifically, it allows you to:
(i) Take an XMF and add ‘morph targets’ to it, and then save it as a new XMF.
(ii) Create XPF files to tell the client when and how to morph between the basic mesh and the morph target(s).


Whom is it for?

This tool is for people who already have the ability to create XMFs (i.e. meshers). Of the three applications currently used to make meshes, only 3ds max enables you to create morph animations. This tool adds to that capability by allowing you to compile animations from separate XMF files, instead of doing it all within the application. It is my hope that Blender and SU users will find the tool especially useful, though at the time of writing I believe that SU is not consistent in the order in which it outputs verts to the XMF file – meaning that this tool cannot track what morphs into what.


What do you need in order to use it?

You need 2 or more mesh (XMF) files. The only difference between the mesh files should be the position of the verts. Nothing else. That’s what morph animation is – moving verts from one position to another. Obviously, the number of verts must be the same in all the XMF files you use.

In practice, this means exporting the basic mesh as the first XMF file, and then moving the verts around and exporting a second version of the same mesh as another XMF file. This second XMF will be the morph target – i.e. the shape your basic mesh will morph into.


How does it work?

A morphing XMF file has the different shapes it can morph into embedded into it. This tool takes one XMF and embeds it, as a morph target, into another mesh. The tool also allows you to create an XPF animation file, which is a file that tells the client how to change between the basic mesh form and the different embedded shapes over time.


How do you use it?

Screenshot of the MACE tool:



Instructions for the impatient

Load your base XMF (1), then load your target XMF (4). Save the new XMF (7).
Click the first button in the ‘Draw’ box (14), and save the XPF (18).
Derive from something in the previewer and load your new mesh file as you normally would. Go to the ‘Actions’ tab and click ‘Add’. Type something for the trigger, then where it says ‘Morph Animation’, browse to your XPF file. Apply changes. Try the ‘Play Action’ button – but be aware that the previewer is not animation-friendly and you may well have to upload your product to see the morph in the client.


Complete product description

1 – Load XMF button. Loads the mesh file you wish to use as the basic shape.

2 – XMF filename of the base mesh.

3 – Morph target list. Selectable list of all the morph targets currently embedded into the XMF. Clicking on an item allows you to create and edit a morph animation for it.

4 – Load target button. Allows you to load meshes as morph targets. As soon as you load the target it will be processed, so if the file is big and/or your computer is slow, please be patient and wait until processing has finished (the name of the morph target will appear in the morph name textbox (5)) before clicking other stuff =)

5 – Morph name textbox. This shows the name of the morph target. Initially, it is based on the name of the file you loaded, but you can edit this textbox to use whatever name you wish – but you must keep all your target names unique.

6 – Morph type menu. This allows you to establish the way the morph responds when it has more than one animation going on at the same time. For more information, see here. There is also a ‘delete’ option, which removes the target from the XMF.

7 – Save XMF button. Allows you to save the XMF with embedded targets.

8 – Vertical slider. Creates or adjusts the value of the keyframe (blue blob) at the position of the left marker (10). Values range between 0% and 100%, where 100% represents full transformation into the morph target shape.

9 – Graph. Gives a visual representation of the morph animations.

10 – Left marker. This marker can be moved by sliding the corresponding pointer on the horizontal slider (15). The left marker is used to select a keyframe (blue blob), mark the beginning of a Range (17), and establish parameters for the Draw controls (14). Note that the left marker is black, while the right marker (12) is blue.

11 – Curve. The line describes the way the mesh morphs between the base shape and the targets shape(s) over time.

12 – Right marker. This marker is blue. It marks the end of a Range (17) and establishes parameters for the Draw controls (14).

13 – Curve controls. These controls allow you to set the sort of curve you would like to be drawn when using the Draw controls (14).
- Smooth. Sets how many keyframes you want.
- Ease. Allows you to set whether you want the transition to begin or end smoothly or abruptly.

14 – Draw controls. These controls provide a quick way of creating animations, without editing each keyframe individually. Each of the six buttons has a picture on it to show what sort of line is draws between the left (grey) and right (blue) markers. In addition, the first two button draw the entire animation across all 90 frames, including the part before the left marker and after the right marker.

15 – Horizonal slider. This has two pointers – one for the left marker and one for the right.

16 – Delete controls. There four buttons allow you to delete aspects of your animations.
- Key. Deletes the keyframe selected by the left marker (10).
- Range. Deletes all keyframes between the left and right markers.
- Morph. Deletes the current morph animation.
- All. Deletes al morph animations.

17 – Time controls. These controls affect the speed with which the XPF will play in the client. By default, animations created with this tool are 3 seconds long. The duration of the animation is given in the ‘Dur’ box. IMVU expects 30 frames per second (fps), and this value is given in the FPS box. 3 seconds, at 30 fps requires 90 frames, which is the number of frames available.

One way to make the animation last something other than 3 seconds is to change the duration. If you do this, you will see the fps change, but remember that does not refer to the client – it only refers to how the 90 frames in this tool are spread out.

In the time controls there is a button labeled ‘R’ for range. If you click it the area between the left and right markers will be shaded blue. When the range is activated in this way, the Duration shown is that of the range (i.e. not the whole 90 frames), and if you save the XPF (18) only the range will be exported.

18 – File controls. These allow you to load and save XPF files. If the range button (17) is activated only the range will be saved. On loading an XPF file that is shorter than 3 seconds, you are given the opportunity to spread it out across the 90 available frames.

19 – Forum. Takes you to this post in the 3D forums. I will try to answer questions as and when I can, but I cannot guarantee it. Many many thanks to others who help out here!


To make your morph 'stick' - i.e. remain in place for ever, do the following:

i) In your XPF leave a few frames at the end where the animation is stable at 100% (or whatever value you want). Take note of the first and last of those frames (say 30 and 90).
ii) In the previewer, in the 'Morph Animation' section, look for 'Frame controls'. In the box marked '# loops' type 0 (which means infinite loops). In the 'Loop start' and 'end' boxes type in the numbers of the first and last frames of the stable part of the animation (in this example, start the loop and 30, end the loop at 90, and repeat for ever).

Good luck!


Last edited by Deliverance on Thu Jan 07, 2010 5:34 am; edited 3 times in total
Back to top
View user's profile Send private message  
Arezeon 18+ Age Verified

ArezeonĀ <a href='/age_verify/index/'><img src='/common/img/icons/age_verified_35x18.gif' width='35' height='18' alt='18+ Age Verified'/></a> 's page


Joined: 06 Jan 2009
Posts: 4999
Location: India

PostPosted: Thu Dec 24, 2009 8:07 am    Post subject: Reply with quote

I tried with a box made in max with .exclusive thing and its working fine as it shows in the graph ..

Perhaps others can try it with .clamped , .additive etc. or even some meshes from blender or sketchup Very Happy

b/w thats awesome programming Cool

Perhaps a little more description of what limit and dialate do will help and also how to increase the time line beyond 90 Very Happy
_________________


| Products || Dev Credits || Facebook || Group |
Back to top
View user's profile Send private message  
Deliverance

Deliverance's page


Joined: 12 Dec 2006
Posts: 274
Location: Denmark

PostPosted: Thu Dec 24, 2009 8:15 am    Post subject: Reply with quote

Hi Arezeon! Awesome! Thanks so much for testing!!

And yes - I'm really eager to hear from SU and Blender people on this =)

As for limit/dilate - that functionality is not yet implemented (for which, read: I got side-tracked by Christmas lol). Those controls currently do *nothing*. But they will in the next version!
Back to top
View user's profile Send private message  
Arezeon 18+ Age Verified

ArezeonĀ <a href='/age_verify/index/'><img src='/common/img/icons/age_verified_35x18.gif' width='35' height='18' alt='18+ Age Verified'/></a> 's page


Joined: 06 Jan 2009
Posts: 4999
Location: India

PostPosted: Thu Dec 24, 2009 8:17 am    Post subject: Reply with quote

yw and how to increase the time frame beyond 90 ? is there a way or I missed something ?
_________________


| Products || Dev Credits || Facebook || Group |
Back to top
View user's profile Send private message  
Deliverance

Deliverance's page


Joined: 12 Dec 2006
Posts: 274
Location: Denmark

PostPosted: Thu Dec 24, 2009 10:30 am    Post subject: Reply with quote

Hi again!

I will probably leave the number of frames available at 90. By default, that’s 3 seconds at 30fps. I think that the vast majority of morph animations are, unlike skeletal animations, 2 or 3 frame affairs and occur over a time of less that three seconds - so this editor, I hope, greatly exceeds what most people would need.

That said, once the coding is finished, you will be able to spread those 90 frames over any length of time, so if you play the animation over a minute and a half, you would have a resolution of 1 frame per second. That’s what the ‘Dilate’ value will be for. Remember too that if needs must, I think you can also string morph animation files together and play them one after another.

Oh – Do try it with more than one simultaneous morph target, too. The editor lets you do multi-track animations =)
Back to top
View user's profile Send private message  
MorpherGoddess

MorpherGoddess's page


Joined: 13 Oct 2008
Posts: 329
Location: Thailand

PostPosted: Thu Dec 24, 2009 9:13 pm    Post subject: Reply with quote

Bravo Meriea !!

This is yet another great contribution to the developing community and is very useful for those Blender and SU users!!

Happy Holidays. Smile
_________________
Back to top
View user's profile Send private message  
DevXs_disabled_38136704

DevXs_disabled_38136704's page


Joined: 13 Jun 2009
Posts: 127
Location: France

PostPosted: Fri Dec 25, 2009 9:36 pm    Post subject: Reply with quote

Wow Great Program Thanks For Sharing Smile Happy Holidays Smile
_________________
Back to top
View user's profile Send private message  
Hellstrong

Hellstrong's page


Joined: 27 Oct 2007
Posts: 3768
Location: Netherlands

PostPosted: Fri Dec 25, 2009 11:08 pm    Post subject: Reply with quote

Deliverance wrote:
Hi Arezeon! Awesome! Thanks so much for testing!!

And yes - I'm really eager to hear from SU and Blender people on this =)

As for limit/dilate - that functionality is not yet implemented (for which, read: I got side-tracked by Christmas lol). Those controls currently do *nothing*. But they will in the next version!


Hmm not sure if i get all what you wrote, but i will get it when i play arround with it, this might be one of the most awesome things for SketchUp Users like me. ^^

Thanks
_________________
SCREENIE | IMVU CACHE CLEANER | IMVU FILE EDITOR
Back to top
View user's profile Send private message  
TonyTUK

TonyTUK's page


Joined: 18 Aug 2007
Posts: 16
Location: United Kingdom

PostPosted: Sat Dec 26, 2009 8:30 pm    Post subject: Reply with quote

Hello Deliverance
Just a little note to say Many Many Thanks for putting all the effort into this ..
and i will be trying with blender within the next few days so i will try and keep you posted with how i get on ..
Thanks Again and Happy Holidays Very Happy
Back to top
View user's profile Send private message  
TonyTUK

TonyTUK's page


Joined: 18 Aug 2007
Posts: 16
Location: United Kingdom

PostPosted: Mon Dec 28, 2009 8:34 am    Post subject: Reply with quote

Hello Again Smile

Just a little note to say .. Thank You Smile Smile
I've just created a simple cube morph using Blender XMF files ..
nothing fancy as i wanted to keep the vert numbers down etc just for test purposes ....
and it works wonderfully Smile .. Thank you
to show you it in action .. it's product ID 4714619
or direct link :
http://nl.imvu.com/shop/product.php?products_id=4714619
Trigger word = morph1

sorry its nothing fancy i just havent had much time to play
but hope to get time over the next couple of days

and if you ever need to peek at any Blender files, please dont ever hessitate dropping me a note .. it would always be a pleasure

once again many many thanks for your time and effort
TonyTUK
Back to top
View user's profile Send private message  
Hellstrong

Hellstrong's page


Joined: 27 Oct 2007
Posts: 3768
Location: Netherlands

PostPosted: Mon Dec 28, 2009 8:58 am    Post subject: Reply with quote

TonyTUK wrote:
Hello Again Smile

Just a little note to say .. Thank You Smile Smile
I've just created a simple cube morph using Blender XMF files ..
nothing fancy as i wanted to keep the vert numbers down etc just for test purposes ....
and it works wonderfully Smile .. Thank you
to show you it in action .. it's product ID 4714619
or direct link :
http://nl.imvu.com/shop/product.php?products_id=4714619
Trigger word = morph1

sorry its nothing fancy i just havent had much time to play
but hope to get time over the next couple of days

and if you ever need to peek at any Blender files, please dont ever hessitate dropping me a note .. it would always be a pleasure

once again many many thanks for your time and effort
TonyTUK


Hey Tony, what is it supposed to do? cause nothing happens when i play action in the previewer
_________________
SCREENIE | IMVU CACHE CLEANER | IMVU FILE EDITOR
Back to top
View user's profile Send private message  
TonyTUK

TonyTUK's page


Joined: 18 Aug 2007
Posts: 16
Location: United Kingdom

PostPosted: Mon Dec 28, 2009 9:02 am    Post subject: Reply with quote

hello hellstrong
it rotates and turns into a pyramid
works perfectly in the client ....
mmmm .... once its through review i'll stand one in my demo room so everyone can peek Smile

many thanks
i'll post again soon
TonyTUK
Back to top
View user's profile Send private message  
Hellstrong

Hellstrong's page


Joined: 27 Oct 2007
Posts: 3768
Location: Netherlands

PostPosted: Mon Dec 28, 2009 9:05 am    Post subject: Reply with quote

TonyTUK wrote:
hello hellstrong
it rotates and turns into a pyramid
works perfectly in the client ....
mmmm .... once its through review i'll stand one in my demo room so everyone can peek Smile

many thanks
i'll post again soon
TonyTUK


hmm yes, its mysterious how diffrent previewer versions work Razz
So thats probably it =]
_________________
SCREENIE | IMVU CACHE CLEANER | IMVU FILE EDITOR
Back to top
View user's profile Send private message  
TonyTUK

TonyTUK's page


Joined: 18 Aug 2007
Posts: 16
Location: United Kingdom

PostPosted: Mon Dec 28, 2009 9:16 am    Post subject: Reply with quote

yeah i get the same problem with animations some times Sad

I've just put one in my demo room , so hopefully everybody can see it now ...

LOL you cant miss it .. its the ugly red box at the bottom of the stairs Smile .. but at least it saves trying it in previewer Smile

just type my name "TonyTUK" into the room list
or heres a direct link if it posts in here ...
imvu://room/TonyTUK/TonyTUK+Demo+Club

Trigger words : morph1

hope everyone can see it now
and i'll try to do a multiple morph one next
and keep you posted

TonyTUK
Back to top
View user's profile Send private message  
Hellstrong

Hellstrong's page


Joined: 27 Oct 2007
Posts: 3768
Location: Netherlands

PostPosted: Mon Dec 28, 2009 9:54 am    Post subject: Reply with quote

@OP ok i just had my 1st try, just followed your instructions step by step, but nothing happens when doing the trigger in client.

Ill open the XMF files in notepad and see if SketchUp somehow adds verts or something, but ill hope i just did somethiing wrong Razz
_________________
SCREENIE | IMVU CACHE CLEANER | IMVU FILE EDITOR
Back to top
View user's profile Send private message  
Display posts from previous:   


Hide ads? Get VIP!
Post new topic   Reply to topic    IMVU Forum Index -> 3D Developing All times are GMT - 8 Hours
Goto page 1, 2, 3, 4, 5, 6, 7  Next
Page 1 of 7

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


 FAQFAQ   UsergroupsUsergroups   RegisterRegister  ProfileProfile   Log in for private messagesLog in for private messages 

Search the forums:


Powered by phpBB