Компьютерные игры. Как это делается




Готовьтесь к неожиданностям


Вы садитесь за графику для новой игры, думая, что знаете, как ее делать и сколько времени это займет, но обстоятельства могут сложиться самым неожиданным образом! Предположим, вам необходимо создать шесть спортивных автомобилей для очередной трехмерной гоночной игры. Работа знакомая: для предыдущей игры вы сделали 10 машин, на каждую ушло 15 дней (пять дней на 3D-модель, восемь на текстуру и два дня на сборку и исправления). Но! Вашего босса не устраивают старые модели, отныне ему надо «больше полигонов, больше жизни в модели и больше текстуры». Не беда, вы опытный компьютерный художник, вы и так знаете, что и как предстоит делать, и даже готовы предложить для новых задач лучшие решения. Исходя из опыта, вы выделяете на создание каждой машины те же 15 дней.

А потом... потом к вашему удивлению вдруг обнаруживается, что требование «больше полигонов» отнюдь не упростило определение формы - потребовался более аккуратный подход к моделированию (итого по четыре дополнительных дня на машину). «Больше жизни» вылилось в появление у автомобиля дверей. На то, чтобы двери должным образом открывались и закрывались, пришлось потратить лишних восемь дней. В конечном счете, вы добавили объект «закрытая дверь», который исчезает, когда дверь открывается, и объект «открытая дверь», прячущийся, когда дверь закрыта (еще по два дня на машину). Кроме того, в новой версии игры появились деформации от удара. При этом во внутриигровой 3D-системе применяется простой Z-буфер (массив, в котором хранится информация о глубине расположения точки на экране. Иными словами, Z-буфер отвечает за разрешение сцен по «оси глубины». - Примеч. ред.), в результате чего шины и крылья машин весьма несимпатично проникают друг в друга. Что делать? Надо идти к программистам, предлагающим новую, ни на что не похожую группировку этих объектов (крыла и шины), которую нужно применить ко всем автомобилям, включая те, что уже сделаны (а это плюс 10 дней). Наконец, «больше текстуры» означает, что отныне текстуру автомобилей приходится хранить не в одной, а в двух страницах памяти, поскольку автомобиль теперь имеет длину 500 пикселей, а максимальный размер текстуры - 256x256.


Содержание  Назад  Вперед