Difference between revisions of "Arcane University:Nif implementation"

The Beyond Skyrim Wiki — Hosted by UESP
Jump to: navigation, search
(Nif properties: reformat)
(Mesh Conversion: ck-cmd LE only)
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{Trail|Implementation}}{{ImpNav}}
 
{{Trail|Implementation}}{{ImpNav}}
In Beyond Skyrim projects, 3D artists are expected to be able to export their own meshes to [[AU:nif|nif]]s, and textures to [[AU:DDS|DDS]], if they are simple enough. However, for more complex objects, like animated objects, or those with particle effects, it may fall on an implementer to bring this into Skyrim. Other partner projects of the AU may have the entire responsibility of bringing a mesh from fbx to in-game fall to the implementation team. Therefore, the first thing you should know is how to export to nif from a 3D program or from a predefined format like fbx. For the basic process of asset implementation, see [[AU:Intro to Asset Implementation|Intro to Asset Implementation]]
+
In Beyond Skyrim projects, 3D artists are expected to be able to export their own meshes to [[AU:nif|nif]]s, and textures to [[AU:DDS|DDS]], if they are simple enough. However, for more complex objects, like animated objects, or those with particle effects, it may fall on an implementer to bring this into Skyrim. Other partner projects of the AU may have the entire responsibility of bringing a mesh from fbx to in-game fall to the implementation team. Therefore, the first thing you should know is how to export to nif from a 3D program or from a predefined format like fbx. For the basic process of asset implementation, see [[AU:Intro to Asset Implementation|Intro to Asset Implementation]].
  
===Nif properties===
+
== Reference pages ==
 
* [[AU:NetImmerse Format|NetImmerse Format]]: Overview of nif format
 
* [[AU:NetImmerse Format|NetImmerse Format]]: Overview of nif format
 
** [[AU:NetImmerse Format/BSLightingShaderProperty|BSLightingShaderProperty]]: Lighting Shader settings and flags
 
** [[AU:NetImmerse Format/BSLightingShaderProperty|BSLightingShaderProperty]]: Lighting Shader settings and flags
Line 8: Line 8:
 
** [[AU:NetImmerse Format/BSEffectShaderProperty|BSEffectShaderProperty]]: Effect Shader settings and flags
 
** [[AU:NetImmerse Format/BSEffectShaderProperty|BSEffectShaderProperty]]: Effect Shader settings and flags
 
* [[AU:Collision|Collision]] and physics settings
 
* [[AU:Collision|Collision]] and physics settings
** [[AU:Nifskope Hinge Constraints|Hinge Constraints]]
+
* [[AU:DDS Data Format|DDS Data Format]]: Overview of the DDS format Skyrim uses for textures
** [[AU:Nifskope Prismatic Constraints|Prismatic Constraints]]
 
  
==Nif implementation tutorials==
+
==Tutorials==
 
=== Weapons ===
 
=== Weapons ===
 
*[[AU:Nifskope Weapons Setup|Nifskope Weapons Setup]]
 
*[[AU:Nifskope Weapons Setup|Nifskope Weapons Setup]]
Line 20: Line 19:
 
