Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2





Скачать 475.81 Kb.
НазваниеПрограмма по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2
страница5/13
Дата публикации17.05.2014
Размер475.81 Kb.
ТипРуководство
100-bal.ru > Информатика > Руководство
1   2   3   4   5   6   7   8   9   ...   13

4.4.Функции рендеринга


Рендеринг индексированных списков треугольников осуществляется вызовом DrawIndexedPrimitive(), который должен предваряться установкой текущего вершинного и индексного буферов, что делается с помощью методов SetStreamSource() и SetIndices().

Рассмотрим следующий пример класса объект:

class AnObject

{

public:

void render()

{

// Установка FVF флагов

s_pDev->SetFVF(m_FVFFlags);

// Установка текущего вершинного буфера

s_pDev->SetStreamSource(0, // Некое “магическое” число

m_pVB, // Вершинный буфер

0, // Еще одно магическое число

sizeof(Vertex)); // Размер вершины в байтах

// Установка текущего индексного буфера

s_pDev->SetIndices(m_pIB);

// Рендеринг нашего объекта

s_pDev->DrawIndexedPrimitive(

D3DPT_TRIANGLELIST, // Тип примитива. В настоящем случае

// индексированный список треугольников

0, // Базовый индекс (IB)

0, // Минимальный индекс (Imin)

m_numVertices, // Кол-во используемых вершин (Nvtx)

0, // Первый индекс, с которого производится

// выборка из index buffer’а (Istart)

m_numTriangles); // Кол-во примитивов

}

private:

unsigned int m_FVFFlags;

unsigned int m_numVertices;

unsigned int m_numTriangles;

IDirect3DVertexBuffer *m_pVB;

IDirect3DIndexBuffer *m_pIB;
static IDirect3DDevice9 *s_pDev;

};

Параметры IB, Imin и Nvtx являются достаточно нетривиальными, поэтому мы остановимся на них подробнее. Метод DrawIndexedPrimitive() для случая индексированных списков треугольников работает по следующему алгоритму:

for (i = 0; i < numTrinagles; i++)

{

int I0 = indexBuffer[i*3+Istart+0] + IB;

int I1 = indexBuffer[i*3+Istart+1] + IB;

int I2 = indexBuffer[i*3+Istart+2] + IB;

drawTriangle(vertexBuffer[I0], vertexBuffer[I1], vertexBuffer[I2]);

}

При этом содержимое в массиве indexBuffer от Istart до (Istart + numTriangles*3) должно лежать в интервале [Imin; Imin+Nvtx]. Иными словами Imin, Nvtx задают окно используемых вершин в вершинном буфере.

Рендеринг неиндексированных примитивов осуществляется методом DrawPrimitive(), который работает существенно проще и потому рассматириваться в настоящем руководстве не будет.

4.5.Настройки рендеринга


Управление многими настройками рендеринга осуществляется с помощью метода SetRenderState(), который принимает два параметра: индекс настройки (состояния, state) и его значение. В таблице 3 рассматриваются необходимые настройки, которые пригодятся нам в дальнейшем.
Таблица 3. Наиболее часто использующиеся настройки.

Настройка

Значения

D3DRS_FILLMODE

Управляет способом заливки. Может принимать значения из перечисляемого типа D3DFILLMODE:

  • D3DFILL_POINT – рендерятся только вершины

  • D3DFILL_WIREFRAME – рендерятся только ребра треугольников (этот режим обычно используется, чтобы посмотреть из каких треугольников состоит объект).

  • D3DFILL_SOLID – треугольник рендерится полностью.

D3DRS_SHADEMODE

Управляет способом заливки. Имеются два типа D3DSHADE_FLAT и D3DSHADE_GOURAUD. В большинстве случаев используется второй (он же и стоит по умолчанию).

D3DRS_ZENABLE

Позволяет включать/выключать всю работу с z-буфером.

D3DRS_ZWRITEENABLE

Позволяет включать/выключать запись в z-буфер

D3DRS_ZFUNC

Позволяет устанавливать функцию сравнения (из имеющихся в перечисляемом типе D3DCMPFUNC). По умолчанию стоит наиболее часто используемая функция D3DCMP_LESSEQUAL.

D3DRS_CULLMODE

Эта важная настройка управляет тем, какие треугольники считаются повернутыми к наблюдателю внешней стороной, а какие внутренней. В распоряжении пользователя имеются 3 режима:

  • D3DCULL_NONE – треугольники выводятся вне зависимости от порядка перечисления вершин

  • D3DCULL_CW – треугольники, вершины которых в экранной системе координат перечислены по часовой стрелке, не выводятся

  • D3DCULL_CCW – треугольники, вершины которых в экранной системе координат перечислены против часовой стрелки, не выводятся

D3DRS_LIGHTING

Позволяет включать/выключать освещение. По умолчанию освещение включено. Если ваш объект не освещается, то эту настройку следует установить в false.



1   2   3   4   5   6   7   8   9   ...   13

Похожие:

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Проектно-образовательная деятельность по формированию у детей навыков безопасного поведения на улицах и дорогах города
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Цель: Создание условий для формирования у школьников устойчивых навыков безопасного поведения на улицах и дорогах
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
«Организация воспитательно- образовательного процесса по формированию и развитию у дошкольников умений и навыков безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Цель: формировать у учащихся устойчивые навыки безопасного поведения на улицах и дорогах, способствующие сокращению количества дорожно-...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Конечно, главная роль в привитии навыков безопасного поведения на проезжей части отводится родителям. Но я считаю, что процесс воспитания...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Поэтому очень важно воспитывать у детей чувство дисциплинированности и организованности, чтобы соблюдение правил безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Всероссийский конкур сочинений «Пусть помнит мир спасённый» (проводит газета «Добрая дорога детства»)
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...
Поэтому очень важно воспиты­вать у детей чувство дисциплинированности, добиваться, чтобы соблюдение правил безопасного поведения...
Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...

Программа по формированию навыков безопасного поведения на дорогах и улицах «Добрая дорога детства» 2 iconПрограмма по формированию навыков безопасного поведения на дорогах...



Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск