nav2

Showing posts with label bugs. Show all posts
Showing posts with label bugs. Show all posts

Friday, March 1, 2013

Blender-->maya pipeline. Setting a reference network



Getting the stuff from blender to maya had its quirks.
I'm gonna share this mini tutorial with the hope it will save somebody else the frustration that I had to go through.

If  you pose your assets and export them together to an fbx file, this is what you are going to get in maya.

To get around the mesed up translations and rotations, I had to apply all object's coordinates. This in blender terms means that their local origin is going to move to the world origin.
That unfortunately stacks them on top of each other
Each is on its own sepparate layer in blender, so its easy to toggle that mess off and work on stuff individually.

Another thing I did was making sure my scale is the same in both packages. To do this I set up the metric system in both to be consistent. One grid square=1 meter (scale =.01 in blender). I set the same values in maya in advance.

Then I export it with the following settings. 

modifiers are being applied on export, so I made sure that all subdiv modifiers in the scene are removed. 

Maya's default world orientation is y=up, -z=forward. Whats nice though is that it kept the parent-child relationships between objects, so It kept my null controllers and turned them into locators. This makes it easy to move objects in the scene that have multiple meshes.




Referencing:

So why is referencing useful? It allows you to make changes to your model and rig after you have skinned it. It's also a neat way of isolating data blocks in separate files - making it more manageable. It means being able to  swap different versions of geometry and your rig with a few clicks. - load a low poly proxy (cubes), continue to improve a rig after you have started doing animation on it (in my case its adding facial controls after finishing body animation). It means being able to track down issues easier. It does add to the loading time though.


One thing that I found with my last animation project is that while you can edit referenced files in Maya to a certain extend, every edit you make to them of course stays in the maya scene file, its not done to the (in this case FBX) reference. 

It's a good rule of thumb to keep edits to a minimum, as it contaminates the scene and increases the chance of problems. So I never do stuff like editing the geometry of an object that is referenced in the scene. The reference edits list window in maya keeps track of everything you've done to the reference. Sometimes if a scene is broken (crashes on load), its a good idea to load it without its references loaded, find the problematic ones and clean up their list a bit.

In this case, maya is storing only the new locations of the controller objects and unfortunatelly the frozen transformations command that I did before moving them into place.
Blender rotates all the stuff accordingly and adds rotational offset to the values in the fbx. I had to zero them out in maya.

Referenced objects paths:
If you use the file manager to load and reference a file, by default maya will use the full path of the file. As a result if you move your projects folder to a new place, new computer or drive- all of your reference links will become invalid and you will have to manually relink them. It doesnt sound like a big deal, but if you have a big and complex network that can become an issue on an operating system such as windows, where you cant create symbolic links. So the computers at university have maya on windows, while I use maya on linux at home. Maya on windows has poorer performance and tends to crash more often. Submitting my source files to uni computers meant that all the reference links would get broken and likely my tutors will be unable to open them without having to spend at least half an hour relinking the files. As an extra annoyance both maya 2013 on windows and linux have a bug where when it prompts you for the new path and you give it , it doesnt apply it and also makes you wait for ages to search the files and fail.


So what was the solution to that one? It's pretty tough to find with google and after searching I found that other people have had the issue but their solution was sort of wrong and wasnt really a solution.
At the same time I was pretty sure that maya has the ability to use local paths for anything that is inside the project folder. However to make all the paths local I had to change them manually, without using the file browser. So after renaming each to use local links, now all my references just work out of the box, wherever you move the project folder.But it's my suspicion that whoever opens it after me has to make sure they set the project folder location.

MAYA BUG: Unfortunately Maya 2013 (and older?) has a bug where it does allow you to use fbx files as references, but does NOT allow you to have local path linking for fbx files (only full paths- even tried with fbx files created by Maya). That forced me to import my blender fbx files to maya, save them as maya binary files and then replace the fbx references that I have with mb ones. It means that every time I make changes to my models in blender, Instead of updating automagically where they are referenced, I will have to manually import them in maya and save them as mb/ma files. :(

Autodesk, please fix this bug!!
Do let me know if you know a better solution. :)

Friday, February 19, 2010

Flash CS4 bugs and how I managed to get over them

This is my second rig for the boy, which I made sure will be more stable and more controllable than the first I made:



Obviously I had to take it apart and mess it up to demonstrate the set-up. The only symbols of the rig that contain variations/animation are the hands and the head, thought in some cases it might be useful to have that for the torso as well. One thing that could have been done to improve this is to make it possible to move the character's shoulders by adding one extra chain with a hidden symbol between the neck and the upper arm.



