Creating a Custom Worldspace with LOD

From the CreationKit Wiki
Jump to navigation Jump to search


Creating LOD in Skyrim[edit | edit source]

Before starting the LOD creation process, the following third-party programs are required for the Object LOD portion of this tutorial:

If working with heightmaps, download:

The Creation Kit's LOD generator is equipped to meet most users needs by providing standard resolution LOD models and textures. For those planning on generating LOD for large worlds, specifically those with world maps, or those who simply want the highest quality LOD possible, the following program will be needed:

It's a wise idea to extract these utilities to a common folder separate from Skyrim.

Creating a new world from a heightmap[edit | edit source]

Using TESAnnwyn:

  1. Place your heightmap in the TESAnnwyn folder
    • The heightmap should be 16 bit grayscale with no headers and IBM ordering
  2. Run the command prompt
    1. TESAnnwyn –i Skyrim –w [worldspace] –d [X-pixels]x[Y-pixels] –s [height modifier] – x [-.5 * total cell width] –y [-.5 * total cell height] [worldspace].raw
      • Unless your heightmap is very dark, the 'height modifier' attribute should be kept low (somewhere in the range of .1), or your world will be huge.
      • Other commands are also possible, and perhaps desirable - check TESAnnwyn's documentation for the full list
    2. This will generate a file tesannwyn.esp in the same folder as TESAnnwyn
  3. Copy tesannwyn.esp into your Skyrim/Data folder
    • Load tesannwyn.esp in the creation kit and go to World -> Heightmap Editor to check and make sure everything generated properly.

Generating World LOD[edit | edit source]

  • World and Object LOD should usually be done after you're done with your world. After any sort of landscape editing or creation of LOD-applicable objects, you will have to manually clear out all the previously generated LOD files and regenerate.


Creation Kit[edit | edit source]

Achtung.png Backup your plug-in before generating world LOD! The Creation Kit will sometimes flatten a worldspace after generating terrain meshes and make a silent plug-in save without warning. This corruption is more prone to occur with very small worldspaces. Avoid this issue by creating a copy of the plug-in for the purpose of LOD generation and add empty cells to small worlds through the Region Editor.


  • The Creation Kit uses the render window to generate world LOD textures through a background process. Before loading the plug-in, the render window must be expanded to its maximum dimensions to ensure no "black strips" and other defects appear on diffuse textures. Perform one of the following:
    • Open the Creation Kit and expand the render window as far out as possible, both in terms of width and height. Location of the render window on the screen does not matter. Then close the Creation Kit so INI values can be saved. Relaunch the Creation Kit and load the plug-in as normal.
    • Open SkyrimEditorPrefs.ini in the \steamapps\common\Skyrim\ folder. Find the following properties under [General] and apply the following values. Afterwards, save the INI and then launch the Creation Kit as normal:

Render Window W=1368
Render Window H=1092

Meshes

  1. Open World -> World LOD in the menu bar
  2. Select your worldspace
  3. Check "Distant Terrain / Water" in the Meshes category
  4. Click the "Generate" button

Textures

  1. Uncheck "Distant Terrain / Water"
  2. Check "Generate Diffuse Textures" and "Generate Normal Textures" in the Textures category
  3. Click the "Source textures only" radio button
  4. Click the "Generate" button
  5. Unlike the terrain meshes, the textures will be generated in the \steamapps\common\source\DDSTextures\ folder. Move the included Terrain folder, and its containing worldspace folders, to the \Skyrim\Data\ folder.

Oscape[edit | edit source]

At the moment, Oscape will only generate color maps if they are referenced in some way to a *.esm. To get around this, we first use the Creation Kit.

In the Creation Kit:

  1. Load both Skyrim.esm and your .esp
  2. Find Miscellaneous -> TextureSet
    • Type "*landscape" in the feature field to isolate landscape textures
  3. Duplicate every texture reference that you will be using in your mod (or all of them, to be safe)
    • They will be copied with "COPY0000" at the end; don't bother renaming
  4. Find Miscellaneous -> LandTexture
  5. Open every LandTexture, and where you can select "TextureSet" in the top right, change the file to your copied TextureSet
  6. Save

In Oscape:

  1. Change game to Skyrim
  2. Check only tesannwyn.esp; click "Fill"
  3. Select your worldspace from the list
  4. At the bottom, hit "Browse", and save the file as [worldspace].raw in a new folder
  5. Check both feature-map and surface-map, hit 'Extract'
  6. Adjust the sea-level to your choice; hit 'Accept'
  7. Set a target of max resolution
    • For low-mid range computers, start at around 320,000. If it doesn't crash, go up.
  8. Check 'Meshes'
    1. All LODs should be checked
    2. Format should only be '.nif'
  9. Check 'Normals'
    1. Check whichever texture size you want; Skyrim default is 1024
    2. Check only DirectX
  10. Check 'Colors'
    1. Select whichever texture you want; again, default is 1024
    2. Check only DirectX
  11. Hit 'Generate'
  12. Once in the Installer tab, check 'Generate LOD data' and each level and click 'Install'

Generating Object LOD[edit | edit source]

In BSAopt:

  1. Load Skyrim – Meshes.bsa
  2. Unpack all LOD meshes into Skyrim/Data/Meshes/LOD
    • You'll have to point the extraction folder to Skyrim/Data; if you point to Skyrim/Data/Meshes/LOD it'll create a folder path of Skyrim/Data/Meshes/LOD/Meshes/LOD - check your folders to make sure everything is in the right place.
  3. Load Skyrim – Textures.bsa
  4. Unpack all LOD textures into Source/TGATextures/LOD(The Source folder must be placed in the same folder as Skyrim, typically Steam/Steamapps/Common/)
    • That directory probably doesn't exist - you will have to create it.

With NifSkope

  1. There are nearly 800 LOD meshes but only 84 of them need attention. Here is a list of the files.The list is missing,Dwemer/dwefacadecolumnxlgfree01_lod_1,Dwemer/dwefacadecolumnxlgfree01_lod Media:LodMeshesPendingTranslations.txt
  2. Open each lod mesh and right click the NiTriShape, select Transform, Apply. Repeat with all shapes and save
  3. Make sure all of the LOD meshes are free of pending translations.

With nConvert:

  1. Place nconvert.exe in Source/TGATextures/LOD
  2. Create a new notepad file in the Source/TGATextures/LOD folder
    1. Paste in the following:
      • nconvert -out tga *.dds
    2. Change the file's name to run.bat
  3. Double-click run.bat; this will convert all your DDS files into TGA files

In the Creation Kit:

  1. Open the Creation Kit, load Skyrim.esm and your .esp
  2. Go to World -> World LOD
  3. Select your worldspace, check "Generate Statics Objects" and nothing else
  4. Click 'Generate'
    • If this throws any errors, it means you're missing either a _lod.nif or a _lod.tga in either Source/TGATextures/LOD or Skyrim/data/meshes/LOD

In Windows Explorer:

  1. Navigate to Source/ and find the generated textures
  2. Copy them, and paste them into Skyrim/data/textures/terrain/[worldspace]/Objects(Note: this step isn't necessary if your are generating LOD from an existing vanilla worldspace and have not added and/or altered any textures because the resulting atlas will be identical to the vanilla texture.)
  3. The generated meshes will be located in their game ready folders at Skyrim/data/meshes/terrain/[worldspace]/Object

Generating Tree LOD[edit | edit source]

  1. Open World -> World LOD
  2. Select your worldspace
  3. Check "Generate Trees"
  4. Hit generate
    • Note that there are some issues with tree LOD where the LOD will not disappear, even if you move close to a tree. The cause of this issue isn't known yet but it seems to be happening on a case-by-case basis.

Testing it out[edit | edit source]

Getting there[edit | edit source]

In game, use the console command cow MY_WORLDSPACE 0 0 to teleport to your new world, where MY_WORLDSPACE is the editor ID of your worldspace.

Common issues[edit | edit source]

  • I can't see my landscape LOD at all!
    • This means there's something wrong with the meshes. Try clearing the folder and regenerating in Oscape, or try the CK's built in generator.
  • All I see is purple everywhere
    • This means your color maps are wrong. Again, try regenerating in either Oscape or the CK.
  • My LOD is significantly darker than the loaded cell
    • Your normal maps are wrong. Confirm that they exist, and if so, delete and regenerate.
  • My tree LOD doesn't ever go away
    • This is an issue with the engine, not with your LOD. It's being worked on.
  • My object LOD is purple
    • Did you make sure to move the textures from Source/DDSTextures/terrain/objects to Skyrim/Data/Textures/Terrain/Objects?
  • My Object LOD is offset, misplaced or misaligned
    • The CK's Object LOD generation ignores translation. Make sure you apply the translation on all shapes in all LOD meshes.