Revision History
v2.6
A few new features, additional
optimizations and bug-fixes, etc...
- MDD (point-cache animation)
file changes:
- New Feature: "MDD Group Loader" tag added.
This new tag allows you to set up - or modify - MDD animation
on groups of mesh objects from a central location (it operates
on any direct mesh object children of the parent object (typically
a Null object) that the tag is attached to). See the MDD Group Loader section for details.
- All MDD IO features now have
SwapYZ, FlipX, FlipZ options.
- .mdd Import/Export point scaling
is now limited to up/down by factor of 1x -> 1000x ...
- .mdd Deformer is now also
limited to up/down by factor of 1x -> 1000x, but it currently
uses a single floating point value (0.001 -> 1000.0). See
the MDD Deformer
section for details.
- Fixed .mdd Import to not 'relocate'
the mesh points to the world zero location.
- Fixed a bug with exporting
.mdd files, where source object 'scaling' was not accounted for
correctly.
- Fixed a reported bug of the
MDD Deformer sometimes corrupting the .mdd file - I never saw
this issue myself, but the fix I put in place was verified to
sucessfully stop/fix the problem.
- General changes:
- New Feature: New .Obj Animation Sequence Import - works like
.mdd import, but with a series of .obj files
- New Feature: .obj Import (only) now supports "Smoothing
Groups" - if smoothing groups are present in the file, the
plugin converts them to the appropriate phong edge breaks (assuming
that the "Phong Tag" option is enabled). [NOTE:
The process of Exporting smoothing groups to .obj files
- based on (potentially non-polygon-contiguous) phong edge breaks
- is a more complex problem to solve and has not (yet) been
implemented]
- Improved 'status' messages
during Import - far more informative during long imports
- Now parses "bump strength"
values in .mtl files (import only, currently)
- Enlarged the Import line buffer
size to accommodate very large nGons (nGons with large numbers
of verts).
- Added code to correctly handle
incorrect Daz Studio .mtl file info (map_D vs map_d)
- Added code to correctly handle
other potential case-sensitive .mtl file errors (Daz Studio is
notorious for not following the specification)
- Changed Diffuse (Color) channel
to always be enabled if not disabled on Import options (will
use default color if none loaded).
- Added code to (currently always)
export Splines as .obj file 'line' records.
- All mesh-splitting options
(including not splitting) now preserve vertex-ordering (previously
only the "Don't Split" and "Split by Group"
options preserved vertex-ordering).
- All mesh-splitting options
now cull out any unused vertices - this can also fix a problem
when importing splines, where the spline points are being duplicated
in the mesh (when not splitting).
- Unused vertices are added
to scene as separate point-only mesh object (given that the appropriate
options are set on the Mesh Splitting tab)
- Optimizations:
- Optimized .obj Import speed
in general - but particularly when there are large numbers of
nGons (from 2->60 times faster)
- ...also 'actually' optimized
for large numbers of groups (left out in last update?)
- Bug Fixes:
- Fixed a bug with importing
group (or material or region) names longer than 255 characters.
- Fixed a bug with exporting
.obj files, where source object 'scaling' was not accounted for
correctly
- Fixed a bug with exporting
.mdd files, where source object 'scaling' was not accounted for
correctly (as listed above in the MDD section).
- Fixed .mdd Import to not 'relocate'
the mesh points to the world zero location (as listed above in
the MDD section).
- Fixed a reported bug of the
MDD Deformer sometimes corrupting the .mdd file - I never saw
this issue myself, but the fix I put in place was verified to
sucessfully stop/fix the problem (as listed above in the MDD
section).
v2.5
Additional Cinema 4D Release/compatibility
changes, Optimizations, bug fixes, etc... [NOTE: There were a
few internal (unpublished) versions between v2.2 and v2.5 but
all the relevent changes are listed below]
- New Feature: "MDD Deformer" added as
an alternate .mdd file Import option. The previous .mdd Import
option baked the .mdd file deformation data into Point-Level-Animation
(PLA) keys on the effected mesh. That option is still available,
but the new deformer offers a bit more control and only loads
the 'current' animation frame info - on an as-needed basis (potentially
slower if you have slow drives, but can save a ton of memory
being used at any particular time).
- New Feature: Added (a special) option to merge
"color-only" materials when Importing. Most people
will likely never need to use this set of options ("Special"
sub-tab on the "Materials" tab)... there was a certain
process that was generating tens or even hundreds of
thousands of "Color Only" materials - basically
using materials as a stand-in for a single bitmap texture file.
This is a highly unusual situation, but my plugin (and Cinema
4D itself) were never designed to work with so many materials.
What these new options allow you to do is to 'merge' similar
colors, thus reducing the total number of materials being loaded
in the scene.
- Optimizations:
- The Name and Path of the existing
Document are no longer altered when Importing into the current
Document - they are only altered when the "New Document"
option is enabled on Import.
- re-engineered several areas
of the code to be up to several orders of magnitude faster when
Importing or Exporting large (or extreme) numbers of materials
and/or groups.
- Optimized UV-compression code
once again - there's really no good reason to not use the "Compress"
option when Exporting now.
- Bug Fixes:
- Fixed all string naming (materials,
groups, etc.) to allow for full 8-bit characters.
- Fixed Export module to apply
current (global) rotation matrix to exported Normals [hard
to believe this bug existed so long before I heard about it...].
- Fixed a rare (?) Export crash-bug.
- Fixed bug where... you can
now (once again) directly load a .mtl file (ie. instead of a
.obj file).
- Fixed potential crash bug
if Texture Tag is missing Material.
- Fixed confirmed crash bug
if Texture Tag is missing Material (separate from above).
- Fixed potential crash bug
if Selection Tag has out-of-range values.
- Fixed bug with UVs and Norms
on triangles if not compressing.
- Finally fixed UV-Baking to
correctly handle offset/scaling from Texture Tag.
v2.2
Additional Cinema 4D Release/compatibility
changes, bug fixes, etc...
- New Feature: UV and Normal compression/optimization
is now an user export option - compression is still enabled by
default, but it was brought to my attention that certain plugins
(tree/shrub-generation, for example) generate UVs that caused
my compression code to take an extremely lengthy time to process
(on huge files)... this option will let you disable compression,
which will greatly speed up exporting, but also greatly increase
the resulting .obj file size (basically, a UV vertex is exported
for every point of every polygon).
In the one example I was looking at, ~550,000 UVs were written
out (without compression) instead of ~125,000 (with compression)
- the resulting output .obj file went from ~13mb to ~25mb - but
of course it only took a few seconds to export, instead of a
full minute or more that the compression was taking, so choose
your poisen :).
- Bug Fixes:
- Fixed memory-leak when Importing
with "Split by Group" set.
- Fixed R12 Vertex-Normal Export
bug.
- Fixed MDD Export scaling issue
(a bug that forced a 1000x scaling should now be fixed).
- Fixed funky file-select dialog
initial path issue (folder/sub-folder no longer set as filename-prompt).
- .mtl file Export changes:
- Material names now come fom
Materials used by Texture Tags instead of restricted Poly Selection
Tag names.
- Transparency channel color
now exported (and imported) as 'Tf' record (Transmission Filter)
color.
- No longer exports diffuse
color if the Color channel not enabled (except for the 'default'
material).
- New default diffuse color
for 'default' material (similar to R12 default color).
- Better handling of non-standard
materials (Material name still used and polys still get assigned,
instead of being moved to 'default' material).
- Added support for my up-coming
xAlpha Shader (to get texture filename).
- Internal restructuring: Some additional internal restructuring
(and bullet-proofing) of the code was done to allow me to share
(even) more common code between plugins... while most of these
changes are internal (and transparent to the user), pretty much
the entire plugin has gone through an overhaul at the source-code
level.
v2.1
R11.5 / R12 compatibility update
build (the plugin was not updated for earlier versions of Cinema
4D)...
- Internal restructuring: Some additional internal restructuring
(and bullet-proofing) of the code was done to allow me to share
more common code between plugins.
- Mac 64bit Export Bug Fix: With the previous (v1.7) release,
there was an odd bug when Exporting .obj files - which only seemed
to occur in the 64bit Mac version, when using R11.5. This same
bug may have also carried over into the recent (v2.0) 64bit Mac
R12 build. In either case, it should now be fixed.
v2.0
Initial R12 compatibility build...
no new or changed features.
v1.7
This update adds .mdd file
Import/Export abilities, along with some other changes...
- New Feature: MDD
File Import*...
A new option will allow you to Import Mesh Deformation Data (.mdd)
files. [*
NOTE: The .mdd Import
plugin is only available in the R11.026 or later version
of Riptide Pro.]
- New Feature: MDD
File Export...
A new option will allow you to Export Mesh Deformation Data
(.mdd) files.
- Removed the old "Reset
Preset Defaults" menu...
It wasn't actually
doing anything anymore.
- Reduced exported UV precision
to 5 digits...
This will make exported files smaller and is still plenty of
precision for >99,999 pixel dimension bitmaps.
- Vertices and Normals are
now written out in short-hand notation...
This is a bit less 'visually' neat, but will produce smaller
file sizes.
- Fixed a few minor bugs.
- The style/graphics of the
HTML documenation was updated.
v1.6
This update adds multi-file
Import abilities and addresses a few issues and/or bugs with
previous versions...
- New Multi-File Import option(s)...
A new option will allow you to Import multiple .obj files in
a single operation. When the new "Multiple/Batch Files"
option is enabled, you will be presented with a 'folder' requester
dialog instead of the normal 'file' dialog and you also have
two additional options...
- Include Sub-Folders - when this option is enabled, sub-folders
are also searched for files and any .obj files found within them
are also Imported.
- Folder Tree as Hierarchy
Tree - when this option
is enabled (only available when the above option is also enabled),
each sub-folder is converted to a 'branch' of the Object Manager
hierarchy (a Null object is created, using the sub-folder name
and any .obj files within that folder are set up as children
of that Null object).
- Fixed "Scale Up/Down"
option when Exporting...
There was a bug in
the dialog code that did not allow this option to be changed...
fixed.
- Fixed UV-baking code to
be more robust (and correct)...
The internal UV-baking
code (used to consolidate various forms of mapping when exporting)
has been re-worked to account for any Texture Axis Tool adjustments
associated with each Texture Tag. Some additional changes were
made to how and when a 'default' material gets applied. Aside
from the fact that only one material can be applied to
any particular polygon within the .obj file format (C4D allows
you to combine them), this code is now producing expected results
in every combination I've tried (ie. various combinations of
mesh and texture axis adjustments, combined with various combinations
of Selection Tag restrictions (including Un-restricted Texture
Tags, which act as a 'default' for polygons that are not otherwise
restricted to some material).
- Polygonal Mesh Objects
with no polygons no longer cause an error...
This situation used to cause the plugin to stop all operations
and display an error/warning dialog - it no longer does this
(although if the mesh does have points/vertices, those would
still be written to the file and a message is printed to the
console).
- Polygonal Mesh Objects
with no points/vertices no longer cause an error...
This situation used to cause the plugin to stop all operations
and display an error/warning dialog - it no longer does this.
It came to my attention that the built-in Cinema 4D .3ds file
Importer has a habit of generating 'empty' Polygonal Mesh Objects
where normally a "Null" object should be created/used
(ie. as a parent/pivot-only object within the hierarchy). This
fix/change, along with the one listed above makes the plugin
much more 'friendly' to these situations (at the relatively small
cost of some warning/notice to the user in the case where they
were "expecting" all Polygonal Mesh objects to have
vertices/polygons).
- .obj files that contain
only points/vertices (no faces/polygons) can now be Imported...
This is similar to the above changes, but more closely related
to Importing point-clouds and/or Morph type files (which may
only have vertices, but no faces). Previous versions of the plugin
would not Import .obj files with no faces.
v1.5
This update fixes a few issues
with the License Server code as well as the multi-file export
options...
- Fixed 'Preset' code to
work with License Server.
The previous version(s) didn't store any updated Preset information
when running from the License Server... fixed.
- Fixed/adjusted some other
code, relative to License Server operation.
- The document path is no
longer altered when Exporting.
In previous versions,
the plugin was (re)setting the document's "save path"
to wherever you exported a .obj file. This could be a source
of confusion the next time you saved your .c4d project file.
With this update, the plugin no longer alters the document save
path, but it still keeps track of the last folder you saved to
and seeds future file/folder dialogs with that stored path.
- Fixed a bug of not Exporting
all files when doing multi-file Exports, but without saving Faces.
For example, if you
were saving only vertices, as a (set of) morph files, only the
first file would be saved.
- Re-organized the Export
"Filter" tab options.
While looking into
the above issue, I decided to re-organize some of the Export
options for clarification. A number of the options are simply
irrelevent/ignored/not applicable if the "Export Faces"
option is disabled, so they are now grouped under that option.
The one slight change of actual behaivior is that the "Export
Materials" option is included in the above, so the plugin
won't create any .mtl files if the Export Faces option is disabled
(I think the previous version would still create those files,
even if there were no faces in the .obj file using the materials).
v1.4
This update primarily focuses
on adding R11 "Multi-License" (License-Server)
support, as well as (finally) adding a 64bit Mac build...
- Riptide Pro is now compatible
with the R11 Multi-License feature (when using the License-Server
module).
Both single and multi-seat support is available. If you would
like to purchase a multi-seat license, please contact
me with your details for pricing options. Details for using
your existing (single-seat) license key with the license-server
will be posted in the Riptide
Pro Support Forums and also sent along with any new purchases.
- Support has been added
for Mac 64bit (Many thanks to Robert Templeton for doing the
64bit build!).
The following configurations
are now supported*:
- PC 32bit (R9.6+, R10.1+, R11.026+)
- PC 64bit (R9.6+, R10.1+, R11.026+)
- Mac 32bit Universal Binary
(R9.6+, R10.1+, R11.026+)
- Mac 64bit Universal Binary
(R9.6+, R10.1+, R11.026+)
* NOTES:
- The '+' on the end of the
above versions means that it will work with that version, or
any later version.
- The Cinema 4D "Layers"
feature is not supported in the R9.6 versions of the plugin (or
Cinema 4D).
- There are no functional
differences between the R10.1 and R11 versions of the plugin... the only reason for the R11 build
is to support 64bit on the Mac. If you are using a PC or 32bit
Mac, then either package should work fine.
- Related to the above, the
R11 Mac build of the plugin contains code to work with 4 different
platforms (ie. Universal Binary, supporting 32bit and 64bit PPC
or Intel), and is ~4 times as large as the one in the R10.1 package,
so if you're not using 64bit on the Mac, you might be
better off with the R10.1 download package.
- New Phong Settings.
Previous versions of Riptide Pro (as well as Riptide Classic)
always added a Phong Tag to every imported mesh. This is now
set as an option (enabled, by default), on a per-Preset basis.
You can also specify the Phong Angle on a per-Preset basis.
v1.3
This update primarily focuses
on some new Multi-File Export options, but with a few
other features/changes thrown in...
- The "Suggested Path"
for textures (on Import) is now recursively searched.
Sub-directories of the Suggested Path are now also searched for
texture files, making this option more like Cinema 4D's built-in
Texture Path preferences, but on a per-Preset basis.
- UVW Tag no longer required
to export UVs
In previous versions, the plugin would scan through the document/scene
to make sure each mesh had a UVW Tag and if any didn't you had
the option of canceling the export or disabling the "Export
UVs" option and continueing. As of this update, any mesh
objects in the scene that are not already uv-mapped, will get
a default "Frontal" type mapping when exported. However,
if materials are being used on some or all of those polygons,
and the Texture Tag for that material uses some mapping method
other than UVW Mapping (like maybe Spherical or Cylindrical mapping),
that mapping method will be used for those polygons - as usual.
- Fixed a few more string-file
issues.
There were a few typos (and/or copy/paste errors) left in the
language string files... while many of the language translations
are still only partially translated, I think I've finally fixed
any errors in them.
- Externalized many additional
strings for translation...
With the updates to the Export side of things, I've now moved
most of those strings (status and various dialog strings) to
the string files as well.
- New Export option: "Export
Hidden Objects"
By default, Riptide Pro will not Export any objects that are
'hidden' in the editor window. This new option lets you over-ride
that behaivior.
- New Multi-File Export option(s)...
There are a host of new Export options, presented on two new
Tabs of the Export dialog. Without going into details here, an
overview includes:
- Single File For Scene (mimics
previous behaivior - a single .obj file is created for the scene).
- File Per Root-Level Object
- File Per Mesh (including an
option to re-create the OM hierarchy as a directory/folder tree)
- Animation Sequence (including
a new "Animation" Tab with many options to control
the output files)
...see the appropriate documentation sections for details.
v1.2
- Created new Icons and Logos...
I thought the Pro version deserved it's own icons and decided
to re-invent my "Red-i Productions" logo while I was
at it.
- Finally 'fixed' logo rendering
in I/O dialogs...
In all previous versions (including Riptide Classic), the logos
were being scaled oddly in the Import and Export dialogs - they're
finally being rendered at the correct size.
- Included new German strings
by Mathias Weil (mad4d) - Thanks
Mathias!
- Added Mesh and Spline Layer
options...
You now have the option of creating "NewMesh" and "NewSpline"
layers along with all the previous Layer options.
- Redesigned Material Import
options...
The previous implementation of Material import control was not
working exactly as I had envisioned and was somewhat confusing
as well. I have redesigned how Material importing works to a)
make more sense and b) added functionality. See the updated Import->Materials
section for details.
- Added a new mechanism to
update existing Presets with default values for any new options...
I have added code that will try to update any existing Presets
with some 'default' values for any new options that are added
or changed. For example, the previous release added new Layer
options (for Phong, UVW and Normal Tags), but you had to know
to manually go and enable these. This release also adds the Mesh
and Spline Layer options and the code will update all of your
presets to Enable these by default. Of course if you don't want
these enabled, you'll have to go update your Presets manually
anyway (always a good idea with a new version of the plugin).
v1.1
- Fixed multiple 'Normal'-related
bugs (both Import and Export).
There were several issues related to Importing and at least one
related to Exporting proper Normals when that option was enabled.
It turns out that the test file I was using had 'bad' Normals
in it (from the 3DS Habware plugin), which were confusing my
results. Riptide Pro will now at least normalize these on Import.
There were also issues related to flipping/swapping axis... They
are now correct in all cases (reversed/adjusted as needed, when
various flipping and swapping of axis take place).
- Added "Flip X Axis"
option
(NOTE: This option, in combination with the "Swap Y/Z Axis"
and "Flip Z Axis" options can completely re-orient
models exported from 3DStudio's coordinate system into Cinema
4D's coordinate system).
- Fixed up several left over
"Check Box" strings in the language files.
Many language files have incomplete translations still, but at
least they have meaningfull (english) labels now :).
- Fixed crash bug when selecting
to Import a .mtl file.
If you select a ".mtl" file instead of a ".obj"
file Riptide knows to just Import the .mtl file and update/create
Materials in the scene... this feature got broken during Riptide
Pro development and would cause a crash - it's now fixed.
- Added C4D "Layer"
options for Phong, UVW and Normal Tags.
You may want to enable these and "Update" your presets
(if you haven't created any of your own yet, you can use the
"Preset Defaults" menu option to get the updated pre-defined
Presets)...
- Added confirmation dialog
to "Preset Defaults" menu option...
Selecting "Okay" will delete all existing Presets
and re-create the pre-defined default Presets for you. Selecting
"Cancel" cancels the operation.
- Fixed bug with adding Phong
Tags.
v1.0
- First release version.
See the rest of the documentation for details of the new and
enhanced features, compared to the original Riptide.
|