APEX Framework: GroundEmitterAsset.h Source File

NVIDIA APEX

GroundEmitterAsset.h
00001 /*
00002  * Copyright (c) 2008-2017, NVIDIA CORPORATION.  All rights reserved.
00003  *
00004  * NVIDIA CORPORATION and its licensors retain all intellectual property
00005  * and proprietary rights in and to this software, related documentation
00006  * and any modifications thereto.  Any use, reproduction, disclosure or
00007  * distribution of this software and related documentation without an express
00008  * license agreement from NVIDIA CORPORATION is strictly prohibited.
00009  */
00010 
00011 
00012 #ifndef GROUND_EMITTER_ASSET_H
00013 #define GROUND_EMITTER_ASSET_H
00014 
00015 #include "Apex.h"
00016 
00017 namespace nvidia
00018 {
00019 namespace apex
00020 {
00021 
00022 
00023 PX_PUSH_PACK_DEFAULT
00024 
00025 #define GROUND_EMITTER_AUTHORING_TYPE_NAME "GroundEmitterAsset"
00026 
00028 class GroundEmitterAsset : public Asset
00029 {
00030 protected:
00031     PX_INLINE GroundEmitterAsset() {}
00032     virtual ~GroundEmitterAsset() {}
00033 
00034 public:
00035 
00037     virtual const PxVec3 &          getVelocityLow() const = 0;
00038     
00040     virtual const PxVec3 &          getVelocityHigh() const = 0;
00041     
00043     virtual const float &           getLifetimeLow() const = 0;
00044     
00046     virtual const float &           getLifetimeHigh() const = 0;
00047 
00049     virtual float                   getRadius() const = 0;
00050     
00052     virtual uint32_t                getMaxRaycastsPerFrame() const = 0;
00053     
00055     virtual float                   getRaycastHeight() const = 0;
00056     
00062     virtual float                   getSpawnHeight() const = 0;
00063     
00065     virtual const char*             getRaycastCollisionGroupMaskName() const = 0;
00066 };
00067 
00069 class GroundEmitterAssetAuthoring : public AssetAuthoring
00070 {
00071 protected:
00072     virtual ~GroundEmitterAssetAuthoring() {}
00073 };
00074 
00075 
00076 PX_POP_PACK
00077 
00078 }
00079 } // end namespace nvidia
00080 
00081 #endif // GROUND_EMITTER_ASSET_H

Generated on Fri Dec 15 2017 13:58:35
Copyright © 2012-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved.