x3kj 1247 Posted November 14, 2013 (edited) Hi guys, i'm planning to make new Buildings for a specific modsetting. Want i want to achieve is a fairly "large" city, larger then any of the Arma 3 Villages we have. The city should appear to be densely populated (cool urban warfare ) and 5+Km² big or even more. But since even the "big" villages in Arma 3 already drain my below 30fps sometimes (i5 3570) i really want to optimize all buildings right from the planning phase so i can get the size i want without requiring a supercomputer to play it. So my question is - is there a specific limit of how many LOD's are beneficial? And are low LOD distances really critical? For example, i want to model these types of buildings. They have a courtyard in the middle, that means you can't really see into the rooms in the inner part, unless you stand in the courtyard. So theoretically i could set the full LOD view distance to like 50m and otherwise use extremely low poly LOD (maybe even just show the walls and windows, but not the rooms) My concern is, that it could produce stuttering if the pc constantly loads/unloads those LOD's as you drive through the streets, so not beeing beneficial at all. cheers and thanks for input Edited November 14, 2013 by Fennek Share this post Link to post Share on other sites
PuFu 4600 Posted November 16, 2013 One cannot define how lods work internally.(you cannot define the distance of the Lod1 being present on screen) A simple answer is the more lods tge better for "optimization". Each lower visual lod should be 1/2 of the previous lod in terms on polycount. That said, if for one reason or another you want lod1 oresent at longer ranges, you can copy lod1 in lod2, anfd have lod3 1/2xlod1, althoygh i for one would not recommend it Share this post Link to post Share on other sites
x3kj 1247 Posted November 17, 2013 (edited) One cannot define how lods work internally.(you cannot define the distance of the Lod1 being present on screen) A simple answer is the more lods tge better for "optimization". Each lower visual lod should be 1/2 of the previous lod in terms on polycount. That said, if for one reason or another you want lod1 oresent at longer ranges, you can copy lod1 in lod2, anfd have lod3 1/2xlod1, althoygh i for one would not recommend it So Lod 1.000 does not mean "LOD for 1000m and further till next"/ "LOD for up to 1000m" ? Because i saw one tutorial saying the number of that LOD corresponds to meters :icon_neutral: What difference is there then between naming LOD e.g. 1k, 2k and 3k vs 1k; 3,5k and 7k ? My plan was to make the full rez model (House + Interior), and then the very first LOD 0.050 or something like that (if that is possible) with way less detail and basically no interior. That way your computer only has to render the interior/furniture if you are really close to that building, otherwise it's nonexistant. Thus allowing a large densely populated city with fully modelled buildings, with hopefully playable framerate. I know how LOD's work and how to create them, i modded some other games before - i'm just not familiar with arma specific modding. Edited November 17, 2013 by Fennek Share this post Link to post Share on other sites
Hatchet_AS 201 Posted November 17, 2013 I was recently trying to sort how things are working in A3 for misc. things. While rather crude and simple, this little thing can be helpful in understanding how things are setup in RV. I configured it for relative house base stuff for this thread. However the models can be configured for whatever (like attachments as I needed), and you can see how different classes behave. The .zip package is not binarized as it contains some PhysX stuff for the Floating_Structures. Feel free to tinker, modify, destroy as you see fit. http://www.youtube.com/watch?v=yu6fIoQEaoI (hmm bitrate fail, will upload again latter. Nope youTube just being slow..) Hope it helps. Share this post Link to post Share on other sites
PuFu 4600 Posted November 18, 2013 So Lod 1.000 does not mean "LOD for 1000m and further till next"/ "LOD for up to 1000m" ? Because i saw one tutorial saying the number of that LOD corresponds to meters :icon_neutral: What difference is there then between naming LOD e.g. 1k, 2k and 3k vs 1k; 3,5k and 7k ? My plan was to make the full rez model (House + Interior), and then the very first LOD 0.050 or something like that (if that is possible) with way less detail and basically no interior. That way your computer only has to render the interior/furniture if you are really close to that building, otherwise it's nonexistant. Thus allowing a large densely populated city with fully modelled buildings, with hopefully playable framerate. I know how LOD's work and how to create them, i modded some other games before - i'm just not familiar with arma specific modding. This is the first time i hear about visual LOD being named differently, and some relation to distance: to cut it short: no, it doesn't work that way (IE: a model with 4 visual lods: LOD0, LOD1, LOD2, LOD3, named according to BIS, does not switch from one to another for each meter in distance). I actually never tryied renaming LODs, but i would assume the model would just fail to work, have a wanky behaviour, or just reset itself to normal settings (i'd put my money on the first option). What you want to achieve is possible, but then again, why not use a normal route. Have LOD0 with interior, and all the others without (i assume it is for buildings you don't enter, because otherwise i forsee some ugly clipping/floating visual behavior. Besides, this has been said a number of time: polygon count affects framerate only to some degree. Most important is to keep the section count (number of individual textures + materials) as low as possible. One of the reason most buildings use a multimaterial. Share this post Link to post Share on other sites
x3kj 1247 Posted November 18, 2013 (edited) Hope it helps. It sure does, thanks alot This is the first time i hear about visual LOD being named differently, and some relation to distance:to cut it short: no, it doesn't work that way (IE: a model with 4 visual lods: LOD0, LOD1, LOD2, LOD3, named according to BIS, does not switch from one to another for each meter in distance). Maybe i just got it wrong, but i saw it - and in another tut i can't find again atm someone said the numbers influence the distance... Besides, this has been said a number of time: polygon count affects framerate only to some degree. Most important is to keep the section count (number of individual textures + materials) as low as possible. One of the reason most buildings use a multimaterial. Ok good to know. In my case it will be alot of polygons per building however, thats why i was worried about polycount impact. And because bigger Arma 3 villages already stutter for me (i3570 8GB). This is just a layout test. If those are placed side by side without good optimization it's going to be really bad i'm afraid. Edited November 18, 2013 by Fennek Share this post Link to post Share on other sites
PuFu 4600 Posted November 18, 2013 use a modular approach Share this post Link to post Share on other sites
Sealife 22 Posted November 18, 2013 (edited) For optimisation remove interior lod based on the distance from the center of building Basically this means you will inly draw the detail when you need it Check Bis Mlods for a guide on reduction therafter .these lods based on the position on you (camera) from the center of origin of the object. Sovery basic rule of thumb , because it depends on settings , benchmark, other objects in scene but generic test is if its 10 meter from center of building to furthest point of entry including windows and skylight then first lod without interior should be 11 but in reality that might be too close and lod change seen , its all subjective but thats the system You can also expand an maybe a 5 lod wont draw center details for instance . Old tests that give basic indication http://community.bistudio.com/wiki/Operation_Flashpoint:_Resolution_LOD_Samples Edited November 18, 2013 by Sealife Share this post Link to post Share on other sites
x3kj 1247 Posted November 18, 2013 (edited) Old tests that give basic indicationhttp://community.bistudio.com/wiki/Operation_Flashpoint:_Resolution_LOD_Samples So it looks like the number does indeed indicate the switching distance (at least in some respect)? that's what i wanted to know, thanks for the link. Edited November 18, 2013 by Fennek Share this post Link to post Share on other sites
[aps]gnat 28 Posted November 18, 2013 Red Herring. Really believe LOD number is NOT directly related to distance. In simple terms LODs are there to stop the game coming to a grinding holt when someone tried to have 5,000 vehicles in an Altis parking lot or runs the game on an old computer with low CPU power or MP gets a little lagged etc ....... To keep gameplay a little optimal The RV engine will regulate (in some unspecific way) which lod IT decides to display. BTW, "Sections' seem to play a part too. Share this post Link to post Share on other sites
Sealife 22 Posted November 18, 2013 (edited) Gnat;2559758']Red Herring. Really believe LOD number is NOT directly related to distance.In simple terms LODs are there to stop the game coming to a grinding holt when someone tried to have 5' date='000 vehicles in an Altis parking lot or runs the game on an old computer with low CPU power or MP gets a little lagged etc ....... To keep gameplay a little optimal The RV engine will regulate (in some unspecific way) which lod IT decides to display. BTW, "Sections' seem to play a part too.[/quote'] Distance is actually the only calculation you can use to make a linear pattern for mod process , the other defines are already referenced in the link and previous posts . Sections dont just play a part as already mentioned , they are a major player The lods are nothing to do with 5000 vehicles in a car park , they are more to do with drawing less in buildings behind other buildings in cities along with streaming from HD since A1 when using prefixLand . Mip mapping will come into play also when numerous objects are placed by a mission editor , you will see people complaun about piss poor textures as a result . Edited November 18, 2013 by Sealife Share this post Link to post Share on other sites
[aps]gnat 28 Posted November 18, 2013 ......... You seem so confident, yet your quoting an OFP Biki ...... Share this post Link to post Share on other sites
Sealife 22 Posted November 18, 2013 (edited) Lol What have you got besides distance to base a process on ? It doesnt matter that he puts a lod based on distance , only that he uses it as a key, , the engine will dictate . I linked the biki so what ? You think I will type the same on a tablet or reinvent wheel ? The distance gives a guide to when to remove the internal detail , without specific engine calculation there is no other sensible manner to build . Edited , nearly took the bait Seriously stop this post count = amount of knowledge crap , nobidy is telling the guy lod numbers are exact distance , they merely pointing out what the lods do and sensible stratergies without pulling the exe apart . Edited November 19, 2013 by Sealife Share this post Link to post Share on other sites
x3kj 1247 Posted November 19, 2013 Gnat;2559771']......... You seem so confident' date=' yet your quoting an OFP Biki ......[/quote']Is there better info somewhere ? If so, out with it :P I'm glad about every non back-to-the-last decade information source/tutorial Share this post Link to post Share on other sites
Hatchet_AS 201 Posted November 19, 2013 I don't claim to be any sort of expert here. But you can plainly see using the LODBOX object that distance is in fact part of the process. And in my testing, my conclusion is simply that the engine is hardcoded to handle those distances. We can not influence that, except by how many LODs we have in a model. That will change the 'distance' at which the LOD switching occurs. And it is fairly exact. Although 'very' different depending on the objects class. On top of that, in my testing of attachment things ... I saw no difference between having 1, 2 or 3 sections, and the distances at which the LOD switching occurs. Again the only thing I found that seems to affect things in purely the number of LODs in the model. After that it's up to engine to determine what to do with it. For whatever it's worth, in my testing I also tried named LODs (as I have seen those same tutorials of old), it had no effect. Rather the engine will (default too) ordering the LODs based on vertex count should things not be in named order. I have no interest whatsoever in debate here. I'm simply sharing my very recent experiences. Take it or leave it. Tis all good with me. :) Share this post Link to post Share on other sites
PuFu 4600 Posted November 19, 2013 I don't claim to be any sort of expert here. But you can plainly see using the LODBOX object that distance is in fact part of the process. And in my testing, my conclusion is simply that the engine is hardcoded to handle those distances. We can not influence that, except by how many LODs we have in a model. That will change the 'distance' at which the LOD switching occurs. And it is fairly exact. Although 'very' different depending on the objects class.[...] For whatever it's worth, in my testing I also tried named LODs (as I have seen those same tutorials of old), it had no effect. Rather the engine will (default too) ordering the LODs based on vertex count should things not be in named order. I have no interest whatsoever in debate here. I'm simply sharing my very recent experiences. Take it or leave it. Tis all good with me. :) +1 On top of that, in my testing of attachment things ... I saw no difference between having 1, 2 or 3 sections, and the distances at which the LOD switching occurs. Again the only thing I found that seems to affect things in purely the number of LODs in the model. After that it's up to engine to determine what to do with it. i mentioned settings since the thread mentioned "performance optimization". It has nothing to do with LODs, of course. Share this post Link to post Share on other sites
Hatchet_AS 201 Posted November 19, 2013 i mentioned settings since the thread mentioned "performance optimization". It has nothing to do with LODs, of course. Lol, you made me go back and read. And now I'm not even sure why I included that, guess I read something wrong. ;) Share this post Link to post Share on other sites
cifordayzserver 119 Posted November 24, 2014 So, I have also wondered a lot about this, and there is NO WAY, that the distance is directly related to the LOD numbers despite that being documented in the biki. I have edited many of the SMD buildings to attempt to change the LOD switching, and no matter what you change the numbers to in the model, they switch according to some sort of engine level computation as stated in that Biki link (It being under OFP doesn't make it obsolete, it makes it core info that hasn't changed since normally). The same info is documented on the VBS wiki: https://resources.bisimulations.com/w/index.php?title=Resolution_LOD_Samples Changing the LOD numbers doesn't negatively affect anything, I've played with changing them a ton, and it's never had any effect on how they work in game. I may reproduce the test in the link but from what I've heard, it's a complicated engine level system, the only thing for a modeller to do IMO, is to make sure all the LODS visually appear the same from the exterior, if they look the same, you don't get any visual popping, that's what we did with the SMD buildings and it works great. Adding more objects to a test mission causes more rapid switching to lower LODs. Adding or removing the number of LODs to choose from also doesn't seem to affect very much, although that would be something that would have to be stress tested to prove out. Share this post Link to post Share on other sites
m1lkm8n 411 Posted November 25, 2014 fairly certain the engine can tell the face and vertex counts per lod..if you switch the numbers around and say make the first res lod have only 20 faces and the fifth have 5000 I think it actually spits an error out in the rpt log Share this post Link to post Share on other sites