verschiedene Texturqualitäten

Posted By: LordRathan

verschiedene Texturqualitäten - 09/16/06 11:13

Da keiner im "Levels, Models, Terrain"-Forum eine Antwort weiß, frage ich doch mal direkt hier nach und zitiere mich selbst:

Quote:


Hallo,

ich habe bei der Planung für ein Optionsmenü bei kommerziellen Spielen ein wenig abgeschaut und mir ist dabei aufgefallen, dass es gängige Praxis ist, den Spieler haufenweise Einstellungsmöglichkeiten zu geben. Darunter auch die Wahl der Texturqualität.

Meist reicht die Auswahl von "Niedrig" über "Normal" bis "Hoch".
Jetzt habe ich mich mal im A6-Manual umgesehen und bin auf die Variable "d3d_texdepth" gestoßen. Leider wird diese Variable nur kurz in diversen anderen Themen erwähnt, selbst aber nicht wirklich beschrieben.

Nach meinem Verständnis lässt sich mit dieser Variable festlegen, ob PCX-, bzw. BMP-Texturen intern mit 16 Bit oder mit 4 Bit gespeichert werden.
Weiterhin entnehme ich dem Handbuch, dass BMP und PCX Texturen vornehmlich für mittlere Qualität verwendet wird.
Folglich würde sich mit dieser Methode der Textur-Qualitäts-Bereich "Niedrig" (4 Bit) und "Normal" (16 Bit) abdecken.

Mein Interesse richtet sich jetzt aber auch auf die Qualitätsstufe "Hoch": Ich gehe davon aus, dass die Texturen, von denen ich hier die ganze Zeit rede, jene Texturen sind, die im WED den Blöcken zugeordnet wird (Modelle möchte ich an dieser Stelle mal aussen vor lassen).
Mein Problem wäre jetzt folgendes: Im Manual steht auch etwas davon, dass TGA-Texturen für hohe Qualität verwendet werden sollten.

Wie bringe ich jetzt A6 dazu, für niedrige und normale Texturqualität PCX-Texturen zu verwenden und für hohe Qualität TGA? Klar, dass ich alle verwendeten Texturen sowohl als PCX als auch als TGA benötige, aber das löst noch nicht das Problem, dass ich A6 mitteilen sollte, wo die TGAs liegen.
Ist die ganze Sache überhaupt möglich?

Danke schonmal für Antworten.





mfg
LordRathan
Posted By: fogman

Re: verschiedene Texturqualitäten - 09/16/06 11:31

Über die Mipmapping Einstellungen sollte sich so etwas in der Art doch machen lassen. Schau mal im Manual nach "mip_flat", "mip_shaded", "mip_sprites" und "d3d_mipmapping"
Posted By: LordRathan

Re: verschiedene Texturqualitäten - 09/16/06 12:20

Das nützt mir leider nicht viel, da ich Levelgeometrie eigentlich nur noch für die Skybox einsetze. Höchstens "d3d_mipmapping" könnte nützlich sein.

Mir ist allerdings gerade aufgefallen, dass "d3d_alphadepth", "d3d_shadowdepth" und "d3d_texdepth" zur Laufzeit gar nicht geändert werden können. Diese drei Variablen könnten aber Texturspeicher sparen.
Posted By: Joey

Re: verschiedene Texturqualitäten - 09/16/06 15:17

die engine kann nicht reinitialisiert werden, daher ist es grundlegend ein problem so ein optionsmenü zu erstellen. eine möglichkeit wäre es, die modelle dynamisch zu laden und je nach detailstufe die texturen herunterzuskalieren und auch entsprechend zu benennen. oder man erstellt jedes level komplett neu für jede detailstufe, aber da du gesagt hast, dass du level blocks nur für die skybox verwendest ist diese methode unnötige zeitverschwendung.
Posted By: LordRathan

Re: verschiedene Texturqualitäten - 09/16/06 16:19

