Guide:Skyrim Tree Settings: Difference between revisions

From Step Mods | Change The Game
No edit summary
No edit summary
Line 28: Line 28:
  bEnableTrees=1
  bEnableTrees=1


There are two different kinds of dynamic trees: "skinned" trees and "unskinned."
There are two different kinds of dynamic trees: "skinned" trees and "unskinned." Skinned trees are toggled by bRenderSkinnedTrees in SkyrimPrefs.ini:
Figure 1: Skinned trees
 
Skinned trees are used when the following INI setting is set as follows:


:'''SkyrimPrefs.ini'''
:'''SkyrimPrefs.ini'''
Line 38: Line 34:
  bRenderSkinnedTrees=1
  bRenderSkinnedTrees=1


{{GallerySimple|id=fTreesMidLODSwitchDist|width=480|img=File:fTreesMidLODSwitchDist=5000.jpg|caption=Figure 1: Skinned trees (bRenderSkinnedTrees=1)}}
Figure 2: Unskinned trees
{{GallerySimple|id=fTreesMidLODSwitchDist|width=480|img=File:fTreesMidLODSwitchDist=0.jpg|caption=Figure 2: Unskinned trees (bRenderSkinnedTrees=0)}}
 
{{Clear}}
Unskinned trees are used when the following INI setting is set as follows:
 
:'''SkyrimPrefs.ini'''
[Trees]
bRenderSkinnedTrees=0
 
Now, this is the cheapest performance version of trees in the game, but they move. They are animated.
Figure 3: Animated trees


These tree animations can be removed by removing the resources allocated to them:
Now, unskinned trees are the least detailed kind, but they move. They are animated. These tree animations can be removed by removing the resources allocated to them:


:'''Skyrim.ini'''
:'''Skyrim.ini'''
Line 57: Line 44:
  fUpdateBudget=0
  fUpdateBudget=0


{{GallerySimple|id=fUpdateBudget|width=480|img=File:fUpdateBudget=0.jpg|caption=Figure 3: Animated trees (fUpdateBudget=0)}}{{GallerySimple|id=fUpdateBudget|width=480|img=File:fUpdateBudget=1.5.gif|caption=Figure 4: Inanimate trees (fUpdateBudget=1.5)}}
{{Clear}}
   
   
Figure 4: Inanimate trees
This makes the trees inanimate. Inanimate, unskinned trees are the most performance-friendly version in the game.


This makes the trees inanimate. This is the base tree with no movement. Since skinned trees are entirely disabled, it will entirely remove the tree popping effect noticeable when moving through the forests. This is demonstrated in the video below.
Unskinned trees avoid the tree popping effect noticeable when moving through the forests. This is demonstrated in the video below.


Video 1: Unskinned trees
Video 1: Unskinned trees display no tree popping


By default, Skyrim will render 20 skinned trees around the player character. As the player moves, the trees will put on more skin, causing them to pop a bit. This is demonstrated in the video below.
By default, Skyrim will render 20 skinned trees around the player character. As the player moves, the trees will put on more skin, causing them to pop a bit. This is demonstrated in the video below.
Line 135: Line 124:
  bTreesReceiveShadows=1
  bTreesReceiveShadows=1


Figure 5: Tree shadows enabled
{{GallerySimple|id=bTreesReceiveShadows|width=480|img=File:bTreesReceiveShadows=1.jpg|caption=Figure 5: Tree shadows enabled (bTreesReceiveShadows=1)}}
 
{{GallerySimple|id=bTreesReceiveShadows|width=480|img=File:bTreesReceiveShadows=0.jpg|caption=Figure 6: Tree shadows disabled (bTreesReceiveShadows=0)}}
Figure 6: Tree shadows disabled (default)
{{Clear}}
 
 
Far off trees will all look the same, and the maximum distance that they will be shown may be changed by altering the value of fTreeLoadDistance. The default medium value is given below.
Far off trees will all look the same, and the maximum distance that they will be shown may be changed by altering the value of fTreeLoadDistance. The default medium value is given below.
:'''SkyrimPrefs.ini'''
:'''SkyrimPrefs.ini'''
Line 145: Line 132:
  fTreeLoadDistance=25000
  fTreeLoadDistance=25000


{{GallerySimple|id=fTreeLoadDistance|width=480|img=File:fTreeLoadDistance=25000.jpg|caption=Figure 7: Distant trees at 25000}}
{{GallerySimple|id=fTreeLoadDistance|width=480|img=File:fTreeLoadDistance=25000.jpg|caption=Figure 7: Distant trees at fTreeLoadDistance=25000}}
{{GallerySimple|id=fTreeLoadDistance|width=480|img=File:fTreeLoadDistance=40000.jpg|caption=Figure 8: Distant trees at 40000}}
{{GallerySimple|id=fTreeLoadDistance|width=480|img=File:fTreeLoadDistance=40000.jpg|caption=Figure 8: Distant trees at fTreeLoadDistance=40000}}
{{clear}}
{{clear}}



Revision as of 11:41, October 25, 2015

Template:TOC right A guide to editing the Skyrim tree settings inside the INI files for the tinkering user

SUPPORT FORUM


Template:Construction

