WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Simulationen (http://www.wcm.at/forum/forumdisplay.php?f=27)
-   -   (plötzlich) unscharfe Bodentexturen trotz hoher Frames. (http://www.wcm.at/forum/showthread.php?t=167531)

Börnie 29.06.2005 08:09

Texturproblem Freeflow Florida
 
Wie ich schon gestern in dem tread zu FFL schrieb, glaube ich das Problem lokalisiert zu haben. Es hängt ziemlich eindeutig mit dem AI-Schiffsverkehr zusammen. Schalte ich den aus, sind alle Texturen schlagartig scharf. Auch wenn man den Verkehr zurückschraubt, werden die Texturen in dem Moment unscharf, wo sich das erst Schiff auf den Weg macht (Es dauert wohl einige Zeit, bis sich der Verkehr in Bewegung setzt). Womit genau das zusammenhängt (vielleicht die Effekte?) weiss ich leider nicht. Joachim???

Schönen Tag,
Bernd

mangray 29.06.2005 11:47

Ich habe die plötzliche Unschärfe von der Project Freeware Scenery

Ich wollte LOWW schöner haben. Mit der 1,6er Version
wurde es griffig.
Wenn ich beim wegfliegen rückwertsschaue wird alles plötzlich
unscharf, beruhigt sich aber bald wieder.
Anfliegen traue ich mich gar nicht so richtig.

nice day
mangray

JOBIA 29.06.2005 21:40

Ich möchte mich nur auf die letzt genannte LOWW Scenery beziehen. Diese ist mir von Fritz genannt worden anhand dieser habe ich das Problem getestet.

Für das anderen habe ich noch keine Zeit gehabt.

Bei LOWW lässt es sich durch Änderung der Texturen beheben. Ich vermute bei der anderen Scenery werden es vermutlich dann Schiffstexturen sein.

JOBIA 29.06.2005 21:43

Ich möchte mich nur auf die letzt genannte LOWW Scenery beziehen. Diese ist mir von Fritz genannt worden anhand dieser habe ich das Problem getestet.

Für das anderen habe ich noch keine Zeit gehabt.

Bei LOWW lässt es sich durch Änderung der Texturen beheben. Ich vermute bei der anderen Scenery werden es vermutlich dann Schiffstexturen sein.

Yves G. 30.06.2005 10:01

Zur Freeflow Florida: Ich habe mit der neuen Version 1.2 der AI Ships immernoch plötzlich globale Unschärfe, sobald die Texturen gewisser Schiffe geladen werden. Ich habe mir das Problem mit Hilfe des File Monitors genauer angesehen und schätze, es liegt auch hier an fehlenden MIPs der Schiffstexturen. Die Effektdateien schliesse ich mal aus, da ich diese testweise entfernt habe.

Getestet habe ich v.a. in Ft. Lauderdale (KFLL), wo die Queen Mary 2 im Hafen liegt (z.B. zw. 7 und 8 Uhr morgens). Sonst stehen dort bei 100% AI nur die AU_Cargo-AI Schiffe, welche ich aus dem aircraft Ordner entfernt habe.

Die Texturen der Queen Mary 2 sind alle in DXT1 ohne Mips und mit einem Colorkey Alpha. Ich habe zum Testen einzelne Texturen entfernt oder verändert. Die grossen Texturen ohne Mips (> 100 KB) lösten den Unschärfe-Effekt schneller aus (oder überhaupt erst) als die kleinen. Schon eine einzige 129 KB Textur im Texturenordner des Kreuzfahrtschiffes reichte aus.

Eine Umwandlung aller Texturen in DXT3 (no Mips) mit Imagetool half nicht. Auch der Alphakanal (von "Colorkey" nach "no alpha") scheint nicht daran Schuld zu sein.

Erst durch das Erstellen von Mips verschwand die globale Unschärfe sowohl mit DXT1 als auch DXT3. Nur laden die höchsten Mips des Schiffes jetzt teilweise sehr spät oder gar nicht (ich habe etwa 10 fps in der Gegend). Selbst im Slew Modus direkt vor dem Schiff bleibt die rechte Schiffswand oft lange Zeit völlig unscharf.

Das alles kennt man ja auch vom normalem AI Traffic, wo fast alle Flz. in DXT3 ohne Mips sind, ausser jenen von MS.

JOBIA 30.06.2005 18:20

Aber wie man sieht führt die Problematik der globalen Unschärfe in der Regel immer wieder auf Texturen ohne Mips zurück. Das ist der Hauptgrund der das Problem auslöst.

Was das andere betrifft. In der Regel werden die Mips bzw. wann sie bei Objekten zur Anwendung kommen über das Pixelverhältnis also Anzahl Pixel (Texel) der Textur zum Verhältnis Pixel die bei vorgegebener Grafikkartenauflösung diesem Texturbereich zu Verfügung stehen geregelt.

Das ganze ist über MIP Level Regler in der Grafikkarte bzw. im FS beeinflusssbar.

Von daher haben diese Regler, der Abstand zum Objekt, die Grafikkartenauflösung, der Treiber und Skalierung der Textur darauf einen Einfluss.

Oder aber eben wenn ein Problem wie bei der urplötzlich Unschärfe besteht wenn das Prog. oder die Grafikkarte einen bestimmten MIP Level erzwíngt.

FriLa 30.06.2005 22:49

zu LOWW
 
Hallo,

da die LOWW-Texturen erwiesenermaßen die plötzliche Unschärfe bewirken, schreibt doch an Steffen von project.freeware.scenery unter
pfs@sigiair.com , dort sollten schon die verbesserten Texturen mit allen mip-leveln sein. Ich hab sie mir jedenfalls schon selber gebastelt.

Grüße,
Fritz

mangray 01.07.2005 09:24

Danke für den Rat Fritz.
habe die Mail gerade abgeschickt.

nice day
mangray

Yves G. 01.07.2005 23:01

Ich habe mir die Problematik anhand der AI Ships in Florida nochmals genauer angeschaut und kann jetzt ein Muster erkennen.

Was ich jetzt schreibe ist natürlich noch kein Beweis und wahrscheinlich nur ein Teil der Story, aber ich konnte es in vielen Dutzenden Versuchen wunderbar reproduzieren. JOBIA ist das vielleicht ja schon bekannt und kann Korrekturen anbringen.


Ursache für die plötzliche Unschärfe waren folgende Texturformate bei den AI Ships:

a) Seitenverhältnis 1:8 oder 8:1 (1024x128, 128x1024, 64x512, 32x256 etc.).
b) DXT1 oder DXT3 (die x-bit Formate sind okay)
c) ohne alpha
d) ohne Mips

