Beiträge von Dietmar



    ... ich denke nicht, dass du einen Knoten im System hast. Vielmehr vermute ich dieses eigenartige Verhalten in einer "unsauberen" Windowsprogrammierung.
    Es sollte so sein, nicht mehr benötigte Textur- und Objektdateien aus dem Speicher zu entfernen. Das ist, wie schon oben mal erwähnt, natürlich abhängig vom Radius des momentanen Aufenthalts des Fliegers.
    Es könnte sein, dass X-Plane nicht den Radius berechnet. Irgendwie scheint mir das mit der 1x1 Längen- und Breitengradnachladung zu tun zu haben. Aus der Kartenanzeige wird man auch nicht ganz schlau, da ein Nachladen der Szenerie zwar irgendwie Richtungsabhängig, aber doch scheinbar willkürlich erfolgt. Wenn nur die Szenerie, die von der Karte angezeigt wird sich im RAM befinden würde, dürfte es nicht zu einem OoM (Speicherleck) kommen.
    Da fast alle Szenerien aus dem FS9 konvertiert wurden, kommt natürlich einiges zusammen. Nur: die Anzahl der Texturen ändert sich nicht, an Objektdateien gibt es zwar mehr, weil einzeln die Modelle generiert werden, dafür sind aber die FS9-BGLs auch wiederum viel grösser, sodass also der Speicherbedarf bei X-Plane und FS9 nicht zu stark von einander abweichen dürfte. Auch die DXT-Kompression beim FS9 kann damit nichts zu tun haben.
    Ich vermute diese Unbill also in erster Linie in einer zu späten Freigabe von RAM, beim Fs9 komme ich mit den gleichen Szenerien auf max 850 MB, beim X-Plane auf 2628 MB, gemessen zwischen Frankfurt und Zürich, wobei beim FS9 bei mir noch wesentlich mehr Szenerien vorhanden sind. Sehr komisch ist die geladene Texturmenge bei Rendering, die kam über 713 MB nicht hinaus. Fragt sich also, wo kommen die rund 2 GB her, die X-Plane sonst noch verbruzzelt? Beim Koordinatenwechsel erklärt X-Plane, dass nun ein "Purging old degrees" erfolgt. Ich bin mir nicht klar darüber ob das auch so stimmt.


    Cheers and a3g,
    Dietmar

    [quote author=helialpin01 link=1195713063/0#11
    Mein System: P4 2.66GHz oc. auf 3.1GHz, 1GB RAM, 512 MB GF7600GS, WinXP SP2.
    [/quote]


    ... das RAM dürfte das Problem sein. Ich habe 2GB und der XP V9 belegt den komplett und schaufelt noch über 500 MB auf die pagefile. Hm, hm, das bedeutet auch noch, dass es zu kleineren Rucklern und Zucklern kommt.


    Und dann noch die fps-Baustelle. Ich hoffe und wünsche sehr, dass Laminar das noch hinbekommt!


    Sind seit einem Jahr doch etliche gefrustete FSXler (ich gehöre da auch dazu) zu X-Plane gekommen, haben sich den gekauft und waren toll begeistert von der hervorragenden Framerate.
    Ich habe trotz abgespecktem LOD und herausnahme jeder zweiten TREE in den originalen x.for Dateien , bei abgeschalteter Wasseraufhübschung nur eine Framerate um die 20 bis 23 herum. Eingeschaltet sind jedoch draw hi detail world und draw volumetric fog. Darauf möchte ich nicht verzichten.


    An frames ist das eindeutig zu wenig. Ich denke mal, wenn da nichts geschieht und nur auf etwaiges Neukaufen eines PCs, Aufrüsten, neue Grakas, Schrauben und Tweaken, in 4 Jahren läuft der dann mit neuer Hardware prächtig uA verwiesen wird (identisch zum FSX), dann kann das ein Eigentor werden.


    Das wünsche ich dem X-Plane nicht, die Hoffnung stirbt zuletzt.


    Trotzdem frage ich mich: haben die nicht mal ihr Programm auf einem "normalen" PC laufen lassen. Sowas muss doch auffallen.


    Cheers,
    Dietmar

    Hallo Hermi und andere,
    hier ist die Erweiterung um einen direkten Start von X-Plane.


    Ich hab mich nun doch für eine weitere Variante entschieden. Ist keine XP_INI_DF.txt Datei vorhanden wird beim Aufruf des Tools folgendes Filebrowserbildchen erscheinen:




    Hier so lange in den Verzeichnissen browsen bis "X-Plane xxx.exe" gefunden ist. Diese EXE doppelt klicken oder einfach klicken und danach bei Dateiname den Button: Öffnen anklicken.


    Das Tool ist um einen weiteren Button "Call X-Plane" erweitert worden. Hier kann nun X-Plane aus dem Tool heraus gestartet werden, das Tool selber wird dabei aus dem Speicher entfernt. So siehts nun aus:




    Das Tool gibts hier:


    http://rapidshare.com/files/72419223/XPApt3.zip.html



    In der Liesmich steht noch mehr drin. Bitte um Rückmeldung obs funzt. Diese Tool ist nur für die Versionen 8.6x.


    Cheers and a3g,
    Dietmar

    Zitat von Hermann

    Dietmar, ich habe noch einen Wunsch!


    Nachdem wir einen Airport/ Flugzeug ausgelesen haben, schliessen wir ja das Tool.


    Könnte man jetzt diesen Button nicht benutzen um X-Plane zu starten?


    Hallo Hermi,
    sag ich mal , im Prinzip ja, frag ich mal, obs Sinnvoll ist?


    Das Problemchen liegt darin, dass eine Programmaufrufshell den genauen Ausführungsprogrammnamen und das komplette Verzeichnis kennen muss. Sonst gehts daneben.


    Um das zu erreichen, gibts 3 Möglichkeiten:
    1. Man kann das aus der Registry herauslesen. Ist die bequemste Möglichkeit, nur da hab ich nichts gefunden, weder den Namen: x-plane, laminar oder austin. Da es keine Deinstall gibt, ist es sehr warscheinlich, das dort nichts eingetragen wird.


    2. Man eröffnet ein Dateiauswahlfenster, wo einmalig die EXE nebst Foldern ausgewählt und abgespeichert wir, entw. in einer INI oder in der Registry. Da braucht man aber einen zusätzlichen Button und das muss in jedem Fall auch als erstes durchgeführt werden.


    3. Der User schreibt selber eine INI. Nachteil, das muss aber korrekt eingetragen werden, ansonsten gibts im Tool ERROR.


    Da mein Tool fehlerfrei läuft habe ich bisher auf eine Fehlerabfrageroutine getrost verzichten können.


    Ich selber neige zur dritten Variante. Die INI_DF.dat hätte 3 Zeilen und würde bei mir so aussehen:


    [MAIN]
    D:\X-Plane 8.64\X-Plane 8.64.EXE
    [END]


    In der zweiten Zeile steht also das LW, Verzeichnisse und das Programm.


    Ich müsste dann von jedem Anwender dieses Tools erwarten, dass er vor dem "ERSTMALIGEN" Aufruf diese INI eigenhändig ergänzt. Die 1. und 3. Zeile gebe ich vor. Meine Erfahrung sagt mir aber, dass wieder einige das nicht geschnallt bekommen.


    Theoretisch gäbe es noch eine vierte Möglichkeit, das Programm die Datei selber suchen lasssen. Nur, die Anwender haben versch, X-Plane Verisonen drauf: X-Plane 8.60.EXE, X-Plane 8.61.EXE, X-Plane 8.62.EXE, X-Plane 8.63.EXE, X-Plane 8.64.EXE oder X-Plane 900 Beta-2.EXE. Oder haben das selber irgendwie umbenannt.Der Suchstring muss von mir genau vorgegeben werden. Ist diese Datei nicht da, gibts ERROR. Weiterhin klappert so eine Suchroutine alle LW ab, beim ersten beginnend - und das kann dauern!


    Das mit der INI kann ich noch ausschliesslich für dich machen, da erspar ich mir eventuellen Ärger mit anderen.


    Cheers,
    Dietmar

    So, hier ist wohl die Endversion. Sieht so aus:



    Wenn das Häkchen bei "sort ICAO" gesetzt ist werden die Airports sortiert ausgegeben.


    Die vorherigen Downloads habe ich gelöscht.
    Der neue Download ist hier verfügbar:


    http://rapidshare.com/files/71443810/XPApt2.zip.html


    So ganz schlau bin ich bei der "Sending Data to X-Plane.html" aus dem Ordner "Instructions" auch nicht geworden und zwar bei den Vehicles "VEHN". Wieviele Bytes werden für den Aircraftstring nun eigentlich reserviert?
    [xchr path_rel[150]; xchr att_file[24][40] so what? Könnte zusammen für das Vehicle 64 sein, macht irgendwie Sinn. Dann ist aber noch von Waffen die Rede, relative Pfadlänge, die überschritten werden darf?
    Sehr kryptische, amerikanische Ausdrucksweise.


    Ich habe in meinem Tool dafür nun 74 Bytes für den Aircraftcharakterstring reserviert. Sollte das bei Militärflugzeugen mit irgendwelchen Waffen dabei zu einem Konflikt kommen bitte ich um Mitteilung.


    Weiterhin ist mir seit gestern folgendes aufgefallen.
    Es ist bei mir so, dass nach der Installation der neuen "apt.dat" aus der APTNav200711XP861.zip beim Start von X-Plane wieder dieses "Be Adviced/Understood" erscheint und jeweils der erste Eintrag in der Custom Scenery bemeckert wird. Löscht man diese Szenerie raus, erscheint der nächste Eintrag als Problem.


    Mit APTNav200710XP861.zip passiert das nicht, deshalb habe ich nun wieder davon die apt.dat genommen.


    Kann diese Verhalten noch jemand bestätigen?


    Nun warten wir mal brav auf den X-Plane Version 9, da könnte das, was ich hier gemacht habe, möglicherweise obsolet werden. Auch könnte die Strucktur der X.Plane.prf eine ganz andere sein oder die ist gar nicht mehr da und sie haben sich dafür was anderes einfallen lassen.


    Cheers and a3g,
    Dietmar



    Hallo Hermann,
    das ist überhaupt kein Problem, ich werde zum sortieren so ein kleines Kästchen einbauen. Wenn das angeklickt wird erscheint an dieser Stelle eine Markierung und die Liste wird nach dem IACO-Code ausgegeben. Im Grundzustand befinden sich die Airporttextbezeichnungen auf der rechten Seite der Liste sortiert.


    Freut mich, das es klappt. Da hast du dir wohl doch diese "verstümmelte" apt.dat seinerzeit heruntergeladen. Ich bin heute eine Viertestunde länger hier, die Freundin kommt heute erst um sieben.


    Cheers,
    Dietmar

    Hallo Hermann,
    nun kommen wir der Sache schon mal was näher. Danke für die Übersendung der Bildchen.


    Irgendwas ist da nicht stimmig, dh wir haben wohl unterschiedliche apt.dat.
    Vermute ich mal.


    Bei mir sehen die Airports so aus (habe die gleichen die du mir zugemailt hast ausgesucht):



    Du siehst, dass hier der ICAO-Code 4-stellig ist und nicht 3-stellig wie bei dir.


    Grübel, grübel!
    Bei mir ist die apt.dat vom 29.10.2007 und ist 31.242.329 Bytes lang. das ist der Tag, wo ich wohl auf Vers. 8.64 geupdated habe. (Bin mir da aber nicht ganz sicher, habe noch eine AptNav200720XP861.ZIP, da ist die mit drin)
    Irgendwo erinnere ich mich im Hirnkästchen, dass da eine neue apt.dat herausgekommen ist, die aber irgendwie korrupt war, man soll daran arbeiten. Aber wo war das noch?


    Mein Programm kann nur funzen, wenn alle die gleichen apt-Struckturen haben, sonst gibts beim Auslesen der Airports Chaos.
    Das scheint hier der Fall zu sein.


    Wenn noch andere mittesten, könnten die hier mitteilen, wie die ICAO-Kennung und der Airport bei ihnen in meinem Tool dargestellt wird.
    Ansonsten Hermann, kannst du die apt.dat irgendwo hochladen und mir den Downloadcode mitteilen.


    Es könnte aber auch anders sein. Sehe gerade, dass meine apt Datei innen das Datum 25.01.2007 aufweist, also wohl eine für die Version 8.61 ist. Ich versuche mir mal eine neuere zu beschaffen, irgendwie blöd , das Ganze. [Trotzdem, ich kann mir irgendwie nicht vorstellen, dass Austin oder wer auch immer, die apt-File-Strucktur in Ver 8.xx geändert hat]


    Cheers,
    Dietmar

    Zitat von sirarokh


    Ich werde dennoch mein Glück versuchen, das Programm auch Linux-Benutzern bereitzustellen, wenn du einverstanden bist.


    ..kannst du natürlich machen.


    Warum es bei Hermann nicht funzt ist mir erst mal ein Rätsel. In eine geöffnete Binärdatei zu schreiben ist nun mal die kleinste Übung beim Programmieren.


    Hermann, was hast du für eine Windowsversion?


    Nun noch weiteres zum testen. Das stelle ich mal der Allgemeinheit hier zur Verfügung.
    Ich habe das Tool so erweitert, dass es nun auch die Aircraftauswahl zulässt.


    Die Startoberfläche sieht nun so aus. Hier erkennt man schon, dass die Airports einmal eingelesen wurden, grünes Rechteck, die Aircrafts aber noch nicht.




    Das nächste Bild zeigt die in X-Plane vorhandenen Aircrafts, die Anzahl wird unten rechts angezeigt




    Dieses Bildchirmfenster kann bei Bedarf auch auf Fullscreen gestellt werden.


    Wer dieses Tool also ausprobieren möchte, auf eigenes Risiko natürlich, kann es sich hier herunterladen:


    http://rapidshare.com/files/70996865/XPApt1.zip.html


    Das Tool ist noch nicht fertig und befindet sich momentan in der Testphase.


    In jedem Fall: die Liesmich.txt lesen.


    Cheers and a3g,
    Dietmar

    Zitat von Hermann

    ich lande immer in E46


    Hallo Hermann,
    es sieht so aus, dass der Index (0) bei dir ausgewählt ist.
    (Hm, der Index (0) ist immer voreingestellt, wenn nichts ausgewählt wurde, also keine Selektion erfolgte)
    Du musst den gewünschten Airport anklicken, die Zeile wird dann blau unterlegt.
    Dann den "Write Airport to X-Plane" Knopf drücken.
    Im unteren, linken Textfeld siehst du, was in die "X-Plane.prf" geschrieben wird.


    @Paperflyer: du bekommst eine PN. Nochmal, ich programmiere in Visual Basic 6 (VB6), das ist eine eigene Programmiersprache, hat mit C++ aber nur entfernt was zu tun. Bringt eigene Bibliotheken mit, oder man kann sich dafür auch APIs aus dem Netz herunterladen. Microsofts Weiterentwicklung nennt sich .NET, habe ich mir aber nicht angesehen. Wenn ich mit dem Programm fertig bin könnte ich dir den Quellcode als Textdatei zusenden.


    Mittlerweile funzt auch das Auslesen und Einschreiben der Aircrafts in meinem Programm.
    Das muss ich jetzt nur noch verfeinern, dann könnt ihr das, wenn ihr wollt, auch noch testen.



    Cheers,
    Dietmar

    @ Hermi
    Dieses Tool gibts von mir grundsätzlich gratis. Ich programmiere nur Freeware in Visual Basic 6.


    @ Bastian
    damit ist deine Frage wohl beantwortet. Mit Linux kenn ich mich nun gar nicht aus.


    Wer das Programm mal testen möchte, kann es sich in einigen Stunden bei rapidshare herunterladen. Ich bitte dann aber auch um Rückmeldung bzw Verbesserungsvorschläge. Ein Test, vor einer möglichen Veröffentlichung ist absolut notwendig, leider haben aber meine Flusifreunde, mit denen ich zusammenarbeite (Tools und Szenerien) nur den MSFS.
    Wer also das Tool ernsthaft prüfen möchte, kann mir das hier in diesem thread mitteilen, ich schicke ihm dann eine PN.


    Ich bastle jetzt an einer readme und versuche noch in das Tool eine Möglichkeit einzuarbeiten, dass es automatisch verschiedene Nullstrings erkennt. Dann könnte es zumindest für die Vers. 8.60 auch funzen.


    Das mit den Airports wird das nächste sein, dazu muss ich aber noch einige Vorarbeiten leisten.


    Ich wäre auch noch an einer Zusendung der Datei "X-Plane.prf" für die Versionen 8.61 - 8.63 dankbar. Es könnte ja sein, dass die noch jemand besitzt.


    Cheers,
    Dietmar

    Hallo,
    danke für die Antworten.
    Ich hab mir mal dieses Batch-Programm heruntergeladen und untersucht.
    Das sieht so aus, dass der Autor nach Beendigung eines Fluges die ges. dafür in Frage kommende "prf" Datei unter einem anderen Namen abspeichert. Da dort der Start-Airport mit seiner ICAO-Kennung drin steht, kann er dann bei Bedarf die dazugehörigen Dateien umbenennen und kopieren. Dazu ist aber auch noch Handarbeit nötig.
    Ein grosser Nachteil dieses Verfahrens ist aber die Tatsache, dass man erst mal einen Airport mittels X-Plane aufgerufen haben muss um ihn dann überhaupt erst abspeichern zu können.


    Mein Ansatz verfolgt einen anderen Weg. Warum nicht alles von vornherein automatisieren?
    In der --\Resources\Earth nav data\apt.dat sind unter dem Code 1 alle Aiports in X-Plane gespeichert. Diese braucht man nur aus dieser über 31 MB grossen Datei auslesen und die ICAO-Kennung in die zugehörige prf-Datei an Position 1F9 Hex hinzuschreiben. Thats all.


    Das Auslesen der Airports braucht nur ein einziges mal duchgeführt werden (ich lege dafür eine eigene Textdatei an), es sei denn, es gibt mal wieder eine neue apt.dat.


    Das funzt gut, ich habs diverse male getestet.


    Das EXE-Programm starten mit einem Begrüssungsbildchen:




    Nach 2,5 Sekunden erscheint das eigentliche Programm. Beim ersten mal den Button "Get Airports" ausführen.
    danach nur noch "Select Airport" drücken, warten bis alle Airports in X-Plane gelistet sind. Dann auf den gewünschten Platz scrollen und markieren.
    Zum guten Schluss noch "Write Airport to X-Plane" drücken, anschliessend das Progrämmchen mit "Close" beenden. X-Plane startet dann mit dem selektierten Airport.
    Mein Programm ist in Visual Basic 6 geschrieben.


    So siehts aus:



    Nun stellt sich die Frage: braucht man sowas eigentlich?


    Ferner habe ich mal die dafür benötigte prf-Dateien der Version 8.60 und 8.64 untersucht. Auffallend ist, das in Version 8.60 bei Aircrafts und ICAO der Nullstring CC Hex = 204 Dez und bei 8.64 der Nullstring 00 Hex = 00 Dez verwendet wird. Die Dateien sind aber gleich lang.


    Deshalb würde ich erst mal sagen, dass mein Programm vielleicht nur mit der Version 8.64 betrieben werden kann. Die X-Plane.prf der Versionen 8.61 bis 8.63 habe ich mir leider nicht gespeichert. Bei einem Update können die ja automatisch überschrieben werden.


    Das was ich hier mit den Airports gemacht habe, könnte man theoretisch auch für die Flugzeuge machen, könnte also ins gleiche Programm eingearbeitet werden. Das ist aber etwas komplexer, aber nicht unmöglich. Dazu muss aber das Hirn etwas angewärmt werden, das Hirnschmalz muss flüssiger sein.


    Wenn ich die Leser hier gelangtweilt habe, bitte ich vielmals um Entschuldigung.


    Cheers and a3g,
    Dietmar

    Hallo,
    mal eine Frage an die Experten hier.
    Gibt es irgendwo ein Tool, mit dem man den Auswahl-Airport bei der Windowsversion "VOR" dem Aufruf von X-Plane 8.xx festlegen kann?


    Wenn nein, dann werd ich mal nächste Woche ein Progrämmli für Windows XP zusammenwerkeln, welches das dann kann, hoffentlich.


    Dazu bräuchte ich aber von diversen X-Plane-Usern noch 2 Angaben.


    1. X-Plane Version
    2. Genaue Länge in Byte der Datei: "X-Plane.prf" im Verzeichnis ..\Resources\preferences.


    Bei mir sieht es so aus:
    Version: 8.64
    Länge: 1477 Byte


    Bitte liebe X-Plane-Anwender, gebt mir hier diese beiden Angaben.


    Cheers,
    Dietmar