Suggested first reading: Skyrim Configurations Settings Guide

Guide scope[edit | edit source]

This guide is intended to be a guide to the tree configuration settings for The Elder Scrolls V: Skyrim game as set through INI files. Its purpose is geared toward understanding how trees work in Skyrim and optimizing them for individual use. See the advanced Skyrim INI and SkyrimPrefs INI guides for an advanced and comprehensive review of all configuration settings.

About Skyrim's tree system[edit | edit source]

SpeedTree technology was used in previous Elder Scrolls games, but Bethesda Game Studios decided they could do better without it. Skyrim therefore is the first game where they their own custom tree system.

There are essentially two different ways trees can be rendered in Skyrim, which is designated in this guide as "static" and "dynamic."

Dynamic trees[edit | edit source]

The default version is the dynamic version. The dynamic version is used when the following INI settings have the values shown below:

Skyrim.ini
[Trees]
bEnableTreeAnimations=1
bEnableTrees=1

There are two different kinds of dynamic trees: "skinned" trees and "unskinned." Skinned trees are toggled by bRenderSkinnedTrees in SkyrimPrefs.ini:

SkyrimPrefs.ini
[Trees]
bRenderSkinnedTrees=1

Now, unskinned trees are the least detailed kind, but they move. They are animated. These tree animations can be removed by removing the resources allocated to them:

Skyrim.ini
[Trees]
fUpdateBudget=0

This makes the trees inanimate. Inanimate, unskinned trees are the most performance-friendly version in the game.

Unskinned trees avoid the tree popping effect noticeable when moving through the forests. This is demonstrated in the video below.

Video 1: Unskinned trees display no tree popping

By default, Skyrim will render 20 skinned trees around the player character. As the player moves, the trees will put on more skin, causing them to pop a bit. This is demonstrated in the video below.

Video 2: Default skinned trees demonstrate trees popping

Now, skinned trees are obviously more detailed than unskinned trees. It’s not only the amount of limbs and leaves but also the bark that is greatly improved. Still, many players may decide that for the price of decreased detail in trees, the removal of the tree popping and the improved performance is a win. However, there is a way, at the cost of some performance, to get skinned trees and essentially eliminate the popping trees.

We can increase the amount of skinned trees rendered around the player, as well as increase the distance from the player that the trees are skinned, with the following settings:

SkyrimPrefs.ini
[Display]
fMeshLODLevel1FadeTreeDistance=6144
fMeshLODLevel2FadeTreeDistance=4096
fTreesMidLODSwitchDist=8192
[Trees]
uiMaxSkinnedTreesToRender=200

This almost entirely removes the popping, due to the fact that all trees are now skinned and are rendered at a sufficient distance to make the process almost invisible, as seen in the video below.

Video 3: Tweaked skinned trees remove tree popping

To sum up what we’ve learned about the dynamic version of trees:

  1. Dynamic trees may be skinned or unskinned.
  2. Dynamic trees may be animated or inanimate.
  3. Dynamic unskinned trees avoid tree popping but lose detail.
  4. Tree popping on dynamic skinned trees may be avoided by adjusting their custom level of detail distance settings.

Static trees[edit | edit source]

The “static” version of tree rendering in Skyrim is done in a much simpler manner. The static version is used when either bEnableTreeAnimations or bEnableTrees are disabled in Skyrim.ini as shown below:

Skyrim.ini
[Trees]
bEnableTreeAnimations=0
bEnableTrees=0

There does not seem to be much variety in the static version. All trees will be fully skinned. All trees will remain inanimate. No tree popping will occur. This is simply because these two settings entirely alter the tree system. They effectively make trees into static models like all the other models dotting the landscape, with few exceptions. It disables the following INI settings:

Skyrim.ini
[Trees]
fUpdateBudget
SkyrimPrefs.ini
[Display]
fMeshLODLevel1FadeTreeDistance
fMeshLODLevel2FadeTreeDistance
fTreesMidLODSwitchDist
[Trees]
bRenderSkinnedTrees
uiMaxSkinnedTreesToRender

Tree meshes in the static version will be controlled by fMeshLODLevel1FadeDist and fMeshLODLevel2FadeDist instead of fMeshLODLevel1FadeTreeDistance and fMeshLODLevel2FadeTreeDistance.

Below is a video demonstrating the lack of tree popping on fully-skinned, static trees.

Video 4: Static trees, while fully skinned, avoid tree popping

To recap what we have learned about the static version of trees:

  1. Static trees are always fully skinned.
  2. Static trees are always inanimate.
  3. Static trees avoid tree popping.
  4. Static trees share the main mesh level of detail distance settings.

What settings both tree versions share[edit | edit source]

Now that we know the two different ways trees may be rendered in Skyrim, what stays the same? Answer: Tree shadows and far off tree visuals.

Tree shadows may be toggled on and off with bTreesReceiveShadows regardless of how the trees are rendered.

SkyrimPrefs.ini
[Display]
bTreesReceiveShadows=1

Far off trees will all look the same, and the maximum distance that they will be shown may be changed by altering the value of fTreeLoadDistance. The default medium value is given below.

SkyrimPrefs.ini
[TerrainManager]
fTreeLoadDistance=25000