FS2004 Animation over 1024 frames, a question...

#1
Hello guys
I just read the wiki article about animations over 1024 frames and I've a doubt. The tweak just only extend the number of frames of my animation? if I don't twwak the asm files I would obtain a very very quick moving object correct?
Instead if I tweak them, my animation would be more slow, no?

The point is that in GMAX I have to model completely my animation using the full path that my object should follow.

Is this correct?

tx
alb
 
#2
Hello!


I've the same question.

I've created the train which follows a long path, much longer than 1024 frames. The tutorial does not really tell anything about the export.

How should I do? Shall I make the full length animation in Gmax export it and just tweak the asm or do I have to export 1024 frames by 1024 different asm and than merge them? If the second how exactly?

Thanks for help.

EDIT : Another question. If the animation is extended is it possible to use the CAT? Conditional Animation Tool?
 
Last edited:

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#3
Hi,

Sorry alb, I missed your question.

The animation itself does not become slower or faster, there are still 18 frames per second. But with this tweaking you can use more than 1024 frames and thus get over 55 seconds of animation time.

How to make those animations is a big tricky though. The FS2004 gamepack refuses to export animations of over 1024 frames. So you will have to export in sections of 1024 frames. Afterwards you have to manually combine all the animation tables into the final one big.

Unfortunately there is no tool for this and also CAT can not handle such animations. So any conditions also have to be manually created in the ASM file.

If I would have loads of time I would like to make a tool for this one day...
 
#4
Hello Arno!


Thanks for your answer! It is very helpfull.

I'll try to combine my animation. But asm tweak is not really my favorite thing.
Also I have to find out how to split and export only 1024 frames in gmax. Any suggestion here?


Yes a tool would be helpfull, but I can imagine this would be your priority 1000.

If I manage the thing, I'll try to extend the topic in Wiki.
 

jtanabodee

Resource contributor
#5
Hi,
I read the wiki about this and try to do tweaking myself. I had the same problem. I did four animations in the same gmax file. I have object A, B, C and D. The last frame of the object A will be the same place of the beginning ofme of object B and so on. I export them separately and I got asm for each object. I paste keyframe table from object B, C, D to asm code of object A. Then I changed the frame number of object B to run the number after object A has finished. The frame from object A stop at 1023 then object B is 1026, 1029, 1032...... (3 frames apart as I look from the table)
It is possible to do that but very tedious job.
Can I delete some of the keyframes out? Or anythings that we can do this faster?
Each of object has 256 keyframes exported by makemdl. I have to change the number real4 256 times for each object that combine to 768 keyframes!!!
Something like this
..........
->end of A
real4 1023.0, 55.439564, 43.685566, 0.000000 ; frame/x/y/z values
->start of B
real4 1026.0, 55.102509, 43.657135, 0.000000 ; frame/x/y/z values
real4 1029, 54.765965, 43.622635, 0.000000 ; frame/x/y/z values
real4 1032, 54.429928, 43.582062, 0.000000 ; frame/x/y/z values
real4 1035, 54.094402, 43.535416, 0.000000 ; frame/x/y/z values
real4 1038, 53.759380, 43.482697, 0.000000 ; frame/x/y/z values
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#6
Hi,

I guess it depends on your animation if you can remove some keyframes. If the translation is along a straight line it should be fine, but if you are making turns or so I think you want to keep them in to make the movement smooth.

At the moment I am afraid there is no alternative to manually tweaking this. Although in the future I think this would be a nice feature to put in my gPoly tool (but that will take some time).
 
#8
I was postponing all the time, I had no mood to start to tweak the asm bec I hate it.
Today I've overcome of my lazyness and started the project. Unfortunately after 10 minutes I came to a barrier.
I've created a small train going on a path on 2048 frames. I've created the animation. Than I reduced Time Configuration to 1024 max. export it. It worked. Than I wanted to change the time configuration to start with frame 1024 and end with 2047 (see screenshot). But when I start the export gmax crash.
Any suggestion how to export the second part (or the following parts)? Actualy I could split the animation in gmax in two pieces but than I should overwrite every line in the asm file to have the correct frame number.
 

Attachments

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#9
Hi,

The exporter is limited so that it can only allow frames 0 to 1023. So I think that is why exporting 1024 to 2047 does not work for you. I am afraid the only way to export them is make each of them between 0 and 1023.

It's quite an annoying (and useless) limitation in the exporter. But unfortunately we can not change that...
 

n4gix

Resource contributor
#10
PMFJI, but for the sake of making the task easier to "hand edit," why not simply export the various pieces using only 0 to 999 frames?

That way, it would be a much simpler task to update the next "set" by simply adding 1000 to every frame entry...

So, the first file has:

0
...
999

The second file (after adding 1000) has:

1000
...
1999

et cetera.
 
#11
Thanks guys!

