Skip to content
Newer
Older
100644 1243 lines (740 sloc) 34.2 KB
36ba37f @amorilia Version bump.
authored
1 Release 2.0.5 (in development)
554ca75 @amorilia Write NaN on float overflow.
authored
2 ==============================
3
48b5f2c @amorilia Fixed bug in stripification (reported by PacificMorrowind, see issue …
authored
4 * Added regression test and fixed rare bug in stripification (reported by
5 PacificMorrowind, see issue #2889048).
6
4b963ca @amorilia Changelog update.
authored
7 * Improved strip stitching algorithm: *much* more efficient, and
8 now rarely needs more than 2 stitches per strip.
9
10 * Improved stripifier algorithm: runs about 30% faster, and usually
11 yields slightly better strips.
a8c5fe4 @amorilia Improved strip stitching algorithm: should now be much more efficient…
authored
12
45da5b4 @amorilia Refactored and fixed a few bugs in PacificMorrowind's modify_collisio…
authored
13 * Added new modify_texturepath and modify_collisiontype niftoaster spells
14 (contributed by PacificMorrowind).
a2d1bbf @amorilia Changelog update.
authored
15
16 * Various fixes and improvements for 20.5.0.0+ nifs.
17
18 * Check endian type when processing nifs.
19
36ba37f @amorilia Version bump.
authored
20 Release 2.0.4 (Nov 10, 2009)
21 ============================
22
554ca75 @amorilia Write NaN on float overflow.
authored
23 * Write NaN on float overflow.
24
3fc6a24 @amorilia Changelog update.
authored
25 * Use pytristrip if it is installed.
26
142a44d @amorilia Preparing release 2.0.4.
authored
27 * Implemented the FaceGen egm (done) and tri (in progress) file formats
28 with help of Scanti and Carver13.
1c1061f @amorilia The nif dump_pixeldata spell now also dumps NiPersistentSrcTextureRen…
authored
29
30 * The nif dump_pixeldata spell now also dumps NiPersistentSrcTextureRenderData
31 (reported by lusht).
3fc6a24 @amorilia Changelog update.
authored
32
ae3bc9d @amorilia Set TSpace flags 16 to signal presence of tangent space data (fixes F…
authored
33 * Set TSpace flags 16 to signal presence of tangent space data (fixes Fallout 3
34 issue, reported by Miaximus).
35
262fd03 @amorilia Preparing 2.0.3 release.
authored
36 Release 2.0.3 (Sep 28, 2009)
37 ============================
38
39 * Various bugfixes for the Aion cgf format.
40
41 * Updates for nif.xml to support more recent nif versions (20.5.0.0,
42 20.6.0.0, and 30.0.0.2).
3c9b1a5 @amorilia Version bump.
authored
43
9e24e27 @amorilia Preparing release 2.0.2.
authored
44 Release 2.0.2 (Aug 12, 2009)
45 ============================
094fc86 @amorilia Changelog update.
authored
46
47 * The source has been updated to be Python 3.x compatible via 2to3.
48
6f4d089 @amorilia Changelog update.
authored
49 * New unified installer which works for all versions of Python and
50 Maya at once (at the moment: 2.5, 2.6, 3.0, 3.1) and also for all
879a954 @amorilia Changelog update.
authored
51 versions of Maya that use Python 2.5 and 2.6 (2008, 2009, and 2010,
52 including the 64 bit variants).
53
54 * Added support for Aion cgf files.
6f4d089 @amorilia Changelog update.
authored
55
18fa0c5 @amorilia Added support for NeoSteam header and footer.
authored
56 * Added support for NeoSteam header and footer.
57
094fc86 @amorilia Changelog update.
authored
58 * Log warning rather than raising exception on invalid links (fixes issue
59 #2818403 reported by abubakr125).
60
fbf8f8c @amorilia Updating changelog.
authored
61 * Optimizer can now recover from invalid indices in strips (this fixes
62 some nifs mentioned in issue #2795837 by baphometal).
63
55ed5dd @amorilia Skin updater can now recover when some vertices have no weights (this…
authored
64 * Skin updater can now recover when some vertices have no weights
65 (this fixes some nifs mentioned in issue #2795837 by baphometal).
66
fbf8f8c @amorilia Updating changelog.
authored
67 * Skip zero weights and add up weights of duplicated bones when
68 calculating vertex weights (this fixes some nifs mentioned in issue
69 #2795837 by baphometal).
70
71 * The nif optimizer can now handle NiTriShapeData attached as a
72 NiTriStrips data block (fixes some corrupt nifs provided by
73 baphometal in issue #2795837).
74
e4d964d @amorilia Optimizer can now recover from NaN values in geometry.
authored
75 * Optimizer can now recover from NaN values in geometry (sample nifs
76 provided by baphometal).
77
7e805d9 @amorilia Do not attempt to optimize nifs with an insane amount of triangles, b…
authored
78 * Do not attempt to optimize nifs with an insane amount of triangles,
79 but put out a warning instead.
80
c2e6361 @amorilia Log error rather than raising exception when end of nif file is not r…
authored
81 * Log error rather than raising exception when end of nif file is not
82 reached (fixes issue with sample nif provided by baphometal).
83
ca472fa @amorilia Preparing release 2.0.1.
authored
84 Release 2.0.1 (Jul 22, 2009)
85 ============================
b72bfdd @amorilia Changelog update.
authored
86
9dcd952 @amorilia Changelog update.
authored
87 * Added Windows installer for Python 2.6.
88
d2bd340 @amorilia Updated installer to look for msvc 2008 sp1 redist package.
authored
89 * Updated mopper.exe compiled with msvc 2008 sp1 (fixes issue #2802413,
90 reported by pacmorrowind).
91
b72bfdd @amorilia Changelog update.
authored
92 * Added pdb session to track cicular references and memory leaks (see
93 issues #2787602 and #2795837 reported by alexkapi12 and
94 xfrancis147).
95
96 * Added valgrind script to check memory usage, and to allow keeping
97 track of it between releases (see issues #2787602 and #2795837
98 reported by alexkapi12 and xfrancis147).
99
100 * Removed parenting in xml model from everywhere except Array, and
101 using weakrefs to avoid circular references, which helps with
102 garbage collection. Performance should now be slightly improved.
103
104 * Updates to xml object model expression syntax.
105
106 - Support for field qualifier '.'.
107
108 - Support for addition '+'.
109
110 * Updates to Targa format.
111
112 - Support for RLE compressed Targa files (test file contributed by
113 Alphax, see issue #2790494).
114
115 - Read Targa footer, if present (test file contributed by Alphax,
116 see issue #2790494).
117
118 - Improved interface: header, image, and footer are now global nodes.
119
2f14055 @amorilia Changelog update.
authored
120 * Updates to xsd object model.
121
122 - Classes and attributes for Collada format are now generated (but not
123 yet functional).
124
4047630 @amorilia Preparing release 2.0.0.
authored
125 Release 2.0.0 (May 4, 2009)
126 ===========================
6375a19 @amorilia Version bump.
authored
127
d2aff27 @amorilia Also detect 64 bit variants of Maya in windows installer.
authored
128 * Windows installer now detects Maya 2008 and Maya 2009, and their 64 bit
d4da1d1 @amorilia Changelog update.
authored
129 variants, and can install itself into every Maya version that is found.
b1daeff @amorilia Windows installer now checks for Maya 2009 as well.
authored
130
20910a3 @amorilia Removing clsFilePath from all classes, and updating changelog.
authored
131 * Updates to the XML object model (affects CGF, DDS, KFM, NIF, and TGA).
132
133 - Class customizers are taken immediately from the format class, and not
134 from separate modules --- all code from customization modules has been
135 moved into the main format classes. The result is that parsing is faster
136 by about 50 percent.
6d46c7d @amorilia Changelog update.
authored
137
20910a3 @amorilia Removing clsFilePath from all classes, and updating changelog.
authored
138 - clsFilePath removed, as it is no longer used.
139
140 * Updates and fixes for the KFM format.
6d46c7d @amorilia Changelog update.
authored
141
142 - The Data element inherits from Header, and Header includes also all
143 animations, so it is more straightforward to edit files.
144
145 - The KFM files open again in QSkope.
146
3bdc690 @amorilia Changelog update.
authored
147 * Updates for the CGF format.
148
149 - CHUNK_MAP no longer constructed in Data.__init__ but in a metaclass.
150
d4da1d1 @amorilia Changelog update.
authored
151 - Deprecated functions in CgfFormat have been removed.
152
da09cd2 @amorilia Syncing nif.xml with niftools.
authored
153 * Updates for the NIF format.
154
155 - Synced nif.xml with nifskope's xml (includes fixes for Lazeska).
156
d4da1d1 @amorilia Changelog update.
authored
157 - Removed deprecated scripts (niftexdump, nifdump, ffvt3rskinpartition,
158 nifoptimize).
159
10bb6fc @amorilia Changelog update.
authored
160 - Fixed scaling bug on nifs whose tree has duplicate nodes. Scaling now no
161 longer works recursively, unless you use the scaling spell which handles
162 the duplication correctly.
163
0a7ed2d @amorilia Changelog update, and version bump to 2.0.0 (because of module name c…
authored
164 * Updated module names to follow pep8 naming conventions: all modules have
165 lower case names.
c52161e @amorilia Removed deprecated scripts.
authored
166
0e50a54 @amorilia Updated changelog, preparing release 1.2.4.
authored
167 Release 1.2.4 (Apr 21, 2009)
168 ============================
169
170 * Documentation is being converted to Sphinx. Currently some parts of the
171 documentation are slightly broken with epydoc. Hopefully the migration will
172 be complete in a month or so, resolving this issue.
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
173
94ce59d @amorilia Updating changelog in anticipation.
authored
174 * removed deprecated PyFFI.Spells code:
175
176 - old style spells no longer supported
177
0e50a54 @amorilia Updated changelog, preparing release 1.2.4.
authored
178 - almost all old spells have been converted to the new spell system
179 (the few remaining ones will be ported for the next release)
94ce59d @amorilia Updating changelog in anticipation.
authored
180
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
181 * nif:
182
183 - nif optimizer can be run on folders from the windows context menu
184 (right-click on any folder containing nifs and select "Optimize with PyFFI")
185
186 - synced nif.xml with upstream (adds support for Worldshift, bug fixes)
187
188 - using weak references for Ptr type (this aids garbage collection)
189
190 - added fix_strip niftoaster spell which can remove branches selectively
191 (feature request #2164309)
192
e671ec8 @amorilia Updated the nif checktangentspace spell to the new system.
authored
193 - new getTangentSpace function for NiTriBasedGeom (works for both Oblivion
194 and Fallout 3 style tangent spaces)
195
8655a0d @amorilia Improved mergeSkeletonRoots function (will also merge roots of skins …
authored
196 - improved mergeSkeletonRoots function (will also merge roots of skins that
197 have no bones in common, this helps a lot with Morrowind imports)
198
4b8a8d0 @amorilia Changelog update.
authored
199 - new sendDetachedGeometriesToNodePosition function and spell (helps a lot
200 with Morrowind imports)
201
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
202 * tga:
203
204 - added support for color map and image data in the xml
205
206 - uses the new data model
207
208 - works again in QSkope
209
210 * xml object model:
211
212 - added support for multiplication and division operators in expressions
213
3cdc28a @amorilia Changelog update.
authored
214 * fixes for unicode support (prepares for py3k)
215
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
216 Release 1.2.3 (Apr 2, 2009)
217 ===========================
218
219 * removed reduce() calls (py3k compatibility)
220
221 * started converting print calls (py3k compatibility)
222
223 * removed relative imports (py3k compatibility)
224
225 * removed BSDiff module (not useful, very slow, use external bsdiff instead)
226
227 * nif:
228
229 - fixed the update mopp spell for fallout 3 nifs
230
231 - fixed addShape in bhkPackedNiTriStripsShape for fallout 3 nifs
232
233 - niftoaster sends to stdout instead of stderr so output can be captured
234 (reported by razorwing)
235
236 Release 1.2.2 (Feb 15, 2009)
51779af @amorilia Changelog reST style fixes.
authored
237 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
238
239 * cgf format:
240
241 - fixed various regression bugs that prevented qskope to run on cgf files
242
243 - updated to use the new data system
244
245 Release 1.2.1 (Feb 2, 2009)
51779af @amorilia Changelog reST style fixes.
authored
246 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
247
248 * nif format:
249
250 - new addIntegerExtraData function for NiObjectNET
251
252 Release 1.2.0 (Jan 25, 2009)
51779af @amorilia Changelog reST style fixes.
authored
253 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
254
255 * installer directs to Python 2.5.4 if not installed
256
257 * using logging module for log messages
258
259 * nif format:
260
261 - swapping tangents and binormals in xml; renaming binormals to bitangents
262 (see http://www.terathon.com/code/tangent.html)
263
264 - updates for Fallout 3 format
265
266 - updated skin partition algorithm to work for Fallout 3
267
268 + new triangles argument
269
270 + new facemap argument to pre-define partitions (they will be split further
271 if needed to meet constraints)
272
273 + sort vertex weight list by weight in skin partitions (except if padbones
274 is true; then sorted by bone index, to keep compatibility with ffvt3r)
275
276 + option to maximize bone sharing
277
278 - mopps take material indices into account and compute welding info
279 (attempt to fix mopp multi-material issues, does not yet seem to work though)
280
281 - support for niftools bitflags by converting it to a bitstruct on the fly
282
283 - better algorithm for sending bones to bind position, including spells for
284 automating this function over a large number of nifs
285
286 - disable fast inverse in bind pos functions to increase numerical precision
287
288 - new algorithm to sync geometry bind poses, along with spell (this fixes
289 many issues with Morrowind imports and a few issues with Fallout 3 imports)
290
291 - more doctests for various functions
292
293 - a few more matrix functions (supNorm, substraction)
294
295 * dds format:
296
297 - updated to use the FileFormat.Data method (old inconvenient method removed)
298
299 * qskope:
300
301 - refactored the tree model
302
303 - all parenting functions are delegated to seperate DetailTree and GlobalTree
304 classes
305
306 - the DetailNode and GlobalNode classes only implement the minimal
307 functions to calculate the hierarchy, but no longer host the more
308 advanced hierarchy functions and data (this will save memory and
309 speed up regular use of pyffi outside qskope)
310
311 - EdgeFilter for generic edge type filtering; this is now a
312 parameter for every method that needs to list child nodes
313
314 Release 1.1.0 (Nov 18, 2008)
51779af @amorilia Changelog reST style fixes.
authored
315 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
316
317 * nif format:
318
319 - a large number of functions have moved from the optimizer spell to
320 to the main interface, so they can be easily used in other scripts
321 without having to import this spell module
322 (getInterchangeableTriShape, getInterchangeableTriStrips,
323 isInterchangeable)
324
325 - new convenience functions in NiObjectNET, NiAVObject, and NiNode
326 (setExtraDatas, setProperties, setEffects, setChildren, etc.)
327
328 - updates for Fallout 3
329
330 * niftoaster
331
332 - new fix_addtangentspace spell to add missing tangent space blocks
333
334 - new fix_deltangentspace spell to remove tangent space blocks
335
336 - new fix_texturepath spell to change / into \ and to fix corrupted
337 newline characters (which sometimes resulted from older versions of
338 nifskope) in NiSourceTexture file paths
339
340 - new fix_clampmaterialalpha spell
341
342 - new fix_detachhavoktristripsdata spell
343
344 - the ffvt3r skin partition spell is now fix_ffvt3rskinpartition
345
346 - new opt_cleanreflists spell
347
348 - new opt_mergeduplicates spell
349
350 - new opt_geometry spell
351
352 - the optimize spell is now simply implemented as a combination of other
353 spells
354
355 * new internal implementation of bsdiff algorithm
356
357 * removed cry dae filter (an improved version of this filter is now
358 bundled with ColladaCGF)
359
360 * reorganization of file format description code
361
362 - all generic format description specific code has been moved to the
363 PyFFI.ObjectModels.FileFormat module
364
365 - all xml/xsd description specific code has been moved to the
366 PyFFI.ObjectModels.XML/XSD.FileFormat modules
367
368 - new NifFormat.Data class which now implements all the nif file read and
369 write functions
370
371 * completely revamped spell system, which makes it much easier to customize
372 spells, and also enables more efficient implementations (thanks to tazpn for
373 some useful suggestions, see issue #2122196)
374
375 - toaster can call multiple spells at once
376
377 - toaster takes spell classes instead of modules
378
379 - for backwards compatibility, there is a class factory which turns any old
380 spell module into a new spell class (the Toaster class will automatically
381 convert any modules that it finds in its list of spells, so you do not need
382 to be worried about call the factory explicitly)
383
384 - early inspection of the header is possible, to avoid having to read all of
385 the file if no blocks of interest are present
386
387 - possibility to prevent the spell to cast itself on particular branches
388 (mostly useful to speed up the spell casting process)
389
390 - spells have callbacks for global initialization and finalization of
391 data within the toaster
392
393 - possibility to write output to a log file instead of to sys.stdout
394
395 - better messaging system (auto indentation, list nif tree as spell runs)
396
397 - support for spell hierarchies and spell grouping, in parallel or in series
398 or any combination of these
399
400 * replaced ad hoc class customization with partial classes (still wip
401 converting all the classes)
402
403 * xml object model expression parser
404
405 - implemented not operator
406
407 - expressions can combine multiple operators (only use this if the result
408 is independent of the order in which these operators are applied)
409
410 - new < and > operators
411
412 - support for vercond attribute for Fallout 3
413
414 * started on a new object model based on an ANTLR parser of a grammar aimed at
415 file format descriptions; this parser will eventually yield a more streamlined,
416 more optimized, and more customizable version of the current xml object model
417 (this is not yet bundled with the release, initial code is on svn)
418
419 Release 1.0.5 (Sep 27, 2008)
51779af @amorilia Changelog reST style fixes.
authored
420 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
421
422 * niftoaster optimize
423
424 - fix for materials named skin, envmap2, etc. (issue #2121098)
425
426 - fix for empty source textures in texdesc (issue #2118481)
427
428 * niftoaster
429
430 - new spell to disable parallax (issue #2121283)
431
432 * toaster
433
434 - new options --diff and --patch to create and apply patches; interal
435 patcher uses bsdiff format, but you can also specify an arbitrary
436 external diff/patch command via --diff-cmd and --patch-cmd options
437 (the external command must take three arguments: oldfile, newfile,
438 and patchfile); note that this is still in experimental stage, not ready
439 for production use yet
440
441 Release 1.0.4 (Sep 18, 2008)
51779af @amorilia Changelog reST style fixes.
authored
442 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
443
444 * niftoaster optimize
445
446 - morph data optimization (issue #2116594, fixes "bow" weapons)
447
448 Release 1.0.3 (Sep 17, 2008)
51779af @amorilia Changelog reST style fixes.
authored
449 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
450
451 * niftoaster optimize
452
453 - detach NiTriStripsData from havok tree when block is
454 shared with geometry data (fixes issue #2065018, MiddleWolfRug01.NIF)
455
456 - fix in case merged properties had controllers (issue #2106668)
457
458 * fix writing of block order: bhkConstraint entities now always preceed the
459 constraint block (this also fixes the "falling sign" issue with the niftoaster
460 optimize spell, issue #2068090)
461
462 Release 1.0.2 (Sep 15, 2008)
51779af @amorilia Changelog reST style fixes.
authored
463 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
464
465 * "negative mass" fix in inertia calculation
466
467 Release 1.0.1 (Sep 12, 2008)
51779af @amorilia Changelog reST style fixes.
authored
468 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
469
470 * small fix in uninstaller (didn't remove crydaefilter script)
471
472 * crydaefilter converts %20 back into spaces (as rc doesn't recognize %20)
473
474 * bugfixes for niftoaster optimize spell (pyffi issue #2065018)
475
476 Release 1.0.0 (Jul 24, 2008)
51779af @amorilia Changelog reST style fixes.
authored
477 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
478
479 * new NSIS installer (this solves various issues with Vista, and also
480 allows the documentation to be bundled)
481
482 * new filter to prepare collada (.dae) files for CryEngine2 resource compiler
483
484 - wraps scenes into CryExportNodes
485
486 - corrects id/sid naming
487
488 - fixes init_from image paths
489
490 - adds phong and lamber shader sid's
491
492 - enforces material instance symbol to coincide with target
493
494 - sets material names in correct format for material library and
495 physicalization
496
497 * started on support for collada format, by parsing the collada xsd schema
498 description (this is still far from functional, but an initial parser is
499 already included with the library, although it does not yet create any
500 classes yet)
501
502 * fully optimal mopp generation for Oblivion (using the NifTools mopper.exe
503 which is a command line utility that calls the mopp functions in the havok
504 library, credit for writing the original wrapper goes to tazpn)
505
506 * minor updates to the nif.xml format description
507
508 * refactoring: library reorganized and some interfaces have been
509 unified, also a lot of code duplication has been reduced; see
510 README.TXT for more details on how to migrate from 0.x.x to 1.x.x
511
512 - main format classes PyFFI.XXX have been moved to PyFFI.Formats.XXX
513
514 - "XxxFormat.getVersion(cls, stream)" now always returns two
515 integers, version and user_version
516
517 - "XxxFormat.read(self, stream, version, user_version, ...)" for all
518 formats
519
51779af @amorilia Changelog reST style fixes.
authored
520 - "XxxFormat.write(self, stream, version, user_version, \*readresult, ...)"
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
521 for all formats
522
523 - in particular, CGF format game argument removed from read and
524 write functions, but there are new CgfFormat.getGame and
525 CgfFormat.getGameVersion functions to convert between (version,
526 user_version) and game
527
528 - also for the CGF format, take care that getVersion no longer
529 returns the file type. It is returned with the CgfFormat.read
530 function, however there is a new CgfFormat.getFileType function, if
531 you need to know the file type but you don't want to parse the whole
532 file
533
534 - all XxxFormat classes derive from XmlFileFormat base class
535
536 - common nameAttribute, walk, and walkFile functions
537
538 - XxxTester modules have been moved to PyFFI.Spells.XXX, along with a much
539 improved PyFFI.Spells module for toasters with loads of new options
540
541 - some other internal code has been moved around
542
543 + qskopelib -> PyFFI.QSkope
544 + PyFFI.Bases -> PyFFI.ObjectModels.XML
545
546 - a lot more internal code reorganization is in progress...
547
548 * much documentation has been added and improved
549
550 Release 0.11.0 (Jun 16, 2008)
51779af @amorilia Changelog reST style fixes.
authored
551 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
552
553 * nif:
554
555 - fixed updateTangentSpace for nifs with zero normals
556
557 * cfg:
558
559 - a lot of new physics stuff: MeshPhysicsDataChunk mostly decoded (finally!!)
560
561 - fixes for reading and writing caf files (they are missing controller
562 headers)
563
564 - activated BoneMeshChunk and BoneInitialPosChunk for Crysis
565
566 * tga:
567
568 - improved tga file detection heuristic
569
570 Release 0.10.10 (Jun 8, 2008)
51779af @amorilia Changelog reST style fixes.
authored
571 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
572
573 * nif:
574
575 - minor updates in xml
576
577 - NiPixelData saveAsDDS function now also writes DXT compressed formats,
578 that is, pixel formats 4, 5, and 6 (contributed by taarna23)
579
580 - fixed nifoptimize for nifs with particle systems (niftools issue #1965936)
581
582 - fixed nifoptimize for nifs with invalid normals (niftools issue #1987506)
583
584 Release 0.10.9 (May 27, 2008)
51779af @amorilia Changelog reST style fixes.
authored
585 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
586
587 * nif:
588
589 - bspline interpolator fix if no keys
590
591 - fixed bspline scale bug
592
593 Release 0.10.8 (Apr 13, 2008)
51779af @amorilia Changelog reST style fixes.
authored
594 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
595
596 * cgf:
597
598 - more decoded of the mesh physics data chunk
599
600 * nif:
601
602 - scaling for constraints
603
604 - ported the A -> B spell from nifskope (see the new getTransformAB and
605 updateAB methods)
606
607 Release 0.10.7 (Apr 5, 2008)
51779af @amorilia Changelog reST style fixes.
authored
608 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
609
610 * cgf:
611
612 - indices are unsigned shorts now (fixes geometry corruption on import of
613 large models)
614
615 - MeshChunk.setGeometry gives useful error message if number of vertices is
616 too large
617
618 * nif:
619
620 - nif.xml has minor updates in naming
621
622 - added NiBSplineData access functions (experimental, interface could still
623 change)
624
625 - started on support for compressed B-spline data
626
627 - fixed block order writing of bhkConstraints
628
629 Release 0.10.6 (Mar 30, 2008)
51779af @amorilia Changelog reST style fixes.
authored
630 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
631
632 * tga: added missing xml file
633
634 * nif:
635
636 - removed some question marks so the fields can be accessed easily in python
637 interface
638
639 - ControllerLink and StringPalette functions and doctests
640
641 - quaternion functions in Matrix33 and Matrix44
642
643 - new bspline modules (still to implement later)
644
645 - fixed NiTransformInterpolator scaling bug
646
647 * cgf:
648
649 - use tempfile for write test
650
651 * quick install batch file for windows
652
653 Release 0.10.5 (Mar 27, 2008)
51779af @amorilia Changelog reST style fixes.
authored
654 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
655
656 * qskope: make bitstructs editable
657
658 * cgf:
659
660 - MeshChunk functions to get vertex colors (game independent).
661
662 - Set vertex colors in setGeometry function.
663
664 Release 0.10.4 (Mar 26, 2008)
51779af @amorilia Changelog reST style fixes.
authored
665 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
666
667 * cgf:
668
669 - fixed tangent space doctest
670
671 - setGeometry argument sanity checking
672
673 - setGeometry fix for empty material list
674
675 - setGeometry tangent space update fix if there are no uvs
676
677 Release 0.10.3 (Mar 24, 2008)
51779af @amorilia Changelog reST style fixes.
authored
678 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
679
680 * added support for the TGA format
681
682 * tangentspace:
683
684 - validate normals before calculating tangents
685
686 - added new option to get orientation of tangent space relative to texture
687 space (Crysis needs to know about this)
688
689 * installer detects Maya 2008 and copies relevant files to Maya Python
690 directory for the Maya scripts to work
691
692 * cgf:
693
694 - tangent space cgftoaster
695
696 - new MeshChunk updateTangentSpace function
697
698
699 Release 0.10.2 (Mar 22, 2008)
51779af @amorilia Changelog reST style fixes.
authored
700 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
701
702 * cgf:
703
704 - fixed "normals" problem by setting last component of tangents to -1.0
705
706 - meshchunk function to get all material indices, per triangle (game
707 independent)
708
709 - scaling fixes for datastreamchunk, meshchunk, and meshsubsetschunk
710
711 - fixed version of BreakablePhysicsChunk
712
713 - a few new findings in decoding the physics data (position and rotation)
714
715 Release 0.10.1 (Mar 21, 2008)
51779af @amorilia Changelog reST style fixes.
authored
716 =============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
717
718 * cgf:
719
720 - some minor xml updates
721
722 - setGeometry function for MeshChunk to set geometry for both Far Cry and
723 Crysis in a unified way
724
725 - uv.v opengl flip fix for Crysis MeshChunk data
726
727 * MathUtils: new function to calculate bounding box, center, and radius
728
729 * qskope: fixed bug which prevented setting material physics type to NONE
730
731 Release 0.10.0 (Mar 8, 2008)
51779af @amorilia Changelog reST style fixes.
authored
732 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
733
734 * cgf: ported A LOT of stuff from the Crysis Mod SDK 1.2; the most common
735 CE2 chunks now read and write successfully
736
737 Release 0.9.3 (Mar 7, 2008)
51779af @amorilia Changelog reST style fixes.
authored
738 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
739
740 * cgf:
741
742 - decoded a lot of geometry data
743
744 + vertices
745 + normals
746 + vertex colors
747 + uvs
748 + mesh material info
749
750 - started decoding many other chunk types
751
752 - added chr chunk types so files containing them can be processed (the data
753 is ignored)
754
755 - started adding functions to MeshChunk to have unified access to geometry
756 data for both Far Cry and Crysis cgf files
757
758 * windows installer registers chr extension with qskope
759
760 Release 0.9.2 (Feb 26, 2008)
51779af @amorilia Changelog reST style fixes.
authored
761 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
762
763 * full support for the xml enum tag type, with improved editor in qskope
764
765 * new common string types (shared between cgf and nif formats)
766
767 - null terminated
768
769 - fixed sized
770
771 - variable sized starting with integer describing length
772
773 * qskope: no more duplicate ptr refs in global view
774
775 * qskope: refactored delegate editor system to be more transparent and much
776 easier to extend
777
778 * cgf: crysis chunks have been partially decoded (still very much wip)
779
780 * cgf: added extra chunk size check on read to aid decoding
781
782 * dds: register dds extension with qskope on windows install
783
784 * nif: nifoptimize clamps material alpha to [0,1]
785
786 Release 0.9.1 (Feb 22, 2008)
51779af @amorilia Changelog reST style fixes.
authored
787 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
788
789 * full support for the xml bitstruct tag (for types that contain bit flags)
790
791 * added PyFFI.Formats.DDS library for dds file format
792
793 * nif: new function for NiPixelData to save image as dds file
794
795 * niftoaster: script for exporting images from NiPixelData blocks
796
797 * nifoptimize:
798
799 - merge identical shape data blocks
800
801 - remove empty NiNode children
802
803 - update skin partition only if block already exists
804
805 Release 0.9.0 (Feb 11, 2008)
51779af @amorilia Changelog reST style fixes.
authored
806 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
807
808 * added PyFFI.Formats.KFM library for kfm file format
809
810 * cgf.xml and nif.xml updates
811
812 * new qBlockParent function to assign parents if the parent block does not
813 contain a reference to the child, but the child contains a reference to the
814 parent (as in MeshMorphTargetChunk and BoneInitialPosChunk)
815
816 * QSkope: root blocks sorted by reference number
817
818 * QSkope: added kfm format
819
820 * niftexdump: bug fixed when reading nifs that have textures without source
821
822 Release 0.8.2 (Jan 28, 2008)
51779af @amorilia Changelog reST style fixes.
authored
823 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
824
825 * fixed installer bug (nifoptimize would not launch from context menu)
826
827 * qskope:
828
829 - handle back-references and shared blocks
830
831 - blocks are now numbered
832
833 - improved display references
834
835
836 Release 0.8.1 (Jan 27, 2008)
51779af @amorilia Changelog reST style fixes.
authored
837 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
838
839 * deep copy for structs and arrays
840
841 * nifoptimize:
842
843 - detects cases where triangulated geometry performs better than stripified
844 geometry (fixes a performance issue with non-smooth geometry reported by
845 Lazarus)
846
847 - can now also optimize NiTriShapes
848
849 - throws away empty and/or duplicate children in NiNode lists
850
851 Release 0.8.0 (Jan 27, 2008)
51779af @amorilia Changelog reST style fixes.
authored
852 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
853
854 * qskope: new general purpose tool for visualizing files loaded with PyFFI
855
856 * cgf: corrected the bool implementation (using True/False rather than an int)
857
858 * nif: many xml updates, support for Culpa Innata, updates for emerge demo
859
860 * support for forward declaration of types (required for UnionBV)
861
862 * PyFFI.__hexversion__ for numeric represenation of the version number
863
864 Release 0.7.5 (Jan 14, 2008)
865 ============================
866
867 * added a DTD for the 'fileformat' document type, to validate the xml
868
869 * bits tag for bitstructs, instead of add tag, to allow validation
870
871 * cgf: write the chunk header table at start, for crysis
872
873 * nifoptimize:
874
875 - new command line option '-x' to exclude blocks per type
876
877 - fixes corrupted texture paths (that is, files that got corrupted with
878 nifskope 1.0 due to the \\r \\n bug)
879
880 - on windows, the script can now be called from the .nif context menu
881
882 - accept both lower and upper case 'y' for confirmation
883
884 - new command line option '-p' to pause after run
885
886 * niftoaster: fix reporting of file size difference in readwrite test
887
888 * bug fixed when writing nifs of version <= 3.1
889
890 * support for multiple 'Top Level Object' (roots) for nifs of version <= 3.1
891
892 * various xml fixes
893
894 - new version 20.3.0.2 from emerge demo
895
896 - NiMeshPSysData bugfix and simplification
897
898 - replaced NiTimeController Target with unknown int to cope with invalid
899 pointers in nif versions <= 3.1
900
901 * fixed bug nifmakehsl.py script
902
903 * fixed bug in nifdump.py script
904
905 * new post installation script for installing/uninstalling registry keys
906
907 Release 0.7.4 (Dec 26, 2007)
908 ============================
909
910 * fix in nif xml for a long outstanding issue which caused some nifs with mopp
911 shapes to fail
912
913 * fixed file size check bug in readwrite test for nif and cgf
914
915 * initial read and write support for crysis cgf files
916
917 * support for versions in structs
918
919 * updates for controller key types 6, 9, and 10, in cgf xml
920
921 Release 0.7.3 (Dec 13, 2007)
51779af @amorilia Changelog reST style fixes.
authored
922 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
923
924 * nif: fixed error message when encountering empty block type
925
926 * nif: dump script with block selection feature
927
928 * cgf: fix transform errors, ported matrix and vector operations from nif
929 library
930
931 Release 0.7.2 (Dec 3, 2007)
51779af @amorilia Changelog reST style fixes.
authored
932 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
933
934 * NifTester: new raisereaderror argument which simplifies the older system and
935 yields more instructive backtraces
936
937 * nif: better support for recent nif versions, if block sizes do not match
938 with the number of bytes read then the bytes are skipped and a warning is
939 printed, instead of raising an exception
940
941 Release 0.7.1 (Nov 27, 2007)
51779af @amorilia Changelog reST style fixes.
authored
942 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
943
944 * nif: fixed applyScale in bhkRigidBody
945
946 Release 0.7 (Nov 19, 2007)
51779af @amorilia Changelog reST style fixes.
authored
947 ==========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
948
949 * fixed a problem locating the customized functions for Fedora 8 python which
950 does not look in default locations besides sys.path
951
952 * new vector and matrix library under Utils (for internal use)
953
954 * new quick hull library for computing convex hulls
955
956 * new inertia library for computing mass, center of gravity, and inertia
957 tensors of solid and hollow objects
958
959 * nif: fixed order of bhkCollisionObject when writing nif files
960
961 * nif: new bhkRigidBody function for updating inertia, center of gravity, and
962 mass, for all types of primitives
963
964 Release 0.6 (Nov 3, 2007)
965 =========================
966
967 * nifoptimize removes duplicate property blocks
968
969 * reduced memory footprint in skin data center and radius calculation for the
970 nif format
971
972 * new option to ignore strings when calculating hash
973
974 * code has been cleaned up using pylint
975
976 * added a lot more documentation
977
51779af @amorilia Changelog reST style fixes.
authored
978 * refactored all common functions to take \*\*kwargs as argument
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
979
980 * read and write functions have the file stream as first non-keyword argument
981
982 * refactored and simplified attribute parsing, using a common
983 _filteredAttributeList method used by all methods that need to parse
984 attributes; the version and user_version checks are now also consistent over
985 all functions (i.e. getRefs, getLinks, etc.)
986
987 * added more doctests
988
989 Release 0.5.2 (Oct 25, 2007)
51779af @amorilia Changelog reST style fixes.
authored
990 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
991
992 * added hash functions (useful for identifying and comparing objects)
993
994 Release 0.5.1 (Oct 19, 2007)
51779af @amorilia Changelog reST style fixes.
authored
995 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
996
997 * fixed a bug in the nif.xml file which prevented Oblivion skeleton.nif files
998 to load
999
1000 Release 0.5 (Oct 19, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1001 ==========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1002
1003 * new functions to get block size
1004
1005 * various small bugs fixed
1006
1007 * nif: support for new versions (20.2.0.6, 20.2.0.7, 20.2.0.8, 20.3.0.3,
51779af @amorilia Changelog reST style fixes.
authored
1008 20.3.0.6, 20.3.0.9)
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1009
1010 * nif: block sizes are now also written to the nif files, improving support
1011 for writing 20.2.0.7+ nif versions
1012
1013 * nif: fixed flattenSkin bug (reported by Kikai)
1014
1015 Release 0.4.9 (Oct 13, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1016 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1017
1018 * nif: nifoptimize no longer raises an exception on test errors, unless you
1019 pass the -r option
1020
1021 * nif: nifoptimize will try to restore the original file if something goes
1022 wrong during write, so - in theory - it should no longer leave you with
1023 corrupt nifs; still it is recommended to keep your backups around just in case
1024
1025 * nif: niftesters recoded to accept arbitrary argument dictionaries; this
1026 could cause incompatibilities for people writing their own scripts, but the
1027 upgrade to the new system is fairly simple: check the niftemplate.py script
1028
1029 * nif: fixed bug in updateTangentSpace which caused an exception when uvs or
1030 normals were not present
1031
1032 * nif: doctest for unsupported blocks in nifs
1033
1034 Release 0.4.8 (Oct 7, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1035 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1036
1037 * cgf: MeshMorphTargetChunk is now supported too
1038
1039 * nif: new script (niftexdump.py) to dump texture and material info
1040
1041 * nif: added template script for quickly writing new nif scripts
1042
1043 Release 0.4.7 (Oct 4, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1044 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1045
1046 * nif: new optimizer script
1047
1048 Release 0.4.6 (Sep 29, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1049 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1050
1051 * nif and cgf documentation improved
1052
1053 * added a number of new doctests
1054
1055 * nif: new scripts
1056
1057 - niftoaster.py for testing and modifying nif files (contributed by wz)
1058
1059 - nifvisualizer.py for visualizing nif blocks (contributed by wz)
1060
1061 - nifmakehsl.py for making hex workshop structure libraries for all nif
1062 versions
1063
1064 * nif: bundling NifVis and NifTester modules so you can make your own nif
1065 toasters and visualizers
1066
1067 * nif: fixed rare issue with skin partition calculation
1068
1069 * cgf: new script
1070
1071 - cgftoaster.py for testing and modifying cgf files (similar to niftoaster.py)
1072
1073 * cgf: bundling CgfTester module so you can make your own cgf toasters
1074
1075 * cgf: various xml bugs fixed
1076
1077 * cgf: write support improved (but not entirely functional yet)
1078
1079 * cgf: material chunk custom function for extraction material shader and script
1080
1081 * Expression.py: support for empty string check in condition
1082
1083 Release 0.4.5 (Sep 16, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1084 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1085
1086 * issue warning message instead of raising exception for improper rotation
1087 matrix in setScaleRotationTranslation
1088
1089 * fixed skin partition bug during merge
1090
1091 * skin partition bone index padding and sorting for Freedom Force vs. the 3rd
1092 Reich
1093
1094 Release 0.4.4 (Sep 2, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1095 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1096
1097 * added mopp parser and simple mopp generator
1098
1099 Release 0.4.3 (Aug 17, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1100 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1101
1102 * fixed bug that occurred if userver = 0 in the xml (fixes geometry morph data
1103 in NIF versions 20.0.0.4 and up)
1104
1105 * NIF:
1106
1107 - tree() function has been extended
1108
1109 - some minor cleanups and more documentation
1110
1111 Release 0.4.2 (Aug 15, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1112 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1113
1114 * kwargs for getRefs
1115
1116 * NIF:
1117
1118 - fixed bug in skin partition calculation
1119
1120 - when writing nif files the refs are written in sequence (instead of the
1121 links, so missing links will yield an exception, which is a good thing)
1122
1123 - new functions to get list of extra data blocks and to add effect
1124
1125 Release 0.4.1 (Aug 14, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1126 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1127
1128 * NIF:
1129
1130 - new function to add collision geometries to packed tristripsshape
1131
1132 - fixed bug in bhkListShape.addShape
1133
1134 Release 0.4 (Aug 12, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1135 ==========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1136
1137 * NIF:
1138
1139 - new function updateBindPosition in NiGeometry to fix a geometry rest
1140 position from current bone positions
1141
1142 - removed deprecated functions
1143
1144 - (!) changed interface of addBone, no longer takes "transform" argument; use
1145 the new function updateBindPosition instead
1146
1147 Release 0.3.4 (Aug 11, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1148 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1149
1150 * improved documentation
1151
1152 * fixed the 'in' operator in Bases/Array.py
1153
1154 * NIF:
1155
1156 - doctest for NiNode
1157
1158 - flatten skin fix for skins that consist of multiple shapes
1159
1160 - support for the most common oblivion havok blocks
1161
1162 Release 0.3.3 (Aug 8, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1163 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1164
1165 * NIF:
1166
1167 - fixed a bug in the skin center and radius calculation
1168
1169 - added copy function to Vector3
1170
1171 - fixed NiGeometry doctest
1172
1173 Release 0.3.2 (Aug 7, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1174 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1175
1176 * simplified interface (still wip) by using keyword arguments for common
1177 functions such as read and write
1178
1179 * NIF:
1180
1181 - fix for skin partition blocks in older nif versions such as
1182 Freedom Force vs. 3rd Reich
1183
1184 - support for triangle skin partitions
1185
1186 - added stitchstrips option for skin partitions
1187
1188 - added a NiGeometry function to send bones to bind pose
1189
1190 Release 0.3.1 (Aug 6, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1191 ===========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1192
1193 * NIF:
1194
1195 - new function for getting geometry skin deformation in rest pose
1196
1197 - old rest pose functions are deprecated and will be removed from a future
1198 release
1199
1200 Release 0.3 (Aug 2, 2007)
1201 =========================
1202
1203 * NIF:
1204
1205 - fixed an issue with writing skeleton.nif files
1206
1207 * CGF:
1208
1209 - reading support for the most common blocks in static cgf files;
1210 experimental
1211
1212 Release 0.2.1 (Jul 29, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1213 ============================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1214
1215 * NIF:
1216
1217 - fixed bug in getTransform
1218
1219 - new option in findChain to fix block type
1220
1221 Release 0.2 (Jul 29, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1222 ==========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1223
1224 * fixed argument passing when writing arrays
1225
1226 * NIF: added getControllers function to NiObjectNET
1227
1228 Release 0.1 (Jul 22, 2007)
51779af @amorilia Changelog reST style fixes.
authored
1229 ==========================
8bdc6b8 @amorilia Switched to unix line endings in .rst files, and using new unix2dos n…
authored
1230
1231 * bug fixed when writing array of strings
1232
1233 * NIF
1234
1235 - new function to add bones
1236
1237 - XML update, supports newer versions from Emerge Demo
1238
1239 Release 0.0 (Jul 7, 2007)
1240 =========================
1241
1242 * first public release
Something went wrong with that request. Please try again.