Help Needed !!

Help Needed !!

Anonymous
Not applicable
699 Views
12 Replies
Message 1 of 13

Help Needed !!

Anonymous
Not applicable
Hi all,

I am relatively new to Max. Currently I am using 3ds Max 2008 on Windows Vista. I am working on a project which would enable a layman control the animation of a 3d model created using Max. To be precise, I have created a Tennis player's 3d Model and I want users to control this 3d model giving sequences of commands by specifying the input as rotation, x-y-z coordinates and speed of the animation to get an animated sequence as output. Please help as to how should I go about accomplishing this task.

Thanking You

Pranav
0 Likes
700 Views
12 Replies
Replies (12)
Message 2 of 13

Anonymous
Not applicable
When you say you've created a 3d model of the player, have you rigged it? That's step one. If you have rigged it, what rig did you use? Biped? Your own? That will effect how you go about doing this.

If you really want users to just input speed and a direction, and expect to have realistic looking motions, you're going to have to do a ton of scripting behind the scenes (not to mention things like hitting the ball). If this is your first attempt at maxScript I'd recommend trying something simpler.

If you're dead set on doing this, the first step would be to script a walk cycle - just make him take two steps - and see where you are after that.
0 Likes
Message 3 of 13

Anonymous
Not applicable
Thank you for replying..

I have actually created the player based on the modelling tutorial available for Max 2008 'Modeling a Low-Poly Body' in which a soldier is created from sketches. So I don't exactly know if it is biped or not (I am a beginner).

For now, the project doesn't require the hitting ball scene. I need to generate animation sequences as output of the player hitting strokes.

I am ready to do loads of scripting on this as this is a very important final project for me.
Please guide me as to how should I start learning the script.
Also, will Eclipse or NetBeans be sufficient for the user-side coding or is there any other software for programming max files and combining them with java to develop a full-fledged application.

Thanking You

Pranav
0 Likes
Message 4 of 13

Anonymous
Not applicable
So, you have a model. Now you need to look at the tutorials re. rigging. I don't have 2008, but I assume they're similar to max 9. Do all the Character Animation tutorials and you'll be on the right path.

But you need to clear a few things up. What is your end goal here? Max has its own scripting language, but from what you're saying, I don't think you'll need it. Connecting max to java is not easy (and probably not what you want either). Do you want a stand alone app where users can manipulate your player in 3d? If so, you need a game engine. You create your model and rig it in max and then export to one of many engines. Search these forums for "game engine" and see what comes up. Or do you want to use pre rendered sequences? These will look much better, but the user will have less freedom. Look at flash for something like this.
0 Likes
Message 5 of 13

Anonymous
Not applicable
Thank you so much.
I'll just start with the tutorials of character animation.
Ok, here is what I am actually trying to build. The user would be able to define each frame of a stroke being played by the player.
The user will select from a library of symbols for human body , combine them and define rotation and coordinates for each part to produce a single frame. Like this ,a user will be able to define a sequnce of such frames to produce the required animation. Now I am building the graphic editor for the user for defining each frame in Java. After a frame is built, I need the details of each frame to reach my .max model, and then produce the required animated 3d model.

I hope this clear definition of my project helps you to provide me with more precise guidance.

Thanking you
Pranav
0 Likes
Message 6 of 13

Anonymous
Not applicable
So I understand, the user is going to use a Java application, and that Java app will drive 3ds max? Is this going to be in real-time, or will the animation be done in a second pass? If it is the latter, it is ambitious but doable. I've seen several 'pose library' scripts on ScriptSpot that may be useful starting points.

If you are trying to do this in real-time, a 3d engine sounds more appropriate. Max isn't really designed for interactive real-time work. You would still do the modeling, rigging and animation in Max, but export it to a format that the engine read. Code driving the engine would string together the animations.

If you're working in Java, there are several native 3D game engines. One I've been meaning to look at is jMonkeyEngine.
0 Likes
Message 7 of 13

Anonymous
Not applicable
Thank you so much.
The user will select from a library of symbols for human body , combine them and define rotation and coordinates for each part to produce a single frame. Like this ,a user will be able to define a sequnce of such frames to produce the required animation. Now I am building the graphic editor for the user for defining each frame in Java. After a frame is built, I need the details of each frame to reach my .max model, and then produce the required animated 3d model.

What do you mean by "produce the required animated 3d model"? What is the user going to get when he's done? An animation (like a quickTime movie) or a 3d model for use elsewhere. In either case, getting java to run max (realtime or otherwise) is going to be a headache. You'd be much better off building this "graphic editor" in max itself (you can use .net controls or build graphic components from scratch using maxScript). Or using max to output graphics files (animations) or 3d models for use in your java app. No actual inter application connections.
0 Likes
Message 8 of 13

Anonymous
Not applicable
Thanx for your replies.

Firstly, let me explain my project again.

A tennis coach would design still frames according to his needs. For e.g. he will specify each position of every body part in the still frame. Since I am well versed with java, I have started doing this part in Java. Now after the coach is through with, say 5 frames, I want to convert these frames into animations for viewing by the student. So, basically, the still frames would produce a code which has to be read by the 3d model for the synthesis of the animation.

Now, I hope I am clear, please guide me as to where should I start from.

Thank you
0 Likes
Message 9 of 13

Anonymous
Not applicable
An answer to the above question,
the output would be an animation. and I prefer not to build the entire application through maxscript as it will then require everyone to hav max on their systems in order to use my tool.

Thank you

Pranav Bhalla
0 Likes
Message 10 of 13

Anonymous
Not applicable
Thanx for your replies.

Firstly, let me explain my project again.

A tennis coach would design still frames according to his needs. For e.g. he will specify each position of every body part in the still frame. Since I am well versed with java, I have started doing this part in Java. Now after the coach is through with, say 5 frames, I want to convert these frames into animations for viewing by the student. So, basically, the still frames would produce a code which has to be read by the 3d model for the synthesis of the animation.

Now, I hope I am clear, please guide me as to where should I start from.

Thank you

Makes much more sense now. There are two ways I can think of doing this:

1) Have your java app generate a text file specifying the time and position of your keyframes. Then use maxscript to read that file in and map the keyframes onto an already skinned/rigged biped and then render out your animation for the coach to look at.

2) Use max to create a skinned/rigged biped once and then import that data into the java 3d sdk (whatever it's called, I haven't used it in years) and use java to make your animations and renderings.

The trouble with #1 is that the user will have to have max on his system. But the advantage is that all the rendering and tweening (moving between frames) is taken care of for you.

If you're that familiar with java, I'd probably go with 2. That way, you're only using max to generate your content and then you're in a familiar environment for everything else.
0 Likes
Message 11 of 13

Anonymous
Not applicable
Ok great !!

I will go with the 2nd option. I will import the model. But is Java3d the only option ? I mean OpenGL and jMonkey specified above somewhere, are these equally good ?

Anywayz thanx for the help.. I feel the project has a direction now..
Thnk u
0 Likes
Message 12 of 13

Anonymous
Not applicable
OpenGL is a lower-level framework; I think both Java3d and jMonkey are built on top of it.
0 Likes
Message 13 of 13

Anonymous
Not applicable
If you have the chops to use OpenGL directly, go for it, but as Stokes said, it's pretty low level. I played with Java3d when it first came out and it was amazingly clunky. I've never used jMonkey, but if it's half way decent, I'd go with that.
0 Likes