Author Topic: Custom GSX layouts  (Read 7840 times)

Paavo

  • Newbie
  • *
  • Posts: 5
Custom GSX layouts
« on: September 16, 2014, 05:42:23 pm »
Hi Umberto,

I am working on a scenery that features drive-through parking like is common in smaller airports. This means that aircraft taxi in from one direction and taxi out to the other on their own power. To replicate drive-through parking with AI in FSX and Prepar3D, a relatively complex AFD layout that takes into account AI pathfinding algorithm has to be used:



Such layouts are far too complex for GSX to understand and follow correctly, especially as far as follow-me vehicles are concerned.

Would it be thinkable to add support for simplified, tailored-for-GSX airport layout files?

For instance, when scanning BGL files, GSX would ignore contents of EETU_AFD.bgl if the folder contained EETU_AFD.gsx. The gsx file would be nothing but another file in BGL format, but containing simplified layout and renamed to avoid it being loaded into the simulator.

Support for tailored-for-GSX would no doubt be a niche feature, but it would greatly expand the flexibility of airport layouts with regard to AI traffic.
« Last Edit: September 16, 2014, 08:41:03 pm by Paavo »

streichholz

  • Full Member
  • ***
  • Posts: 145
Re: Custom GSX layouts
« Reply #1 on: September 16, 2014, 11:12:32 pm »
Can I ask you what airport this is?

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 50683
    • VIRTUALI Sagl
Re: Custom GSX layouts
« Reply #2 on: September 17, 2014, 09:44:40 am »
Would it be thinkable to add support for simplified, tailored-for-GSX airport layout files?

For instance, when scanning BGL files, GSX would ignore contents of EETU_AFD.bgl if the folder contained EETU_AFD.gsx. The gsx file would be nothing but another file in BGL format, but containing simplified layout and renamed to avoid it being loaded into the simulator.

That could be theoretically possible, but it's really a feature that wouldn't interest many people: of the users that design AFCADs, which are already a tiny minority of all users base, we are discussing about a subset of it, which are AFCAD designers wanting to use unusual techniques, and amongst them, the even smaller subset of those willing to supply an additional AFCAD ( = working twice ) JUST for GSX use.

I think working to add a feature that would probably interested a couple of people, is not a very efficient use of our (very limited) resources, which are entirely tied up to add new features to GSX that will be used by everybody.

Paavo

  • Newbie
  • *
  • Posts: 5
Re: Custom GSX layouts
« Reply #3 on: September 17, 2014, 02:49:11 pm »
I see your point that it would have few users, but isn't this balanced by the triviality and simple nature of such feature?

It probably needs nothing else than a minor change in the function that opens BGL files - namely, the addition of a simple check to see if same file (but with another extension) exists, and if it does, loading that instead the original BGL file.


streichholz - the pictured layout is from Tartu airport (EETU) in Estonia.

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 50683
    • VIRTUALI Sagl
Re: Custom GSX layouts
« Reply #4 on: September 17, 2014, 03:22:52 pm »
It probably needs nothing else than a minor change in the function that opens BGL files - namely, the addition of a simple check to see if same file (but with another extension) exists, and if it does, loading that instead the original BGL file.

That seems to be possible, we'll look into it.

ganesh

  • Administrator
  • Jr. Member
  • *****
  • Posts: 55
  • Developer of Couatl
    • Gamecentric
Re: Custom GSX layouts
« Reply #5 on: September 17, 2014, 06:55:34 pm »
Before rushing a workaround, wouldn't it be better to understand why GSX is having troubles with your scenery? What problems are you experiencing precisely? Maybe fixing them is just as easy as your proposed workaround while being less inconvenient for AFCAD designers.
Ganesh
Developer of Couatl

Paavo

  • Newbie
  • *
  • Posts: 5
Re: Custom GSX layouts
« Reply #6 on: September 17, 2014, 08:18:30 pm »
The drive-through method exploits many characteristics of FSX pathfinding algorithm that GSX does not take into account (nor would I expect it to).

For instance, FSX always prefers to guide AI aircraft from runway to parking via taxiway links. If we have one route consisting of taxiway links, and the other of apron links, FSX will always use the former to lead an aircraft in, and likewise it will use apron links to guide out to the runway. This means that two independent taxi networks can be constructed, giving a lot of control over how aircraft taxi. With carefully tested layout, there are no side-effects. Even Progressive Taxi works (ATC guides user via intended paths).

A description of this method can be found here:
http://stuff4fs.com/Tutorials/Drive-Through%20Parking%20Tutorial.pdf