Ich habe mir auch schon überlegt für jedes Modell die Textur via Script zuzuweisen und je nach Einstellung eben die passende Textur. Das scheint mir aber unrentabel, da bei neuen Leveln sehr viele Modelle in das Script aufgenommen werden müssten.

Ich denke, ich werde lediglich das Mipmapping einstellen lassen. Zusammen mit Schatten- und Lichteinstellungen, sowie variabler Auflösung + Farbtiefe sollten genügend Grafikmöglichkeiten abgedeckt werden.

Danke euch Beiden erstmal, wenn noch jemand etwas Gutes weiß, kann er mir das gerne hier mitteilen.
Posted By: Thomas_Nitschke

Re: verschiedene Texturqualitäten - 09/17/06 14:16

Quote:

die engine kann nicht reinitialisiert werden



Wo wir hier schon im "Ask Conitec"-Forum sind, kann man an dieser Stelle auch gleich mal fragen: Warum eigentlich nicht? Die Mehrzahl aller Engines beherrscht das. Wer z.B. die q3-Engine etwas kennt (die schon ziemlich alt ist), der weiß, dass man dort nur "vid_restart" in die Konsole eingeben muss, um die Engine neuzustarten (sprich, das D3D-Device neu zu initialisieren). Warum kann A6 das nicht?
Posted By: jcl

Re: verschiedene Texturqualitäten - 09/18/06 07:15

Lord: Sie haben Recht, dass Sie, wenn Sie kommerzielle Qualitaet anstreben, dem User definitiv ein solches Optionspanel anbieten sollten.

Allerdings glaube ich kaum, dass es etwas bringt, zwischen TGA- oder PCX-Texturen zu waehlen. Geben Sie dem User besser Schalter fuer Texturkompression ein/aus (d3d_texdepth und d3d_shadowdepth) sowie Texturaufloesung (d3d_texlimit). All diese Variablen koennen Sie vor oder auch im Spiel umstellen. 'Redefinable' heisst in der Regel, dass sie sich erst auf alle danach geladenen Texturen auswirken. Wenn der User mitten im Spiel die Optionen umstellt, reinitialisieren Sie einfach das aktuelle Level.

Matrix: A6 hat keinen "vid_restart" Befehl, weil eine moderne Engine keinen braucht. Wenn doch, sind unsere User zum Skripten einer solchen simplen Funktion sicher selbst intelligent genug - oder?
Posted By: FBL

Re: verschiedene Texturqualitäten - 09/18/06 08:58

Kann man denn mit Lite-C nicht das Optionsmenü vor das Öffnen des Enginefensters hängen?

Klar, dann hat man das Menü nimmer "ingame", aber es wäre doch ne Möglichkeit..?
Posted By: jcl

Re: verschiedene Texturqualitäten - 09/18/06 09:50

Wozu brauchen Sie das Optionsmenu vor dem Oeffnen des Enginefensters? Bevor sich das Fenster oeffnet, ist es zu und kann somit logischerweise auch kein Menu anzeigen.
Posted By: broozar

Re: verschiedene Texturqualitäten - 09/18/06 10:21

klar, leeren block erstellen, optionsmenü programmieren, ergebnisse in txt oÄ speichern, dann die hauptapp starten und ergebnisse einladen. mein versuch dazu > VAKcBeta 8.5, programmiert einfach ein paar extraspalten für eure texturoptionen dazu.
Posted By: jcl

Re: verschiedene Texturqualitäten - 09/18/06 10:25

Ich glaube eher nicht, dass Sie in einem kommerziellen Spiel Ihre User mit "leeren Blocks, Text speichern und Hauptapp starten" konfrontieren sollten. Nehmen Sie besser ein Panel und keine "leeren Blocks", speichern Sie die User-Eingaben in Variablen und starten Sie keine "Hauptapp".
Posted By: LordRathan

Re: verschiedene Texturqualitäten - 09/18/06 10:36

jcl: Danke. Ich denke, damit lässt sich das gut umsetzen.

EDIT: d3d_texlimit scheint da genau das zu sein, was ich gesucht habe.
Posted By: FBL

