Bone names and limits

General discussion about JPatch

Postby dcuny » Fri Nov 04, 2005 9:51 pm

Since I don't know if you've had a chance to look at AoI yet, I thought I'd post a screenshot of their bone dialog. It's missing the option to adjust the order of operations, but other than that, it's fairly complete.

Image

I like the tool that displays the "total" and "comfort" range. I find the layout a bit hard to read; it could use some lines to break it into four different parts.

I see that Length is apparently under IK control. I should play around with that a bit and see how it behaves.

Oh, yes - it's missing the "Don't attach points to this bone" option. ;)
dcuny
 
Posts: 2902
Joined: Fri May 21, 2004 6:07 am

Postby sascha » Fri Nov 04, 2005 9:57 pm

Try it out - it will print 1.0000001
I'm more than familiar with this issue - I've written a Basic interpreter.

Oh, stupid me, sure! I just had to mention that because I was quite stunned the first time I read about that.

You know, I'm sort of suprised you're not getting any feedback from other users. I know that A:M folk occasionally pop by to see what sort of progress you're making...

I'm not sure why, but they seem to be scared (of what?). I sometimes get e-mails from A:M users who offer their help, but most of them don't want to join in to the open discussion in the forum.
And I haven't got any further mail from Martin Hash either :wink:

It really isn't easy to not clone A:M. I mean, that I started with a patch modeler was a mere coincidence (I really wasn't aware of A:M, I started to build an animation tool for sPatch...) - but A:M is, as far as character animation is concerned (and that's the main focus for me) quite present, so it's hart to get around it. I'm not sure if it's a good or a bad thing that I don't own a copy of A:M. Sometimes I consider buying one.

Btw, I once read a thread (in another forum) where someone accused me of copyright infringement because JPatch looks like A:M (which is of course a bit half-witted, I mean, it's written in a different programming language...)
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby dcuny » Fri Nov 04, 2005 10:57 pm

Sascha wrote:Oh, stupid me, sure! I just had to mention that because I was quite stunned the first time I read about that.
Sort of like using integers in division, right? My co-worker ran into something similar when ASP.NET accepted "11/12/205" as a valid date, but SQL Server blew up. Oh, the joys of programming! ;)

I'm not sure why, but they seem to be scared (of what?). I sometimes get e-mails from A:M users who offer their help, but most of them don't want to join in to the open discussion in the forum.
Well, Hash has banned people from their forums in the past, but that's typically for breaking forum policy (i.e.: complaining about bugs, or talking about competitor's products).

But as far as I know, there's no such restriction against talking about A:M on other forums. I've never heard of someone getting banned for something they've said on a different site. (Then again, how would you hear about that? ;))

The thing is, you're not really so much interested in knowing how something works in a particular product as what works well (or equally important, what doesn't work well). There are a lot of ideas that seem good until you try implementing them, and then discover they're not necessarily the best thing after all.

For example, here are some things I've been mulling over on my "suggest to Sascha" list:
  • I'm not entirely convinced that the A:M tool for handling translation and scaling is better than the Maya-style version of the tools.
  • Instead of using FK handles, Animanium toggles between FK and IK mode. Is this better than having to grab tiny little FK handles (which can be hard to see and manipulate)?
  • Another feature of Animanium is that when you move the mouse pointer near a joint, that joint and the associated mesh that it controls automatically highlights:
    Image
    This strikes me as pretty neat, but is it really helpful?
Because I don't have enough experience using various other tools, I'm not really in a position to say if they're good ideas or not. So it's really helpful if people who have used these various tools chimed in, so we could avoid learning things the hard way. :D

(By the way, Sascha - if you haven't played with Animanium, you should do so. There's a free version you can download to play with, and I think there are a lot of really innovative ideas with their user interface).

