How do i create new ship models?
sorry i guess this has been answered before but i cant find it with the search function.
how do i create new ship models?
what programs or exporters etc do i need?
i currently create models in 3dsmax for Bridge Commander game... exported as nif files.
As I recall you will need the Panda plugin, check this thread http://spacesimcentral.com/ssc/topic/478-modeling-toolsinfo-for-ffed3d/ then it should just be a case of replacing the old ship file in the game with the new model file.
Don't know if it's the same for AndyJ build of the game.
thank you 🙂 much appreciated
important message from "Ulisbach Shipyards" to "uss griffin"
using 3ds max and the panda export plugin is a possibility, if i remember right when i started out i even used 3dsmax but a different export plugin (i will have to dig to find what i used back then).
i cancelled the use of max early bacause it was a hacked illegal download, since i can't afford this software.
unlike my friends from russia stated there are many possibilities and any CAD to design / convert a model in the proper DX (.x) format.
the problems they had was mainly because FFED3D is very choosy with what it will work.
personally i dislike 3dsmax
i use Blender and most of all i use a old build (2.49) for FFED3D, the reason is the extremly handy export script for this specific blender version (later builds have a standard .x export script, later i will tell why it's not really suitable).
some known restrictions and issues of FFED3D
- all models need at least one animation, no matter if it's just a building (e.g. one "positional key", that's enough).
- naming convention resp. restricted characters must be kept resp. restricted characters must be converted to something harmless (a fix i did to blenders .x export script, i can happen when you i.e. import a .3ds mesh that the object names aren't conform to .x naming conventions, e.g. a "dot" (.) isn't allowed and must be replaced with a underscore (_) )
- animations will be played back linear, unless you set keys for every position (which could be used as advantage, later more).
to test a model i can only recommend to use the "DX Meshview" software.
it was published once together with the DX8 developement environment.
if a model fails in this software it will fail in FFED3D.
[DX Meshview]( https://1drv.ms/u/s!AhX1Ed1178sOhFya-hafNrC3f7Pd "https://1drv.ms/u/s!AhX1Ed1178sOhFya-hafNrC3f7Pd")
it allows besides of lossless convertion between .ansi and .bin formats (it keeps the animations) some tests and performs fixes to the mesh.
a few words about animating models,
or the reason why i prefere blender2.49.
**a animation created in max or blender doesn't have to work like it's shown in the software!**
any CAD will perform a lot of additional stuff which won't be exported to a matrix animation.
i.e. if you create a rig and the "bones" (in our case it will be the parts itself) and use constraints and parenting
usually these parts won't have a matrix and finally won't be animated.
it works in the CAD because it knows what to perform with them but not in the model.
"visual keying" - to write down exactly what you see would be a solution.
unfortunately this fails often.
that's the simple reason why i use blender2.49 and a very specific export script which "stupidly" writes down all keys for all parts which have a key set, if it has a rot/loc/scale value or not it will always write the visual output.
which ends up in a proper animated model with no fails!
take care how your parts are aligned.
FFED3D uses double-sided material and wrong normals will result only in a wrong shaded part (it won't be culled).
but wrong normals lead also to a wrong animated part, in the CAD even such won't be to notice since it will correct this on the fly,
while the model has none of this "knowledge" and a wrong aligned part will flip between normals direction and animation matrix.
the same you have to keep in mind for child objects, any child will be aligned like its parent object, in MAX it's possible to align it new, but easiest imho is to export and reimport a i.e. mirrored child object and all possible issues are 100% solved.
ALWAYS WORK WITH SINGLE SIDED MATERIAL!
thus you notice wrong normals immediatly.
we have in FFED3D models with a framerate of i don't know 4000 frames per second and a duration of near to 100'000 frames.
that's not needed or it's just done to cover certain wrong animated parts (above descripted wrong aligned parts,
on certain models if you fiddle around with "MeshView", export them to ansi and lower the framerate in them you will notice these).
the duration of a animation in FFED3D is fixed!
no matter if i set 2 keys or 2mio.
FFED3D (resp. FFE) will animate the parts/objects itself.
means for a simple linear path only start and end is needed the animation will be as fluid as with 2mio keys 😉
i.e. most of my models use a framerate of 10/sec and a duration of 30 frames which represents the 3 seconds of duration in the game, nonetheless it has no influence on this, it's only to playback the animation in a almost proper speed while i'm working on it.
30 frames are far enough for a fluid animation even if you like to key a bezier path (e.g. slow start - slow end).
30 is also good to split the animation into the three stages usually used for a landing gear
1. open flaps
2 & 3 lower landing gear
3. probably closing certain flaps again
simple animated parts only get 2 to 3 keys, that works fine (e.g. pause (until flaps opened), start animation, end animation)
parts which get a visual keying in the end will receive a key for every frame even if the CAD shows no values (except you use visual keying) else they won't follow their parents proper.
however how you animate you parts is up to you
"hand edited" setting each key for each part manually (will always work).
by use of parents and constrains (this needs visual keying or a cool export script which keys the animation visual no matter what and how it is animated).
i prefere of course the use of parenting and constrains, it makes life a lot easier.
i.e. if i parent a wheel to a object (let's call it "actor") via vertex parenting i don't have to care about to keep the wheel aligned to gravity, the artificial gravity of the software will keep the wheel oriented downwards while the actor is moving and dragging the wheel behind.
but exactly such won't be exported usually, it simply has usually no animation values in the CAD, it's just like the part won't be moved or rotated, only the parents movement is recorded any else is calculation.
again this is why i even don't use a recent blender, the old export script won't work anymore but it's the best you can have (100% wysiwyg).
similar goes to max and the available export scripts for it,
if i'm right none of them exports a "simple stupid but nothing better as wysiwyg".
(and if i remeber right the resulting meshes failed often because of... i forgot it was a mess, a mess in a software which costs far to much, no wonder i use ONLY open source where i even have the chance to contact the developer and been taken seriuous with my problems).
part two - the post was to long 🙂
following help i created several years ago when i still used 3dsmax,
i hope it will help you to export your models with the "panda" export-script.
[animation settings example]( https://1drv.ms/b/s!AhX1Ed1178sOa2qXyt1MtUCBr0M "https://1drv.ms/b/s!AhX1Ed1178sOa2qXyt1MtUCBr0M")
i don't like to force you to use blender (or even maybe i like to).
but imho it's far easier to work with as with 3dsmax once you get comfortable with it.
i NEVER had any problems with models exported from blender(2.49!) using the DX8 exporter.
of course unlike "Panda" it won't read or export in binary format,
the format makes no difference to the functionality of the model,
a binary mesh is only read quicker by the machine as a text format and uses > 10 times less space.
therefore a text format is human readable and you can "hand edit" it if needed though
(i need this i.e. for proper hirarchy of transparent set parts or to add a second animation channel i.e. for the rotating scanner dish on the "StudCity Shuttle", it will rotate as long as the landing gear is lifted, this is done with a second animation channel which must be exported seperately and must be pasted in fron to the models existing animation channel (animation set "name or #") as a second one (in fact the first animation, the last animation will be the "landing gear" if there is a animation channel in front it will be played back if the landing gear isn't active. take care converting to a binary can mix up hirarchy and animation hirarchy, a text script will be read from top to bottom even by the machine, a .bin format model will be read from bottom up by the machine and this will change the hirarchy e.g. what was last will be first. i hacked MeshView to enable the setting "keep hirarchy" thus i don't have to care about that anymore, this function was for what reason ever restricted from the published software).
there would be a polygon limit for FFED3D,
most of my models exceed this idea by far
and if i remember this right it was
3000-4000 for a fighter
up to 10'000 for large ships or other large objects.
i really exceed this with my pilots and cockpits, but well i can run them on my old shitty computer using XP and it doesn't produces a real penalty to the framerate. other stuff like size of textures and shaders has far more influence on this.
you can take some advantage out of ansi text models.
e.g. what i did for my "Krait".
i only modeled and animated the right sided rear landing gear.
when i exported the finished model i did this in two files,
one containing the ship-model and front as well right-rear landing gear,
one containing only the model for the right-rear landing gear.
i opened the landing gear model with a text editor and named the parts new (i.e. from "piston1r" to "piston1l" or similar, if clever named this can be automated)
i changed the parts names in the animation according to this.
then i pasted the mesh inclusive the top-level frame!! in front of the already exported model (in front of its own top-level frame).
next i altered the positional and rotational values in the top-level frame of the newly pasted mesh, though that the right side becomes left-side (probably you need to export the part with wrong normals, because altering rotation simply from +1 to -1 will flip the normals).
paste the animation to "animation set 1" and bingo - you won't have to build neither to animate the left side by re-use of the right-side animation.