<р> Скачать демо и исходники для Linux
<р> Возврат к учебнику ИНДЕКС
С обнаружения столкновений до и работает это Теперь можно уничтожить врагов. Эффект немного неудовлетворительным, хотя, потому что они просто исчезают. Мы можем использовать систему частиц для взрыва, а системы частиц по умолчанию в Огре предназначены для постоянных эффектов, т.е. один раз добавлен к сцене система частиц будет отображать его действие, пока не будет удалена.
Поскольку взрыв разовое "взрыва", нам нужен способ, чтобы добавить систему частиц, ждать его, чтобы закончить, а затем удалить его со сцены. Класс ParticleSystemEffect будет использоваться для этой цели
<р> ParticleSystemEffect.h
/* * * * ParticleSystemEffect.h Автор:. Мэтью Касперсон * E-mail: * [email protected] Веб-сайт: //www.brighthub.com/hubfolio/matthew-casperson.aspx * /# IfNDef PARTICLESYSTEMEFFECT_H_ # определить PARTICLESYSTEMEFFECT_H_ # включить "PersistentFrameListener.h" класс ParticleSystemEffect: общественная PersistentFrameListener {общественности: ParticleSystemEffect (); ~ ParticleSystemEffect (); аннулированию Startup (Пост Vector3 & положение, строительства Струнный & particleSystemName); Выключение недействительными (); BOOL FrameStarted (строительства FrameEvent & ЭВТ); защищены: недействительными InitialiseVariables (); плавать TimeToLive; SceneNode * SceneNode; ParticleSystem * ParticleSystem;}; # ENDIF
ParticleSystemEffect.cpp
#include "ParticleSystemEffect.h" #include "GameLevel.h" #include "Utilities.h" ParticleSystemEffect :: ParticleSystemEffect () {InitialiseVariables ( );} ParticleSystemEffect :: ~ ParticleSystemEffect () {} <р> Функция запуска очень похож на Startup функций для врагов и оружия, что он создает SceneNode, к которому он присоединяет объект Ogre (система частиц в этом случае )
пустот ParticleSystemEffect :: Startup (Пост Vector3 & положение, строительства Струнный & particleSystemName) {PersistentFrameListener :: Startup (). SceneNode = GAMELEVEL.GetPlayerSceneNode () -> createChildSceneNode (должность); ParticleSystem = GAMELEVEL.GetSceneManager () -> createParticleSystem (Утилиты :: GetUniqueName ("ParticleSystemEffect"), particleSystemName); sceneNode-> attachObject (ParticleSystem); <р> Затем мы должны работать, как долго система частиц должен работать до удаления от уровня. Продолжительность собственностью эмитента определяет, как долго система частиц должна
iPhone набор телефонного номера Часть 1
- Создание платформы флэш-игры с Flixel и Flex - PowerU…
- OpenCV Учебник
- Мобильное видео игры развитие: Краткий обзо…
- Mysql Дата и время Arithmetic
- Запрос Sybase Database
- Логические операторы в Php
- Введение в Mysql Программирование для Events
- C # код для преобразования цифр числа слов из…
- Что Программирования?
- Regex группировки в Perl