Jump to content
Sign in to follow this  
abs

Star Trek Addons

Recommended Posts

You should not be referring to a p3d skeleton in your project.

You don't need the skelton P3D, only the RTM

When you create a crew proxy you either point to CA/Temp directory (see other threads about setting up static proxies) where some predefined poses are already in p3d format (like \CA\temp\proxies\AV8B\pilot)

Or you do as I do, simply call the Proxy "cargo" or "driver" or "gunner".

The game engine will do all the rest.

Yes, my way means you can't see the proxy man in Buldozer (to align it etc), but all works in game.

Share this post


Link to post
Share on other sites

Hmmm....so after a bit more testing once the proxies finally showed up in-game (aka: importing the rtm from matrices) I found out that when saving my RTM it did not seem to save properly, and the only thing that is in the file is the warping of the right thumb. This is show in-game as well, so I'm happy to say it's not a config or a proxy issue. Now I've just got to figure out why the heck it didn't save my RTM. I mean, it should just be this easy, right?

3.jpg

Thanks a lot for the help so far, gents. :)

Abs

Share this post


Link to post
Share on other sites

When saving you need to autotime 1.0 I think this can create problem if not done and also it will ask for reference components on saving centre or something I forget .

Also place model.cfg for ofp2 skeleton in anim folder to save unwanted binarize clutter just the one from example folder from biz will do.

If you want a more accurate thumb etc , export the last frame you have now to old p3d and import to ofp anim . It's better for finite movement IMO .

Edited by Thromp

Share this post


Link to post
Share on other sites

Solved it!!! ...kinda.

It didn't ask me for reference components (I think that may just be from the original ARMA?), and I didn't have to put the mdoel.cfg into the directory. The issue was that in my -0.50000 frame I did not have the default pose. Not sure why it's like that, but I create a test anim where it looked like the player's arm was broken in frames 0.000000 and 1.000000, and made it the cargo proxy anim. This showed up in game.

The only reason that I said 'kinda' earlier, is that I now have to redo the animation that I had before from scratch, as there is no way that I know of to include the default pose in keyframe -0.500000. *sigh*

Thanks a lot to all those that had feedback! *full body hugs all-round*

Abs

Share this post


Link to post
Share on other sites

I'm just guessing but I think it's because the animations are measured in angles compared to a point of reference. That's how I always made sense of it. I think most of the time a bind pose would have all angles set to 0, and would exist in an object space heirarchy. I don't think that the rtm bones have such a hierarchy. To set a pose using the ArmA skeleton, you need to use named selection sets. To move the shoulder, you have to select the shoulder and all bones distal to that joint, and rotate everything around the shoulder pivot. In a more complicated animation suite, you would just select the shoulder joint and all other arm bones would move with it, but their local rotation would remain neutral. Maybe the bind pose at -0.5 provides a frame of reference for the pivot positions in the other frames.

Share this post


Link to post
Share on other sites

That makes sense, Max. Either way, it's good to know and not too well documented.

================================================================

So, after going through the whole ordeal of getting the anims into the game, I decided to create a couple of videos that show the whole process from start to finish. I put them up on YouTube for those who will inevitably end up looking for guidance on how to do this.

Creating a Static Cargo Animation from Start to Finish Part 1

ljKtuy0Uhl8

Creating a Static Cargo Animation from Start to Finish Part 2

b_bBaD4hVlA

A BIG thank you goes out to all those who helped along the way! You guys are awesome. :)

Abs

Edited by Abs

Share this post


Link to post
Share on other sites

Awesome Abs.

Before I add these to the Youtube Tutorial thread (unless you have a problem with that);

You said ArmA1 sample model ...... I thought that doesn't work with ArmA2 ?!!

Can you confirm exactly what skeleton you are using please. Post link.

Cheers.

Share this post


Link to post
Share on other sites
Gnat;2149000']Awesome Abs.

Before I add these to the Youtube Tutorial thread (unless you have a problem with that);

You said ArmA1 sample model ...... I thought that doesn't work with ArmA2 ?!!

Can you confirm exactly what skeleton you are using please. Post link.

Cheers.

Thanks, mate. Couldn't have done it without all of you. I've no problem with people spreading it around. The more people know, the better. :)

It's definitely the ARMA1 skeleton. I was looking through the tutorial you had posted on OFPEC, and it's the same file name. Last modified date of 2007.

Abs

Edit: I should clarify that I used the Arma1 skeleton because I had problems with the rotation of the Arma2 sample skeleton. The Arma1 skeleton works just fine.

Edited by Abs
Clarification...

Share this post


Link to post
Share on other sites

Aye, I use the ArmA 1 skeleton because the whole automated 'local axis' thing doesn't work properly with the ArmA 2 skeleton.

Great video Abs: virtually the same process I go through to make crew anims. Good work!

One thing I do to speed up the alignment process if I'm making the anim from scratch though, is to place the crew proxies in the vehicle model first. I then copy+paste the parts of the model I need, including the crew proxy; into a new O2 window and move this model so that the right-angled corner of the proxy triangle sits at [0,0,0] on the O2 grid (it's quite easy to align the straight edges of the triangles to the grid lines). Then I copy the vehicle parts into the skeleton.p3d and manipulate the skeleton from there to fit the ergonomics of that vehicle mesh (might involve moving the entire skeleton through space rather than just rotating joints etc.). What this basically does is make the origin of the exported .rtm match the origin of the proxy inside your vehicle model, so that it should automatically align when the animation displays in the vehicle.

Share this post


Link to post
Share on other sites

Nice video ,

One problem i found with using Arma1 skeleton is the Camera position was not correct in the initial ingame pose , did yo try your newly created .rtm applied to Arma2 skeleton , you will see all cheek bones camera etc are now out of place ?

not sure how much of a problem it is however it certainly is worth mentioning should anybody use this tutorial and have problems in future at least they know what is missing ?

also remember that Arma1 crew (rtm) anims can be used as base if only small tweaks are necessary ,because arma1 anims do still load in o2 :), this wont elimnat the problem above tho if there used with A2 skeleton of course .

Share this post


Link to post
Share on other sites

Thanks, da12thMonkey! Also, that's a great tip! It sounds a little complex, but I see the point you're getting at. I'll play around with it. :) Can you not just directly copy the vehicle parts and then move the skeleton from where it is initially located (0,0,0) to its new position in the vehicle (eg: -2,1,1.5), and then just create the proxy and leave it at 0,0,0? I'll try it a little later and see if this works, too.

Edit: It's exactly like I thought. If you just copy the vehicle parts (ie: seat) into the BISkeleton p3d, move the skeleton, animate and then save it, when you create the proxy in your vehicle you won't have to move a thing at all. No more tweaking and fiddling with proxies any more! :D So, to recap:

1. Copy the seat from your vehicle model into the BISkeleton.p3d. It will show up in the exact same position that it is in the vehicle.

2. Move the skeleton first, then animate it.

3. Delete your seat and save the p3d/export the rtm.

4. Create a new proxy in your vehicle - no need to move anything at all.

Sorry if I misunderstood what you were saying, da12th, I just didn't create the crew proxies first or paste things into a new o2 window.

Thromp: I think I know what you mean. The face bones are all in the default pose positions when you look at any of the other anim frames, and it looks rather creepy. Still, if you put the anim into the game, it seems to be fine. I wonder if this isn't similar to the hand position anims for the guns where you can only move the hands, and in-game the arms know where to be.

Abs

Edited by Abs
Testing, testing, 1 2 3...also, completeness.

Share this post


Link to post
Share on other sites

Yeah that's what I meant , just thinking it won't affect anything apart from cutscene that use lip files probably , I did have a few problems like I said with camera pos tho ,but maybe that was my methods,im gonna go back and try yours see if it replicates.

By the way I case you didn't know , when using the a2 mlod you just press R. To move the pin this makes it easier to rotate the skeleton , ok for static poses .

Share this post


Link to post
Share on other sites

Just found this. Stick it to the shuttle wall, it'll make the interior even more interesting ;)

byebyeshuttle-1.jpg

Share this post


Link to post
Share on other sites
Thanks, da12thMonkey! Also, that's a great tip! It sounds a little complex, but I see the point you're getting at. I'll play around with it. :) Can you not just directly copy the vehicle parts and then move the skeleton from where it is initially located (0,0,0) to its new position in the vehicle (eg: -2,1,1.5), and then just create the proxy and leave it at 0,0,0? I'll try it a little later and see if this works, too.

Edit: It's exactly like I thought. If you just copy the vehicle parts (ie: seat) into the BISkeleton p3d, move the skeleton, animate and then save it, when you create the proxy in your vehicle you won't have to move a thing at all. No more tweaking and fiddling with proxies any more! :D So, to recap:

1. Copy the seat from your vehicle model into the BISkeleton.p3d. It will show up in the exact same position that it is in the vehicle.

2. Move the skeleton first, then animate it.

3. Delete your seat and save the p3d/export the rtm.

4. Create a new proxy in your vehicle - no need to move anything at all.

Sorry if I misunderstood what you were saying, da12th, I just didn't create the crew proxies first or paste things into a new o2 window.

Sorry for the late reply; I was on the way to Suffolk by the time you posted this, so I guess I missed it.

Yes, sure you can just place all proxies at [0,0,0] and displace the skeleton accordingly: Only real problem in doing that for every proxy is that it can lead to making things a bit more tasking if you want to use the same .rtm pose for another seat in the same vehicle, or on a different vehicle, as you have to export an entirely 'new' .rtm when you're really just using the same pose but moving the skeleton position to fit the position of the chair model in the vehicle space. Might also experience some complications if your proxy needs to move as part of a model.cfg anim (e.g a turret gunner's position) if the proxy is at a significant radius from the point in the model you're animating (proxy points ending up way outside the rest of the model geometry etc.).

Having the proxy located at the chair position first means you can just copy & paste the chair model and its proxy for as many seats as you have need for, wherever you need them, and just assign the .rtm in the config to change which pose they use at the end. It also makes it easier to identify and select individual proxies and crew position (in case you need to move or delete them) if they're located in their respective seat.

Whatever works though eh? I'm always coming across different ways to achieve the same result in O2 :)

Share this post


Link to post
Share on other sites
Just found this. Stick it to the shuttle wall, it'll make the interior even more interesting ;)

http://img.trekmovie.com/wp-content/uploads/2012/05/byebyeshuttle-1.jg

Hahah! That's awesome! I really would hate to be on the Galileo on its last voyage, though. :) Hmmm...maybe I should actually change the registration of the shuttle.

Sorry for the late reply; I was on the way to Suffolk by the time you posted this, so I guess I missed it.

No worries, mate. :)

Yes, sure you can just place all proxies at [0,0,0] and displace the skeleton accordingly: Only real problem in doing that for every proxy is that it can lead to making things a bit more tasking if you want to use the same .rtm pose for another seat in the same vehicle, or on a different vehicle, as you have to export an entirely 'new' .rtm when you're really just using the same pose but moving the skeleton position to fit the position of the chair model in the vehicle space.

Fair point. I can see that being a problem on the same vehicle, where the seat is already built. If you're copying the seat to another vehicle, you can just select the proxy and copy with.

Might also experience some complications if your proxy needs to move as part of a model.cfg anim (e.g a turret gunner's position) if the proxy is at a significant radius from the point in the model you're animating (proxy points ending up way outside the rest of the model geometry etc.).

I was thinking about this, and I came to a different conclusion. I figure it's easier just to illustrate it (top down view).

Rotate.png

The rotation of the turret is handled by the axis memory points and the definition of the turret is handled by the named selections. While you're right that the proxy triangle itself will be outside the model geometry, the rotation all happens locally to the defined axis. So despite the fact that the proxy triangle itself is out of the geo model, when that proxy is expanded, the player will still look like it's in the turret.

Having the proxy located at the chair position first means you can just copy & paste the chair model and its proxy for as many seats as you have need for, wherever you need them, and just assign the .rtm in the config to change which pose they use at the end. It also makes it easier to identify and select individual proxies and crew position (in case you need to move or delete them) if they're located in their respective seat.

More good points.

Whatever works though eh? I'm always coming across different ways to achieve the same result in O2 :)

Exactly this. :) In the end it will all come down to your personal preference on how to do things. As silly as it sounds, I prefer having different animations for each cargo position. (I'm sure I'd feel differently if I had to create cargo positions for a C-130.) I don't really see there being an advantage keeping the proxies at 0,0,0...it's just easier, IMHO, for projects where you have a small number of seats.

:) Thanks for the feedback.

Abs

Edited by Abs

Share this post


Link to post
Share on other sites
(...)Hmmm...maybe I should actually change the registration of the shuttle.

I'm in favor of using hidden selections, which would eneble the possibility of using different shuttle registries/names. There's other names of astronomers beside Galileo to choose from (Copernicus, Hevelius, Keppler etc. etc.) and different ships the shuttles can belong to. That would make you feel being a part of a fleet actually ;)

Share this post


Link to post
Share on other sites

HiddenSelections was part of the plan, just have to learn how to do it first. :)

I plan on including that on all the vehicles.

Abs

Share this post


Link to post
Share on other sites

I was thinking about this, and I came to a different conclusion. I figure it's easier just to illustrate it (top down view).

http://www.ohplz.ca/img/Rotate.png

The rotation of the turret is handled by the axis memory points and the definition of the turret is handled by the named selections. While you're right that the proxy triangle itself will be outside the model geometry, the rotation all happens locally to the defined axis. So despite the fact that the proxy triangle itself is out of the geo model, when that proxy is expanded, the player will still look like it's in the turret.

Aye, the actual movement of the proxy unit relative to the animation axis would probably me fine in virtually all cases: If the crew position's meant to rotate around the crew's centre of mass rather than part of the vehicle it might be a little harder to find the right place to put the axis memory points in the vehicle though ;).

My concern was really more about how something like the AI may react to parts of the vehicle model ending up in strange places - I don't know what sort of considerations the games might make for the physical proxy points in the vehicle when it comes to determining things like bounding boxes for vehicle pathfinding etc. Maybe it makes no difference at all, and everything's based on the position of the model loaded onto the proxy rather than the proxy itself however, not finding out whether it does or not has always seemed the easier option to me! :D

Share this post


Link to post
Share on other sites

FYI you can define 2 completely different animations for turrets.

eg 1 set of axis and movement for say the turret, and another completely independant axis, angle etc for say a gunner proxy.

Share this post


Link to post
Share on other sites

UPDATE: I finally have the shuttle flying the way that I want it to! It no longer flies like a brick, but a gravity defying aircraft. :) I'll see if I can post a crappy video later.

I am having an issue though, where the automatic landing is not working. The pilot looks like it's going to do it, and then crashes 100% of the time. I've tried Googling it, but can not seem to find a solution to the problem. I can't be the first one to have had this issue...does anyone have any advice?

Abs

Share this post


Link to post
Share on other sites

Thanks, Kremator!

The video is currently being uploaded and will appear here when it is finished.

OmRor_l3D5w

Let me know your thoughts! :)

Abs

[Edit: Pardon my crappy flying skills. Sorry if you feel airsick after watching it.]

[Edit 2: Status of the shuttle:

Shuttlecraft Galileo:

Model (LOD0): 100% complete.

Texture (Exterior): 100% complete.

Texture (Interior, LOD0): 95% complete.

View Pilot/Gunner/Cargo: 100% complete.

Geometry: 80% complete, tweaking required.

Memory Points: 80% complete, tweaking required.

Shadow: 95% complete.

Animations (cargo, driver): 71% complete.

Config: 95% complete.]

Edited by Abs

Share this post


Link to post
Share on other sites

Great work!

It appears to be defying gravity in the way it flies, well done.

Also, love the bird sounds ;)

Share this post


Link to post
Share on other sites
Also, love the bird sounds ;)

Those are Pterodactyls. ;) http://theoatmeal.com/comics/ptero

Also, yea, I think it does a pretty good job of staying afloat in the air. :) I think I'm pretty close to completing this, apart from a minor shadow issue I seem to be experiencing!

Abs

Share this post


Link to post
Share on other sites

Very nice work, Abs, it would be nice to explore some strange planets with it :)

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

×