Bugs in flash cs4
Here is my report on problems I met while doing my Toast! animation for Bradford university. I might have to add some more to the list, as it is not completely finished yet.

Bugs with the rigs/ rigged symbols:

*Bug: Head symbol animation won't play properly timed in test movie/exported file, thought it plays just fine in flash cs4. It will freeze on the first frame it is set to start from
+fix: When you have an armature layer, be sure to set it to start from frame 1 and it doesnt have any blank space before it starts. Put it in a symbol and have that symbol start the armature animation inside from frame one.You can tell the head symbol to start from whichever keyframe it starts in the particular scene in the armature itself.


*Bug: After the armature is keyed and animated, for some reason its messing up the pivot points and that causes limbs/head/bodyparts to fall off.Even when you move them to attach them back, that breaks their position in previous keyframes.
+fix: Quickest way is to just start over and
DO NOT DO the following after you start keying the armature (you can only do it before you animate), it will cause this bug:
--don't use the transform tool on the armature layer- be it parts of the armature or the whole layer.If you need to move the whole model, put it in a symbol or set the armature in a way that lets you move it (enable movement on root or skeleton).
--don't touch any pivot points
--don't alter any of the constraints that you have already set up. Be sure to check that you don't have to add or take value before you start animating. You can enable and disable rotation and so on, but you can not touch the constraint values that you have set before animating.
--Don't ctrl(+shift)+up/down -- arrange the symbols -- after you start keying your armature. It might cause weird problems.

*Bug: After copy-ing the symbol that contains armature animation and transform-->flip it horizontally on a keyframe, that flips the symbol everywhere else (in all scenes that it is used in)
+resolution- I couldnt quite find a solution to this problem. In my animation,I had to turn my character to the other direction and make him run. The only way to do that was to create another armature and use most of the symbols from the previous one.


*Bug: If you have multiple symbols on one layer ,and you select them ,right click and choose "distribute to layers", Flash CS4 might either give you "unknown error" or crash altogether,losing all your progress.
+ to avoid: dont "r.click>distribute to layers" many symbols and especially if they contain other symbols. Save your progress before doing that.

Flash CS4 symbol armatures can NOT do the following things:
You can not set loop/start/single frame on every keyframe of the armature's layer. If you need facial animations, you can only tell the armature where to start from, so the whole timing of that animation must be inside the (head) symbol itself, no cheating there.
You can not put any blank keyframes in the armature layer.
If you resize it in timeline, it will also alter the timing of the animation, it will take away or add space between your keyframes (really annoying!)

You can not really move any keyframes of the armature layer. You can only cut and paste them one by one (no multiple select). Some times it just does not work at all. When you paste a keyframe of a pose, it just adds the keyframe there,but doesnt add the pose itself.

Shape armature: Its somewhat limited and hard to move. It makes the file harder to play. You can not attach it to a symbol armature,which is a real pity.You also have to use the bind tool to skin the shape. The bind tool has one of the worst gui's I have ever seen in my life. It's deformation point markers are huge and often overlapping each other, even when you zoom as much as possible. That makes it hard and even impossible to select individually (or see for that matter) some of the control points (or most of them).So when you make a shape to rig, for the love of god, draw the shape with the pen tool- use as less as possible control points!


My overall impressions of Flash CS4:
Shame on you adobe, for releasing such a bug-riddled version of flash! It introduces the new ik features,but It is so buggy and limited, that it is somewhat better to avoid using ik if possible. If you want to have nice IK structures and parenting, go for Anime studio (moho) or toonboom Animate. Both are nicer for animation , more stable and probably cheaper as well. Flash CS4 has caused me some grief, but I think that I managed to establish some control over some of it's new features.

Monday, February 1, 2010

flash animation project character designs + IK in cs4...

After completing my storyboard for the 30 second animation, the next logical step was to do the character designs- their size and colors. I still have the backgrounds to do, though I can leave them for the end.

name of project: Toast!
duration: 39 seconds (I might have cut it 9 secs, will try to beg my tutor to give me 9 extra seconds)

Character sheet:



Its not perfect perfect- I know, But i dont really need it to be at this point.

I will release the storyboard this week, at this blog .. I made both an animatic and a pdf storyboard

Meanwhile,I've been studying the new features of Flash CS4, since my experience is on cs3. The new version does introduce some really good features, namely inverse kinematics. After seeing how simple it is implemented and how powerful it can be, I decided to move to actionscript 3.0 fla files for the project (since 2.0 doesnt support ik). The new tweening system, the two types of armatures and their inverse kinematics are really going to save me a lot of headaches!

Watch about how to use IK in flash here:
http://www.youtube.com/watch?v=_iql2VMnKCA