![]() |
Библиотека Интернет Индустрии I2R.ru |
||
![]() ![]() |
Пишем первую игруРазработка первой игры - ключевой момент для любого программиста, работающего с графикой. В этой статье мы попробуем это сделать с помощью библиотеки DirectX. Разработка первой игры — ключевой момент для любого программиста, работающего с графикой. При создании игры мы будем использовать библиотеку DirectX. Наше первое творение будет представлять простой пример полета самолета, однако, если вы не сможете разобраться в принципе работы этой программы, вам будет довольно трудно в разработке более сложных игр. Этот пример, выбран не случайно, в нем рассматриваются базовые приемы работы с графикой. Начало работыПрежде чем начать работу, убедитесь, что у вас установлена версия DirectX 7.0 или более поздняя. Думаю, это не проблема, если у Вас на данный момент не установлена нужная версия, во многих сборниках программного обеспечения можно найти нужную версию продукта. Я бы посоветовал установить DirectX 8. Также необходима пятая или более поздняя версия пакета Delphi. В данной статье мы не станем рассматривать весь код программы полностью, так что если бы вы захотели бы посмотреть программы в действии, то скачайте ее прямо отсюда flight.zip . После того как все сделано, можно переходить непосредственно к написанию программного кода. Разработка игрыПояснение к программеДанный фрагмент кода представляет собой важнейшую часть программы. В самом начале мы инициализируем объект DirectX, причем в разделе объявления глобальных переменных данный объект привязывается к седьмой версии, то есть эта программа после компиляции не станет работать на тех компьютерах, на которых не установлена хотя бы седьмая версия этого продукта. Строки 1-5. Инициализируем объект FDD, который будет работать в экранном режиме 640 на 480 (не рекомендую изменять этот режим), а также с 16-битной цветовой палитрой. Строки 20-28. После того, как все предварительные операции проделаны, мы загружаем текстуры самолета и звезд из файлов типа BMP. Думаю, многие опытные программисты смогут работать с файлами других графических форматов. Звездный фонТак же как и самолет звезды загружаются из графических файлов, причем, для придания большей объемности мы загружаем три типа звезд, различающих по яркости. Координаты звезд — случайные числа. Как вы уже поняли, звезды заполняются по всей области экрана. Теперь разберем еще один важный момент — поворот самолета. Данный фрагмент кода представляет собой событие от клавиатуры. Он весьма прост. Когда вы нажимаете на клавишу Esc или F12, программа прекращает работать. Далее, при нажатии на клавишу вправо/влево вы изменяете угол наклона, но не больше установленной границы. Само же вращение происходит с помощью процедуры RotateBmp, важнейшим ее аргументом является угол поворота, который мы выразили с помощью обратно тригонометрической функции арктангенса. Как видите, без математики тут не обойтись. Но одной функции RotateBmp не достаточно, после того как мы повернули самолет, мы копируем полученное повернутое изображение, которое будет потом отображено, в противном случае, при нажатии на клавишу поворота, изображение моргнуло бы один и вернулось в исходное положение. На этом пока все. В данной статье вы познакомились лишь с одним базовым, но очень важным компонентом библиотеки DirectX. |
|
![]() |
![]() |
2000-2008 г. Все авторские права соблюдены. |
![]() |
![]() |
![]() |
![]() |