• Which the release of FS2020 we see an explosition of activity on the forun and of course we are very happy to see this. But having all questions about FS2020 in one forum becomes a bit messy. So therefore we would like to ask you all to use the following guidelines when posting your questions:

    • Tag FS2020 specific questions with the MSFS2020 tag.
    • Questions about making 3D assets can be posted in the 3D asset design forum. Either post them in the subforum of the modelling tool you use or in the general forum if they are general.
    • Questions about aircraft design can be posted in the Aircraft design forum
    • Questions about airport design can be posted in the FS2020 airport design forum. Once airport development tools have been updated for FS2020 you can post tool speciifc questions in the subforums of those tools as well of course.
    • Questions about terrain design can be posted in the FS2020 terrain design forum.
    • Questions about SimConnect can be posted in the SimConnect forum.

    Any other question that is not specific to an aspect of development or tool can be posted in the General chat forum.

    By following these guidelines we make sure that the forums remain easy to read for everybody and also that the right people can find your post to answer it.

FSXA fencebuilder- how?

Messages
2,388
Country
us-washington
copying.... renaming files- put them where?

Opened fsx went to my scenery. put my plane where I wanted it.

clicked start position. moved plane clicked basline end, then output xml moved polane basline again or outputxml? btw- I did set the path for my xml.

compiled xml to bgl- nothing happens, error can't rmemeber the eror right now. basically- can't do it. Went to see fi my xml was where I set the path to.... it was.

I see no fence. Have no idea what kind of fence I am putting in.

This is just the free version. Bob
 
Hi Bob:

Although it is possible that Fencebuilder author Don Grovestine (aka "gadgets" at FSDeveloper) may opt to reply here, I believe it would be helpful to him and other well-intended would-be respondents, if you were to explain a bit more clearly the development scenario involved, and the steps which you performed. ;)

[EDITED]

AFAIK, FenceBuilder always creates a proprietary XML database in the [FencBuilder install path]\Projects\[your project name]\[FS9 or FSX]\ sub-folder chain while working and performing the operations that it executes internally.

One must then separately and manually make the choice to compile into an output BGL; otherwise all one's scenery project data simply remains inside the FenceBuilder proprietary XML "work" files for your scenery project.

FenceBuilder compiled BGL output path may ordinarily has a default folder location, but one can manually change the output path to a nested \Scenery sub-folder of one's own choice when first creating ones' project.

Apparently, at the time of compilation, the FenceBuilder proprietary XML files for your scenery project are read, the output placement XML code is generated and retained, the placement BGL is created, BUT the previous working FenceBuilder proprietary XML files for your scenery project are then deleted. :alert:

However, as a convenience, FenceBuilder has actually created not only ones working project folder chain, it has also entered that paired \Scenery and \Texture folder chain into the FS Scenery library as a new Area layer, and already set it "Active" ! :wizard:

[END_EDIT]


PS: If you were instead wanting to inspect / edit the "object placement" XML code of the output "object placement" BGL files, that would be derived by de-compiling the output BGLs with ex: Scruffyduck's BGL2XML utility. :idea:

http://www.downloadcenter.scruffyduck.org.uk/ Navigate to "ScruffyDuck Utilities" > BGL2XML > BGL2XML_150


Hope this helps ! :)

GaryGB
 
Last edited:
Gary- asap I will post more precisely what I did, step by step. (incl- the error message.)

I have bglxml180. I'll get that 150 as well. Bob
 
Hi Bob:

To quote the first part of BGLXML1.80 "bglx_doc.htm":

"BGLXML is an utility which analyzes and decompiles BGL files into FS2004 format and produces human readable XML files to be recompiled with Microsoft BGLCOMP (which is available from FS2004 SDK page).

It fully supports almost if not all options included into new BGL file format (Microsoft has introduced significant changements since previous FS releases).

If a BGL file contains objects created with Microsoft MakeMDL (which is the utility to convert three-dimensional objects created with GMax), BGLXML is able to extract them and write back to hard disk in .MDL format (for each XML file produced by BGLXML there will be nnn MDL files in the same directory than XML).

BGLXML is also able to decode all objects into a BGL or only those interesting you (see Partial decode switches below)"

This version is only for FS2004 (aka "FS9") format scenery object library and/or XML-derived placement BGLs. :teacher:


FYI: bglx180.zip is still hosted at AVSIM:

http://library.avsim.net/esearch.php?CatID=fs2004util&DLID=75329