Re: verschiedene Texturqualitäten - 09/18/06 10:36

Quote:

Wozu brauchen Sie das Optionsmenu vor dem Oeffnen des Enginefensters?




Dann kann man diverse Größen, die zur Laufzeit nicht verändert werden können (z.B. d3d_alphadepth), über ein Menü vor dem Aufruf des Enginefensters einstellbar machen und muß nicht per Command Line und/oder externem Startmenü rumpfriemeln.
Eine andere sinnvolel Möglichekit ist es, die Startausflösung je nach Benutzereisntellung direkt festzulegen und somit nicht zu Spielstart kurz das Fenster von der Standardauflösung auf die gewünschte zu verstellen (hat mit diversen Grafiktreibern nämlich den Effekt, daß der gesamte Windowsdesktop zerschoben wird bei Defaultauflösungen wie 640x480).
Posted By: LordRathan

Re: verschiedene Texturqualitäten - 09/18/06 10:43

Quote:


Eine andere sinnvolel Möglichekit ist es, die Startausflösung je nach Benutzereisntellung direkt festzulegen und somit nicht zu Spielstart kurz das Fenster von der Standardauflösung auf die gewünschte zu verstellen (hat mit diversen Grafiktreibern nämlich den Effekt, daß der gesamte Windowsdesktop zerschoben wird bei Defaultauflösungen wie 640x480).




Was würde passieren, wenn man kurz vor Beenden der Engine wieder auf 640x480 runtergeht?
Posted By: jcl

Re: verschiedene Texturqualitäten - 09/18/06 10:45

Ich denke nicht, dass es sehr professionell aussieht, wenn Sie vor dem eigentlichen Spiel ein separates Startprogramm aufrufen. Der einzige Fall, wo so etwas Sinn machen koennte, ist ein externes Lobbyprogramm fuer den Multiplayermodus. Alles andere koennen und sollen Sie innerhalb des Spiels umschalten.

Mir ist kein Fall bekannt, wo ein Umschalten der Videoaufloesung eines Spiels den Desktop "zerschiebt". Auf einem System allerdings, das keine hoehere Aufloesung als 640x480 unterstuetzt, werden A6-Programme vermutlich ohnehin nicht laufen. Herunterschalten der Aufloesung vor Beenden der Engine bringt nichts, da bei Beenden eines Fullscreen-Programms der Original-Desktop ohnehin wiederhergestellt wird.
Posted By: FBL

Re: verschiedene Texturqualitäten - 09/18/06 11:09

Ich hab dieses Problem auf zwei unterschiedlichen Rechnern, mit A5 wie auch mit A6.
Unter Win98 gabs das nicht, erst seit ich mit XP arbeite.
Hab das oben übrigens etwas blöd ausagedrückt. Mit 640x480 meinte ich die Defaultauflösung von Acknex. Klar - die kann man auch per redefine verstellen, aber das ist nie eine 100%ige Lösung. Verschiedene PCs - verschiedene Desktopauflösungen.
Mein Desktop selbst ist auf 1280x1024 eingestellt.

Starte ich nen Acknex Progrämmchen, wird erst der Desktop auf die im Script eingestellte Auflösung zusammengeschoben, alle Fenster auf diese Größe limitiert. Extremst nervig!
Danach ist es egal, ob im Spiel die Auflösung verstellt wird oder nicht - der Desktop ist schon längst verunstaltet.

Seperate Startprogramme sind übrigens durchaus üblich. Hab ich bei Gothic gesehen und ich glaube auch Oblivion hatte etwas derartiges (nicht mehr sicher).
Finde ich auch nicht unprofessionell oder störend.

Als unprofessionell empfinde ich es hingegen, wenn ich im Spiel eine Auflösung von 1024x768 eignestellt habe, das Spiel aber jedesmal erstmal mit 640x480 startet (beim Neustart) und dann erst auf die eingestellte Auflsöung umschaltet. Das gibt unter für eine kurze Zeit diese unschönen Artefakte wenn man die Auflösung wechselt - und in meinen Testfällen eben das Problem, daß es einem den Desktop zerschießt. Man könnte natürlich alle Desktop Icons nur in die obere linke Ecke legen und es würde gehen, aber dann braucht man das prof... Wort garnimmer erwähnen
Posted By: jcl