*[https://www.youtube.com/watch?v=4DrN_AS28qk Animating Crash Course - Basic Static Animations in Blender (video)] by Hayden Price
 
*[https://www.youtube.com/watch?v=4DrN_AS28qk Animating Crash Course - Basic Static Animations in Blender (video)] by Hayden Price
  
== Importing/exporting ==
+
=== Constraints ===
 +
*[[AU:Nifskope Hinge Constraints|Hinge Constraints]]
 +
*[[AU:Nifskope Prismatic Constraints|Prismatic Constraints]]
 +
 
 +
=== Importing/exporting ===
 
*[[AU:Nif Import|Nif Import]]
 
*[[AU:Nif Import|Nif Import]]
 
*[[AU:Mesh Export to NIF|Mesh Export to NIF]]
 
*[[AU:Mesh Export to NIF|Mesh Export to NIF]]
  
===Import/Export tools===
+
== Software ==
*[[AU:3DS MAX Import|3DS MAX Import]] plugin
+
There are various tools used for implementing nifs.
*[[AU:Blender Niftools Addon|Blender Niftools Addon]]
+
 
*[[AU:ck-cmd|ck-cmd]]
+
=== General ===
*[[AU:Outfit Studio|Outfit Studio]]
+
*[[AU:NifSkope|NifSkope]]: NifSkope is the most important program for nif implementation. It is a program that allows you to open NIF files, view and alter NIFs properties and contents, and export NIF files into other file formats readable by other programs such as Blender. Nifskope is where you attach your textures to the NIF and specify shader settings for it to appear correctly in game. Nifskope also allows you to browse the Skyrim meshes BSA (archive) without using a BSA unpacker.
*[[AU:PyNifly|PyNifly]]
+
*[https://www.nexusmods.com/newvegas/mods/67829 Sniff]: A batch operations tool for nif files. It includes many functions which you can read about on its Nexus page.
 +
 
 +
=== Texture Conversion ===
 +
Skyrim uses the [[Arcane_University:DDS_Data_Format|DDS]] file format for all textures. Here is some software which may be used to convert from the source files:
 +
*[[AU:Paint.NET|Paint.NET]]: Easy to use since it provides a nice GUI, and supports DX10 formats. Not the most extensive editing tools however.
 +
*[https://github.com/Microsoft/DirectXTex/wiki/Texconv Texconv]: This is actually what most software uses under the hood. It is developed by Microsoft and is extremely flexible for command line use, but has no GUI.
 +
*[https://www.nexusmods.com/skyrimspecialedition/mods/23316 Cathedral Assets Optimizer]: converts only TGA to DDS. Allows batch conversion.
 +
*[https://developer.nvidia.com/nvidia-texture-tools-exporter Nvidia Texture Tools Exporter]: can be downloaded as standalone program, or as Photoshop plugin. Standalone program allows batch conversion.
 +
*[[AU:GIMP|GIMP]]: Good for editing and creating combined textures like normal/gloss. Does not support DX10 formats, so is not recommended for conversion to DDS.
 +
*[https://github.com/Unity-Technologies/crunch/tree/unity Crunch]: Good for extra compression, but does not support DX10 formats.
 +
*[https://gpuopen.com/compressonator/ Compressonator]: Requires an AMD graphics card, but outputs good quality and has a nice GUI. Also supports command-line use. It does not provide a method of scaling.
 +
 
 +
=== Mesh Conversion ===
 +
{{note|float=right|max-width=35%|Special Edition uses a different nif format from Skyrim/Legendary Edition. However, nearly all Skyrim/LE nifs will work in SSE, and are easier to work with. SSE nifs are also less precise. For this reason, most projects use LE nifs. If you do need to convert either way, you can use [https://www.nexusmods.com/skyrimspecialedition/mods/23316 Cathedral Assets Optimizer] or [https://www.nexusmods.com/skyrimspecialedition/mods/4089 SSE Nif Optimizer].}}
 +
There are a variety of methods to convert your mesh, including both software-specific plugins, and standalone converters that are software-agnostic:
 +
 
 +
*Sofware agnostic:
 +
**[[AU:ck-cmd|ck-cmd]]: can convert both ways between .fbx and nif, including collision. Also can handle havok behaviors. Only works with LE nifs.
 +
**[[AU:Outfit Studio|Outfit Studio]]: can import .obj or .fbx, and export LE or SSE nifs. Also used for skinning armor, creatures, or npcs.
 +
*[[AU:Blender|Blender]]:
 +
**[[AU:Blender Niftools Addon|Blender Niftools Addon]]: For Blender 2.8+, Export/Import tool between Blender and the Nif format.
 +
**[[AU:PyNifly|PyNifly]]: Export/Import tool between Blender and the Nif format. Supports SSE Meshes
 +
*[[AU:3ds Max|3ds Max]]:
 +
**[https://github.com/figment/max_nif_plugin/releases/tag/3.8.0 3DS Max Niftools Addon]: Niftools Addon for 3DS Max. Might not work with versions after 2016
 +
**[https://www.nexusmods.com/skyrim/mods/84041 Apenov 3DS Max Plugin]: Another Plugin for 3DS Max, works with versions up to 2018. Supports some SSE Meshes
 +
 
 +
=== Collision ===
 +
Most mesh conversion software handles collision now. There are a couple older programs which can be used to manipulate collision only, which are noted here:
 +
*[[AU:ChunkMerge|ChunkMerge]]: Can transfer collision from one nif to another, or convert TriShapes to compressed mesh shape collision
 +
*[https://wiki.beyondskyrim.org/wiki/File:Chunkmerge_Utils.zip Chunkmerge Utils]: templates for use with ChunkMerge
 +
 
 +
=== Skyrim and Creation Kit ===
 +
To view your asset in game you'll need the game. You can use Skyrim Legendary Edition, or Skyrim Special Edition.
 +
* Creation Kit for the version of Skyrim you are modding for:
 +
** TES V: Skyrim Creation Kit: cannot be linked to, but can still be downloaded via Steam app
 +
** [https://store.steampowered.com/app/1946180/Skyrim_Special_Edition_Creation_Kit/ Skyrim Special Edition Creation Kit] and [[AU:CKPE|Creation Kit Platform Extended]]
  
 
[[Category:Arcane University-Implementation]]
 
[[Category:Arcane University-Implementation]]

Latest revision as of 16:03, 1 December 2025

< Arcane University:Implementation
Implementation
Departments
Quests
Nifs
Mechanics

In Beyond Skyrim projects, 3D artists are expected to be able to export their own meshes to nifs, and textures to DDS, if they are simple enough. However, for more complex objects, like animated objects, or those with particle effects, it may fall on an implementer to bring this into Skyrim. Other partner projects of the AU may have the entire responsibility of bringing a mesh from fbx to in-game fall to the implementation team. Therefore, the first thing you should know is how to export to nif from a 3D program or from a predefined format like fbx. For the basic process of asset implementation, see Intro to Asset Implementation.

Reference pages[edit]

Tutorials[edit]

Weapons[edit]

Animated objects[edit]

Constraints[edit]

Importing/exporting[edit]

Software[edit]

There are various tools used for implementing nifs.

General[edit]

  • NifSkope: NifSkope is the most important program for nif implementation. It is a program that allows you to open NIF files, view and alter NIFs properties and contents, and export NIF files into other file formats readable by other programs such as Blender. Nifskope is where you attach your textures to the NIF and specify shader settings for it to appear correctly in game. Nifskope also allows you to browse the Skyrim meshes BSA (archive) without using a BSA unpacker.
  • Sniff: A batch operations tool for nif files. It includes many functions which you can read about on its Nexus page.

Texture Conversion[edit]

Skyrim uses the DDS file format for all textures. Here is some software which may be used to convert from the source files:

  • Paint.NET: Easy to use since it provides a nice GUI, and supports DX10 formats. Not the most extensive editing tools however.
  • Texconv: This is actually what most software uses under the hood. It is developed by Microsoft and is extremely flexible for command line use, but has no GUI.
  • Cathedral Assets Optimizer: converts only TGA to DDS. Allows batch conversion.
  • Nvidia Texture Tools Exporter: can be downloaded as standalone program, or as Photoshop plugin. Standalone program allows batch conversion.
  • GIMP: Good for editing and creating combined textures like normal/gloss. Does not support DX10 formats, so is not recommended for conversion to DDS.
  • Crunch: Good for extra compression, but does not support DX10 formats.
  • Compressonator: Requires an AMD graphics card, but outputs good quality and has a nice GUI. Also supports command-line use. It does not provide a method of scaling.

Mesh Conversion[edit]

Ambox important.png NOTE: Special Edition uses a different nif format from Skyrim/Legendary Edition. However, nearly all Skyrim/LE nifs will work in SSE, and are easier to work with. SSE nifs are also less precise. For this reason, most projects use LE nifs. If you do need to convert either way, you can use Cathedral Assets Optimizer or SSE Nif Optimizer.

There are a variety of methods to convert your mesh, including both software-specific plugins, and standalone converters that are software-agnostic:

  • Sofware agnostic:
    • ck-cmd: can convert both ways between .fbx and nif, including collision. Also can handle havok behaviors. Only works with LE nifs.
    • Outfit Studio: can import .obj or .fbx, and export LE or SSE nifs. Also used for skinning armor, creatures, or npcs.
  • Blender:
    • Blender Niftools Addon: For Blender 2.8+, Export/Import tool between Blender and the Nif format.
    • PyNifly: Export/Import tool between Blender and the Nif format. Supports SSE Meshes
  • 3ds Max:

Collision[edit]

Most mesh conversion software handles collision now. There are a couple older programs which can be used to manipulate collision only, which are noted here:

  • ChunkMerge: Can transfer collision from one nif to another, or convert TriShapes to compressed mesh shape collision
  • Chunkmerge Utils: templates for use with ChunkMerge

Skyrim and Creation Kit[edit]

To view your asset in game you'll need the game. You can use Skyrim Legendary Edition, or Skyrim Special Edition.