Archive for the ‘graphics’ Category.

как мы рожали death track

Прошло уже некоторое время с момента выхода наших гоночек ( http://deathtrack.ru/), предрелизные страсти улеглись, патч выпущен и, говорят, как раз самое время собрать камни. В связи с чем попробую рассказать немного про то, как мы тот Death Track делали. Расскажу выборочно и в основном про картинку ну или про то что с этой картинкой связано.

Continue reading ‘как мы рожали death track’ »

Левая резьба.

Иногда очень хочется нарезать левую резьбу на гайку. Потом обнаруживаешь, что все имеющиеся болты не подходят к твоей гайке.

В принципе история достаточно простецкая. Но на безрыбье и рак рыба.

Continue reading ‘Левая резьба.’ »

Не коротко о GDC 2008

Так вот, родная компания отправила на GDC, потому что меня любит. Почти полная неделя в Сан-Франциско – это не может не радовать
Не считая того факта, что все дожди и облака переехали на эту неделю из Сиэтла вместе со мной (извини, солнечная Калифорния, радуйся, волшебный Northwest), все было более чем хорошо.

На удивление сложно найти людей, которые кодают на DX10, один Крайтек только и нашел. С мужиками из Крайтека хорошо и весело, привет Тимуру. Такое ощущение, что из Крайтека приехало больше народу, чем из MS…
Рассейского геймдева видел совсем уж мало, видимо отрываюсь от. Или это 1С не приехал. Надо в любом случае что-то делать.

Интересно на конференциях, как всегда, слушать девелоперов. IHV и платформодержатели расскажут тебе все и так, у них работа такая, а вот девелоперов слушаешь всего несколько раз в год. Мужики вполне отвечают на вопросы и не палятся (и даже реагируют на письма). Я тоже буду излагать достаточно примерно, надеюсь в случае чего смогу уточнить в комментах.

Не успел пробиться на тек в Uncharted, не выдержал километровой очереди на Final Fantasy.
Давайте буду рассказывать про то, что понравилось и запомнилось.
Continue reading ‘Не коротко о GDC 2008’ »

вечерние чтения

Было скучно под вечер. Решил почитать дампы NV50, которые нарулили пацаны с Нуво. Вот репозиторий: http://people.freedesktop.org/~kmeyer/renouveau_dumps/

Нвидия традиционно радует.

Continue reading ‘вечерние чтения’ »

DX 10 post, part 1 – Infrastructure

DX 10 post, part 1 – Infrastructure
DX 10 post, part 2 – API changes
DX 10 post, part 3 – New hardware features

Этот пост надо было написать год назад, потом полгода назад, потом месяц назад и неделю назад.
Год назад я был под впечатлением от MS вообще, полгода назад я был в неправильной команде, а месяц и неделю назад жизнь кипела и бурлила. Однако, наконец, случился неожиданный перерыв и можно, наконец, написать про DX10.

Сразу скажу, я как девелопер на DX10 писал не больше маленькой демки, но в принципе уже имел счастье копаться во внутренностях. Если что, считайте меня евангелистом, гыгыгы.
Буду описывать впечатления высокого уровня, низкого – детали реализации. Опять же, каждый пункт очень не подробный, про каждый – можно писать большой детальный отдельный пост. Пожелания принимаются :)

За один раз все не описать, сегодня будут, пожалуй, самые большие изменения – инфраструктурные. Нужно отметить, что большинство из них относятся не только к DX10, но и вообще ко всем версиям DX на Висте.

Continue reading ‘DX 10 post, part 1 – Infrastructure’ »

Странное. Смешение DXT текстур.

Все мы знаем про замечательный формат DXT1. Напомню, что формат этот кодирует блоки 4×4 пикселя, кодирует весьма простым образом. Cначала хранятся два опорных цвета в формате rgb565. Потом хранится масочка из 16 двухбитных lerp-значений. Формат простецкий, занимает всего 4 бита на пиксель, чем чертовски привлекателен.

Часто хочется смешивать несколько текстур. К примеру, по менее детальной маске, к примеру, аддитивно. Ландшафт так часто делается. Возникает дурацкая мысль…

Continue reading ‘Странное. Смешение DXT текстур.’ »

Dual Quaternions

Время временно кончилось. Но скоро начнётся снова. А пока чтиво.

https://www.cs.tcd.ie/publications/tech-reports/reports.06/TCD-CS-2006-46.pdf – теория
http://isg.cs.tcd.ie/projects/DualQuaternions/ – практика

Масса плюсов, свои минусы. По мне так без произвольного масштабирования вполне можно жить. Зато тренд; так можно, так модно. В резюме написать, сразу после сферических гармоник. Опять-же полезно для общего развития – можно, по ходу дела, в обычных кватернионах начать разбираться.

Гранулярность рендер-стейтов и черная прелесть.

Потихоньку пишу на черной прелести. Модельки грузятся, шейдеры компилируются, стейты устанавливаются. С нехитрым интерфейсом a-la OpenGL. Нехитрый интерфейс в стиле OpenGL кажется неудобным и устаревшим. Видать, время поспело, надо думать про высокий уровень. Сначала про обертки над рендером, а потом и про “3D сцену.”

Continue reading ‘Гранулярность рендер-стейтов и черная прелесть.’ »

Theora глазами имплементирующего.

Пришло время имплементировать видеокодек в движок. Выбрали Theora/Vorbis/Ogg как бесплатную со всех сторон. Расскажу о процессе….

Continue reading ‘Theora глазами имплементирующего.’ »

Moving on to DXGI

Не прошло и полутора лет, как сбылась мечта идиота – сегодня первый день, как я в DirectX. Так как я в общем-то за этим и шел работать в MS, вот, мечты сбываются.

Если конкретнее, в DXGI, GI – это Graphics Infrastructure. DXGI – это место, где DX Runtime соприкасается со всей остальной OS. Скажем, Present stack и связь его со всякими HWND и прочим добром. Менеджмент текстур и вообще ресурсов, их взаимодействие с GPU scheduler (я как-нибудь расскажу, про что это) и еще всякое. Энумерации адаптеров, мониторов, swap chains, fullscreen mode и т.д, и т.п.

Где видите IDXGI – это его публичная часть. Кто писал на D3D10, уже видел.
Буду изучать kernel debugger и интерналсы Винды, пока все выглядит страшно и необъятно.
DXGI – это интересно, потому что там можно решать идеологические проблемы, напрямую не зависящие от железа. Рантайм кодать стало скучно – он тупо форвардит все вызовы в драйвер, интересно только спеки на новые фичи и driver API писать. А вот в инфраструктуре – еще есть много чего допиливать. Грубо говоря, все то, что железо может, а OS не позволяет – там.

Настал тотальный dream place to work. Посмотрим, на что он похож.
Кстати, я так сходу не могу вспомнить ни одного русскоязычного человека около DX, пишущего технический блог, так что, ыыыыыыыыыыы, эклюзифф.