Для работы с текстом служит класс Font из пространства имен Microsoft.DirectX.Direct3D. Для использование этого класса мы подсоединяем библиотеку Microsoft.DirectX.Direct3DX через окно References.
Сначала мы заводим на уровне класса формы две необходимые переменные:
' Шрифт нашей надписи.Dim otherFont As Font = Nothing' Системный шрифт.Dim systemFont As System.Drawing.Font = Nothing
Параметры у функции DrawText, которой мы и выводим текст, следующие: первый - надпись, которую выводим, второй - прямоугольник, в котором показываем надпись, третий - способ выравнивания и четвертый - цвет надписи.
Объявленные нами два переменные для шрифтов мы должны проинициализировать в методе InitializeGraphics:
PublicFunction InitializeGraphics() AsBoolean
...
systemFont = New System.Drawing.Font("ARIAL", 20)
otherFont = New Font(device, systemFont)
...
Обратите внимание, что, во-первых, при создании переменной типа System.Drawing.Font мы указываем в том числе и размер и во-вторых, шрифт для нашего устройства из DirectX (т. е. для видеокарты) мы создаем на основе системного шрифта.
Осталось совсем немного - вызывать метод DrawMyText в методе Render для непосредственного отображения надписи:
Можно запускать программу. Обратите внимание, что буквы будут выводятся без фона - это видно по тому, как треугольник показывается за ними.
Кстати говоря, текст показывается перед треугольником так как в методе Render мы вызываем метод DrawMyText после вызова DrawPrimitives. А если эти методы поменять местами, то будет все наоборот.
Вообще говоря наш метод DrawMyText нужно было писать чуть по-другому - а именно сама выводимая надпись, ее цвет, место и способ выравнивания лучше было бы передавать в качестве параметров. Но в данном случае это не принципиально.
PARKING.RU. Качественный ВИРТУАЛЬНЫЙ ХОСТИНГ на платформе Windows(r): поддержка NET, многофункциональная панель управления, аренда бизнес-приложений, сертифицированные специалисты. Управляемый ВЫДЕЛЕННЫЙ ХОСТИНГ на платформе Windows(r): производительные серверы, профессиональная поддержка, аренда ПО Microsoft(r), безопасность, гарантии. http://www.parking.ru