Skip to content
View in the app

A better way to browse. Learn more.

The AVSIM Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

MSFS Adaptive LOD

Featured Replies

Did it not turn out to be impactful?

  • Replies 1.4k
  • Views 250k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • The tool is surely interesting, especially because it's Open Source, so everybody can see how it works and what it does. And yes, it does something that is potentially dangerous: it attaches to t

  • OK, I did say I'd do this even though I saw your posts and I'm sure you figured it out. But in brief here's what you do: 1. Click on this download link to get the required Mobiflight event M

  • FYI, my version 0.3.6 has matured to the point where I am happy to release it and it is now available on github here. Summary of changes since 0.3.5: Changed app name so as not to create co

Posted Images

This thread has got quite disjointed recently seemingly with various people doing different versions and difficult, for me at least, as a basic user, to keep a track of what has changed.

I am currently using  v0.3.1, which is working well for me. What am I missing by using this version as opposed to later ones out there?

2 hours ago, Fragtality said:

Nope.

I could create a branch on your Github and push my code with cloud handling. Then you could merge source code in the main branch. I'm not friendly with git shared project, but I believe it's the way to go, what do you think?

Roland

MSFS my local airport release: LFOR Chartres-Metropole

MSFS Plugins RAAS (registered FSUIPC7 required)

MSFS FX for Objects & Landmark in France (Steam and smoke) and Aerial coverage for French nuclear sites

4 minutes ago, roland_lfor said:

I could create a branch on your Github and push my code with cloud handling. Then you could merge source code in the main branch. I'm not friendly with git shared project, but I believe it's the way to go, what do you think?

That Status Quo still applies 😉 

Gentlemen,

Thank you for the open communication and thoughtfully describing your positions.

Another viewpoint to throw into the mix.   

Been flight simming since the late 80's and would not have enjoyed this hobby nearly as much if it wasn't for folks like you, that have the ability to bring really helpful, impactful and creative addons/mods to the hobby.    

I have found this particular mod to be very useful and a difference maker to my set-up. I think I can safely say that given the responses to this thread, likely many many others that feel the same.   

Could I ask for the many of us that would benefit from your combined skills, would you please consider/reconsider teaming up to develop the best feature rich mod possible?

It would be great appreciated!       

Having one Flavor of something would be boring! 🤪

10 hours ago, Fragtality said:

If you want to keep Code Commonality: I've added ForceEvaluation (Model.ForceEvaluation) as additional Trigger for FindPairs() (in the if-Blocks in Lines 66-72).
Still have to test it, but should theoretically do the Trick.

While such a change will reevaluate table changes, it will still only one shot EvaluateLodPairByHeight from the first table entry for both TLOD and OLOD and get you to the second line of the table only, because Model.ForceEvaluation gets reset at the end of RunTick(). My approach, which has been tested as working, keeps Model.ForceEvaluation true until both TLODResult and OLODResult (two local variables I have defined to capture the return value from the two calls to EvaluateLodPairByHeight) return -1.0f (ie. no more table selection changes were made). Sounds like a combination of our two efforts would be more fruitful.

Edit: On further reflection it looks like what you have done will do the job too as FindPairs() works through the LOD tables until it gets the right pair and does so in one go rather than iterate over subsequent runticks like mine. I'll try your method, which seems more efficient, and see how it goes.

Edit2: Yep your method works better. I've updated mine accordingly.

Edited by Reset XPDR

9800X3D | 4090 | 64GB | 2+1TB NVME | 2TB SSD | 2TB HDD | 85/50/43” TVs | Quest 3 | DOF H3 Motion Rig | Buttkicker | T.16000M Flight Kit

MSFS @ 4K Ultra DLSS Performance FG 80 FPS |  VR VDXR Godlike 80Hz SSW | MSFS VR DLSS Quality, Ultra Preset - Windows 11

Acer Nitro 5 | i5-11400H | RTX 3060 6 GB | 32GB DDR4 | 15.6" FHD IPS 144Hz | 2 x 512 GB SSD | Windows 11

9 hours ago, Fragtality said:

Well that someone is also known as Umberto from FSDT 😉 Maybe he someday answers my DMs/Pings on Discord to get a bit more Information on that. I wonder a bit that it is really just a fixed Offset to the Base-Address of the Executable. Because getting the Memory-Locations for the LOD Values don't work that easily.
Apart from that, I have no Capability to test that myself.

Also, don't forget that you still need something do designate one of the Profiles for VR. So you actually still need that Checkbox (and Flag) for an Auto-Switch.

Having looked at the DynamicLOD code, I was wondering if a much simpler approach to dealing with the PC and VR LOD settings was possible whereby any LOD changes are just pushed blindly to both PC and VR memory locations so that it doesn't matter whether you are in PC or VR mode as they will both use the same LOD settings while the app is running. Same goes for reading them once the app has written them at least once. Am I missing something here?

9800X3D | 4090 | 64GB | 2+1TB NVME | 2TB SSD | 2TB HDD | 85/50/43” TVs | Quest 3 | DOF H3 Motion Rig | Buttkicker | T.16000M Flight Kit

MSFS @ 4K Ultra DLSS Performance FG 80 FPS |  VR VDXR Godlike 80Hz SSW | MSFS VR DLSS Quality, Ultra Preset - Windows 11

Acer Nitro 5 | i5-11400H | RTX 3060 6 GB | 32GB DDR4 | 15.6" FHD IPS 144Hz | 2 x 512 GB SSD | Windows 11

1 hour ago, Reset XPDR said:

Having looked at the DynamicLOD code, I was wondering if a much simpler approach to dealing with the PC and VR LOD settings was possible whereby any LOD changes are just pushed blindly to both PC and VR memory locations so that it doesn't matter whether you are in PC or VR mode as they will both use the same LOD settings while the app is running. Same goes for reading them once the app has written them at least once. Am I missing something here?

Well I honestly don't know ^^

I tried to minimize Intrusion - we're still talking about injecting "bogus" Values in the Memory and Engine.
But it very well could be that it makes no Difference for MSFS if you change both the PC & VR Values at the same Time.

At the same Time it makes no Difference in regards to switching Profiles - you fancy VR People still want to switch between different Profiles without getting your Hands dirty I guess 🤪
(So removing the VR Flag by that does not get you further with that. It would also create the Problem: which Profile to switch to when going to VR?)

7 minutes ago, Fragtality said:

Well I honestly don't know ^^

I tried to minimize Intrusion - we're still talking about injecting "bogus" Values in the Memory and Engine.
But it very well could be that it makes no Difference for MSFS if you change both the PC & VR Values at the same Time.

At the same Time it makes no Difference in regards to switching Profiles - you fancy VR People still want to switch between different Profiles without getting your Hands dirty I guess 🤪
(So removing the VR Flag by that does not get you further with that. It would also create the Problem: which Profile to switch to when going to VR?)

My theory is that it is no worse changing both values rather than just one as the one that is not active won't change any rendering anyway. And yes adding this double value setting doesn't change the need for selecting a different profiles, but it does make it simpler for those that mix their PC and VR use during a flight like I often do and I use the same profile for both anyway.

There's only a few changes to get this working for a quick test (comment out if/else lines in the SetXLOD functions, add Model.ForceEvaluation "or" to all four ifs that set LODs in FindPairs, and remove VR checkbox) so I'll see shortly whether it causes any issues and explodes my computer 😄.  

9800X3D | 4090 | 64GB | 2+1TB NVME | 2TB SSD | 2TB HDD | 85/50/43” TVs | Quest 3 | DOF H3 Motion Rig | Buttkicker | T.16000M Flight Kit

MSFS @ 4K Ultra DLSS Performance FG 80 FPS |  VR VDXR Godlike 80Hz SSW | MSFS VR DLSS Quality, Ultra Preset - Windows 11

Acer Nitro 5 | i5-11400H | RTX 3060 6 GB | 32GB DDR4 | 15.6" FHD IPS 144Hz | 2 x 512 GB SSD | Windows 11

The brute PC and VR LOD setting changes I made worked very well. I confirmed that LODs are changing to be the same in both PC and VR modes and it did not set my computer on fire.

In fact @Fragtality, I discovered that when I implemented your proposed change to add Model.ForceEvaluation to the the if-blocks in lines 66-72 as a condition to run FindPairs() on setting changes that the return on line 72 was causing the function to terminate before Model.ForceEvaluation gets set to false, resulting in repeated calls to FindPairs() every runtick and therefore setting those memory parameters every second until I found it in the log about 20 minutes later. I have fixed it now, but even with that level of repeated memory setting abuse MSFS still seemed to run fine.

If you are interested in the slight change I made to your fix, I left the exisitng lines 66-72 as they originally were in 0.3.2 and added a line after line 73 with

            if (Model.ForceEvaluation) FindPairs();

and it works great.

 

Edited by Reset XPDR

9800X3D | 4090 | 64GB | 2+1TB NVME | 2TB SSD | 2TB HDD | 85/50/43” TVs | Quest 3 | DOF H3 Motion Rig | Buttkicker | T.16000M Flight Kit

