FS2004 Issue where Library Objects sometimes are not suppressing autogen [SOLVED]

Leo2789

Resource contributor
Hello everybody,

Pardon me if this is a silly or newbie issue :duck:, but I searched all around FSDev and I couldn't find another thread that dealt with this issue; most of them are from people who want their models/library objects to NOT suppress autogen... Google also wasn't my friend on this :(

The issue: I'm designing a country-wide scenery (Portugal VFR, it's on a thread in the showroom ;) ), and while creating some seaplane bases, complete with buildings and objects in the surrounding environment I constantly come across this weird thing. If I load up my aircraft on any given airport (or seaplane base) I created, all objects load up fine, and they suppress the autogen in their location (as they should!), BUT, if I happen to slew or 'teleport' via ADE's 'Move aircraft here' option to another airport, more often than not (but not always), I see trees and autogen houses sticking out through my own buildings and library objects. Now this quirk seems to solve itself when I close the sim and reopen on previous flight, sometimes even simply by selecting go to airport and selecting the airport I'm already at, but as I said most of the time if I slew or teleport there, I get this autogen issue :/

Is this a known problem with FS9 doing something like, not loading up the scenery properly (and not excluding the autogen where my library objects are) because using slew or 'teleporting' didn't give it enough time to process the change in area? Or hasn't anyone ever come across this issue?

Again sorry if this is a really basic issue talked about somewhere else, but having created my fair share of sceneries and airports before, and having never come across it (or at least noticed it) until now, I really am puzzled about this and if there is a definite fix to it :confused:

Thank you
 
Hi Leo:


This scenario compels a few questions:

What terrain mesh is being used in your test areas where this occurs ? (ex: in areas of 3D object autogen anomalies and the 'distant' airport)


Are terrain textures at the involved airports / seaplane bases default land class / water class, or SDK Resample custom photo-real imagery ?


Are any of the 3D objects you placed via FS9 SDK BGLComp XML custom MDLs ?


Are 3D objects you placed via FS9 SDK BGLComp XML configured at anything other than 0 Meters AGL ? (ex: an assigned Altitude AMSL)


What FS utility did you use to place the 3D objects in question (ex: EZ-Scenery / Instant Scenery / RWY-12 / ObjPlacerXML, SBuilder205 etc.)



FYI: "Floating" layers of Autogen trees / buildings was known to occur on occasion in both FS8 / FS9; it was usually fixed after reloading a flight.

[EDITED]

I would have to refresh my memory about "failure to exclude" Autogen being fixed after reloading a flight, to see if there may be other causes aside from terrain mesh BGL LOD coverage extent rendering priority if slewing / jumping via FSUIPC from a distance far outide a local airport. :scratchch

IIRC, FS rendering of terrain mesh and Autogen sometimes will not fully resolve after slewing fast over great distances ...without a "refresh". :alert:

[END_EDIT]

GaryGB
 
Last edited:

rhumbaflappy

Moderator
Staff member
Resource contributor
Try assigning a keypress as Refresh Scenery in slew mode. I set mine as CTRL + z as that is easy to hit. it will take a short while to refresh the scenery, and hopefully the autogen will be suppressed. It's an FS2004 thing.
 

Leo2789

Resource contributor
Hey Gary! Great having you help me out once again! :D

Hi Leo:


This scenario compels a few questions:

What terrain mesh is being used in your test areas where this occurs ? (ex: in areas of 3D object autogen anomalies and the 'distant' airport)
Besides the default mesh, there is a combination of LOD9, LOD10 & LOD11 mesh being used all around the country (part of the scenery "Portugal Terrain" by Luis Sá which forms the basis for my own project).

Are terrain textures at the involved airports / seaplane bases default land class / water class, or SDK Resample custom photo-real imagery ?
Terrain textures are all default indeed. There are 2 photoreal areas in the country (again part of the original Portugal Terrain scenery), but these don't bring up any issues, mostly because they don't have autogen to begin with :laughing:


Are any of the 3D objects you placed via FS9 SDK BGLComp XML custom MDLs ?
Not sure what you're asking here, but I can tell you that all 3D objects I placed are either from 3rd party object libraries (found on AVSIM & FLIGHTSIM), or object libraries compiled by me which contain models either created by me on sketchup &/or other sketchup models sourced from 3rd parties.
All exported as collada files, loaded up on MCX and converted to MDL files there (with the appropriate texture editing done of course).

What FS utility did you use to place the 3D objects in question (ex: EZ-Scenery / Instant Scenery / RWY-12 / ObjPlacerXML, SBuilder205 etc.)