Re: verschiedene Texturqualitäten - 09/18/06 11:13

Ihr System verschiebt Icons auf dem Desktop, wenn Sie im Spiel die Aufloesung umschalten?? Was haben Sie fuer eine Video-Hardware?

Wenn Sie im Spiel selbst die Aufloesung nicht wechseln wollen, starten Sie doch einfach im Window-Modus, lassen den User die Aufloesung waehlen und schalten dann auf Fullscreen um. Speichern Sie die Video-Voreinstellungen in einer Include-Datei, und benutzen Sie diese fuer den naechsten Spielstart.
Posted By: broozar

Re: verschiedene Texturqualitäten - 09/18/06 11:14

also ich finde ja externe menüs sehr übersichtlich und nützlich, uA aus Firos Gründen (variablen setzen, die zur laufzeit nicht verändert werden können). aber jcl hat auch recht, sonderlich professionell sieht das nicht aus und die lezten spiele dieser art kamen um die jahrtausendwende heraus (oblivion hab ich nicht, ka).
persönlich finde ich es aber mehr als nervig, wenn zB wie in SeriousSam 1/2 nach jeder umstellung der videooptionen die engine reinitialisiert, der level komplett neu eingeladen werden muss. das dauert ewig und nervt bei der dritten umstellung gewaltig.

das verschieben der desktopsymbole trat bei mir nur bei einem nicht ordnungsgemäßen beenden der programme gelegentlich auf (absturz, alt+strg+entf oÄ), nicht aber beim ordungsgemäßen "quit".
Posted By: FBL

Re: verschiedene Texturqualitäten - 09/18/06 11:17

Quote:

Ihr System verschiebt Icons auf dem Desktop, wenn Sie im Spiel die Aufloesung umschalten?? Was haben Sie denn fuer eine Video-Hardware?





Geforce 7900 GT, Treiber müßte ich heute abend nachschaun. Hab recht stabile von Mitte des Jahres, da man aktuelle Nvidia Treiber ja bekanntlich einfach nicht nutzen kann, weil die Hälfte nimmer funktioniert.
Hatte aber shconmal geupdated - das Problem bleib bestehen.

Ob nach dem Start auch noch weiter verschoben wird, kann ich jetzt nicht sagen. In meinem Fall ist die Auflösung zu Enginestart ausschlaggebend.
Posted By: old_bill

Re: verschiedene Texturqualitäten - 09/18/06 11:41

Quote:

persönlich finde ich es aber mehr als nervig, wenn zB wie in SeriousSam 1/2 nach jeder umstellung der videooptionen die engine reinitialisiert, der level komplett neu eingeladen werden muss. das dauert ewig und nervt bei der dritten umstellung gewaltig.




Wobei das doch so in fast allen Spielen ist?
Die BattleField Serie zb, da wird bie Grafikänderungen das ganze kurz
reinitialisiert, aber währenddessen eine andere App einfach mit einem
schwarzen Bildschirm darübergelegt, und so fällt es nicht weiter auf,
ausser das es kurz schwarz wird.

Wünschenswert wäre übrigens in dem Zusammenhang auch nochmal ein Überdenken
einer AntiAliasing Option, wie es ja andere "professionelle" Software auch hat.

old_bill
Posted By: Perro

Re: verschiedene Texturqualitäten - 09/18/06 12:36

Quote:

aber jcl hat auch recht, sonderlich professionell sieht das nicht aus und die lezten spiele dieser art kamen um die jahrtausendwende heraus (oblivion hab ich nicht, ka).





ich kenne einige aktuelle spiele die (noch) ein solches menu benutzen. häufig wird das gleich gestartet wenn man die cd einlegt.
© 2024 lite-C Forums