Отваряне на ресурсите на играта, като използвате примера на играта You Are Empty

Здравейте всички! Както обещах - веднага след като разбрах сесията, публикувам статия за отваряне на игровите ресурси. Ще започнем да се мушкаме в домашната играчка - YouAreEmpty. Надявам се, че имате лицензирано копие За тези, които нямат игра - ще си позволя да прикача един от моделите например.

Какво ни трябва - самата игра (добре, или моделът, който прикачих в архива), всеки съвременен компилатор на C ++ и любимата ви IDE (използвах Visual Studio 2008) и любимият ви Hex редактор (предпочитам McAfee FileInsight).

отваряне

Чудесно, сега можем да четем индексите на модела. Нека да преминем към върховете. Както вече установихме, веднага след индексите има 2 байта (дума), съхраняващи броя на върховете (в случая = 1406). Но какъв е форматът на тези върхове? Добре, нека първо приемем, че върховете имат съвсем стандартен набор - координати на позиция, нормал и текстура. Нека опишем формата на вертекса като такава структура: