Tag: rendering

Entries for tag "rendering", ordered from most recent. Entry count: 187.

Uwaga! Informacje na tej stronie mają ponad 6 lat. Nadal je udostępniam, ale prawdopodobnie nie odzwierciedlają one mojej aktualnej wiedzy ani przekonań.

Pages: > 1 ... 18 19 20 21 22 ... 24 >

# The Final Quest 7

Sun
22
Jul 2007

Animacja szkieletowa już (prawie) działa, ale kod się odrobinę zamotał i chyba najwyższy czas wziąć się za studiowanie literatury tudzież inne poważne przygotowania do mojej pracy magisterskiej, a innymi słowy za zaprojektowanie i napisanie siódmego już (i - za każdym razem sobie to obiecuję - ostatniego) podejścia do mojego silnika. Wyjdzie mi pewnie że nie jest tak źle i trzeba tylko trochę zmienić a potem pisać dalej, ale to się okaże.

Mówią, że podstawą jest abstrakcja. Ale jak tu uogólnić rzeczy takie jak efekty postprocessingu typu Heat Haze czy Bloom, kiedy każdy z nich działa w zupełnie inny sposób i wymaga innej obsługi? Jak sortować obiekty wg materiału, tekstury czy shadera, jeśli każdy powinien sam siebie odrysować i ukryć w sobie sposób, w jaki to robi? Jak rozdzielić parametry obiektów, materiałów i świateł, kiedy one i tak muszą się razem spotkać w chwili kompilowania i ustawiania shadera? Na te wszystkie pytania znam jakieś odpowiedzi, ale niezbyt mnie one zadowalają. Macie może jakieś dobre materiały na ten temat?

Comments | #rendering #engine #productions Share

# Jednak jest nadzieja

Mon
16
Jul 2007

Na forum Warsztatu mi nie odpowiedzieli, ale nie poddałem się i napisałem na forum Blendera. To był dobry pomysł. Niejaki ideasman42 rozwiązał mój problem w najlepszy możliwy sposób - odkrył, że to był mój błąd, w dodatku bardzo elementarny, związany z nieznajomością języka Python (co się dziwić - nauczyłem się go tylko na potrzeby napisania tego eksportera). Jest więc nadzieja na animację szkieletową z Blendera...

Dziś odkryłem (wymyśliłem na spacerze, a potwierdziłem wyprowadzając wzór na kartce), że zamiana macierzy z układu współrzędnych Blendera na DirectX i odwrotnie (gdzie zamiana punktu czy wektora to po prostu zamiana współrzednej Y z Z) polega na zamianie miejscami zarówno trzeciej z czwartą kolumną, jak i trzeciego z czwartym wierszem. To ciekawe, że jeszcze nigdy nigdzie w literaturze czy w Sieci nie spotkałem tego zagadnienia. Każdy tekst skupia się na używaniu jednego układu współrzędnych i żaden nie pokazuje, jak przechodzić między nimi. Jeszcze tylko wymyślę, jak prawidłowo przekształcać między tymi układami kwaternion i kolejny element układanki będzie gotowy :)

Comments | #graphics #scripts #warsztat #rendering Share

# Blender - ale dół

Sat
14
Jul 2007

Dwa tygodnie nauki Blendera, przypominanie sobie Pythona, pisanie eksportera - tyle roboty na marne. Dziś skończyłem pisać wczytywanie statycznych siatek i wszystko zadziałało OK. Że Blender zwraca jakieś dziwne wektory normalne to zniosłem - policzyłem je sobie sam używając NVMeshMender - razem z wektorami Tangent i Binormal, których Blender w ogóle nie ma, bo nie używa Tangent Space, a Normal Mapping obsługuje tylko w Model Space. Zacząłem więc ochoczo pisać eksport szkieletu o oto co się okazało...

Blender zwraca do skryptu jakieś losowe liczby zamiast pozycji kości! Tego sobie już sam nie wyczaruję. Sprawdziłem to wiele razy, wyizolowałem ten bład i przygotowałem skrypt testowy: HorribleBlenderArmatureBug.py. Testowałem na wersji Blender 2.44, ale kiedy znalazłem na Google ten temat forum, zwątpiłem czy użycie wcześniejszej wersji rozwiąże problem. Najwidoczniej ludzie borykali się z tym już w 2005 roku, a jako odpowiedź można przeczytać że "być może komuś jednak udało się poprawnie wyeksportować animację" oraz żeby spróbować innych programów do modelowania.

Chciałbym żeby to był mój błąd, ale niestety nic na to nie wskazuje. Blender zyskuje więc dla mnie nowy, trzeci przydomek - "Niedorobione Oprogramowanie" (kto pamięta drugi? :)

Comments | #rendering #graphics #scripts #engine Share

# Kolorowanie składni HLSL

Mon
21
May 2007

Kolorowanie składni HLSL