NOTE: For decompilation of FSX format scenery object library and/or XML derived placement BGLs into XML placement code, one may use either BGLX2.1 by Alessandro Antonini or Scruffyduck's BGL2XML utility.

CAVEAT: Earlier versions of Scruffyduck's BGL2XML utility decompiled the XML placement code and extracted the MDL files; more recent versions of that utility apparently do not extract MDLs.


NOTE: Some types of FS scenery content placed via XML does not use MDLs, and thus cannot be extracted (ex: FenceBuilder extrusion Fences; extrusion bridges etc.)



FYI: BGLX2.1 (for FSX) by Alessandro Antonini continues to offer the ability to both decompile XML placement code and extract MDL files. ;)


To quote the first part of BGLX2.1 "bglx_doc.htm":

"BGLXML is an utility which analyzes and decompiles BGL files into FSX format and produces human readable XML files to be recompiled with Microsoft BGLCOMP.

It fully supports almost if not all options included into new BGL file format (Microsoft has introduced significant changements since previous FS releases).

If a BGL file contains objects created with Microsoft MakeMDL (which is the utility to convert three-dimensional objects created with GMax), BGLXML is able to extract them and write back to hard disk in .MDL format (for each XML file produced by BGLXML there will be nnn MDL files in the same directory than XML).

BGLXML is also able to decode all objects into a BGL or only those interesting you (see Partial decode switches below)."


bglx21.zip by Alessandro Antonini is no longer hosted on his own website, and can be found instead at: :idea:

https://flyawaysimulation.com/downloads/files/18863/fsx-bglxml-21/


PS: Alessandro's decompilation utilities require that bglxml.exe, xmlshell.exe, and objfile.txt files all be present in the same folder as a BGL being decompiled in order for the utility to work.


Since some FS scenery object library format files may contain quite a few MDLs with groups of GUIDs (often in particular numeric 'series'), it may a good idea to create a separate "work" folder using ex: the name of the BGL being decompiled for each BGL decompilation operation, then one must place into that folder all of the following:

* BGL file to be decompiled
* bglxml.exe
* xmlshell.exe
* objfile.txt file


Also, when working with BGLXML 1.80 or 2.1, it is important to manually add the *.XML file extension to the destination file name for BGLXML output of the XML "placement" code, as IIRC, that utility's GUI does not do so on its own (...but by comparison, Scruffyduck's BGL2XML utility does this automatically for the end user).


Hope this helps ! :)

GaryGB
 
Last edited:
Gary- This might be of good use. Half the time I run into old bgl's I can't do a thing with.... header wrong or title wrong etc. always good to have an extra tool in the backpack. thanx bob
 
Hi Bob:

Yes, although there are still "some" recognizable similarities in certain XML elements utilized, we must carefully observe that the syntax and overall XML structure used with BGLComp.xsd for FSX is now substantially different compared to the version of BGLComp.xsd utilized for FS9. :banghead:

Thus, not only the FSX versus FS9 syntax and structure must be different in order to work when submitted to BGLComp to be compiled to a BGL, but the output XML file code will be different when a BGL is de-compiled ...with either of the decompilers discussed above. ;)

CAVEAT: We cannot "mix and match" XML code between FSX and FS9 format XML scenery object library / placement code "Frankenstein-style" ...and have things work ! :eek: :p

GaryGB
 
Last edited:
Why can't we mix and match? I want it all! I want my cake and eat it too! hahahaha!

Like the two Eskimos who were cold so they started a fire in their Kayak.

Of course it burnt up. ---- They wanted their kayak and heat it too.


Ok- ok- stick to FS designing, Bob!
 
ok- some error messaes- and procedure

Game is up. I am at Elma WA. fencebuilder is up - using simconnect. Everything ready to go.

1. slew plane to an intersect of road.

2. click - 'use at start'

3. slew plane to my next position.

4. click 'baseline end'

5. click on 'output xml'

6. at this point I wanted to see the xml just for giggles. clickon 'view xml'
error! cannot read xml access denied.

(btw- path for sxml -called elma_fence- is FSX\addonscenery\elma\scenery also I did make lib_Fence_CLW_FSX.bgl and placed this in elma\scenery)

made sure bgl path is the same as above. Yes I do have my SDK installed and running fine. 'tools' shows in the menu bar in FSX. 3tools in this open fine.

Try to compile the bgl - cannot find the file specified. - I get this message probably because of the xml error I get.

