Jump to content

Distant LOD for The Ayleid Architecture Project


user001

Recommended Posts

Hi,

I'm currently creating my own worldspace and I need some renewed Ayleid structures.

 

I've found a mod called The Ayleid Architecture Project (Visit My Website)

 

This mod replaces Ayleid ruin textures but I also need DISTANT LOD MODELS of the "renewed" Ayleid Structures.

These LOD models don't have to be low-detailed ones, you can take the models made by Bethesda and the textures of that mod.

 

I just want every retextured Ayleid structure to be VWD (visible when distant).

 

I'd be glad if someone did this little piece of work for me since I have no idea how to create distant LOD models!

Link to comment
Share on other sites

VWD is made possible through 2 different things. First, there must be meshes with ***_far.nif located in the same directory, and with the same name as what it's supposed to be. Second, you have to mark the checkbox in the CS and update distant LOD data for the worldspace for those structures to be visible in game. As each worldspace can only have one LOD data for each cell, and you have to generate the entire worldspace to get that one cell, this complicates things if you have more than one mod which has additional LOD buildings.

 

That said, while the mod "everything visible when distant" would probably provide distant LOD for alyied structures, it would not include anything added by mods. This means the shandard sites would look like the standard sites from a distance, but if there were any new sites added by a mod, or if that mod changed the look of those sites, they wouldn't show. Trying to make them show would require ensuring the above has been taken into account, and the existing LOD stuff moved out of the folder temporarily while the new ones are being generated.

 

For new worldspaces, the process is infinitly more complicated. First you need to have a generated LOD terrain which is linked to the mod by load order. Then everything else must be done with that same load order. Objects in .esp and .esm files change their values based on their load order, the generated LOD data must also have the same values for it to work. Changing the load order causes one of those values to change, and causes the LOD data to no longer work. If the worldspace is part of a .esm, this is easier since .esm files are loaded first, and in most cases your mod will be the first or second one loaded. If the worldspace is part of a .esp, the load order will be different for everyone, so the LOD data for that worldspace would have to be recreated by every individual person who downloads the mod. However using multiple .esm files can cause other difficulties, and the more people who use .esm files to link their worldspace like this means that people are limited to only having one working at a time, or mod creators have to release various offsets of their LOD data so that those who use the mods can use multiple .esms and adjust the loading orders. The same could be done for .esp, and it is actually a bit easier to accomplish, but you really need to have some idea of how all this works, and be able to explain it to everyone who downloads your mod.

 

The easiest solution is to just refrain from using distant LOD data, it's really just a big complicated pain in the ass. No matter what, you will want your mod 100% completed, all bugs fixed, all possibile additions finished, before being concrened with LOD data since one change can throw everything off. Really though, it is better to just ignore it unless you're doing a massive project like silgrad, for smaller worldspaces, you can't really notice any improvement. If it bugs people that much, they can always adjust their number of cells loaded.

Link to comment
Share on other sites

Okay...

You seem to be an extraordinarily skilled modder.

I did not even know that the loading order causes that many problems...

But still I want to try and create some distant LOD models.

So I've got some more questions:

 

1.Wouldn't it be possible to combine plugins so that the loading order no longer causes problems?

