Author
|
Topic: GMax2MOD plugin (Read 2091 times)
|
FA Frey XC
Site Owner
Administrator
Commander
Offline
Gender: 
Posts: 4673
|
Ya'll, remember you can upload stuff for distribution here on D.net
If you click on the frontpage (click on the dynaverse banner in the up right corner) then click on Downloads, then Library upload, you can upload it to the D.net FTP.
Send me a brief note about it and I'll move it to the proper location, and send you back a link to post for DL's.
Regards,
|
|
|
|
|
Logged
|
 Vice President of Technology, Dynaverse Gaming Association Owner, CEO XenoCorp Inc.Gamespy Callsigh : FA_Frey_XC DEFINITION : CHEESMA [noun]: A highly ionized gaseous cloud of cheese that eminates from whatever Stoney, kougar or Merlin are flying.
|
|
|
Justicar
Ensign
Offline
Posts: 4
|
Perhaps someone here can help me out? I seem to be having trouble with the Star Union dreadnought. It works fine in SFC ModViewer... Anim8or doesn't seem to import .mod, unless I've missed something...? Zmodeler 1.x doesn't believe it's actually a .mod file, 2.x doesn't have .mods as a supported option (that I've seen, anyway). It crashes MilkShape 1.8.3 (with the Assimsoft plug-in) every time it tries to load (but MS works fine with most other models). GMax 1.2 will load it, but I can't output it to anything useful other than .nif (from the nif-tools plug-in for Max), which should work, but I have 3ds Max 2009 (aka Rev 11), and the nif-tools only support through Rev 9. It loads fine in Ultimate Unwrap 3D, but the lousy demo doesn't give even a single save. And since there's no returns on the software, I'm not inclined to blow $50 for one model on the chance that it might export to something useful. Basically, I'm not having any luck, regardless of what I try. I just want to get the model into .3ds (or .lwo, or .3dm, or .stl or something that's bloody useful). Any chance somebody here can help me out? Please? And no, I wouldn't upload it without permission. I may be new, but I'm suicidal  Thanks in advance. \edit After further gnashing of teeth, I finally found where Atheorhaven said to go to http://outalance.battleclinic.com/atheorhaven/html/_sgg/m1m3s1_1.htm for some useful tools, where I found moddxfv1.zip. It's a .mod to .dxf converter and it works flawlessly and is super simple. From .dxf I can get it into whatever I need, so I'm happy (after two frakking days...sigh). Thanks to Stealth/darkjedi for writing this useful tool. /edit
|
|
|
|
« Last Edit: August 17, 2008, 03:32:32 am by Justicar »
|
Logged
|
|
|
|
Starfox1701
Ensign
Offline
Posts: 2
|
Has there been any progress on the SOD importer-exporter?
|
|
|
|
|
Logged
|
|
|
|
Rod ONeal
D.Net Beta Tester
Lt. Commander
Offline
Gender: 
Posts: 2203
|
Has there been any progress on the SOD importer-exporter?
I've just sent off an email to Rockstar games. They acquired Mad Doc software. Maybe they have the .SOD source code and maybe they'll release it? We'll see?
|
|
|
|
|
Logged
|
If Romulans aren't cowards, then why do they taste like chicken?
|
|
|
F9thCenturus
Bow before the power of my rubber chickens!!!
Captain
Offline
Gender: 
Posts: 7734
Master of the Rubber Chicken!!!
|
I wonder if your contact would be willing to compile new SFC plugins for MAX 9. One can hope.
|
|
|
|
|
Logged
|
The pen is truly mightier than the sword. And considerably easier to write with.
|
|
|
RBM
Ensign
Offline
Posts: 27
|
I wonder if anyone else has run into this issue. On starting Gmax 1.2, I'm getting notifications that the two SFC plugins aren't initializing.
Any guesses? Thanks.
|
|
|
|
|
Logged
|
|
|
|
Rod ONeal
D.Net Beta Tester
Lt. Commander
Offline
Gender: 
Posts: 2203
|
Here's some things to check/try. Post if it sorts it out for you.
1, Have you installed the winmm.dll into the main gmax directory (That's what allows the plugins to work. ) and the plugins into the gmax/plugins directory?
2, You could try installing the niftools-max-plugins. They give you a new .exe called "nifgmax.exe" to start the program from.
3, Are you certain that you have gmax 1.2?
4, Make sure you have the gmax plugins and not the 3ds studio max plugins.
|
|
|
|
|
Logged
|
If Romulans aren't cowards, then why do they taste like chicken?
|
|
|
Rod ONeal
D.Net Beta Tester
Lt. Commander
Offline
Gender: 
Posts: 2203
|
On the subject of Armada plugins... Rockstar has directed me to Activision, unfortunately. I have filled out a customer service form with Activision, but I don't hold out a lot of hope. We'll see.
|
|
|
|
|
Logged
|
If Romulans aren't cowards, then why do they taste like chicken?
|
|
|
RBM
Ensign
Offline
Posts: 27
|
Here's some things to check/try. Post if it sorts it out for you.
1, Have you installed the winmm.dll into the main gmax directory (That's what allows the plugins to work. ) and the plugins into the gmax/plugins directory? Yep, winmm.dll is tucked in with all the other DLLs and the plugins are in the right folder. Still get the message headed "Loading DLLs" and the failures. 2, You could try installing the niftools-max-plugins. They give you a new .exe called "nifgmax.exe" to start the program from. If it comes to it, I may give that a try. 3, Are you certain that you have gmax 1.2? Yep, though I'm running on Win98 and noticed the winmm.dll is listed as one for NWN2, which IIRC, runs on XP and above. Might that be it? 4, Make sure you have the gmax plugins and not the 3ds studio max plugins. The downloaded file, from Battleclinic, is listed as SFCgmax. Thanks for the suggestions.
|
|
|
|
|
Logged
|
|
|
|
Rod ONeal
D.Net Beta Tester
Lt. Commander
Offline
Gender: 
Posts: 2203
|
Might be the win98. I'm not sure if the NIF tools will help in that case. It's all that I can think of trying though. It works without the .dll file
|
|
|
|
|
Logged
|
If Romulans aren't cowards, then why do they taste like chicken?
|
|
|
Starfox1701
Ensign
Offline
Posts: 2
|
I thought Activiosion got bought out too though for the life of me I can't remember which?
|
|
|
|
|
Logged
|
|
|
|
pepperman
Ensign
Offline
Gender: 
Posts: 188
|
Sorry to post in a relatively old thread but I was wondering if Rod had heard anything back from Activiosion regarding the source code for Armada plugins.
Anyway...don't know if this helps or not but here is the Storm3D Object Definition (SOD) File Format document as well as an extract from the Milkshape plugin creator Chris Graham
Storm3D Object Definition (SOD) File Format =========================================== Author: Steve Williams Modified for v1.93 : Chris Graham Storm3D Graphics Engine Lead. Copyright © Activision 2000.
Modifications : Updated to SOD v1.93 (as for Armada 2 mods).
Audience ======== This document is intended for use by experienced 3D tools programmers for the purposes of writing exporters, importers and conversion tools to/from the .SOD format. A good understanding of real time 3D graphics principles is assumed. The reader is expected to be familiar with real time 3D geometry concepts such as lighting, animation & scene graph hierarchies.
Introduction ============ The SOD file format is a binary file format describing the 3D directed scene graph hierarchies used by the Storm3D rendering engine. Each .SOD file describes one such hierarchy.
The SOD file format has evolved through several versions. This document describes the latest format, 1.93.
Datatypes used in this document =============================== UINT8 unsigned 8 bit integer UINT16 unsigned 16 bit integer UINT32 unsigned 32 bit integer FLOAT floating point (4 byte) value VECTOR2 {FLOAT u, FLOAT v} VECTOR3 {FLOAT x, FLOAT y, FLOAT z} MATRIX34 { VECTOR3 RIGHT, UP, FRONT, POSITION } MATRICES MUST BE ORTHOGONAL. COLOUR { FLOAT red, FLOAT green, FLOAT blue } Component range 0.0 - 1.0
Other local datatypes are defined where appropriate.
Additional Syntax ================= TYPE ARRAY(nentries) - A contiguous array of nentries of type TYPE
Identifiers ===========
IDENTIFIER { UINT16 strlen(string), string (8 bit ascii values) including terminating '\0' OR UINT16 0 - Indicates null string. }
File Structure ==============
Section 1 : File Header Section 2 : Lighting Materials Section 3 : Nodes - Written recursively from the root. Section 4 : Animation Channels Section 5 : Animation References
Section Description ===================
Section 1 : File Header =======================
HEADER Storm3D_SW File identification header (8 bit ascii values) - no strlen or terminating '\0'. FLOAT version Current version is 1.93. 1.91 has also been found and is similar.
Section 2 : Lighting Materials ============================== Defines the characteristics of the vertex lighting materials defined in this .SOD file.
UINT16 count - The number of lighting materials defined in this file.
LIGHTING_MATERIAL ARRAY(count) Array of lighting materials.
LIGHTING_MATERIAL { IDENTIFIER identifier Name of the lighting material. COLOUR ambient Real time lighting ambient component COLOUR diffuse Real time lighting diffue component COLOUR specular Real time lighting specular component (only used by the phong illumination model) FLOAT specular power Specular exponent, used to determine the 'shininess' of material using the phong illumination model. UINT8 lighting model (constant=0, lambert=1, phong=2) UINT8 unknown (=0) }
Section 3 : Nodes =================
The nodes consist of 5 types NULL, LOD_CONTROL, SPRITE, MESH and EMITTER which together form a scene graph which describes the object's hierarchy.
UINT16 count - The number of nodes in the hierarchy.
NODE { UINT16 node_type (0 - null, 1- mesh, 3 - sprite, 11 - LOD control node, 12 - emitter) DO NOT USE OTHER VALUES. IDENTIFIER identifier IDENTIFIER parent (which will be null for root node) MATRIX34 local transform TYPE_SPECIFIC_DATA<node_type> Type specific data field as defined below. }
Null Nodes ==========
TYPE_SPECIFIC_DATA<NULL> { No addtional data required. }
Null nodes are used for two purposes : 1. As 'glue' to stick the rest of the hierarchy together 2. To mark specific locations in the hierachy, for example, hardpoints.
LOD Control Nodes =================
TYPE_SPECIFIC_DATA<LOD_CONTROL> { No addtional data required. }
Storm3D uses discrete (rather than dynamic) LODs for level of detail control. Each child of an LOD control node indicates a discrete LOD that the graphics engine may use when rendering this object. LOD selection is based on visible on-screen area.
Sprite Nodes ============
TYPE_SPECIFIC_DATA<SPRITE_NODE> { None: The appropriate sprite node definition to use is determined from the identifier. The sprite node definition is defined in the .spr files. }
Examples of sprite node usage include running lights in ST:Armada.
TYPE_SPECIFIC_DATA<PARTICLE_EMITTER> { IDENTIFIER Emitter used by this node as defined by an @emitter description in the .spr files. }
Polygon Mesh Nodes ==================
TYPE_SPECIFIC_DATA<MESH> { IDENTIFIER texture material (0 for default) - Defines the TEXTURE_MATERIAL to be used by this mesh. if (version==1.93) { byte unknown[4] UINT32 textures=1|2 } else textures=1 IDENTIFIER texture if (version==1.93) { UINT32 unknown=0 } if (textures==2) { IDENTIFIER bump UINT32 unknown } if (version==1.93) { UINT32 unknown=0 } else UINT16 unknown=0
UINT16 nvertices : Number of vertices UINT16 number of texture coordinates (ntexcoords) UINT16 number of vertex lighting groups (ngroups)
VECTOR3 ARRAY vertex positions (nvertices entries) VECTOR2 ARRAY texture coordinates (ntexcoords entries)
VERTEX_LIGHTING_GROUP ARRAY (ngroups entries) }
UINT8 cull type (0 - no cull, 1- (backface cull)
UINT16 0 - unused must be 0. VERTEX_LIGHTING_GROUP { UINT16 num_faces (all faces are triangles) IDENTIFIER lighting_material (0=default) FACE ARRAY (num_faces entries) }
FACE_VERTEX { UINT16 index into mesh vertex positions array UINT16 index into mesh texture coordinate array }
FACE { FACE_VERTEX ARRAY(3) 3 entries describing a triangular faces vertex link. }
Emitter nodes =============
IDENTIFIER emitter_id
Section 4 : Animation Channels (Defines transform animation) ================================================== ==========
UINT16 count // Number of animation channels
ANIMATION_CHANNEL ARRAY(count) Array of animation channels.
ANIMATION_CHANNEL { IDENTIFIER node : The node to which this animation channel refers. UINT16 nkeyframes : The number of keyframes used by this channel. FLOAT channel_period : The length of time one loop of this channel lasts. UINT16 0 : Not currently used. Must be 0. MATRIX34 ARRAY(nkeyframes) keyframe_data : The actual animation transforms, evenly spaced over time 'channel_period'. }
Section 5 : Animation References (Defines texture animation) ================================================== ==========
Animation references are a way of linking texture (flipbook) animations defined in the .spr files to the geometry of a .SOD mesh node. An example of their usage is the flipbook animation applied to the geometry for the various shield effects in Armada.
UINT16 num_animation_references
ANIMATION_REFERENCE ARRAY(num_animation_references)
ANIMATION_REFERENCE { UINT8 type : Must be 4 IDENTIFIER node : The node to which this animation applies. IDENTIFIER anim : The animation (as defined in .spr files) that is to be applied to this node. FLOAT playback_offset : Time offset in seconds to be applied to this animation reference. }
Additional Information ======================
Vertex Lighting Material Sharing ================================
Vertex lighting materials are shared between objects, when parsing a .SOD file, Storm3D searches for a match in all previously loaded files. If a match is found, that material is used. This prevents artists from having to ensure the material characteristics of commonly used materials are correct in each file, and also saves memory.
A 'palette' of commonly used materials can be found in materials.sod In Armada, this file is loaded prior to most other SOD files & so defines the characteristics of many common materials.
Hierarchy Structure (Armada Specific) ===================================== Armada uses various nodes in a Storm3D hierarchy for special purposes. These include hardpoints, damage nodes, running lights, borgification. When generating new artwork, the artist must pay careful attention to the structure of the hierarchy for the new object to function correctly in Armada. A definition of the hierarchy structure required by Armada is beyond the scope of this document. For the time being, existing artwork can be used as a reference.
TEXTURE_MATERIAL Definition =========================== A texture material defines the characteristics of the polygon rasterizer used to render the polygons in a given mesh. The texture materials are currently fixed and defined within the executable.
Useful values are :
default - Standard material
additive - Use additive blending
opaque - don't use alpha channel for translucency (use it for glow)
translucent - Semi transparent
alphathreshold - Use for objects using alpha channel 'cut outs' - alpha channels will have hard edged 'threshold' but objects will be drawn quickly.
alpha - Uses entire alpha channel. Object will require sorting, so will have performance implications.
wireframe - Use wireframe graphics.
|
|
|
|
Logged
|
|
|
|
|
 |