» Featured
Иерархия объектов
Иерархия объектов очень удобна когда нам нужно задать какие-то трансформации объектов не относительно начала координат, а относительно друг-друга. Например, если создать иерархию из двух объектов: рука и туловище, то для того, что бы рука двигалась вместе с туловищем, нам не надо будет прилагать каких-либо усилий – при движении туловища трансформации всех объектов в иерархии (в нашем случае рука) будут пересчитаны в соответствии с движением объектов привязки (в нашем случае туловища), но при этом сами объекты … Читать Иерархия объектов »
Vertex Declaration
Vertex Declaration в Direct3D создаётся с помощью функции CreateVertexDeclaration, которой, в качестве аргументов, передаётся массив объектов типа D3DVERTEXELEMENT9, каждый из которых определяет отдельную запись (тип данных) в формате вершин модели – такие как позиция вершины, нормаль, текстурные координаты и так далее. Далее, при рендеринге объектов через Direct3D Device, до вызова отрисовки примитивов, созданный Vertex Declaration устанавливается с помощью функции SetVertexDeclaration и после этого графический конвейер сможет верно парсить данные нашей модели и передавать их на … Читать Vertex Declaration »
Per-pixel lighting (Попиксельное освещение)
Per-piхel lighting или Pixel shader lighting это общее название для техник, позволяющих рассчитывать цвет, яркость, освещение, блики и т.д. для каждого видимого пикселя того объекта, который мы рендерим. В старых играх освещения либо не было вообще, либо оно было статическим и, лишь в очень редких случаях, освещённость объектов рассчитывалось повертексно (для каждой вершины модели). Но, с ростом мощностей видео-карт, стало возможным использовать более точные методы расчёта освещения, в том числе и попиксельного освещения моделей. Такие, … Читать Per-pixel lighting (Попиксельное освещение) »
Загрузка модели из 3d MAX – binary
Загрузку модели из 3d MAX в DirectX мы с Вами уже рассмотрели в одном из предыдущих уроков Загрузка модели из 3d MAX. При этом мы загружали модель, экспорт которой был сделан с помощью 3d max script. Однако, в уроке Экспорт из 3d max – 3d max sdk мы с Вами рассмотрели как выгрузить модель из 3d max в бинарный формат, при этом выгрузив не только базовые данные модели, но и такие важные, как вектора TBN, … Читать Загрузка модели из 3d MAX – binary »
Рефакторинг кода
Рефакторинг (Refactoring) кода это процесс изменения исходного кода программы, не затрагивающий её поведения и ставящий целью облегчить понимание её работы и/или упростить её дальнейшую поддержку. Обычно рефакторинг любой программы это внесение небольших изменений в её код, каждое из которых не меняет само поведение программы, но как-то упрощает и/или улучшает код. При этом очень важно, что бы рефакторинг выполнялся именно небольшими частями, т.к. когда программист меняет небольшую часть кода – ему значительно проще проследить за правильностью … Читать Рефакторинг кода »