Btw, I once read a thread (in another forum) where someone accused me of copyright infringement because JPatch looks like A:M (which is of course a bit half-witted, I mean, it's written in a different programming language...)
My understanding is that you can't claim to own an interface (like VCR buttons, or the Lotus 1-2-3 interface), but artwork is copyright. So you could have a program with the same layout as A:M, the same controls and trees rigth down to the same buttons with the same text, but you couldn't use their icons, since they own the right to their artwork.

Although the icon on the top of your model list isn't the same icon that appears in the A:M program, it's very, very close. While I don't think Hash could reasonably argue that they own the look and feel of a "bone", "hand" or "arrow" icons (they are all generic object), I think the JPatch version looks too much like Hash's - especially taking into account that it's an icon of Thom, their mascot. To the casual observer, they look the same.

I think changing the color and orientation of that particular icon would be enough to make it visually distinct. At some point in the future, it would be nice if JPatch could get all its icons reworked so there's a consistant feel to them.
dcuny
 
Posts: 2902
Joined: Fri May 21, 2004 6:07 am

Postby sascha » Sat Nov 05, 2005 9:14 am

By the way, Sascha - if you haven't played with Animanium, you should do so.

I didn't know that there is a free version. I'll have a look at it as soon as the next development version (0.5.2) is out. I've seen AOI's DOF interface in a screenshot, but never actually played with it.

My understanding is that you can't claim to own an interface (like VCR buttons, or the Lotus 1-2-3 interface), but artwork is copyright.

As far as code is concerned, I think the situation seems quite clear: Copyright infringement riquires to copy something (e.g. parts of their code). With software patents the situation would be worse (someone could patent a particular algorithm or even workflow), but forunately they have been at least temporarily banned here in Europe.

As far as the icons are concerned, I agree with you. I wasn't aware that my model icon is their "mascot", so I'm gonna change that.

it would be nice if JPatch could get all its icons reworked so there's a consistant feel to them.

When working on the new morphs I drifted off a little (I had to rework the way JPatch uses Actions, MenuIcons and Buttons) - long story short: there is now an xml-file that is loaded on startup and defines all menu-structures and toolbar-layouts. You can now assign a button, menuicon and key-shortcut to any "command" JPatch offers. It would be easy to add a "icon" tag to the xml-description, so you could use custom icons for the buttons. This could be used to apply "themes": A jar file with and xml-file describing the toolbar and menu-layouts, maybe some icons and perhaps even a Synth look and feel. JPatch would be a real chameleon. Users could define their own layouts, icons, colors, key-shortcuts and optionally even look-and-feel - and I could include them into the JPatch distribution. If you're used to programm XYZ, you could simply load JPatch's XYZ "theme" and would get a similar layout and similar key-shortcuts.

This is a first step towards plugins too: After all, a plugin needs a standardized way to "plug in" to the user-interface. But a plugin-API will not be available before version 1.0.
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby dcuny » Sat Nov 05, 2005 10:59 am

Sascha wrote:I didn't know that there is a free version. I'll have a look at it as soon as the next development version (0.5.2) is out.
Animanium is interesting, in that it's optimized for working with bone-based animation. Since that's the only thing that it does, it's got some fairly specialized tools, so I don't know how applicable some of them would be to JPatch. But it's definitely got some stuff that I haven't seen anywhere else.

I've seen AOI's DOF interface in a screenshot, but never actually played with it.
All right, I'll stop bugging you about it until 0.5.2 is released. Actually, once you've got that out, I'm assuming that you're going to start working on the IRTC contribution.

As far as the icons are concerned, I agree with you. I wasn't aware that my model icon is their "mascot", so I'm gonna change that.
I'm guessing that one icon is causing more consernation than anything else in the interface. :D

t would be easy to add a "icon" tag to the xml-description, so you could use custom icons for the buttons.
I was only noting that there's a stylistic difference between the icons, and it would be nice at some point if they were consistant. But it's in the "spit an polish" category. I'm sure that you'll be adding new icons as you add new features to JPatch, so now isn't really the point to focus on that.

I used to be as gaga as anyone else about skins and themes and such. (I even wrote a DOS window manager that supported multiple themes). But no matter what theme you pick, it disappears into the background as you focus on your work.

I think the default theme you're currently using is very nice, and looks good on multiple platforms.

Of course, if having JPatch support multiple themes is something high on your personal priority, by all means add it! 8)
dcuny
 
Posts: 2902
Joined: Fri May 21, 2004 6:07 am

Postby sascha » Sat Nov 05, 2005 11:57 am

Of course, if having JPatch support multiple themes is something high on your personal priority, by all means add it!

