Difference between revisions of "Arcane University:Nif implementation"

The Beyond Skyrim Wiki — Hosted by UESP
Jump to: navigation, search
(specific topics tutorials)
(Mesh Conversion: ck-cmd LE only)
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Trail|Implementation}}
+
{{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]].
  
This is the main page of the Beyond Skyrim Arcane University Nif tutorials. It serves as hub for the standard workflow and pointers to detailed specific tutorials for Nif Implementation. The [[Arcane University: Implementation]] department is structured in three sub-departments:
+
== Reference pages ==
* [[Quest Implementation]]
+
* [[AU:NetImmerse Format|NetImmerse Format]]: Overview of nif format
* Nif Implementation
+
** [[AU:NetImmerse Format/BSLightingShaderProperty|BSLightingShaderProperty]]: Lighting Shader settings and flags
* [[Mechanics Implementation]]
+
*** [[AU:NetImmerse_Format/Texture Slots|Texture Slots]]: Details on texture slot usage
 +
** [[AU:NetImmerse Format/BSEffectShaderProperty|BSEffectShaderProperty]]: Effect Shader settings and flags
 +
* [[AU:Collision|Collision]] and physics settings
 +
* [[AU:DDS Data Format|DDS Data Format]]: Overview of the DDS format Skyrim uses for textures
  
==Workflow & general tutorials==
+
==Tutorials==
 +
=== Weapons ===
 +
*[[AU:Nifskope Weapons Setup|Nifskope Weapons Setup]]
 +
*[[:File:Tutorial_skyrim_bows_from_3ds.pdf|Rigging bows with 3ds Max and NifSkope (pdf)]] by Artisanix
  
What is important/relevant to learn for implementing (complex) meshes in Skyrim. Within Beyond Skyrim, 3D artists are expected to be able to export their own meshes to nifs, if they are simple enough. However, for some complex to implement meshes, like animated meshes or meshes 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 on the implementer's shoulder. Therefore, the first thing you should know is how to [[AU:Mesh_Export_to_NIF|export to nif]] from a 3D program or from a predefined format like fbx.
+
=== Animated objects ===
 +
*[[AU:Exporting animated statics using ck-cmd|Exporting animated statics using ck-cmd]]
 +
*[https://www.youtube.com/watch?v=4DrN_AS28qk Animating Crash Course - Basic Static Animations in Blender (video)] by Hayden Price
  
Other subjects covered will be:
+
=== Constraints ===
 +
*[[AU:Nifskope Hinge Constraints|Hinge Constraints]]
 +
*[[AU:Nifskope Prismatic Constraints|Prismatic Constraints]]
  
* animation
+
=== Importing/exporting ===
* polishing (UV, shader faces, tangent spaces, sanitize, correct names...)
+
*[[AU:Nif Import|Nif Import]]
* special effect nodes
+
*[[AU:Mesh Export to NIF|Mesh Export to NIF]]
  
==Basics==
+
== Software ==
 +
There are various tools used for implementing nifs.
  
Nif properties are the leverage to modify meshes in certain aspects as intended. Take your time to have a look at the specifics of the NIF data format used for meshes, check [[Arcane_University:NIF_Data_Format|Nif Data Format]]. Topics of interest are especially
+
=== General ===
* weight center
+
*[[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.
* collision
+
*[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.
* physical havoc material (does it swim, float, hover etc)
 
*[[File:PhysicalMaterial1.png]]
 
* Effect properties (See shaders)
 
* animations
 
* BSFX flags
 
* inventory marker
 
* UV map fixes
 
* Changes in rendering the Mesh (Smooth or blocky, shader type, texture sets, flip faces, ...)
 
* the common sanitize spells
 
** update tangent spaces
 
** renumber nitrishape objects
 
** fix incorrect names
 
* Change structure of nodes (add / remove nif nitrishapes to have additional effects or only parts of an existing mesh available)
 
* Change scale
 
  
==specific topics tutorials==
+
=== 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.
  
===volume physics===
+
=== 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:
  
* Nif data formate and its structure: https://wiki.beyondskyrim.org/wiki/Arcane_University:NIF_Data_Format
+
*Sofware agnostic:
* making a simple mesh rotation animation with Nifskope https://www.youtube.com/watch?v=YmGVknCC_a8
+
**[[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.
* adjusting size, scale and position of nitrishapes in nifskope: https://www.youtube.com/watch?v=C9rlBDrfSP8
+
**[[AU:Outfit Studio|Outfit Studio]]: can import .obj or .fbx, and export LE or SSE nifs. Also used for skinning armor, creatures, or npcs.
* Animate Static Objects: https://www.youtube.com/watch?v=1lkrX3HYSDc
+
*[[AU:Blender|Blender]]:
* Animate Static Objects via NiTransformController: https://www.youtube.com/watch?v=pYcAA09yygI
+
**[[AU:Blender Niftools Addon|Blender Niftools Addon]]: For Blender 2.8+, Export/Import tool between Blender and the Nif format.  
* copy animations to custom nif: https://www.youtube.com/watch?v=SodgAvvEjwQ
+
**[[AU:PyNifly|PyNifly]]: Export/Import tool between Blender and the Nif format. Supports SSE Meshes
* Shader implementation (Fire on a hut): https://www.youtube.com/watch?v=nGO0gwFwnLs
+
*[[AU:3ds Max|3ds Max]]:
* moving the node centers to fit an animated mesh: https://www.youtube.com/watch?v=4H11Kokvqk0&t=24s
+
**[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
  
===surface rendering===
+
=== 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
  
* DDS texture formate https://wiki.beyondskyrim.org/wiki/Arcane_University:DDS_Data_Format
+
=== Skyrim and Creation Kit ===
* editing the UV map https://www.youtube.com/watch?v=1u51yDEGzmQ
+
To view your asset in game you'll need the game. You can use Skyrim Legendary Edition, or Skyrim Special Edition.
* making a simple rotation animation with a texture via UV map in Nifskope https://www.youtube.com/watch?v=CBlaY5keZRg
+
* Creation Kit for the version of Skyrim you are modding for:
* placing textures on a nitrishape via nifskope including UV map adjustments: https://www.youtube.com/watch?v=kbnE5MZhdOE
+
** 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-Animation| ]][[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.