Alle 4 Punkte mussten bei mir erfüllt sein, damit es überhaupt zur Unschärfe kommen konnte. Selbst ein einziges 5 KB BMP kann den Effekt auslösen. Das Hinzufügen eines Alpha Kanals UND/ODER Mips hat das Problem gelöst.


Damit es jetzt aber zur Unschärfe kommt, muss ein zweiter Punkt erfüllt sein.

Wenn der Flusi nur ein einziges neues Objekt mit Texturen auf einmal laden muss, öffnet und liest er die dazugehörigen BMPs und schliesst sie sofort danach wieder. Wenn aber mehrere Objekte (hier die Schiffe) oder sonstige Texturen innerhalb Sekundenbruchteilen geladen werden müssen, bleiben die BMPs der Objekte offen, bis alle geladen sind. Erst am Schluss schliesst er dann alle zusammen. Das ist normalerweise kein Problem, ausser eines der Objekte hat eine faule Textur!

Ein fast gleichzeitiges Laden mehrerer Objekte tritt z.B. auf, wenn man die Sicht wechselt und mehrere Objekte gleichzeitg sichtbar werden. Ich habe mir eine Situation erstellt, wo direkt beim Auftstarten des FS drei Schiffe sichtbar waren -> Unschärfe.

Schaue ich in eine andere Richtung und drehe mich langsam zu den Schiffen hin, passiert es nicht, weil die Schiffe gemütlich nacheinander geladen werden. Ein schnelles Schwenken führt hingegen zum Problem.

Um den Effekt wirklich auszulösen spielt jetzt aber die Reihenfolge beim Laden der Objekte eine Rolle.


Bsp.:

Wir haben drei Schiffe (A, B, C) nahe beieinander mit drei versch. Texturordnern. Schiff A hat eine fehlerhafte Textur. Wenn jetzt auf einen Schlag alle 3 Schiffe geladen werden, kommt es immer dann zur Unschärfe, wenn Schiff A als Nr. 1 oder Nr. 2 geladen wird. Die schlechte Textur wird dabei gelesen und bleibt geöffnet, während der Flusi weitere "gute" BMPs von Schiff Nr. 3 lädt. Das führt zur Unschärfe.

Es geht dabei nur um die Reihenfolge der BMP-Pakete zw. den Objekten und nicht um jene von einzelnen Texturen innerhalb eines Objekts. Wenn nur Schiff A geladen wird, führt dies nicht zur Unschärfe, weil kein weiteres unmittelbar danach geladen wird. Zwischen zwei Schiffen werden meist auch noch sonstige Szeneriedaten geladen (z.B. scenery\vehicles\texture\cargoa.bmp), die aber den Effekt bei mir nicht auslösen, obwohl die faule Textur noch nicht geschlossen ist.


Im Anhang die schlechte Textur von einem der AI Ships.

BC_Holger 02.07.2005 04:47

Hallo Yves,

sehr clevere Detektivarbeit - besten Dank dafuer!

Eine Frage: wie kannst du denn feststellen, wann ein bestimmtes Texturfile "geoeffnet" oder "geschlossen" wird? Mit Filemon kann man das doch nicht direkt erkennen, oder?

Ciao, Holger


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag