Уроки Коммент.

Создание игр » AI, DirectX 9, Featured » Создание игры. Противники.

Создание игры. Противники.

Создание игры. Противники.Пришла пора реализовать противников в создаваемой игре. Пока мы ограничимся самыми простыми противниками, которые будут просто лететь прямо и стрелять без разбору.

Так же, как и игрока, мы унаследуем создаваемый нами класс противников от CLiveObject, что бы у врагов сразу был функционал работы с жизнями и позицией на экране. Да и вообще, код будет очень похож на тот, что мы запрограммировали для игрока:

class CEnemy :
	public CLiveObject
{
	//! Это текстура со спрайтом врага
	CTexturePtr m_pTex;
 
	//! Таймер стрельбы. Когда он меньше нуля можно стрелять.
	float fFireTimeOut;
 
public:
	CEnemy(void);
	virtual ~CEnemy(void);
	//! функция отрисовки
	void Draw();
	//! Функция апдейта
	void Update(float fDeltaTime);
};

Двигаться все противники будут прямо и с одной и той же скоростью, потому в функции апдейта противника мы просто будем двигать их всех на одно и то же расстояние (которое зависит от передаваемого в функцию времени:

void CEnemy::Update( float fDeltaTime )
{
	Move(0, 100*fDeltaTime);
}

В этой же функции мы в следующем уроке о стрельбе в игре реализуем функцию выстрела.

Функция рендера (отрисовки) игрового врага будет полностью аналогична такой же функции у игрока (кстати, потом этот функционал, наверное, стоит вынести прям в класс живого объекта, что бы не дублировать код).

Создавать новых врагов на игровом уровне пока будет просто случайным образом. Скажем, вот так:

std::vector<CEnemy> vecEnemies; // делкарация
 
// где-то в основном цикле игры
if ( (rand()&127)==127)
	// в конструкторе врага случайно генерится его позиция
	vecEnemies.push_back(CEnemy());

Этот урок по созданию игр опять получился каким-то очень коротким. Пишите, если кому-то что-то будет непонятно. Хотя, судя по отсутствию комментариев в предыдущих уроках, то ли всем всё понятно, то ли просто всё равно )))

Качаем проект с исходным кодом и данными к этому уроку по созданию игр. Так же можно скачать просто дему игры.

Ещё по этой теме:




Раздел: AI, DirectX 9, Featured · Теги: AI, Создание игр

6 комментариев на "Создание игры. Противники."
  1. Виталий пишет:

    Здравствуйте, очень благодарен за уроки, на счет детальности, меня всё устраивает.

    1. Вячеслав пишет:

      Отлично. Спасибо за отзыв на урок!

  2. Илья пишет:

    очень хорошие уроки, я недавно стал изучать с++, да и вообще программирование в целом, но даже для меня понятно все за исключением функций которых не знаю, но и то примерно понимаю для чего они.

    1. Вячеслав пишет:

      Спасибо на добром слове ;-)

  3. Владислав пишет:

    Большое спасибо за уроки многое знал ,но мозгов не хватало все это в кучу собрать

    1. Yar пишет:

      Аналогично! :) Спасибо за урок!

Оставить комментарий

*

Вы можете использовать это HTMLтеги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>