Since GSX uses independent pathfinding, it comes as no surprise that it fails to follow the logic of default AI.

Here's an example:



GSX follow-me vehicle leads (red line) the aircraft from taxiway to parking via apron links (green) instead of taxi links (blue), and parking spot's direction as well as node layout (there's one only few cms away from the spot to prevent pushbacks) cause erratic behaviour. On top of that, marshaller gets placed right in the way (blue M), facing the wrong direction.

There is no way to construct a drive-through parking system that would guide AI aircraft correctly and at the same time satisfy GSX's expectations for the layout, nor does it seem like an easy task to alter GSX to follow all the small rules and nuances that FSX has. Feeding a simplified (normal) layout would be a very elegant, easy to use and hopefully easy to implement solution.

ganesh

  • Administrator
  • Jr. Member
  • *****
  • Posts: 55
  • Developer of Couatl
    • Gamecentric
Re: Custom GSX layouts
« Reply #7 on: September 17, 2014, 10:31:37 pm »
There is no way to construct a drive-through parking system that would guide AI aircraft correctly and at the same time satisfy GSX's expectations for the layout, nor does it seem like an easy task to alter GSX to follow all the small rules and nuances that FSX has. Feeding a simplified (normal) layout would be a very elegant, easy to use and hopefully easy to implement solution.

Woah, you are making a lot of assumptions on the GSX internals. I'm not saying that it's an easy task to make GSX work with your layout, but allow me to understand the whole issue and only then I can make an effort estimation. While I agree that your proposed fix is easy to implement, I disagree that it is an elegant solution and I'd rather not pursue it if I have an alternative.
Ganesh
Developer of Couatl

Paavo

  • Newbie
  • *
  • Posts: 5
Re: Custom GSX layouts
« Reply #8 on: September 17, 2014, 11:45:22 pm »
I was merely pointing out default AI being far more complex than it appears.

For example, the mentioned preferences for taxiing in and out are not always respected. After an aircraft stops for a moment at holding point while taxiing in, it will continue via the closest node, regardless of its link type and connection to the network it followed that far.

Such jumps between unconnected links can occur elsewhere, since FSX carries out a run-time optimization of node network and merges close nodes together. In certain places, jumps are desirable - in others, not so much.

There are some general rules to follow, but the default AI is so filled with intricate rules that designing a drive-through layout ultimately becomes a time-consuming exercise of trial and error. I am worried that even the smallest differences between GSX and default pathfinding would bring the situation back to square one.

ganesh

  • Administrator
  • Jr. Member
  • *****
  • Posts: 55
  • Developer of Couatl
    • Gamecentric
Re: Custom GSX layouts
« Reply #9 on: September 24, 2014, 03:03:52 pm »
I apologize for the delay. I have investigated the issue and I believe I can modify Couatl so that GSX behaves correctly with your layout without having you to provide two versions of the airport. The idea is to have GSX ignore specific path segments when plotting the followme trajectory. In particular, it would be sufficient to ignore any one segment among the path that "leaves" the parking, so that the followme is forced to enter the parking from the correct side. I see two possible approaches:

  • A) totally automated: Couatl can actually check if a path segment leaves a parking area from the "wrong" side, by comparing the path segment direction with the parking heading. This approach would require no effort on your part, but might theoretically produce false positives and the feature would be limited to paths leaving parkings;
  • B) designer-assisted: you could tag the specific paths to ignore, for example by assigning them a specific name (for example "gsx:noac", where there the "gsx:" prefix is to avoid mistakes and "noac" means "do not use for aircrafts", since the followme never uses paths that are not suitable for a/c). This approach has the advantage that you won't have false positives and is potentially usable for other situations that are not related to parkings. It could even be extended by adding other "gsx:xxx" tags for other uses.

Approach B seems more promising and it's very easy to implement on my part. What do you think?

By the way, I am not concerned at all with "small differences" between GSX and the default pathfinding. The two algorithms are indeed significantly different from one another. No difference can be considered "small" at the current state of facts and I'm perfectly fine with that.
Ganesh
Developer of Couatl

virtuali

  • Administrator
  • Hero Member
  • *****
  • Posts: 50683
    • VIRTUALI Sagl
Re: Custom GSX layouts
« Reply #10 on: September 24, 2014, 05:49:17 pm »
We could also use the taxiway "weight" property, as a method to tag some paths to be ignored by GSX, because the FSX ATC doesn't use it anyway. But, in order to do some test, we would need one of your AFCADs to try. Contact me in private (email or PM) about this.