MSFS @ 4K Ultra DLSS Performance FG 80 FPS |  VR VDXR Godlike 80Hz SSW | MSFS VR DLSS Quality, Ultra Preset - Windows 11

Acer Nitro 5 | i5-11400H | RTX 3060 6 GB | 32GB DDR4 | 15.6" FHD IPS 144Hz | 2 x 512 GB SSD | Windows 11

23 hours ago, MarcG said:

The only thing I'm missing in VR is an app that shows the AGL, whilst testing I could do with seeing when the changes are gonna happen so I know how severe a stutter I might get, it gets annoying to lift up the HMD every time just to look at the on screen dynamiclod window.

I don't think any of the apps I use have this feature (Sky4Sim, LNM VR), anyone know of one? Thanks

I found one here! Although a landing monitor, in the air it shows AGL and the panel, select-able from the toolbar, can be positioned anywhere you want and is visible in VR.

9800X3D | 4090 | 64GB | 2+1TB NVME | 2TB SSD | 2TB HDD | 85/50/43” TVs | Quest 3 | DOF H3 Motion Rig | Buttkicker | T.16000M Flight Kit

MSFS @ 4K Ultra DLSS Performance FG 80 FPS |  VR VDXR Godlike 80Hz SSW | MSFS VR DLSS Quality, Ultra Preset - Windows 11

Acer Nitro 5 | i5-11400H | RTX 3060 6 GB | 32GB DDR4 | 15.6" FHD IPS 144Hz | 2 x 512 GB SSD | Windows 11

46 minutes ago, Reset XPDR said:

I found one here! Although a landing monitor, in the air it shows AGL and the panel, select-able from the toolbar, can be positioned anywhere you want and is visible in VR.

Ah marvelous you're a star, thank you very much 👍

Pico Neo3 Link VR - Windows 11 64bit, Gigabyte Z590 Aorus Elite Mobo, i7-10700KF CPU, Gigabyte RX 9070 XT OC 16gb (AMD GPU), 32gig Corsair 3600mhz RAM, SSD x2 + M.2 SSD 1tb x1

Saitek X45 HOTAS - Saitek Pro Rudder Pedals - Logitech Flight Yoke - Homemade 3 Button & 8-directional Joystick Box, SNES Controller (used as a Button Box - Additional USB Numpad (used as a Button Box)

1 hour ago, Reset XPDR said:

I found one here! Although a landing monitor, in the air it shows AGL and the panel, select-able from the toolbar, can be positioned anywhere you want and is visible in VR.

Where can your latest version be downloaded. Is it the same link ?

5950x3d 5.4-5.7 GHz - Asus ROG 870 Crosshair Apex - GSkill Neo 2x 24 Gb 6000 mhz / cas 26 -  MSI RTX 5090 Gaming Trio OC - 1x SSD M2 6000 2TB - 1x SSD M2 2800/1800 1Tb -  Corsair 5400  case - Corsair 360 liquid cooling set  - 3x 75’ TCL tv.

13600  6 cores @ 5.1 GHz / 8 cores @ 4.0 GHz (hypterthreading on) - Asus ROG Strix Gaming D - GSkill Trident 4x Gb 3200 MHz cas 15 - Asus TUF RTX 4080 16 Gb  - 1x SSD M2 2800/1800 2TB - 2x  Sata 600 SSD 500 Mb - Corsair D4000 Airflow case - NXT Krajen Z63 AIO liquide cooling - 

FOV : 200 degrees

My flightsim vids :  https://www.youtube.com/user/fswidesim/videos?shelf_id=0&sort=dd&view=0

 

1 hour ago, Reset XPDR said:

 

Edited by GSalden
Double post

5950x3d 5.4-5.7 GHz - Asus ROG 870 Crosshair Apex - GSkill Neo 2x 24 Gb 6000 mhz / cas 26 -  MSI RTX 5090 Gaming Trio OC - 1x SSD M2 6000 2TB - 1x SSD M2 2800/1800 1Tb -  Corsair 5400  case - Corsair 360 liquid cooling set  - 3x 75’ TCL tv.

13600  6 cores @ 5.1 GHz / 8 cores @ 4.0 GHz (hypterthreading on) - Asus ROG Strix Gaming D - GSkill Trident 4x Gb 3200 MHz cas 15 - Asus TUF RTX 4080 16 Gb  - 1x SSD M2 2800/1800 2TB - 2x  Sata 600 SSD 500 Mb - Corsair D4000 Airflow case - NXT Krajen Z63 AIO liquide cooling - 

FOV : 200 degrees

My flightsim vids :  https://www.youtube.com/user/fswidesim/videos?shelf_id=0&sort=dd&view=0

 

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.