Difference between revisions of "NifSkope Comprehensive Guide"

From the Oblivion ConstructionSet Wiki
Jump to navigation Jump to search
imported>Chuey
(Moved entire article and Discussion Page to NifSkope_Comprehensive_Guide)
 
imported>Chuey
(Deleting this version of the guide. Goto NifSkope Comprehensive Guide)
Line 1: Line 1:
='''NIF Files and Installing NifSkope'''=


== Introduction ==
The purpose of this guide is to explain and walk you through the ins and outs of working in NifScope. This guide should continue to be updated as new releases of the NifScope tool is released. The guide should remain centered around the TES:Oblivion moding community by providing information and tutorials on creating mods for TES:Oblivion. Areas that need more information are noted throughout the guide so editing is encouraged if you have useful and correct information to add.
Okay, let’s get started.
== What’s a NIF file? ==
Let’s start simple. A .nif file [example: dagger.nif] is created by the [http://www.emergent.net/index.php/homepage/products-and-services/gamebryo GameBryo Essentials Toolkit] when the developer saves their final version of a game object. This object can be anything from a rock to a human head to a stone wall. Gamebryo is the [http://en.wikipedia.org/wiki/Game_engine Game Engine] that was used to create TES:Oblivion as well as TES:Morrowind before it.
These files are then compressed into a .bsa file by our good friends at Bethesda. The core need by moders to make new meshes and textures or edit existing ones is to have the ability to edit these NIF files. That is where NifScope comes in.
NifScope is a .nif viewer/editor available free from the NIFTools team. They have created this program to enable us to view and edit Net Immerse Files (NIF). So that is where we will begin.
== Downloading and Installing NifScope ==
Now that we know what a NIF file is lets go get the NifScope program.
*Click this link to find NifScope: [http://sourceforge.net/project/showfiles.php?group_id=149157&package_id=170735 NifScope 0.9.8]
*Expand the 0.9.8 version using the + sign next to the version number.
*Click on the link: ‘nifskope-0.9.8-windows.exe’
*Save the file to your Desktop.
*Now go to your desktop and double-click the icon ‘nifskope-0.9.8-windows’
*Follow the prompts and install NifScope to your computer’s hard drive.
== Opening NifScope for the First Time ==
Okay, so now we have NifScope installed. Lets open it and see what’s inside.
* Start, All Programs, NifTools, NifScope, NifScope
Okay now we are in. First thing we need to do is tell NifScope where the files we want to mod are.
* Click Render, Settings…
<br>
This window controls NifScope’s render window. You'll most likely never use 90% of the controls in here. We'll go into more detail on these later, so for now, all we are concerned with is the '''Auto Detect''' and '''Custom''' groups.
*Auto Detect: Click ‘Oblivion’
You should have seen a file path appear in the Custom group. This file path should point to where you installed your TES:Oblivion game and then the /Data directory. If it doesn’t, then follow the instructions below. Otherwise click the small ‘X’ in the upper right and continue on to the next topic.
If the auto detect did not follow the correct path double click on the path it did provide. If it did not provide a path click the ‘Folder’ button. Either way enter the following:
*C:/Program Files/Bethesda Softworks/Oblivion/Data
:'''NOTE:''' ''This assumes that you installed the game into your C Drive, Program Files directory. If you are unsure of where you installed the game go to: Start, All Programs, Bethesda Softworks, Oblivion and right click on the ‘Oblivion’ icon and select ‘Properties’. In the ‘Target’ field you will find the install directory.''
= The NifScope User Interface =
Now we will explore the user interface including all the buttons and menu items. Some of these you will always use and others never. But it is a good idea to at least understand what they all do.
== The Main Window ==
NifScope is amazingly intuitive and easy to navigate. The user interface is divided into the three primary (default) windows:
:'''Render Window'''
::* The window on your right is the render window. This is where you will see the model your currently working on in 3D space. You can rotate, zoom, and pan in here. The blue line is your Z Axis; the red line is your X Axis; and the green line is your Y axis.
:'''Block List'''
::* The window on your left is the block list window. This window displays the guts of your NIF file. This is where you will be editing and adding to the list of Ni data blocks (guts). The Ni data blocks are listed in a tree format much like a directory window. But we will get more into that later.
:'''Block Details'''
::* The window at the top is the block details window. This window displays all the commands and instructions contained within each of the Ni data blocks. Editing or adding commands and instructions is how you create all types of effects on your meshes and textures.
<Br>
There are also two non-default windows available to you. Lets go ahead and activate them so we can see what they offer us.
* Click: View, KFM
* Click: View, Reference Browser
<Br>
:'''KFM'''
::* This window displays the animation data contained within the NIF file. Currently, there are no good tutorials that explain how to edit or add animations to Oblivion so this window is seldom used.
::'''NOTE:''' ''This doesn't mean that it isn't possible to create or edit animations. There has been talk on forums of the possibility of adding animations using Blender. If anyone has further information on this topic please add.''
:'''Reference Browser'''
::* This browser will display descriptions of of all the data strings contained within the selected block in the Block List window. It will also display descriptions on commands and instructions on selected items in the Block Details window. This is very useful but should only be opened when needed.
<br>
Close the KFM and Reference Browser windows using the same method used to open them or just click the 'X' in the upper right of each window.
== Menu Items ==
NifScope contains five menu drop downs. Some are obvious (Save, About, ect.) and some not so obvious (Optimize, Sanitize, ect.). We will explore these in more detail below so first lets open our a NIF file.
* Click: File, Load
* Browse to your Oblivion install directory, then Data/meshes/weapons/iron
* Click to highlight: battleaxe.nif
* Click: Open
<br>
You now have the iron battleaxe open. The iron battleaxe will be our NIF file used in the next few sections so if you need to come back to a section later just reopen it and start from where you left off.
Now that you have a NIF file opened you will see the three default windows mentioned earlier are now populated. We will walk through the functionality of each of them later. For now, lets start with the menus at the top of the screen. Go ahead and try each of the menu items as they're explained. This will give you some good real time experience with their functionality.
:'''File'''
::* Load: Loads a NIF file from the selected file path.
::* Save: Saves the NIF file to the selected file path.
::* Import, 3DS: Imports an AutoDesk 3DS Max file.
::* Import, OBJ: Imports a .obj (Object) mesh file.
::* Auto Sanitize Before Save: NifScope will run all the 'Sanitize' scripts on your NIF file prior to saving if this is check marked.
::* New Window: Opens another fresh window of NifScope.
::* Reload XML: Reloads only the NIF file's XML code.
::* Reload XML + Nif: Includes the NIF data in the XML reload. Basically a complete reload of the currently opened NIF file. Use this if your in a situation where you deleted something you didn't mean to.
::* XML Checker: Use this to check for XML code errors in NIF files. Use the window to select a directory and associated block. NifScope will check all NIF files in the selected directory or errors and display the results.
::* Resource Files: ''Explanation needed.''
::* Quit: Closes NifScope. Beware! There isn't an autosave or a prompt to save your file first before closing.
:'''View'''
::* Block List: Toggles window on/off.
::* Block Details: Toggles window on/off.
::* KFM: Toggles window on/off.
::* Reference Browser: Toggles window on/off.
::* Toolbars,Load Save: Toggles toolbar on/off.
::* Toolbars,View: Toggles toolbar on/off.
::* Toolbars,Animation: Toggles toolbar on/off.
::* Block List Options, Hierarchy: Changes the block list window to display Ni data blocks in an expanding tree format.
::* Block List Options, List: Changes the block list window to display Ni data blocks in a top down list format.
:'''Render'''
::* Top: Positions the render view camera on the Z Axis (Blue Line).
::* Front: Positions the render view camera on the Y Axis (Green Line).
::* Side: Positions the render view camera on the X Axis (Red Line).
::* Walk: Enables walk mode. Use the W,S,A, and D key on the keybaord to pan and zoon the image in the render window.
::* User: Restores the render window camera position to the last 'Saved User View'.
::* Flip: Positions the render view camera in the opposite orientation. If viewing the +Z axis, clicking this will position the camera on the -Z axis.
::* Perspective: Switches the render window to an orthographic projection in normal view mode.
::* Save User View: Saves the current camera position. Restore by pressing 'User'.
::* Draw Axis: Toggles the X,Y,and Z axis image on/off.
::* Draw Nodes: Toggles the node images (like scene root) on/off.
::* Draw Havok: Toggles the havok meshes on/off.
::* Draw Furniture: Toggles the furniture animation markers on/off.
::* Show Hidden: Show hidden meshes contained in the NIF file on/off.
::* Show Stats: Show selected Ni block data in the render window on/off.
<br>
=== Render Window Settings... ===
The render window settings control the search path, rendering, and lighting of the render window. These controls will make dramatic changes to the way your model is rendered and should be used sparingly. Lets walk through each of the setting options available to you.
:'''Auto Detect'''
::* Pressing one of the buttons will cause NifScope to seek out and find the directory your texture files are located in for the game named on the button. Then adds the result to the list of search paths.
:'''Custom'''
::* Add Folder: Adds a new folder to the list of search paths.
::* Remove Folder: Removes the highlighted folder from the list of search paths.
::* Move Up: Moves the highlighted folder up in the search list.
::* Folder: Opens a directory browser and will change the highlighted folder to the new folder that is selected.
::* Look for Alternatives: If check marked, NifScope will search for an alternative texture file if the corresponding .dds file is not found.
:'''Render'''
::* Anti Aliasing: Enables your graphic card's anti aliasing feature in the render window.
::* Textures: Enables the rendering of mesh textures in the render window.
::* Shaders: Enables the rendering of shader effects in the render window.
:'''Up Axis'''
::* Sets the render windows Positive Height axis. Meaning that by default the Z axis is up in height. ''Please add information on how this effects saved nif files.''
:'''Culling'''
::* ''Please add information on these selections.''
:'''Light'''
::* Changes the render window ambient, deffuse, and specular light color. Selecting and rotating the triangle via the outer circle sets the hue and selecting inside the triangle and dragging the small white circle sets the shade.
:'''Frontal'''
::* Check marking this locks the light source to the camera position. Unchecking this locks the light source to the location specified in the 'Position' group.
::'''NOTE:''' ''Use this to get a better look at how your model will appear in the game.''
:'''Position'''
::* Sets the light source's position if 'Frontal' is unchecked.
:'''Presets'''
::* Sunny Day: emulates the lighting effect of a sunny day.
::* Dark Night: emulates the lighting effect of night.
::'''NOTE:''' ''Again, use these to get a better look at how your model will appear in the game.''
:'''Colors'''
::* Changes the render window background, foreground, and highlight color. Selecting and rotating the triangle via the outer circle sets the hue and selecting inside the triangle and dragging the small white circle sets the shade. The sliders will adjust the transparency of the foreground and highlight objects.
::'''NOTE:''' ''Foreground will change the hue and transparency of your bones and scene root nodes.''
<br>
=== Menu Items Continued: Spells ===
Spells are scripts used by NifScope to perform various functions on your opened NIF file. They perform very useful and permanent (no undo button) changes which enable you to configure a NIF file for use by the [http://www.gamebryo.com/ GameBryo] [http://en.wikipedia.org/wiki/Game_engine Game Engine]. They will save you lots of time when editing/creating NIF files so it is important that you know what each of them do. We will now walk through each of these spells and explain their function:
:'''Animation'''
::* Attach .KF: Attaches animations to the opened NIF file. ''More explanation needed.''
:'''Block'''
::* Insert: Allows you to insert a new Ni Block into the Block List.
::'''NOTE:''' ''Remember: The new Ni Block will be fresh. Meaning it will not contain any command or instruction data. Copy and pasting Ni Blocks from another NIF is generally a better way to add new ones. Use sparingly.''
::* Remove by ID: Removes all Ni Blocks that contain the specified sufix. [Example: ^NiBS will delete all Ni Blocks with the suffix 'NiBS']. This is primarily used to prepare NIF files for import into external editors like [http://www.blender.org/ Blender].
::'''NOTE:''' ''We will get into what Blender is later in this guide.''
:'''Optimize'''
::* Combine Properties: Combines Ni Block properties that contain the same Block Data. [Example: Two different NiTriShapes both contain the same material property. But each material property has a different Block number. Running this script will convert them to the same block number.
::* Split Properties: This spell is the opposite of Combine Properties. When run, it will assign a unique block number to each property regardless if they are the same.
::* Remove Bogus Nodes: This spell will remove NiNodes from your Block List that do not contain any Ni Blocks or Ni Data.
::* Strippify All TriShapes: This spell will convert all NiTriShape block to NiTriStrip blocks.
::'''NOTE:''' ''This is a very useful spell when creating weapons as weapon shape data is contained in NiTriStrip blocks as opposed to NiTriShape blocks like armor.
:'''Sanitize'''
::'''NOTE:''' ''All of these spells will run automatically if the 'Auto Sanitize Before Save' selection under the file menu is check marked.''
::* Adjust Link Arrays: This spell will reorder and removed empty links in your array data. Arrays [example: children] are data contained inside Ni blocks that list one or more links to other Ni blocks.
::* Adjust Texture Sources: ''Explanation needed.''
::* Reorder Havok Blocks: This spell places imported or edited Havok blocks like collision data blocks to the correct hierarchy order.
::* Check Links: The spell name implies that it checks the NIF file's data block links for errors. Then displays any resulting errors in a prompt window. ''Confirmation needed that this is correct - use discussion page please''
:'''Batch'''
::* Make All Skin Partitions: This handy spell will automatically create NiSkinPartition blocks for all Ni shape blocks containing armature bones. NiSkinPartition blocks are found in NIF files containing movement transforming meshes like body parts, armor, and clothing.
::* Update All Tangent Spaces: This handy spell will automatically update/create all the 'Tangent space (binormal & tangent vectors)' extra data blocks.
<br>
::'''NOTE:''' ''Skin partitions, armature bones, and tangent space blocks will be explained in more detail later in the guide. For now, just remember where these spells are located and what the spell will do to your NIF file.''
<br>
=== Menu Items Continued: About ===
Use the about menu to check the version number of NifScope and [http://trolltech.com/products/qt Qt].
<br>
== Toolbar Buttons ==
Now we will focus our attention to the toolbar buttons. This section of the guide will explain what the command is for each button; rather then re-explain all the same functions we went through in the menu section.
:'''Load Save'''
::* This toolbar has buttons to load and save your NIF file. It also displays the file path for each.
:'''View'''
::* This toolbar allows you to quickly switch between render window views and walk mode.
:'''Animation'''
::* Play Button: Plays the animation embedded in the NIF file. You will see the animation play in the render window.
::* Slider Bar: Allows you to quickly move to a specific time in the animation play cycle.
::* Loop Button: Toggles the animation play loop on/off. If on, the animation will continue to play until the play button is pressed again. Turn off to play the animation only once.
::* Switch Button: The button name implies that it switches the play slider between animations when multiple animations are present. ''Confirmation needed that this is correct - use discussion page please''
::* Pull Down Menu: This menu implies that it shows a list of the current animations contained in the NIF file when multiple animations are present. ''Confirmation needed that this is correct - use discussion page please''
<br>
Once you feel you have a general understanding of all the user interfaces, menu items, and toolbar buttons you are ready to proceed to the next section.
WORK IN PROGRESS. SEE DISCUSSION PAGE.

Revision as of 18:15, 21 July 2007