(That's no perfect solution since everyone would have to combine his/her own mods, but for me it would be fine)

 

2.How do you actually create LOD models?

Can you really create distant LOD models by adding a "_far"-mesh? What about the textures?

 

(I hope this is not off-topic since it is already about modding and does no longer deal with plugin-requests :unsure: )

Link to comment
Share on other sites

1.Wouldn't it be possible to combine plugins so that the loading order no longer causes problems?

(That's no perfect solution since everyone would have to combine his/her own mods, but for me it would be fine)

It isn't about the models in this case, don't get confused by my mentioning of "Everything visible when distant" this part deals with files which is generated by the CS according to how the mod is loaded in the CS. Merging mods doesn't change it since the files (the landscape, not the building) are seperate from the .esp, and do not automatically get adjusted along with the esp/esm when later loaded by the game.

 

2.How do you actually create LOD models?

Can you really create distant LOD models by adding a "_far"-mesh? What about the textures?

For the buildings, yes, it is just that way if you aren't concerned about making the models less of a performance hit. The textures are linked to the model, changing the name of the .nif doesn't affect what texture is linked.

 

You do still however need to have a working LOD texture for any models to show up. For that, since you're determined, you need to have a 100% completed mod, when you get to that point, and only that point, post back. Generating LODs is fairly complicated, and trying to make them match a .esp's loading order only makes them more.

 

Incase I'm not around anymore at that point, and incase someone else wants to try...

 

Basically, you need to have the .esp finished (so that nothing new is being added, load order won't change, and you only have to do this once). Change the loading order somewhere as near to the begining as you can get without errors. Then load it up in game, enter the worldspace, find a static created by that mod, open console, click on static, remember the first two characters of that static's ID. Then close the game, open the CS, load up as many mods before the one you need to make the LOD terrain for, making your mod active (DO NOT SAVE YOUR MOD WHEN OTHERS ARE LOADED). For instance, if the ID of the static was 0Exxxxxx you would need to have 13 other mods (can be anything without an additional .esm, even blank .esps) loaded before yours so that in the CS, everything added by your mod has the same 0Exxxxxx at the begining (instead of the 01xxxxxx if only your mod was loaded). If it has a different number, try adjusting how many mods, or which mods you loaded into the CS before yours. Some mods may cause skips in addresses, so this may require some trial and error.

 

From there, follow the landscape tutorial from the wiki.

This tutorial will summarize the steps necessary to create LOD terrain - the land you see in the distance in Obivion 
(if you have the far land option turned on). We will also discuss common problems and possible solutions. This article is based
on a tutorial by Seven05. 

Contents [hide]
1 Getting started 
1.1 Creating the LOD mesh 
1.2 Fixing mesh errors 
2 Creating LOD diffuse maps 
2.1 fixing the naming bug 
2.2 the half black texture bug 
3 Updating LOD information 
4 Testing it 


[edit] Getting started
If you want LOD terrain, you are probably working on a new worldspace. For information about creating a new 
worldspace, and using the heightmap editor, see these tutorials: 

World Space Tutorial 

World Building 101 

So go ahead and work on your heightmap. When you are happy with your landscape, save it in the heightmap 
editor but don't save the esp file yet. 

[edit] Creating the LOD mesh
In the heightmap editor window, go to the File menu and select Generate LOD. There are two LOD generation 
options, which vary only in generation speed and accuracy. They are Quick Prototype and Full and are less 
accurate but faster, and more accurate but slower, respectively. Depending on the speed of your computer, 
generating the LOD meshes can take a long time (on my AMD 4400+ dual core it takes ca 20 minutes) . Be 
patient, your computer has most likely NOT frozen, although it may look like that! This step creates the actual 
model for the distant terrain, which is stored as a .nif file just as any other 3D object in the game. It also 
generates the normal maps for the terrain. These are saved as .DDS format files, with an _FN suffix in the 
file name and will be saved in \data\textures\landscapelod\generated\. 

[edit] Fixing mesh errors
Here's where the going gets a bit rough. The lanscape you just created probably has some errors. These errors 
show up as "rips"  in the landscape mesh which wouldn't be all that dramatic, but when the CS saves your esp, it 
can not save cells with such errors  in them. Which means, when you reload a plugin with such a faulty cell, those 
cells will be gone, they will be gaping holes dropping  down to 0 elevation. Therefore we need to fix these rips 
before we save our plugin. These rips occur most frequently around cell 0,0 and other corners where four quads 
meet, if you have more than four. 

Quads 
quadrants, 32x32 cells. If you have created a map by painting one whole viewable area in the heightmap editor, 
you have four quads (visible as divided by the green lines in the overview if you have created one), they meet in 
the lower lefthand corner of cell 0,0 
Switch to the render window and enable the cell grid (press B ) and wireframe (W). Go to cell 0,0 and check the 
four corners of the cell, one of them (lower left most times) will have a rip. You will need to flatten or smooth that 
vertex using the landscape editing tool. If your landmass is larger than four quads you need to go to all quad 
intersections (every 32 cells) and check for the same type of error. 

Once you have fixed all of those save the esp. If you still get errors about cells that are missing data, make a 
note of which cells they are (do not hit "yes to all"), fix them as described, and then save again. Repeat this 
process until you get no errors. 

[edit] Creating LOD diffuse maps
Before this step you may want to clean out your \data\textures\landscapelod\generated folder. This will avoid 
conflicts and makes it easier to find your newly generated files. Backup existing files (e.g. from one of the better 
LOD mods) to some other location while working on your mod. 

Now we need a texture for our distant terrain. The CS has a functionality for creating such a texture based on the 
textured terrain you see in the render view. So for your final release you should update these textures after you 
have done all your texture editing, so that your LOD texture will fit as close as possible with your detailed textures. 

So, if you aren't there already, switch to the render window. Go to 0,0 in the render window and press shift-w to 
turn off the water (also turn off cell grids if they are still on (B). Turn off bright lighting in the taskbar. The texture 
will be generated from what you see in the render window, so if you e.g. leave the water on, your LOD textures 
will include the purple water texture which looks pretty bad in the game. Now right-click in the render window and 
select Generate LOD Textures / For this quad from the popup menu. Now the texture generation process will load 
all cells and take snapshots of them (it actually generates a 64x64 pixel texture from every 2x2 cells). These are 
stored in \data\textures\landscapelod\generated\partial\. If you don't have any objects it will go pretty quick, 
otherwise it may take a considerable time. At the end of this process the partial textures are stitched together into 
one large 1024x1024 texture that is stored in \data\textures\landscapelod\generated\. Now you need to move into 
each quad - e.g. move to cells 0,-1 / -1, -1 / -1,1 and repeat the process for each quad. If nothing happens, it 
means that partial textures for this quad already exist. If you need to update the LOD textures, you have to delete 
the old partial files first. 

[edit] fixing the naming bug
There is a tiny bug in the above routine that mislabels the created texture files. If you'd load your mod now, you 
would be treated to the famous purple landscapes, the purple indicating a missing texture. 

go to the \data\textures\landscapelod\generated folder and compare the names of the generated textues with the 
normal maps (_FN suffix) you created earlier. A bunch of the new textures will have a "0" instead of a "00" in the 
part of the name that indicates cell coordinates. You need to rename the files, replacing all instances of 0 with 00. 


[edit] the half black texture bug
You may find that your textures were not assembled correctly. If you find black LOD terrain textures in game, or
if you open your generated textues in Photoshop or Gimp and find them to be half black, you suffer from this bug. 
This seems to be hardware or system related, some people get it, others don't. There is no known fix at this time. 
I have created a python script that can assemble the textures correctly. There is also a manual workaround 
described by b3w4r3: Link to Forum post. 

[edit] Updating LOD information
If you have buildings or trees in your world you also want to update LOD information for those. 

Go to the world->world testing->update distant LOD menu, make sure the right boxes are checked and find your 
new world space in the lefthand side of the window. Select your world space and then click on the "export for this 
world space only" button. Depending on the number of objects, this process can again take a long time but with no 
objects in the world space the process you take a couple of seconds at most, even for a large world. I am not yet sure how the landscape update exactly works - you won't need it if you followed the steps above, but I usually let 
the update run anyway. Also see the Visible When Diststant Tutorial. 

[edit] Testing it
At this point you should be able to save everything and test it out in the game. An unresolved issue is conflict with 
other mods. At this time it is recommended to only load oblivion.esm and your mod - loading other mods 
interferes with the LOD terrain, and it will not be visible. This probably has to do with the hashcode for the textures 
not matching the hashcode for the mod, that seems to be dependent on mod name and mod load order. Currently 
no fix for this problem is known. 

Anyway, Load up your mod, load or start a game, and move to your world by bringing down the console (~) and 
type COW MyWorldSpace 0,0 (or some other cell coordinate you want to visit. "MyWolrdSpace" of course should 
be replaced by the ID of the Worldspace you created). Jump around the map with coe x,y to visit different cells. 

Enjoy your beautiful LOD terrain! 

Retrieved from "http://cs.elderscrolls.com/constwiki/index.php/Landscape_LOD_Tutorial"

DO NOT SAVE YOUR MOD. Generating landscape LODs doesn't require making any changes to your actual mod. If you still have buildings which need to be changed, you should have this done first. Saving your mod can change load order, and unwittingly create problems based on what was also loaded in the CS when last saved. Landscape LODs have to follow the correct load order, LOD buildings don't, and just need a valid LOD terrain for that worldspace.

 

*.esm TC mods don't need to worry about this since all their stuff will be loaded in the CS the same as in game since there is no parenting or load order issues.

 

** Full tutorial from wiki was included since the status of the Wiki at the time of posting was unreliable. Credits go to the orginal authors.

Link to comment
Share on other sites

1.Wouldn't it be possible to combine plugins so that the loading order no longer causes problems?

(That's no perfect solution since everyone would have to combine his/her own mods, but for me it would be fine)

It isn't about the models in this case, don't get confused by my mentioning of "Everything visible when distant" this part deals with files which is generated by the CS according to how the mod is loaded in the CS. Merging mods doesn't change it since the files (the landscape, not the building) are seperate from the .esp, and do not automatically get adjusted along with the esp/esm when later loaded by the game.

 

2.How do you actually create LOD models?

Can you really create distant LOD models by adding a "_far"-mesh? What about the textures?

For the buildings, yes, it is just that way if you aren't concerned about making the models less of a performance hit. The textures are linked to the model, changing the name of the .nif doesn't affect what texture is linked.

 

You do still however need to have a working LOD texture for any models to show up. For that, since you're determined, you need to have a 100% completed mod, when you get to that point, and only that point, post back. Generating LODs is fairly complicated, and trying to make them match a .esp's loading order only makes them more.

 

Incase I'm not around anymore at that point, and incase someone else wants to try...

 

Basically, you need to have the .esp finished (so that nothing new is being added, load order won't change, and you only have to do this once). Change the loading order somewhere as near to the begining as you can get without errors. Then load it up in game, enter the worldspace, find a static created by that mod, open console, click on static, remember the first two characters of that static's ID. Then close the game, open the CS, load up as many mods before the one you need to make the LOD terrain for, making your mod active (DO NOT SAVE YOUR MOD WHEN OTHERS ARE LOADED). For instance, if the ID of the static was 0Exxxxxx you would need to have 13 other mods (can be anything without an additional .esm, even blank .esps) loaded before yours so that in the CS, everything added by your mod has the same 0Exxxxxx at the begining (instead of the 01xxxxxx if only your mod was loaded). If it has a different number, try adjusting how many mods, or which mods you loaded into the CS before yours. Some mods may cause skips in addresses, so this may require some trial and error.

 

From there, follow the landscape tutorial from the wiki.

 

DO NOT SAVE YOUR MOD. Generating landscape LODs doesn't require making any changes to your actual mod. If you still have buildings which need to be changed, you should have this done first. Saving your mod can change load order, and unwittingly create problems based on what was also loaded in the CS when last saved. Landscape LODs have to follow the correct load order, LOD buildings don't, and just need a valid LOD terrain for that worldspace.

 

*.esm TC mods don't need to worry about this since all their stuff will be loaded in the CS the same as in game since there is no parenting or load order issues.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...