Oh - I disconnect from the game and close the game. I cannot close Fencebuilder. I X out and i get the window details continue quit. clicking any of these gets me nowhere. I have to open task mgr and close it that way.

Windows 7 64 bit. Bob
 
Hi Bob:

Windows itself often "locks" files to read and/or write functions while file I/O is taking place; this behavior is particularly true of "protective-by-design" database and spreadsheet applications; in this case, even FenceBuilder's own "work" process could be locking the proprietary database XML file.

In Windows XP we could use "Unlocker" to access a file in almost all scenarios; sadly, that utility does not seem to be working in Win7 64-bit. :banghead:


I suggest that you not try to access the Fencebuilder proprietary XML database "work" files, and instead, after compiling one's placement BGL, examine the XML placement info as de-compiled from that "compiled" output BGL.


CAVEAT: One must remember to manually take the additional step (after output of the project "work" XML file), to then "COMPILE", which should then write out the BGL to your project's target \Scenery folder path.

Perhaps one should not attempt to first "click on 'view xml' " prior to clicking on "COMPILE", as it causes a problem for FenceBuilder in WIN7 64-bit ? :confused:

Hope this helps with the scenario that you are trying to explain above ! :)

GaryGB
 
Last edited:
If it's an authorizationi thing in Win 7 there is a way to authorize it.

I've done it with other programs now and then. Will try that and see if that is what's happening.

So my placement procedure is ok? Bob
 
i believe what I tried was with the simconnect app I right clicked, properties, security. I have 3 options there- all checks are dimmed but checked on the side of full access. Not wure what else to do. Bob
 
Hi Bob:


I'd try this using the FSUIPC option rather than SimConnect (most of us have FSUIPC installed for other purposes, and running in "un-registered" mode, which is all that FenceBuilder and most other FS add-in utilities etc. really require).


FYI: FSUIPC is freely downloadable, and can run in "un-registered" mode; get the latest version of FSUIPC for FS2004 (aka "FS9") and FSX ...here:

(Select FSUIPC version 3.xxxx series for FS9; Select FSUIPC version 4.xxxx series for FSX)


FSUIPC Support Pete Dowson Modules - Product Support Forum

http://forum.simflig...dowson-modules/


Updated modules

http://forum.simflig...pdated-modules/


Also, be sure that no utility or program such as NotePad etc. is either trying to open, read or write to the FenceBuilder project XML file, and that the XML file is not "selected" in Windows Explorer or any other file manager, as this may cause a file access conflict that might disrupt FenceBuilder operations.

GaryGB
 
Last edited:
Gary- I just cheked- I have FSUIPC4 dated April, 2012

I used this instead of ismconnect.... I got one step further.

'elma_fence.xml does not exist. Do you want to create it? '

yes

Finished fencing (<G>) directed a path to elma scenery folder for the bgl.

compile xml. - 'cannot find specified folder.'

Sooooooo- I went and grabbed a copy of my new xml and took it over tomy bglcomp. DOS screen ran...... nothing happened.

I have an old xmol in that folder and drug that over bglcomp just to make sure bglcomp is working. it did work. But with my new xml - no.

Here's copy of that xml. Bob
 

Attachments

Hi Bob:

I was also able to successfully compile your "Elma_fence.xml" file linked above with both the FS9 and FSX versions of BGLComp.exe


Regarding your FenceBuilder "compile" failures to date:

If you have placed a copy of BGLComp.exe in a "work" folder outside the original main installation folder for the BGLComp SDK on your computer, be sure that "work" folder contains BOTH the "BglComp.exe" and "bglcomp.xsd" files, or BGLComp will not work when attempting to compile a *.XML file. :alert:




BTW: If you intend to do some manual compilation of *.XML files with BGLComp, I recommend that you: :teacher:


1.) Download Arno's "CompileHelper 2.0":

http://www.fsdeveloper.com/forum/downloads.php?do=file&id=75


2.) Install CompileHelper 2.0 into FSX BGL compiler SDK folder at:

[FSX SDK install path]\Environment Kit\BGL Compiler SDK


NOTE: Default SDK install location is:

C:\Program Files\Microsoft Games\Microsoft Flight Simulator X SDK\SDK\Environment Kit\BGL Compiler SDK or other [install path]


3.) Configure CompileHelper 2.0 path to each < different ! > FS9 and FSX version of BGLComp.exe as needed under 'Options' per the Manual:

http://www.fsdeveloper.com/wiki/index.php?title=CompileHelper_2.0