Bill your idea is very very creative indeed! However if you have a tons of lines even to add this "1" will be quiete difficult.

I thought of an excel solution. Maybe I'll write an easy macro to rechange the numbers as we wish. If it works I'll share it.
 
#12
Hello Guys!


I'm still working on this asm tweak.

In the asm to continou the number of the frames I should rewrite 2x177 lines. That is annoying. As I'm an excel fan I've created a very easy excel sheet that does the job for us. I would like to share it with you. You can find it in the attachement. I did not hide the commands and I did not combined them to show how it works.
Usage is easy : Take your asm file, mark the lines copy them (CTRL+C) than open this excel file, paste it where it shows. Set the starting frame as you wish. Voila! In column B you can find the result what you can copy now and paste it to your asm file.
The method is easy, he extracts the frame number and add the "frame start" value to it and than he assembla the code again. It works properly. I could than generate an mdl than a bgl (however I was using the Frame start "0")

The big part of course to assamble the whole animation. I'm working on it.

Here you are : (I left my work in the excel, you can check it, but of course if you want to use the tool, you should remove it.)
I very welcome any suggestion, idea, opinion regarding this "tool"!
 

Attachments

Last edited:

jtanabodee

Resource contributor
#13
Hi tsgucci,
I think this tool is quite good helping us for tweaking. So, we got tool for helping us but the big part is tweaking. I'll try to do that and I will tell you later. Thanks for the excel file. I thought about that too but I need to paste that part of asm in Excel (import text) and used increment fill down. It works too.
If there are anyone can make exporter that overcome 1024 frame would be the best solution.
Thanks,
Tic
 

n4gix

Resource contributor
#14
If there are anyone can make exporter that overcome 1024 frame would be the best solution.
Thanks,
Tic
That will never happen for the simple reason that no one has -or- can afford/obtain the Max 7/8/9 or GMax SDK and API necessary to code a new export module for Max or GMax...
 
#15
Hi!

Bill is right. To change the export it is not possible. So we have to live with this annoying effect.

The "increment fill down" would maybe work (however I do not know if excel could realise which part he should increment) but if you use that option it will work only if the frames incrementing each other by the same "distance", if not it would alter your animation.
The excel what I made does not hurt the animation keyframes, he just postpone the frames to be able to attach to an other animation.

Arno, Bill! Do you think it would be helpfull to upload this excel to the wiki? Maybe the wiki should be extended to explain the exporting method as this is completaly skipped from it.
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#16
Hi,

If you have some Excel sheet to help other we of course would be happy to host it here. Either in the downloads section or on the Wiki.
 
#17
Hello Guys!


Yesterday I was singing the HALELUIA! I've managed to create an animation with 2048 frames. It works well.

Shortly my method:

1. I've created the animation in gmax with 2048 frames. (it is a simple train moving on a long track)
2. I set the time configuration back to 0 - 1023. I've exported it to trainanim_0.asm.
3. I reset the time configuration to 1024-2048.
4. In the time configuration panel, I pushed the Re-Scale button and I re-scaled it 0-1023. So actualy the second part of the animation was moved forward in the timeline ( :) this sounds like in the star trek :) )
5. I've exported this part to trainanim2_0.asm.
6. I opened the second file trainanim2_0.asm copied the animation frames to the excel. I set in the excel that the frame number should start with 1024.
7. I've pasted the excel modified frames to trainanim_0.asm. (actualy this you have to do it twice bec. for one object there is 2 table for the animation, but the code is very similar, the excel can handle both)
8. Than I've started to tweak the trainanim_0.asm as described in the wiki. To tell the truth this was the difficult part.
9. When it was done, of course I've re-generated the mdl than compiled to bgl and it works fine in FS! :D

In the attachement you can find the excel and the final trainanim_0.asm and the trainanim2_0.asm. You can have a look.


Now I have a little bit more experience. What I can tell that with this excel to extend the animation keyframes are easy but the rest of the tweak is difficult. The problem with the wiki description that it is too much dealing with the theory. He discribe what is what, but for us the only thing is important which part shall we change and how.

Now I have a question. As I'll animate a train which is actualy 3 objects moving. When I export it to two asm file how can I identify which part belongs to which objects? To make it clear. I'm affraid when I export the first part he will compile it to the asm with this sequence : Object1, object2, object3. But maybe when I export the second asm he will do the following seq. : object1, object3, object2. How can I be sure when I copiing the code from the second asm that I paste it to the right part in the original asm?
 

Attachments

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#18
Hi,

I guess the easiest way to see that is to check which material gets assigned to the parts. That hopefully helps you to identify them or do they all use the same?
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
#20
Since they are animated they are still two drawcalls :).

Can you maybe identify them from looking at the coordinates used in the animation? You might be able to see which path belongs to which one.
 
Top