- Symulator MaSzyna -

Symulator EU07 (i nie tylko) => Bieżące Symulatorowe => Wątek zaczęty przez: Milek7 w 17 Lutego 2018, 17:00:32

Tytuł: Ostateczne uporządkowanie originów tekstur
Wiadomość wysłana przez: Milek7 w 17 Lutego 2018, 17:00:32
Wracam do tematu który właściwie nie jest bardzo problematyczny, ale gryzie mnie wewnętrznie. W ostatnim czasie exe zaczęło respektować origin TGA, więc uporządkowało się origin tablic relacyjnych, ale pozostaje dalej kwestia DDS. OpenGL przechowuje tekstury w konwencji origin dolny-lewy, jednak kontener DDS klasycznie przechowuje origin górny-lewy, i tak jest obsługiwany zwykle przez narzędzia, zapis, podgląd miniaturek. Obecnie exe wyciąga bezpośrednio dane z DDS i puszcza to na opengl oczekujący danych z odwrotnym originem, więc w celu poprawnej orientacji tekstury musi być vflip. Moja propozycja jest taka że poprawiamy w exe wewnętrzy flip, tak aby poprawnie odczytywało DDS z konwencją górny-lewy. Zakładając że flipuje się z prędkością 600MB/s, a przeciętna sceneria może mieć 250MB tekstur to całkowite spowolnienie wczytywania to jakieś 0.4 sekundy. Wada oczywiście taka że wszystkie unoffy trzymane w DDS będą wymagać flip, bo źle się załadują.
Co z tym robimy?
Tytuł: Odp: Ostateczne uporządkowanie originów tekstur
Wiadomość wysłana przez: Balaclava w 17 Lutego 2018, 17:04:44
Wedug mnie lepiej jest trzymac na dysku tekstury w normalnej orientacji. Spadek szybkosci wczytywania praktycznie zerowy, w zamian latwiejsze tworzenie paczek uzytkowych. Z mojego punktu widzenia zaleta bedzie tez brak koniecznosci uprawiania szamanstwa z siatka UV w skrypcie importu/eksportu T3D/SCN.
Tytuł: Odp: Ostateczne uporządkowanie originów tekstur
Wiadomość wysłana przez: Stele w 17 Lutego 2018, 17:12:00
Według mnie lepiej nie tykać. Konwertery i importery są dostosowane do flipa. Exe jest dostosowane do flipa. Paczki użytkowe robi automat. Deweloper powinien robić na tga i jak odwrócony dds go wkurza, to tylko lepiej, bo może pomyśli przed wrzucaniem czegoś tylko w dds.
Tytuł: Odp: Ostateczne uporządkowanie originów tekstur
Wiadomość wysłana przez: tmj w 17 Lutego 2018, 17:14:39
Biorac pod uwage ze paczka "uzytkowa" to dds + e3d, sklanialbym sie ku nieco innemu rozwiazaniu -- przeprowadzac flip dla UV przy wczytywaniu t3d (uv = 1 - uv) i flip dla tga. W ten sposob skompilowane modele e3d moga czytac nieodwrocony dds bezposrednio, a male spowolnienie w wersji developerskiej roznicy specjalnie nie zrobi?
Tytuł: Odp: Ostateczne uporządkowanie originów tekstur
Wiadomość wysłana przez: Milek7 w 17 Lutego 2018, 17:24:08
Noo można, ale czy jest po co tak szamanić, zamiast zrobić ładne wczytywanie poprawnego origina? To spowolnienie to chciałem pokazać, że 0.5s na całej scenerii nikomu nie zrobi różnicy.