Not it all. I just meant that it would be possible. I for myself will provide a single icon set and the JPatch look-and-feel (which is basically Java's crossplatform "metal/ocean" theme with only a few modifications).

Keyboard shortcuts and menu/toolbar layout is something different. I think user-editable key-shortcuts are a good thing, so a diaglog to change the key-mapping will be a part of JPatch (Tee already added it, I just have to make a few minor modifications so it can work with the new code) - the same is true for color preferences (which are already implemented).

This xml-based menu/toolbar layout is in the first place a help for me: Often I don't know where to put a new feature, so it ends up in the "tools" submenu of the popup menu. The xml-control file just makes it easy to change that - just cut'n past the item (or whole menu) to a different location.

Since the xml syntax is fairly simple, I could imagine "opening" that feature for users: You could specify your own xml-file to arrange the toolbars and menues the way you like. Here's the current file: layout.xml.
There's nothing but the positions of buttons and menuitems - all the complex stuff (enabling/disabling certain actions, using checkboxes or radiobutton-groups, etc.) is handled by JPatch.
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby sascha » Sun Nov 06, 2005 10:11 am

To follow up that discussion about A:M: I've seen posts in A:M related forums where users hold the view that JPatch can be used to "evaluate" spline modelers in general or A:M in particular.
Now, I would like to do something against this (common?) misconception and write a short note on the homepage telling that JPatch's spline modeling is quite similar to A:M's (in the same sense that e.g. most pologon- or SDS- modelers are somehow similar), but is in no way related to Hash Inc. or A:M, should not be seen as an open-source pendant to A:M and can of course not be used to evaluate A:M.

I'd like to do that for two reasons: Firstly I don't want that false claims about JPatch spread out and secondly I don't want to get troubles with Hash.

Do you think that such a statement on the homepage would be adequate and could you help me with the wording?

Thanks!
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby Torf » Sun Nov 06, 2005 1:07 pm

sascha wrote:I'd like to do that for two reasons: Firstly I don't want that false claims about JPatch spread out and secondly I don't want to get troubles with Hash.

I wouldn't worry about getting in trouble with Hash - after you're not the one who presents JPatch as a possible evaluation for A:M.

Do you think that such a statement on the homepage would be adequate and could you help me with the wording?

IMHO, if you don't want JPatch to be thought of as an A:M clone, then make sure it isn't one. Don't get me wrong, I've never used A:M and can't say how much JPatch and A:M have in common. But if JPatch would be very different from A:M, nobody would claim that it's a clone.
To me, those "We're not trying to clone this and that" statements on OS projects' homepages sound strange - I don't know any project which was started to create an exact clone of sth. else. Copying good ideas - why not? That's what the whole software industry is doing all the time. But pure cloning? Pretty boring from a developer's point of view :wink:
Torf
 
Posts: 155
Joined: Mon Nov 08, 2004 8:45 pm
Location: Germany/Konstanz

Postby animohn » Sun Nov 06, 2005 3:11 pm

I tend to agree with Torf on the Hash thing.
I think a statement that Jpatch is not intended to be an A:M clone just draws attention to any similarities the two may have. The less A:M is mentioned on the site the better it is for all parties.

I’d also like to make some suggestions of what I think should be added to Jpatch in the near future. My interest in jpatch is for character animation (cartoony style in particular). Some of these I know you have already thought about.

1st Editable motion curves I was reading a book ‘3d Aanimation with Maya 6’ in it at the very beginning they say: “the secret to believable animation resides in the animation graph editor.” The ability to not only see the curve but manipulate it’s shape with handles is very important. In maya you can also view the xyz curves of an object on top of each other which appears very useful.

2nd Bone Stretch I know you’ve mentioned this one already. For cartoon style this is a must. I just don’t want you to forget about thinking about this one while you get the basic bones working.

3rd Eye Tracking. Game developer magazine had a nice series of articles on animating eyes. They mentioned how a number of 3d packages have tracking system where the eyes will automatically focus to a moveable reference point in the distance. This would be very handy to set the basic eye keyframes and then be able to manually adjust those keys afterwards for refinement.
animohn
 
Posts: 31
Joined: Mon Jan 31, 2005 4:19 pm

Postby dcuny » Sun Nov 06, 2005 5:59 pm

I think animohn is right - actions speak louder then words.

Hammapatch also gets mentioned quite often in these sorts discussions, but no one things of it as an A:M clone. So whileJPatch is brought up as a possible way to evaluate A:M, people are always careful to add the it differs from A:M in a lot of respects, too.

The reason any program gets mentioned at all is that people are either looking for a free way to evaluate A:M (Hash doesn't have evaluation copies of A:M) or they're looking for a way to export a model using something to a format that Hash doesn't support well.

In a lot of ways, JPatch is intentionally similar to A:M. This is a good thing - A:M is a great program, and they got a lot of stuff right, especially with regards to spline animation. But JPatch is still in it's alpha release - bones are just being integrated back in, and lots of other basic features (like UV mapping) are still nowhere in sight.

I don't think you really have to worry about it. As JPatch progresses and you add more features, it'll naturally diverge from A:M even more. But I suspect that, since Hash still has no plans to release an evaluation copy of A:M, people will still to point to JPatch as the "closest thing around", not because it's a clone, but because it's the best free spline modeler/animator available.
dcuny
 
Posts: 2902
Joined: Fri May 21, 2004 6:07 am

Postby sascha » Sun Nov 06, 2005 6:49 pm

Thanks for your opinions!

I'll try then to not mention A:M on the homepage too much (and I've changed my "model" icon).

1st Editable motion curves

Yes, I'll plan to have them fully editable - including selecting multiple keys at once (like in the modeler), moving, scaling, cut&paste, etc...

2nd Bone Stretch

Will be implemented. I have three option in mind: With the standard option, the model would just elongate/shorten with the bone. In case of an arm - the hand would become longer/shorter, but keep a constant thickness (radius).
The second mode would make the model more thick - its like a scale operation. E.g. a toon-character hits his thumb with a hammer and the thump pulsates (grows and shrinks periodically). The third mode would be the opposite of mode 2: E.g. when the arm gets longer, it automatically becomes thinner - like it's trying to preserver the volume - I think this is a classical cartoon effect (the character tries to keep hold of something that falls down or drives away - and his arms become longer and thinner...)

3rd Eye Tracking.

I could add a simple "look at" constraint for eye bones. I think this somehow belongs to IK. I guess the first steps towards IK will be some highly specialized solvers - e.g. for shoulder/elbow, hip/knee or fingers. These simple systems have the advantage that the number of DOFs is fixed (and relatively small) - if the user controls all redundant DOFs, there is always exactly one analytical solution. More complex IK chain always have multiple solutions - some solvers use jacobian matrices, others iterative approaches, but I think all of them require some sort of "energy minimization" to find a reasonably comfortable pose and to prevent joints from "fidgeting" around. This will require a lot of experimentation (and looking at AOI of course).

and lots of other basic features (like UV mapping) are still nowhere in sight.

I intentionally waited with u/v mapping until bones are supported. I think bones can be quite helpful hints and tell the program how to unwrap the model into a 2-dimensional u/v map. I think the most common usage will be two maps, one for the front and one for the backside of the model (and maybe some special higher-resolution maps, e.g. for the face). It could be quite difficult to tell wheter a point belongs to the front or back of a model - bones come in handy - you just have to check if the point in question is in front of or behind the bone it belongs to - relative to the viewer. My idea was that you could first pose the model (e.g. rotate the arms such that the palms face forward or backward (but not downward as in most reference poses), place the camera directly to the front and click on generate u/v maps - it would auto-generate a front- and back- map using the heuristic described above. Using the bones as axis, its also simple to "flatten out" the map. Altogether I think this will be straightforward to use (just as the bone-autoassignment) - a few clicks and you are ready (of course there will be a mode to fine-tune the u/v map).
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby rjh » Mon Nov 07, 2005 6:23 pm

Hey Guys,

Lots of exciting news going on here! Reading through it all has me quite anxious. I've updated to the Java 1.5.0.05 jre and am ready to start testing! I know that there are (were?) some serious bugs in the 0.5.1 JAR released previously, and that it should no longer be used for testing. Is there a new JAR available for download for testing purposes that I have missed?

One point in particular peaked my interest concerning the Time Line:

Sascha wrote:
Yes, I'll plan to have them fully editable - including selecting multiple keys at once (like in the modeler), moving, scaling, cut&paste, etc...

WOO HOOO!!! Now that is exciting news! Will these Time Line features be available in the 0.5.2 release?

Rob
rjh
 
Posts: 179
Joined: Thu Dec 30, 2004 10:33 pm

Postby sascha » Mon Nov 07, 2005 10:09 pm

Hi Rob!

I know that there are (were?) some serious bugs in the 0.5.1 JAR released previously, and that it should no longer be used for testing.

Yes, I'm afraid that's true - it's full of bugs :(
I mean, you can of course take a look at it if you're curious, but be warned: Do not try to overwrite an existing model with this version (avoid the save button) - it might crash during saving and corrupt that file!

There is no newer version, but I'm working on it - it should be ready in a few days.
The new version will feature:
* Bugfixes (hopefully)
* The bone editor with editable degrees-of-freedom.
* An (auto-)assign controlpoints to bones feature.
* Multiple morph-targets per morph
* Smartskin morphs (sorry for the A:M nomenclature - these are morphs that are bound to a degree-of-freedom and can be used for fine tuning)
* The old animator, but with sliders for the degrees-of-freedom - to be able to create at least some test animations.
* Load/save to xml for all new features.

I'll rework the timeline tool when I start integrating the animation features into the modeler's GUI. I think I can start this as soon as the next development snapshot (0.5.2) is out...
sascha
Site Admin
 
Posts: 2792
Joined: Thu May 20, 2004 9:16 am
Location: Austria

Postby pollywoggles » Sun Dec 04, 2005 12:24 pm

... was going to post something... answering an old question that's already been answered...
pollywoggles
 
Posts: 14
Joined: Sat Dec 03, 2005 6:05 am

Previous

Return to General discussion

Who is online

Users browsing this forum: No registered users and 1 guest

cron