4.) In Windows Explorer, Drag and Drop a *.XML file into FSX BGL compiler SDK folder (at location described above).

5.) In Windows Explorer, Drag and Drop that *.XML file onto the CompileHelper.exe icon

'CompileHelper Output' dialog then appears with ex: "Parse complete!" status (...or other explanatory error messages).



CAVEATS:

* Work with only a copy of your original *.xml files; always keep a backup of original files (ex: inside a *.ZIP file)

* When editing *.XML file(s), do not:

a.) Change the sequence / position of any any scenery object sub-section within the XML file

b.) Remove or add any scenery object sub-section within the XML file

...otherwise FenceBuilder or may not be able to resume normal use of a changed project *.XML file.


Alternatively, in the case of Instant Scenery version 2.x (aka "IS2"), a *.XML file re-compiled by BGLComp into a *.BGL may not be usable until "fixed".


The IS2 altered *.BGL file "Fix": Once a de-compiled, then re-compiled BGL is 'opened' in IS2 via "Open Scenery File" and another FS scenery library object is placed via IS2 without generating any error messages, one should be able to resume using that BGL 'normally' in IS2 (ex: adding moving, deleting objects). :idea:

However, this would not guarantee that FenceBuilder will be able to resume using an edited *.XML file (unless FenceBuilder totally replaces the *.XML file with each "compile" operation).


FYI: When an object compilation / placement is performed during a live flight session in FSX, once a compiled / recompiled BGL is placed inside a FSX \Scenery sub-folder nested under a top folder (-along with any required / mapped textures in a locally paired \Texture solder)


...and:

* That \Scenery sub-folder is added as an "active" scenery Area layer in FSX scenery library

* Scenery.Cfg is re-indexed by FSX

* FSX returns to your flight in progress

...any scenery objects placed by FenceBuilder or IS2 should then be displayed. :wizard:



PS: I was mistaken about being able to view *.MDL files for fences output by FencBuilder, as I had forgotten that such "Fences" are actually extrusion objects.

IIUC, such extrusion objects are special textured DirectDraw surface entities, created similarly to certain advanced building / generic building / autogen objects (but compiled / placed / excluded via XML methods using BGLComp rather than via the SHP2VEC or other SDK methods). :o

I have corrected my post(s) above to remove that mis-information I'd written regarding the ability to extract MDL files for such extrusion objects. ;)


Hope this info helps with the tinkering and learning process ! :)

GaryGB
 
Last edited:
Gary, George, et al- (whoever Al is) -

Tejal is watching this too.

OK- This is what I have done so far. --->1. Somehow George compiled my xml in a heartbeat. I still can't.

2. Installed the bgl. fences are there, but boy do I need to learn something about heading! bwahahaha! I have 4 or 5 separate sections all canted the same way and disconnected. I think i have to point my plane where I'm headded. (my guess) - But at least the fence was there. ( How can you choose styles of fences? Or do yo get only one in the non-pro version?

3. Redid everything. Still could not compile the xml. (I do believe I have full control according to properties/security.

4. downloaded compile Helper acc to Gary and followed instructs. I did place it in SDK\environment kit\bglcompiler; so compile helper is on the same page as bglcompiler stuff. Sending a pic of the config for 'helper' even thoug hyou can't see much. Paaths for all... bgl9, etc all point to compile helper. I even made a shortcut - accd to Arno's wiki.

5. Drug my new xml over compile helper.... My mouse arrow had the twirlling circle which also was blinking or flashing like crazy... slowed my computer down to a crawl!!!

Task mgr wouldn't stop it either. had to reboot.

I did the above with FSUIPC connetion but my bgl is set for FSX.
BTW- When I saw my fence, it had the draw order problem one sees in FS9 when you bring that object into FSX. i.e. looking through the fence the background isn't right.
 

Attachments

  • elma_fence.xml
    elma_fence.xml
    2.7 KB · Views: 555
  • screenshot224.jpg
    screenshot224.jpg
    51.7 KB · Views: 668
Seem like the program is using Fs9 stuff for the fences, I tried to do something but not success, very weird things happen, but the program seem to work normally. I have problem with the heights, fsx say 72 feets, and Fencebuilder say 72 meters, , with the profiler when closing give unhandled exception, or something so, , and yes I compile a kind of xml but no fences.The only thing I had no problem was "view Xml" (windows7)
Edit: It seem that the wrong altitude reading have to do with the fact I connected to Fsx via Simmconnect
 
Last edited:
Back
Top