иначе предмет будет отражать только часть сцены. А для кубического подойдет и с 90-градусным. Если сцена, которую необходимо отражать, статична, то текстуры можно заготовить заранее, если же она изменяется, то ее придется фотографировать прямо в процессе работы программы. Точно так же можно создать и эффект преломления, достаточно просто-напросто перевернуть текстуры.
Во многих играх чуть ли не каждую секунду что-то взрывается и горит. Для создания взрывов существует несколько подходов. Самый простой из них – это технология, основанная на 2D-спрайтах. Взрыв представляет собой последовательность быстро меняющихся текстур (точно так же можно сделать и огонь, только последовательность должна быть зацикленной). Поскольку это объект двумерный, нужно, чтобы взрыв был всегда обращен «лицом» к игроку. К сожалению, такие взрывы трудно разнообразить. Игра, в которой все взрывы одинаковые, будет выглядеть странно, а каждый новый тип взрыва потребует свою уникальную последовательность спрайтов (кстати, огонь можно разнообразить, просто сдвинув последовательность текстур по фазе). Такие взрывы нельзя располагать очень близко к игроку, иначе их плоская природа будет заметна.
Более сложные и впечатляющие эффекты создаются при помощи систем частиц. Тут киноиндустрия и разработчики игр идут нога в ногу. Ведь в кино на обработку каждого кадра компьютер может потратить достаточно большое время, а в игре это неприемлемо. А вот создание взрывов при помощи геометрии применяется только при разработке игр. Взрывы создаются как специфическая комбинация текстурированных особым образом сфер и других фигур. Такие взрывы гораздо менее требовательны к вычислительным ресурсам, чем сделанные на основе систем частиц, и зачастую дают неплохие результаты, ни в чем не уступающие им.
Практически все дымы в играх – это системы частиц, а вот для создания огня есть свой специфический способ, основанный на 3D-текстурах. Объемная текстура – это аналог обычной плоской текстуры, только теперь каждая вершина имеет не две, а три координаты, что позволяет накладывать на полигон такие цвета, какие соответствовали бы треугольнику в 3D-текстуре с углами в нужных точках. Огонь представляет собой изменяющееся тело, текстурированное таким образом, и за счет структуры 3D- текстуры достигается мерцание огня. Потенциально этот способ может давать очень хорошие результаты, но он довольно сложен в реализации.
Различного рода туманы часто используются в играх. Раньше главным предназначением тумана было скрыть границы сцены. Например, на открытой местности можно было не рисовать все объекты до горизонта, а просто затуманить их. Такой способ достаточно примитивно реализуется, просто, в зависимости от удаления точек от камеры, к их цвету подмешивался цвет тумана. Позже туман стали использовать для придания определенной атмосферы, тут он уже должен был быть не на всей сцене, а только на определенных ее участках. Для этого очень хорошо подходил вершинный туман; при его использовании для каждой вершины указывался не только цвет, но и «туманная» координата, в зависимости от которой и подмешивался цвет тумана. Интересный эффект стелящейся над землей пелены достигается набором полупрозрачных горизонтальных плоскостей, по которым в различных направлениях могут двигаться едва различимые текстуры.
Уже сейчас качество эффектов в играх оставило далеко позади некоторые фильмы прошлого, и можно с уверенностью сказать, что то, чем нас сейчас удивляет кинематограф, в недалеком будущем можно будет увидеть и на экране монитора в реальном времени.
ФМ-ВЕЩАНИЕ: Занимательная футурология
По традиции все «взрослые» колумнисты в начале года делают прогнозы на новый год, а в конце года обязательно подводят итоги (которые, как обычно, показывают, что «оракул» редко ошибается). Такие прогнозы, вспоминая старый анекдот из области теории вероятностей, делать нетрудно: «Какова вероятность того, что, выйдя из подъезда, вы встретите китайца»? (В связи с объявленным годом Китая в России и России в Китае.) Очевидно – 50%. Исходя из этого, попробую и я дать свой первый прогноз на будущее. Естественно, меня больше всего интересует интернет-рынок и состояние софтверной индустрии в России.
Маловероятно, что китайский поисковик Baidu выйдет на российский рынок и начнет конкурировать с Google. Даже самый смелый футуролог будет побит за такие утверждения. Но то, что Mail.ru объединится с «Яндексом» и .masterhost, выйдет на IPO и легким движением руки обгонит по капитализации Google двухлетней давности, даже угадывать не надо. РБК после этого займет достойное второе место и будет, учитывая предстоящий 2008 год, готовиться к очередной эмиссии, которую почти целиком выкупит один из ведущих издательских домов. «Рамблер», видя, что третье место уплывает, срочно проведет вторую эмиссию и на вырученные деньги купит eHouse, объединив две компании, путь и стратегию которых пока никто не понимает. Может быть, новая компания с гипотетическим названием РeHouseР, будет понятнее рунетовским аналитикам. Инвестиционный фонд Финама начнет вкладывать деньги в стартапы (ни до, ни после никому не известные) и к концу года неожиданно выпустит многонациональный сервис для всего постсоветского пространства. Сервис никому не будет нужен, но себя окупит. Одновременно на горизонте возникнет западный инвестиционный фонд FigNam. Он будет рассматривать десятки заявок в неделю на стартапы, связанные с тематикой социальных сетей, и, не удовлетворив ни одной, зарегистрирует сотни патентов в США на компанию NamFig. Лидирующий интернет-магазин достроит автоматизированный склад в Твери, и его арендует Amazon.com, организовав представительство в России под названием «Ам- Озон».
Что же в этой трудной для понимания западного человека ситуации будут делать Yahoo!, Microsoft и Google? Google наконец-то официально объявит о создании российского представительства в Бологом численностью 3000/1000 человек и начнет рекламную кампанию с рассылкой 170 тысяч писем, на которых будет написано: «Вебмастер. Твой чек с заработком 170К рублей на AdSense ты сможешь обналичить в ближайшем отделении Сбербанка!». Microsoft наконец-то назначит в российском представительстве персону, ответственную за интернет-канал, и русифицирует интерфейс Hotmail. В MSN Messenger появится реклама на русском языке, в которой будет рекламироваться Ситибанк. Yahoo!, который уже научился таргетировать на Россию, будет показывать рекламу «Последнего дозора» в личных дневниках ЖЖ- пользователей. На этом продвижение западных порталов в Россию в нынешнем году, видимо, и закончится.
Для софтверной индустрии настанут трудные времена. Во исполнение поручения президента и очередного пинка от премьер-министра министерства, распределяющие деньги, сдадутся на милость лоббистов от офшорного программирования и пропустят изменения в законодательстве. Вслед за тем из отдаленных регионов стройными рядами потянутся в технопарки дивизии программистов-недоучек. После полугодичного дополнительного обучения английскому языку на их основе будут создаваться call-центры, вполне способные конкурировать даже с индийскими (по зарплате, конечно). Через некоторое время выяснится, что индийцы готовы получать еще меньше, и Дубна с Троицком станут городами с преобладанием смуглого цвета кожи. Но это я уже полез в долгосрочное прогнозирование. Вернемся к текущему году.
На антивирусном рынке заметных изменений не произойдет, так как в бета-тестирование четвертой версии русифицированной Microsoft OneCare забудут включить компьютеры с русской Windows. Несколько крупных зарубежных вендоров откроют у нас представительства, но это никому не будет интересно, потому что маркетинговых бюджетов центральные офисы им не выделят. Антипиратские ассоциации продолжат бороться с контрафактом, что приведет к увеличению легальной доли программного обеспечения с 13% до 20% (что само по себе хорошо), но главное, это позволит мне написать «Пираты поневоле-7», получить еще сотни писем от разъяренных сисадминов и снять на этой основе мультфильм для flash-телевидения. Демпинг и откаты как явление не исчезнут. Такое только в дурном сне может привидеться. Но уровень и того и другого настолько возрастет, что компании, использующие эти методы, смогут обеспечить операционную прибыль на рекордном уровне – минус 10%. Да, как же я забыл про родной «Софткей». Чтобы завуалировать реальность своих предыдущих прогнозов, напророчу-ка я ему увеличение оборотов в