[RELz] NifSE v1.0

Post » Thu May 19, 2011 5:15 am

NifSE is an OBSE plug-in that allows Oblivion script to operate on Nif files during run-time. Nif files, or NetImmerse Format files, are 3D meshes which are used by Oblivion. These files have long been editable with 3D software and NifTools' excellent NifSkope utility, but certain operations on Nif files have been desirable for scripters and therefore impossible - until now.

More specifically, NifSE uses the NifTools' incredible "C++ library for loading, modifying, and exporting NIF files," NifLib, to create new functions through OBSE's plug-in API. Much thanks to both the OBSE and NifTools teams for their hard work that has made this possible.

For v1.0 we have a staggering number of new functions, plus an entirely new backbone system for storing, manipulating, and saving nif files. There is no more hard-drive bloat, as the nif files are only very briefly written to disk for Oblivion to read when it needs them, and deleted again as soon as it is finished. Nifs are saved in the .obse co-save file, and recreated as needed. The old functions are both now considered deprecated (as is the undocumented function NifGetBackShield, which was never supported in the first place), but backwards compatibility has been maintained, and the old functions have been somewhat updated to use the new system and therefore no longer clutter the user's harddrive.

Downloads
  • http://tesnexus.com/downloads/file.php?id=21292 (NifSE v1.0, v1.0 example plugin)
  • http://code.google.com/p/nifse/ (NifSE v1.0, v1.0 example plugin, source code)


Changelog (v1.0)
  • Release version is identical to b:6 with the debug Console messages suppressed (they are still printed to NifSE.log)
  • See NifSE changelog.txt included in download archive


Known Bugs (v1.0)
  • Beta 3 broke backwards-compatibility with functions that take arrays as arguments; these must now be compiled using OBSE v0020's compiler override. This means mods that were designed for beta 2 will not work, though only a little effort should be necessary to make them work. For this reason,
    The current version of Deadly Reflex 6 is incompatible with Beta 3 or later.


To Do List (roughly in order of when each is most likely to be implemented)
  • Future versions
    • Functions for working with collision blocks themselves.
    • Get/Set Vertex colors
    • Get/Set UV coordinates
    • Animations


Please post any ideas you have for the utility here!
User avatar
Darlene DIllow
 
Posts: 3403
Joined: Fri Oct 26, 2007 5:34 am

Post » Thu May 19, 2011 12:24 am

Woehoew! :celebrate:
User avatar
Facebook me
 
Posts: 3442
Joined: Wed Nov 08, 2006 8:05 am

Post » Thu May 19, 2011 12:02 pm

Indeed, I'm pretty pleased by it. Now if only DR6 used it...
User avatar
Donatus Uwasomba
 
Posts: 3361
Joined: Sun May 27, 2007 7:22 pm

Post » Wed May 18, 2011 7:55 pm

Huzzah :celebration:
User avatar
Jordan Fletcher
 
Posts: 3355
Joined: Tue Oct 16, 2007 5:27 am


Return to IV - Oblivion