Are 3D objects you placed via FS9 SDK BGLComp XML configured at anything other than 0 Meters AGL ? (ex: an assigned Altitude AMSL)
I do all my Object placement using ADE, with all my own & 3rd party object libraries added to ADE's Library Object Manager.

Depending on the object yes, they might be assigned a different altitude than 0 (usually a negative one, ie -5 ft or so) for better blending with the terrain mesh. They are all however placed so with reference to the ground (aka 'Altitude is AGL' box always checked) if that's what you were asking!


FYI: "Floating" layers of Autogen trees / buildings was known to occur on occasion in both FS8 / FS9; it was usually fixed after reloading a flight.
The issue is not that autogen appears floating from inside my objects, they simply show up normally (both trees & buildings) sticking out of my objects when they should naturally be excluded by the placement of such object; as if no object was placed there at all.

Thank you for your time Gary, hopefully you can help me figure this out! :)

[EDIT]
After reading Rhumba's post + your last paragraph, I began to wonder if this could be a non-issue (FS9's own limitations with loading when 'rocketing' through the landscape in slew mode) with the simple fix being mentioned by him!
I'll test it out ASAP and report back!
[END EDIT]

Cheers!
 
Last edited:

Leo2789

Resource contributor
Try assigning a keypress as Refresh Scenery in slew mode. I set mine as CTRL + z as that is easy to hit. it will take a short while to refresh the scenery, and hopefully the autogen will be suppressed. It's an FS2004 thing.
Hey Rhumba!

Well yes I also have Refresh scenery assigned to Shift+M and use it frequently; and now that you mention it I can't recall if when doing that (if I ever actually tried it) the issue would cease! :idea:

I'll test it out ASAP and come back with results; it just might be that simple of a fix, terribly overlooked by me! :duck:

Thank you!

Cheers!
 
Hi Leo:

If you only incur this on occasion, and the manual refresh is sufficiently convenient, feel free to use that.


When you decompile a ADE scenery library object placement BGL compiled by FS2004 SDK BGLComp, you can see if objects are placed via:

altitudeIsAgl="FALSE"


IIUC, during a normal (non-slewed) flight any objects placed below local ground level (0 Meters AGL) using the BGLComp source code parameter value altitudeIsAgl="FALSE" which is at an assigned Altitude below MSL) relative to FS' "Ground" surface level as provided by a terrain mesh covering that area ...may not exclude Autogen.


If you wish to see if this may be eliminated or minimized when FS9 is running on a modern high performance computer, try using only:

altitudeIsAgl="TRUE"

https://www.fsdeveloper.com/forum/threads/how-to-prevent-autogen-and-scenery-interfering.16077/


Additionally, one might wonder if it is possible the failure to resolve scenery layers due to slewing / jumping via FSUIPC from a distance far outside a local airport may also incur this rendering anomaly due to mismatched terrain mesh BGL LOD coverage extent rendering priority ? :scratchch

Hmmm... think of it as a "mesh mis-match" (say that 5x faster than normal ...aka 'almost as fast as you've been slewing') ! :laughing:



PS: Regarding the "failure to exclude autogen" after slewing / jumping via FSUIPC from a distance far outside a local airport:

IIRC, this anomaly is sometimes 'only transient' as the FS terrain rendering engine slowly "catches up" with the main rendering / control loop.


One might wonder if it may be related in part to terrain mesh BGL LOD coverage extent rendering priority that also causes "floating Autogen":

https://www.fsdeveloper.com/forum/threads/floating-autogen.438148/post-752718


IIUC, in that latter scenario, FS' terrain rendering engine does not know where FS' "Ground" surface level is (yet), so Autogen is mis-placed.


GaryGB
 
Last edited:

Leo2789

Resource contributor
Ok I just did some testing and there's some weird stuff going on with this issue o_O

First of all, I managed to replicate the issue consistently with the following method:
Fire up FS9, load up at Airport 'A'; open Airport 'B' project file on ADE, proceed to 'teleport' aircraft there with the FSUIPC function: there are trees sticking out of at least one of the 3D objects I placed in the area--
Capture5.PNG

So now I try to see what happens if I select 'Go to airport' and select Airport 'B', this is what I see on 2 different areas that have a 3D object near the airport:
Capture2.PNG
Capture4.PNG

Again trees in the middle of the first house, HOWEVER, these are now different trees at a different positions! I was not entirely aware (meaning I had never really thought/payed much attention to it) that autogen doesn't spawn in the exact same way every time; I know newbie mistake :duck:but this 'revelation' was surprising to me nonetheless!

So anyways, I then try to teleport myself to another airport (let's call it Airport 'C') far away, again using FSUIPC, slew around a bit, then teleport back to airport 'B' and the autogen is now completely different! with almost no trees and houses now popping out of the ground:
Capture1.PNG
Capture3.PNG
With this autogen 'configuration' no autogen object sticks out of my 3D objects, but by mere luck I believe :/

I then re-did the same step above, but this time instead of teleporting via FSUIPC, I slewed the aircraft all the way to Airport 'B's location, which originated a different (3rd) autogen configuration in the same locations I posted the pictures of (all trees as the first one but of different sizes and positions)!

Even though I only saw autogen stick out from the grey roofed house this time, I remember seeing some trees sticking out from the black roofed one once before...

What I most certain am sure of is that Refreshing Scenery doesn't fix the issue, no matter how many times I do it @rhumbaflappy :(


Hi Leo:
When you decompile a ADE scenery library object placement BGL compiled by FS2004 SDK BGLComp, you can see if objects are placed via:

altitudeIsAgl="FALSE"


IIUC, during a normal (non-slewed) flight any objects placed below local ground level (0 Meters AGL) using the BGLComp source code parameter value altitudeIsAgl="FALSE" which is at an assigned Altitude below MSL) relative to FS' "Ground" surface level as provided by a terrain mesh covering that area ...may not exclude Autogen.


If you wish to see if this may be eliminated or minimized when FS9 is running on a modern high performance computer, try using only:

altitudeIsAgl="TRUE"

https://www.fsdeveloper.com/forum/threads/how-to-prevent-autogen-and-scenery-interfering.16077/
After reading this post of yours and the linked thread Gary, I realized that the objects I placed are actually at a set altitude with AGL=False in ADE! :eek::eek::eek::eek:

These were some of the first I created for my project, before I realized that using AGL was much more convenient! (Why make it simple when you can complicate eh?? :laughing: )

I will change these all to AGL and see if the issue gets solved! I feel quite dumb right now :oops:

Just to clarify, when you say (both here and in that thread) that for autogen suppression to succeed, all 3D objects should be placed AGL=True, does that mean AGL=True with altitude 0ft? Meaning, if I put AGL=True but then make the altitude -5ft (so that the object is a little buried in the terrain to better match it) autogen suppression might fail? Or have you not tested/know about the effects of doing so?

Once again Thanks for the help!
 
AFAIK, if you keep the assigned Altitude in Meters + or - relative to local FS "Ground Level" via the BGLComp XML parameter value:

altitudeIsAgl="TRUE"

...it is possible that you will be able to 'correct' your existing placements by manually editing the BGLComp XML, then manually recompiling. :scratchch

To be certain though, please attach a test placement BGL with a custom object that requires the assigned Altitude in Meters + or - relative to local FS "Ground Level" so we can examine and test this possible alternative method via a "worked example". ;)


IIRC, either Altitude 'mode' is accepted by FS SDK BGLComp for placement (in Meters or Feet) relative to local ground (AGL) or relative to Mean Sea Level (AMSL).

https://docs.microsoft.com/en-us/previous-versions/microsoft-esp/cc526978(v=msdn.10)#scenery-objects


In fact, some FS default scenery objects are purposely 3D modeled with most of the visible extent 'below ground' to allow the end user to determine how much of it to reveal above local ground level; on any locally loaded terrain mesh BGL, such as a TV tower:

FS9 object info:

[FS2004 install path]\Scenery\Generic\scenery\Generic.bgl

gen_tv01
{8166fd03480c41117f4cd1924c2629b3}
size: 8.95, 641.88, 8.95


FSX object info:

[FSX install path]\Scenery\Global\scenery\hazards.bgl

gen_tv01
{8166FD03-4111-480C-92D1-4C7FB329264C}
size: 8.95, 641.88, 8.95

See:

http://lc0277.gratisim.fr/sceneobjects/hazards/index.html

1553289830950.png



BTW: To purposely place 3D objects below local ground level to prevent Autogen suppression (ex: with G-Polys) ...use "BiasY" @ Meters. :idea:


Per the FS2004 SDK "FS2004BGLCompSDK.doc":

BiasXYZ
This element is used to add an X, Y, Z bias in meters to the placement of an object. The acceptable range for of values is unbounded, but it is recommended that biases only be applied for small distances. If this element is used inside of a SceneryObject it must come before any instances of AttachedObject, Effect, GenericBuilding, LibraryObject, Trigger, Windsock. This element is not allowed to contain other data and must be terminated with ‘/>’.

<BiasXYZ

biasX=”0”

biasY=”0”

biasZ=”0”/>


Attribute.....Description....................................................................Acceptable Values

biasX...........Bias along the longitudinal axis in meters........Floating point value

biasY...........Altitude bias in meters...........................................Floating point value

bias..............Bias along the latitudinal axis in meters.............Floating point value

Note: This bias is not affected by pitch, bank, or headings applied to the base scenery object.


PS: This is still applicable for FSX:

https://docs.microsoft.com/en-us/previous-versions/microsoft-esp/cc526978(v=msdn.10)#scenery-objects


GaryGB
 
Last edited:

Leo2789

Resource contributor
AFAIK, if you keep the assigned Altitude in Meters + or - relative to local FS "Ground Level" via the BGLComp XML parameter value:

altitudeIsAgl="TRUE"

...it is possible that you will be able to 'correct' your existing placements by editing the BGLComp XML, then manually recompiling. :scratchch

To be certain though, please attach a test placement BGL with a custom object that requires the assigned Altitude in Meters + or - relative to local FS "Ground Level" so we can examine and test this possible alternative method via a "worked example". ;)

GaryGB
In ADE the altitudes are assigned in Feet, not meters, so I don't know how I could do that (nor do I understand why the requirement in meters?); also I don't understand what you mean by manually recompiling stuff, I have BGLComp XML obviously but ADE does all my compiling :p
But I can indeed send you the BGL of my objects for the airport from where the screenshots of the previous post were :)

I changed all models to AGL=True, and it appeared to solve the autogen issue! No more trees sticking through roofs whether I start a flight there, slew there, or teleport there! :)

I also changed the altitude of the objects mentioned in the screenshots to -5ft for better terrain blending, with AGL=True, and everything stays the same: no autogen showing up whether I start, slew or teleport there ;)

So it seems that the issue is fixed, and turned out to be the fact that I wasn't placing objects with AGL=True; nevertheless I attached my bgl file if you would still like to test it out!
 

Attachments

Hi again:

I recommend downloading the FS2004 SDK for prospective future use with your FS9 development activities ...here: :pushpin:

https://www.fsdeveloper.com/forum/resources/categories/fs2004.6/


Based on your history of endeavors and queries here as well as PTSIM forums, as a minimum, I suggest that you should initially download: ;)

FS9 SDK Documentation (pdf)

BGL Compiler SDK 1.0

Terrain SDK 1.0

Autogen SDK 1.0

Special Effects SDK 1.0


PS: This would be a future topic for the Sketchup forum, but if you plan to place custom 3D objects via Autogen methods (which is more FPS-friendly for diehard FS9 fans who simply will not upgrade their computers), you can re-position the central Z-Axis mid-point (aka "datum") of the 3D model relative to the Sketchup work-space "Origin of Axes" (Cartesian coordinates 0,0,0) so that the objects will be placed automatically on the local ground surface at a desired position + or - in Meters or Feet AGL relative to a surface Altitude provided by a loaded local terrain mesh.

GaryGB
 
Last edited:

Leo2789

Resource contributor
Hi again:

I recommend downloading the FS2004 SDK for prospective future use with your FS9 development activities ...here: :pushpin:

https://www.fsdeveloper.com/forum/resources/categories/fs2004.6/


Based on your history of endeavors and queries here as well as PTSIM forums, as a minimum, I suggest that you should initially download: ;)

FS9 SDK Documentation (pdf)

BGL Compiler SDK 1.0

Terrain SDK 1.0

Autogen SDK 1.0

Special Effects SDK 1.0
Oh yes I have all of the FS9 SDKs, though I usually don't use them directly (BGL compiler/decompiler sometimes to make small edits to certain files); I downloaded them all mostly due to the requirements of other apps, such as ADE, MCX, so forth.

I did read some of the documentation on parts that interested me the most thoroughly, but I breezed through some of the others :p

Anyways, I appreciate all your time and especially your patience Gary! :)

Hopefully this thread, together with the one you linked before will draw attention to those unaware of the importance of selecting AGL=True with 3D object placement regarding autogen exclusion!

PS: This would be a future topic for the Sketchup forum, but if you plan to place custom 3D objects via Autogen methods (which is more FPS-friendly for diehard FS9 fans who simply will not upgrade their computers), you can re-position the central Z-Axis mid-point (aka "datum") of the 3D model relative to the Sketchup work-space "Origin of Axes" (Cartesian coordinates 0,0,0) so that the objects will be placed automatically on the local ground surface at a desired position + or - in Meters or Feet AGL relative to a surface Altitude provided by a loaded local terrain mesh.

GaryGB
Thank you for this tip! Though I don't plan on delving on autogen creation in the near future, it might come in handy someday! :scratchch

Once again thank you for your help!!
 
Top