piątek, 14 listopada 2008

Image capture

Uznałem, że skoro mam napisać pracę magisterską o renderowaniu grafiki, to fajnie byłoby móc jakoś szybko i łatwo przechwytywać obrazy generowane przez silnik. Najlepiej na kilku etapach i wersjach. Postanowiłem dodać taką funkcjonalność.

Założyłem sobie takie o to możliwości/cechy:
  • Renderer ma metodę capture, która przyjmuje jako parametry bitmapy. Zostaną one wypełnione wynikowymi obrazami.
  • Przechwytywanie dotyczy następnej wygenerowanej ramki, czyli wszystko co trafi do renderera pomiędzy następną parą begin - end.
  • Uchwycone mają zostać (na dziś) następujące obrazki
    • z buffer
    • finalny w wersji solid
    • finalny w wersji wireframe
Póki co przechwytywanie filmów mi nie w głowie, także zrezygnowałem na razie z sekwencji video.

Wziąłem się do pracy od podstaw, czyli od napisania klasy zapisującej bitmapy do plików tga. Sprawa jest dosyć banalna kiedy ma się pod ręką własnoręcznie napisany loader (żadne tam kopi pasty) tych plików. Także raz dwa się z tym uwinąłem i postanowiłem zrobić test.

Oryginał
Po teście


Górny obrazek jest oryginalny, dolny po załadowaniu moim własnoręcznie wykonanym loader'em i zapisie nowiusieńką klasą do zapisu. Przyjdzie mi jeszcze chyba nieco posiedzieć nad tym banalnym problemem.


Uczy pokory, oj uczy :)

Brak komentarzy: