Ismét egy "gyümölcse" a nosztalgiahullámomnak, amit most a Tomb Raider 2 Velence demója ihletett. "Legkedvencebb" 3D játékműfajom a third person shooter, amely műfajnak az első legsikeresebb(?) példája Tomb Raider (1996) volt - hasonló szintén korai időkből származó kedvenc a Flashback c. játék folytatása a Fade to black (1995).
A TR-ben megvalósított gameplay bár nem a "legkedvencebb", de a megjelenítés, Lara interakciója a környezettel lenyűgözött és lenyűgöz ma is (a maga módján). Némi kutatás után kiderül, hogy bár a játék nem lett soha nyílt forrású elég sokan foglalkoznak vele még ma is. Ennek eredménye, hogy a készülnek reverse engineer-elt TR enginek így elérhető az assetek betöltéséhez szükséges kód is.
A kódot vizsgálva kiderül az is, hogy gyakorlatilag az első 5 TR játékot ugyanazon engine szolgálta ki, amely együtt fejlődött a hardverekkel / igényekkel (PC platformon az első verzió még DOS alatt futott aztán az utolsó már Win alatt és 3D gyorsítással).
Ha megnézzük wireframe módban a legelső játékot akkor feltűnik, hogy meglepően jól van tesszellálva a jelenet statikus része. Ha belegondolunk ez az akkori körülmények között (CPU szoftveres raszterizálás 60 MHz-n!) ez "rengetegnek" számíthatott (nevezhetjük akkori hi-polynak is). Ennek valószínűleg egyik oka, hogy nem önálló textúrákkal dolgoztak, hanem textúra atlaszokkal és nem használtak ismételt textúrákat. Tehát ha textúra ismétlésre volt szükség, akkor újabb vertexeket kellett beilleszteni a geometriába.
A textúrákkal kapcsolatban feltűnik, hogy annak ellenére, hogy egy tile általában 64x64 méretű mégis relatíve nagy felbontásúnak érezzük a végeredményt. Ez is a jól tesszellált geometria eredménye mivel egy textúra tile nem nagy felületre van ráfeszítve.
És a titok, amiatt ilyen "részletes" geometria mellett is nagy pályákat tudott kezelni gond nélkül az a térfelosztás módja és a portálok igen kiterjedt használata! A jelenet viszonylag kis méretű téglatestek formájú térrészekre van felbontva, amelyeket portálok kötnek össze. Ebből következik, hogy a portálok normálja mindig valamelyik koordinátatengellyel párhuzamos ill. tovább megkötés, hogy csak négy pontból állhat a portál kontúrja.
Meglepő módon az én enginem is ugyanilyen rendszerre épül (furcsa módon más játékban nem találkoztam ilyen rendszerrel), de ezen megkötések nélkül. Ezen kompatibilitásnak hála nem igényel sem külön pipeline-t sem átalakítást az eredeti asset (kivéve a textúra atlaszokat, mert azokat át kellene alakítani paddelt textúrákká). Mivel az asset árnyalási infót csak nyomokban tartalmaz a directional radiosity és a lightprobe toolommal generáltam ilyet a jelenethez.
A betöltő kódjában tovább kutakodva felfedezhető, hogy melyik TR részben milyen új feature-ök kerültek be és hogy a statikus jelenet felépítésének elve és Lara model ID-je (ami nulla) végig ugyanaz maradt ("minden talaj elem sarka derékszög"). Ja igen, Larát is lehetne importálni...
Végül pedig a képek:
Ahonnan a Tomb Raider indult '96-ban:
Wireframe nézet a portálokkal:
Directional radiosity normal mappel: