Введение в программирование трехмерных игр с DX9

       

Рисование текста



9.1.2. Рисование текста

После того, как мы получили указатель на интерфейс ID3DXFont, рисование текста осуществляется простым вызовом метода ID3DXFont::DrawText.

INT ID3DXFont::DrawText( LPCSTR pString, INT Count, LPRECT pRect, DWORD Format, D3DCOLOR Color );

pString— Указатель на отображаемую строку текста.

Count — Количество отображаемых символов строки. Если строка завершается нулевым символом можно указать –1, чтобы строка отображалась вся.

pRect — Указатель на структуру RECT, определяющую область экрана в которой будет отображаться текст.

Format — Необязательные флаги, определяющие форматирование выводимого текста; их описание находится в документации к SDK.

Color — Цвет текста.

Вот пример использования метода:

Font->DrawText( "Hello World", // Выводимая строка -1, // Строка завершается нулевым символом &rect, // Прямоугольная область для рисования строки DT_TOP | DT_LEFT, // Рисуем в верхнем левом углу области 0xff000000); // Черный цвет



9.2.2. Рисование текста

Теперь, когда мы создали и инициализировали объект CD3DFont, можно нарисовать какой-нибудь текст. Рисование текста выполняет следующий метод:

HRESULT CD3DFont::DrawText( FLOAT x, FLOAT y, DWORD dwColor, const TCHAR* strText, DWORD dwFlags=0L );

x— координата x в экранном пространстве с которой начинается рисование текста.

y — координата y в экранном пространстве с которой начинается рисование текста.

dwColor — Цвет текста.

strText — Указатель на рисуемую строку.

dwFlags — Необязательные флаги визуализации; можете присвоить этому параметру 0 или указать произвольную комбинацию флагов D3DFONT_CENTERED, D3DFONT_TWOSIDED, D3DFONT_FILTERED.

Пример использования метода:

Font->DrawText(20, 20, 0xff000000, "Hello, World");



Содержание раздела