| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412 |
- Version 1.0.4.70: August 22, 2001
- Greg: - Added BumpEnv mapper
- - Added NPatch enable flag for meshes (in the w3dtools command panel)
- Ian: - Added BumpEnv setting to the shader (in primary gradient)
- Version 1.0.4.69: January 4, 2001
- Greg: - Modified the "bone picker" that the WWSkin space warp uses to allow Max bones to
- be used.
- Version 1.0.4.68: December 7, 2000
- Andre: - Added a Static Sort Level parameter to the Surface Properties rollup page of the
- material editor. This parameter must be the same across all materials assigned to
- one mesh, and is enforced on export. The value is written out as part of the mesh
- header to which the material is assigned.
- Version 1.0.4.67: December 6, 2000
- Greg: - Added 'Vehicle' collision bit. This will allow us to create meshes which constrain vehicles
- to certain parts of a level without constraining characters or projectiles.
- Version 1.0.4.66: November 7, 2000
- Greg: - Disabled the "optimize meshes" feature because recent developments in the run-time code
- seem to have made it un-necessary (and possibly even undesireable due to the extra mesh overhead)
- The main reason for disabling the feature is that the automatic nature of it makes some of
- our processes harder to debug. Mesh names are lost so the artist has no way of figuring out
- which mesh is causing problems when one of the other tools complains about something.
- - modified the mesh export code to reject meshes that are using multi-pass transparent materials.
- - fixed error message boxes so they pop on top of all windows (they were appearing behind the log window)
- Version 1.0.4.65: October 31, 2000
- Greg: - Finished code re-organization.
- - Pat provided new UI for the main export dialog
- - Fixed the "smooth across meshes" feature
- - Added the export log window.
- Version 1.0.4.64: October 20, 2000
- Greg: - Fixed a bug in the name editing dialog in the W3D utility panel
- - Modified the VAlpha behavior so that only the *last* pass with alpha blending
- gets the vertex alpha (instead of all passes with alpha blending)
- - Added the Aggregate geometry type. This lets you request external
- W3D objects to be attached to bones in your model.
- - Added preliminary mesh optimization features. During the export, meshes can be split
- into single-material meshes and then meshes which use the same materials
- can be combined into larger meshes.
- Version 1.0.4.63: October 19, 2000
- Greg: Re-organized the entire DoExport function.
- - First I unified all of the code to go through the "DoOriginBasedExport"
- code by using the scene root as the origin when there were no user-defined
- origins.
- - Re-organized the Export_Geometry function to use a new abstract
- class: GeometryExporTaskClass which encapsulates a lot of code that was
- cut-and-pasted many times through the w3dexp.cpp module.
- - Broke several classes and functions out of w3dexp.cpp into their own
- modules.
- - Modified/Cleaned HierarchySaveClass and MeshConnections class.
- Version 1.0.4.62: October 11, 2000
- Greg: Re-organised the W3DUtility plugin. Moved several dialog boxes
- used by it into their own modules and created a modeless dialog
- containing the w3d settings that can be left up when the user
- is not in Max's utility panel.
- Version 1.0.4.61: September 26, 2000
- Greg: Added copying of the dazzle app data structure to the MaxScript
- extensions.
- Version 1.0.4.60: September 22, 2000
- Greg: Added dazzle exporting to the plugin. Modified MeshConnnections
- class and the w3d file format so that HModels are exported in a
- slightly simpler manner and so that they can support dazzles. The
- "auxiliary" header for hmodels is now obsolete.
- Version 1.0.4.59: September 18, 2000
- Greg: Modified the code so that collections are exported even when no
- meshes or other render objects are present. This is used to create
- collections of proxy objects for the renegade level editor. Also
- modified the "origin" export code to support exporting collections
- with origins.
- Version 1.0.4.58: August 25, 2000
- Greg: Fixed a crash bug that happens if you create a PS2 material. The
- bug was caused by the modifications to the texture pane to replace
- the NoMipMap and Resize buttons with a single NoLOD button. For some
- reason, the PS2 material uses a separate dialog template for its
- texture pane which is the same as the dialog template for the
- normal material. Since the PS2 version of the template was not updated,
- the code would crash when initializing the NoLOD button.
- Version 1.0.4.57: August 18, 2000
- Andre: Fixed the loading of version 4 ParameterBlocks so that the value
- for Stage1MappingType is correct.
- Version 1.0.4.56: August 16,2000
- Greg: Removed the texture flags and buttons for No-Mipmapping and enable
- resizing. These are all lumped into the setting for No-LOD now.
- The GameMtl still has the entries in its parameter block for
- No-Mipmapping and Resize and I use the No-Mipmap setting to set
- the initial state of the No-LOD flag... This also required a flag
- in GameMtl indicating that the conversion had been done. Ug... :-)
- Version 1.0.4.55: August 6, 2000
- Greg: Added new colliison type: camera. In renegade we have some physically
- collideable meshes which the camera should not collide with so I had
- to make a separate flag for camera collision. When the appdata chunk
- is first converted to the new version, the camera collision flag is
- set to the same setting as the current state of physical collision.
- Added light-glare geometry type. This currently only exports the
- position of the pivot point of the max object. It will be used to
- indicate where there should be fancy light glare effects in the level
- Added NoLOD option to textures in the W3D material. This setting will
- be used on textures which should not scale down even when texture
- reduction is being used.
- Fixed serious bug in the parameter block description for the W3D
- material plugin (GameMtl.cpp)
- Version 1.0.4.54: July 13, 2000
- Greg: Fixed a bug related to user-defined origins not working when they
- are rotate or moved from 0,0,0.
- Version 1.0.4.53: July 12, 2000
- Andre: Added support for a different mappers on stage 0/1 of the Vertex
- Material. Added support for the new silhouette mapper type.
- These changes can be found in the VertexMaterial panel in the
- W3d material editor.
- Version 1.0.4.52: May 30, 2000
- Greg: Added support for Max's multiple mapping channels. This can be
- found in the VertexMaterial panel in the W3d material editor.
- Version 1.0.4.51: May 22, 2000
- Greg: Added AABTree exporting so that we don't have to generate AABTrees
- at run-time. This is controlled by the "Optimize Collision Detection"
- checkbox on the exporter options dialog box.
- Added prefix and suffix features to the naming tool.
- Added detatch vertices feature to the skin modifier.
- Version 1.0.4.50: May 8, 2000
- Andre: Added a new MAX Script extension: wwInputBox
- This is a generic way of getting user input in a Windows-like
- manner (as opposed to typing it in the Listener window as
- MAX wants to force you to do).
- Version 1.0.4.49: May 2, 2000
- Greg: Fixed a bug in vchannel.cpp. Was writing out garbage animation
- channels which would crash wdump.
-
- Version 1.0.4.48: May 1, 2000
- Greg: Changed the way skins are exported so that their vertices are
- sorted with respect to the bone they are attached to. Also
- made it so vertices are secondarily sorted by vertex material
- (this means that non-skinned meshes will sort by vertex
- material only.)
- Version 1.0.4.47: April 19 2000
- Greg: Added a new geometry option for "shatterable" objects. Wrote
- a new W3DAppData2Struct which replaces the old AppData1Struct.
- Whenever the old format app data is encountered, a new one
- is created to replace it. This new app data chunk has more
- space in it for future expansion.
- Also fixed a crash bug in the skin modifier related to deleting
- bones from the space warp.
- Version 1.0.4.46: March 28, 2000
- Greg: Added "Transform Nodes" to the collection export. We already had
- "Placeholder" objects which were signified by a '~' after the
- name. Now we have "Transform Nodes" which are signified by a '*'
- after the name. Transform Nodes instruct one of the Renegade tools
- to merge another W3D collection into the file at a given transform.
- The purpose was to allow us to lightmap certain building interiors
- only once and then merge them into many levels...
- Version 1.0.4.45: March 8, 2000
- Andre: Changed the Is_Origin() test to check for hidden nodes. If a
- node is hidden, it will not be accepted as an origin. This
- means that hiding an LOD prevents it from being exported (as
- you would expect).
- Version unchanged: early March
- Andre: Fixed a couple of crash bugs related to animation exporting.
- Version 1.0.4.43: February 29, 2000
- Greg: Fixed a bug which caused all meshes marked to cast shadows to
- not get texture coordinates.
- Fixed meshsave.cpp to detect and properly handle mirrored meshes.
- Version 1.0.4.42: January 24, 2000
- Lytle: Added Playstation 2 material support, including converting W3D
- materials to PS2 materials. Added support for vertex colors and
- vertex alpha to exist concurrently.
- Version 1.0.4.41: January 13, 2000
- Andre: Fixed a nasty memory overwriting bug in MeshConnectionsClass
- that only reared its head under very unique circumstances.
- It was a copy/paste bug that would lead to writing a W3D
- file with incorrect data. It would manifest itself by crashing
- the viewer (and potentially the game engines) when trying to
- load the file.
- Version 1.0.4.40: December 16, 1999
- Ian: Added 'Export Utilites' group to W3D Utility panel and added a
- 'Export with Std Mtls' button to this group. This button will
- first convert all W3D materials in the scene to standard
- materials, then call the export feature, then, after export,
- convert materials back to W3D materials. The purpose of this
- utility is to make it possible to export W3D material attributes
- to third party file formats (eg. Lightscape Preparation files).
-
- Version 1.0.4.39: November 15, 1999
- Andre: Changed the mesh LOD naming convention so that we use numbers
- that correspond to the LOD number (highest-to-lowest) instead
- of letters that went from lowest-to-highest.
- Version 1.0.4.38: November 12, 1999
- Greg: Updated MeshConnections class and the hmodel chunk definitions
- in w3d_file class to not treat shadow meshes as a different type
- of mesh.
- Version 1.0.4.37: November 11, 1999
- Greg: Removed the GEOMETRY_TYPE_SHADOW settings and UI. Added a
- EXPORT_CAST_SHADOW flag. This basically means that rather than
- shadow casting being a completely different "type" of mesh it
- is now an option on any mesh. This required some tweaking
- of the AppData structure we're saving and to the w3dutil code.
- Version 1.0.4.35: November 3, 1999
- Andre: Exposed another script extension, called "wwDuplicateSkinWSM".
- This extension allows the SceneSetup script to copy bone
- information from the base object's skin WSM to the LODs.
- Meshes are still unaffected, since the artist will be munging
- the meshes to reduce their poly counts.
- Version 1.0.4.34: November 2, 1999
- Andre: Exposed two new script extensions, named "wwCopySkinInfo" and
- "wwFindSkinNode". These extensions allow the SceneSetup script
- to copy the skin/vertex/bone binding information from the base
- model to the LOD and Damage models.
- Version 1.0.4.33: October 18, 1999
- Andre: Merged WWScript.dlx into the exporter, so now WWScript is
- unnessesary and should be deleted. The code in that DLX was
- ported from MFC to Win32 code during the merge. GetW3DAppData0
- and GetW3DAppData1 are no longer exported from the DLE.
- Version 1.0.4.32: October 11, 1999
- Andre: Correct NULL object handling was implemented when exporting HLODs.
- NULL object chunks are only written when using the old-style LOD
- setup (one per file), otherwise the name "NULL" is put in the HLOD
- and no NULL object chunk is written.
- Version 1.0.4.31: October 5, 1999
- Andre: Fixed a bug in MeshBuilder where a division by zero occurred if the
- extents of a triangle was zero in one dimension.
- Version 1.0.4.30: October 1, 1999
- Andre: - Added support for the "suppressPrompts" flag during export. If
- Max passes in a TRUE value, we will go with the previous export
- settings instead of showing the export options dialog. This makes
- non-interactive batch exporting possible.
- - Moved W3dExportOptionsStruct from w3ddlg.h to w3dutil.h so that
- WWScript can access it easily.
- Version 1.0.4.29: September 27, 1999
- Andre: - Fixed a skin bug that occurred in LOD exporting when a vertex in a
- skin was not bound to a bone (it would be exported in unmodified
- coordinates, creating a "pop").
- - Strip off any trailing ".%d" or "." from a name in Set_W3D_Name
- (as opposed to just ".%d").
- - If the artist sets up damage animations, then the animation on
- the base model is no longer exported. (non-damage animations should
- still be created in separate files)
- - Exporting 2 more symbols from the DLL (GetW3DAppData0 and
- GetW3DAppData1). These functions are used by the MAXScript extension
- DLL (WWScript.dlx) to copy AppData from one node to another.
- Version 1.0.4.28: September 23, 1999
- Andre: Fixed a bug in LOD exporting when the base object wasn't centered
- at the origin. Added support for placing damage models in the scene.
- Renamed "Generate LOD extensions" to "Generate extensions" since
- the same extensions are used for damage. Added a "Damage Region"
- spinner to the W3D Tools panel. With this spinner you can mark
- bones as being part of a given damage region (0 to 15, -1 means
- not part of a damage region).
- Version 1.0.4.27: September 17, 1999
- Greg: Added degenerate triangle removal to MeshBuilderClass.
- Version 1.0.4.26: September 17, 1999
- Andre: Modified the exporting code to allow artists to define all LODs of
- an object in one MAX file. The old way of creating LODs is still
- supported so that old art assets are still usable. Added a
- "Generate LOD extensions" button to the W3D Tools panel to make
- the Origin naming convention less painful.
- Version 1.0.4.25: August 21, 1999
- Greg: Fixed a bug in Export_Geometry. While exporting skins, one line of
- code was referring to the list of normal meshes rather than the list
- of skins. When you do an export with only a skin and no meshes, this
- causes an access violation.
- Version 1.0.4.24: July 27, 1999
- Greg: Changed the Hide/Unhide by W3D type buttons into "Select by W3D Type"
- buttons. This should be more useable. Also, added select alpha meshes,
- select physical, projectile and vis collision meshes.
- Added a material naming tool.
- Version 1.0.4.23: July 9, 1999
- Pat: Changed the default behavior of the collection naming tool to
- be 'affect selected' rather than 'affect all'
- Version 1.0.4.22: July 7, 1999
- Pat: The export code doesn't export the DCG array if all vertex colors
- are white (1, 1, 1), however this was a problem when using the
- new Mesh Deformer, so I added a check during export to see if
- the Deformer was modifying vertex colors. Also modified the
- hierarchy export code so it will resize its internal array if
- the number of nodes is greater than 512.
- Version 1.0.4.21: July 1, 1999
- Pat: Added code to optimze the between-mesh smoothing and added a new
- button to the export dialog that allows the user to turn this
- smoothing feature on/off. Also added displacement maps to the
- W3D material, however due to a bug in the NURBS Mesher modifier,
- we decided not to expose the functionality in UI at this time.
- Version 1.0.4.20: June 24, 1999
- Pat: Added code to apply smoothing groups over mesh boundaries. More
- work was done on the obj-space mesh deform modifier including save/load,
- export, undo, and vertex-alpha support. We fixed a bug where the ErrorClass
- object that was used during exception handling was using and freeing a
- previously freed pointer. Added a new panel to the material types for
- Commando surface types.
- Version 1.0.4.19: June 14, 1999
- Greg: Added the VAlpha checkbox to the W3D utility panel. Checking this
- causes the exporter to convert vertex colors into alpha values and put
- them in all passes that are using alpha blending. This might be a temporary
- solution; I'm thinking we need to extend the Utility panel (and the AppData
- structure that we are saving) to allow for more flexible control over vertex
- alpha, vertex color, etc.
- Version 1.0.4.18: May 27, 1999
- Greg: Fixed a bug in the code which handles loading a hierarchy tree from another
- W3D file. Made the W3D utility panel support multiple selection.
- Pat: Added the initial mesh deform object space modifier. Currently doesn't
- export the data.
- Version 1.0.4.17: April 9, 1999
- Greg: Fixed a bug related to exporting a mesh with zero vertices. Exporter will
- throw an exception which pops up a message box indicating the name of the
- mesh. Made the collision boxes behave the same way as meshes when one is
- exported with geometry only - it takes on the name of the file. Whew this
- part of the exporter code is getting uuuuuugly...
- Version 1.0.4.16: April 6, 1999
- Greg: Fixed a bug related to the storing of the default export options. If the
- user exported a model which uses the hierarchy from another model and then
- moves the Max file, the next export would crash Max when the exporter couldn't
- find the w3d file which contains the hierarchy.
- Version 1.0.4.15: Mar 18, 1999
- Greg: Fixed a bug in the AABox export. Was using the wrong coordinate system for
- the box. AABoxes actually seem to be of very limited use. Possibly only
- useful as an approximation of a cylinder centered at 0,0,0 in object space
- (but moved anywhere on the z-axis) and only for objects that *only* rotate
- about the z-axis. (characters) Ug.
- Version 1.0.4.14: Mar 16, 1999
- Greg: Made meshes that are marked as AABox or OBBox export a W3D_CHUNK_BOX instead
- of a mesh. The runtime engine can test collision with a box in about the same
- amount of time it takes to check a single triangle... so one box is much faster
- than a 12 triangle mesh :) These boxes are only for collision detection so
- they only export a color, no other rendering information.
- Version 1.0.4.13: Mar 11, 1999
- Greg: Fixed a bug in the collection exporter. Needed to put the entire name
- of the render object into the sub object chunk.
- Version 1.0.4.12: Mar 10, 1999
- Naty: Fixed minor bug with start/end animation frames in export dialog.
- Version 1.0.4.11: Mar 4, 1999
- Naty: Added "Camera Oriented" mesh type (and changed the camera aligned button
- to read "Camera Parallel"). Export options are now saved in the MAX file
- (hierarchy file paths are saved in a relative form).
- Version 1,0,4,10: Mar 3, 1999
- Greg: Modified so that collections are not exported when there is only a single
- mesh and forced that mesh to use the name of the file.
- Changed w3d_file.h so that meshes have a "container name" instead of
- a "hierarchy model name" and set the container name when a collection is exported
- Version 1,0,4,9: Mar 3, 1999
- Naty: New Shader (took out colormaks, fogfunc, new dialog and preset system)
- Added alphatest support, added Linear offset mapper and mapper argument
- string support
- Version 1,0,4,8: Feb 9, 1999
- Greg: Added the ZNormals option for forcing the normals of a mesh to be 0,0,1
- Version 1,0,4,7: Feb 8, 1999
- Greg: Fixed 2 bugs in the skin code. Added code to scan the materials used
- by a mesh and discard un-used ones.
- Naty: Added 'Alpha-Bitmap' button to the texture dialog, added new shader presets
- Version 1,0,4,8: Feb 15, 1999
- Greg: Improved the strip generation algorithm. Now actually turns a cube into 6
- strips instead of 12 individual triangles. Still needs work though...
-
|