Pisząc od czasu do czasu shadery zauważyłem, że składni języka HLSL nie koloruje nic oprócz nVidia FX Composer i ATI RenderMonkey. Istnieje wprawdzie możliwość wprowadzenia takiego kolorowania do Visual C++, ale jest to paskudne obejście, które tak naprawdę zmusza Visual do traktowania plików FX jako kodu C++ i nowe słowa kluczowe koloruje również w kodzie C++. Dlatego nawet nie będę go tu podawał.

Zamiast tego napisałem wczoraj własny schemat kolorowania składni plików FX (w tym preprocesor, język HLSL i asembler shaderów do wersji 3.0) dla najlepszego edytora tekstu na świecie, czyli jEdit :) Wszystkich żądnych kolorków i niezniechęconych faktem, że ten program jest w Javie (to naprawdę jego jedyna wada) zachęcam do pobrania: hlsl.xml (20 kB). Instrukcja instalacji znajduje się w komentarzu wewnątrz pliku.

Comments | #rendering #software #productions Share

# SCMP TechDemo 1.2

Thu
17
May 2007

Nowa wersja mojego dema poprawia trzy problemy:

Zachęcam do pobrania: TFQ_SCMP_TechDemo_1-2.rar (1.36 MB). Przetestujcie i powiedzcie, czy jest już znośne i czy można iść dalej z robotą :)

Comments | #productions #rendering #engine Share

# Pakowanie Shadow Mapy do A8R8G8B8

Sat
12
May 2007

Dzisiaj dopisałem nowy tryb Shadow Mappingu, w którym używam tekstury w formacie A8R8G8B8. To już nie ma prawa nie działać :) Wartość głębokości pakuję do składowych RGB. Składowa A pozostaje do wykorzystania przez Alpha Testing. Zresztą kodując liczbę typu float i tak nie uzyskałbym dokładności większej niż 24 bity, a nawet 16 wystarczy do tego celu.

Jak to się dokładnie robi? Niełatwo znaleźć konkretne informacje na ten temat. Pomogły mi dwa tematy forum: ten i ten. Ostatecznie mój kod wygląda tak:

// Kodowanie
float v = In.ShadowMapZW.x / In.ShadowMapZW.y; // Tak naprawdę to zw
Out = v * float4( 256*256, 256, 1, 0 );
Out = frac(Out);
//Out -= Out.rrgb * float4( 0, 1.0/256.0, 1.0/256.0, 0 );

// Dekodowanie
const float4 Factors = float4(1/256/256, 1/256, 1, 0);
sample = dot(Factors, tex2D(s, t));
itd...

Ta ostatnia linijka w kodowaniu jest zakomentowana, ponieważ choć na forum zalecali ją jako niezbędna do pozbycia się artefaktów, a w moim przypadku właśnie jej usunięcie doprowadziło cienie do porządku. Rozchodzi się tutaj tak naprawdę o pytanie, czy kodując wychodzącą z Pixel Shadera wartość rzeczywistą 0.0 .. 1.0 do całkowitoliczbowego bajtu 0, 1, ..., 255 karta pozostałą część ułamkową obcina czy też zaokrągla? Ayufan twierdzi że obcina i moje doświadczenie też to potwierdza. Ale czy tak jest zawsze? Czy to jest zdefiniowane, czy zależne od konkretnej karty? Tego chyba trudno będzie się dowiedzieć...

Comments | #rendering Share

# The Final Quest - SCM&P TechDemo

Thu
10
May 2007

Skończyłem to nad czym pracowałem przez ostatnie tygodnie czy nawet miesiące, czyli:

Efekt można obejrzeć i wypróbować na własne oczy pobierając i uruchamiając moje nowe demo techniczne - SCMP TechDemo 1.0. Oby działało bez zarzutów na różnym sprzęcie...

Comments | #rendering #productions #engine Share

# Wchodząc w szczegóły

Thu
03
May 2007

Kot zadał na forum - w temacie Narzut BeginPass / EndPass - ciekawe pytanie dotyczące jak najlepszej (oczywiście z punktu widzenia wydajności) organizacji procesu renderowania obiektów w silniku, w którym wykorzystujemy mechanizm efektów FX. Temat jest o tyle ciekawy, że mnie również dotyczy :) Dlatego wszelkie odpowiedzi mile widziane.

Przy okazji padł link do ciekawego znaleziska - ktoś napisał sobie swoje My own little DirectX FAQ z kilkoma ciekawymi informacjami.

Jeszcze mały off-topic: Wszystkim kolegom piszącym w tym roku maturę życzę powodzenia i ocen dostatecznie wysokich, żeby dostali się na swoje wymarzone studia - bo w takim momencie chyba to jest dla młodego kodera najważniejsze. GL & HF :)

Comments | #rendering #directx Share

Pages: > 1 ... 18 19 20 21 22 ... 24 >

[Download] [Dropbox] [pub] [Mirror] [Privacy policy]
Copyright © 2004-2026