Pyrogenesis HEAD
Pyrogenesis, a RTS Engine
|
Classes | |
struct | Projectile |
struct | ProjectileImpactAnimation |
Public Member Functions | |
int | GetComponentTypeId () const override |
void | Init (const CParamNode ¶mNode) override |
void | Deinit () override |
void | Serialize (ISerializer &serialize) override |
void | Deserialize (const CParamNode ¶mNode, IDeserializer &deserialize) override |
void | HandleMessage (const CMessage &msg, bool global) override |
uint32_t | LaunchProjectileAtPoint (const CFixedVector3D &launchPoint, const CFixedVector3D &target, fixed speed, fixed gravity, const std::wstring &actorName, const std::wstring &impactActorName, fixed impactAnimationLifetime) override |
Launch a projectile from entity source to point target . More... | |
void | RemoveProjectile (uint32_t) override |
Removes a projectile, used when the projectile has hit a target. More... | |
void | RenderModel (CModelAbstract &model, const CVector3D &position, SceneCollector &collector, const CFrustum &frustum, bool culling, const CLosQuerier &los, bool losRevealAll) const |
virtual uint32_t | LaunchProjectileAtPoint (const CFixedVector3D &launchPoint, const CFixedVector3D &target, fixed speed, fixed gravity, const std::wstring &actorName, const std::wstring &impactActorName, fixed impactAnimationLifetime)=0 |
Launch a projectile from entity source to point target . More... | |
virtual void | RemoveProjectile (uint32_t id)=0 |
Removes a projectile, used when the projectile has hit a target. More... | |
Public Member Functions inherited from IComponent | |
virtual | ~IComponent () |
virtual void | Init (const CParamNode ¶mNode)=0 |
virtual void | Deinit ()=0 |
virtual void | HandleMessage (const CMessage &msg, bool global) |
CEntityHandle | GetEntityHandle () const |
void | SetEntityHandle (CEntityHandle ent) |
entity_id_t | GetEntityId () const |
CEntityHandle | GetSystemEntity () const |
const CSimContext & | GetSimContext () const |
void | SetSimContext (const CSimContext &context) |
virtual void | Serialize (ISerializer &serialize)=0 |
virtual void | Deserialize (const CParamNode ¶mNode, IDeserializer &deserialize)=0 |
virtual bool | NewJSObject (const ScriptInterface &scriptInterface, JS::MutableHandleObject out) const |
Returns false by default, indicating that a scripted wrapper of this IComponent is not supported. More... | |
virtual JS::Value | GetJSInstance () const |
virtual int | GetComponentTypeId () const =0 |
Static Public Member Functions | |
static void | ClassInit (CComponentManager &componentManager) |
static IComponent * | Allocate (const ScriptInterface &, JS::HandleValue) |
static void | Deallocate (IComponent *cmp) |
static std::string | GetSchema () |
Static Public Member Functions inherited from IComponent | |
static std::string | GetSchema () |
static void | RegisterComponentType (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema) |
static void | RegisterComponentTypeScriptWrapper (CComponentManager &mgr, EInterfaceId iid, EComponentTypeId cid, AllocFunc alloc, DeallocFunc dealloc, const char *name, const std::string &schema) |
static u8 | GetSerializationVersion () |
Private Member Functions | |
uint32_t | LaunchProjectile (CFixedVector3D launchPoint, CFixedVector3D targetPoint, fixed speed, fixed gravity, const std::wstring &actorName, const std::wstring &impactActorName, fixed impactAnimationLifetime) |
void | AdvanceProjectile (Projectile &projectile, float dt) const |
void | Interpolate (float frameTime) |
void | RenderSubmit (SceneCollector &collector, const CFrustum &frustum, bool culling) const |
Private Attributes | |
std::vector< Projectile > | m_Projectiles |
std::vector< ProjectileImpactAnimation > | m_ProjectileImpactAnimations |
uint32_t | m_ActorSeed |
uint32_t | m_NextId |
Additional Inherited Members | |
Public Types inherited from IComponent | |
using | AllocFunc = IComponent *(*)(const ScriptInterface &scriptInterface, JS::HandleValue ctor) |
using | DeallocFunc = void(*)(IComponent *) |
|
private |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlineoverridevirtual |
Implements IComponent.
|
inlineoverridevirtual |
Implements IComponent.
|
inlineoverridevirtual |
Implements IComponent.
|
inlinestatic |
|
inlineoverridevirtual |
Reimplemented from IComponent.
|
inlineoverridevirtual |
Implements IComponent.
|
private |
|
private |
|
inlineoverridevirtual |
Launch a projectile from entity source
to point target
.
source | source entity; the projectile will determined from the "projectile" prop in its actor |
target | target point |
speed | horizontal speed in m/s |
gravity | gravitational acceleration in m/s^2 (determines the height of the ballistic curve) |
actorName | name of the flying projectile actor |
impactActorName | name of the animation actor played when the projectile hits the target or the ground |
impactAnimationLifetime | animation lenth |
Implements ICmpProjectileManager.
|
overridevirtual |
Removes a projectile, used when the projectile has hit a target.
id | of the projectile to remove |
Implements ICmpProjectileManager.
void CCmpProjectileManager::RenderModel | ( | CModelAbstract & | model, |
const CVector3D & | position, | ||
SceneCollector & | collector, | ||
const CFrustum & | frustum, | ||
bool | culling, | ||
const CLosQuerier & | los, | ||
bool | losRevealAll | ||
) | const |
|
private |
|
inlineoverridevirtual |
Implements IComponent.
|
private |
|
private |
|
private |
|
private |