Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef IMPACT_EMITTER_ACTOR_H
00013 #define IMPACT_EMITTER_ACTOR_H
00014
00015 #include "Apex.h"
00016
00017 namespace nvidia
00018 {
00019 namespace apex
00020 {
00021
00022
00023 PX_PUSH_PACK_DEFAULT
00024
00025 class ImpactEmitterAsset;
00026 class RenderVolume;
00027
00029 class ImpactEmitterActor : public Actor
00030 {
00031 protected:
00032 virtual ~ImpactEmitterActor() {}
00033
00034 public:
00036 virtual ImpactEmitterAsset* getEmitterAsset() const = 0;
00037
00047 virtual void registerImpact(const PxVec3& hitPos, const PxVec3& hitDir, const PxVec3& surfNorm, uint32_t setID) = 0;
00048
00051 virtual void setPreferredRenderVolume(RenderVolume* volume) = 0;
00052 };
00053
00054
00055 PX_POP_PACK
00056
00057 }
00058 }
00059
00060 #endif // IMPACT_EMITTER_ACTOR_H