aboutsummaryrefslogtreecommitdiff
path: root/APEX_1.4/module/particles/include/ModuleParticlesImpl.h
diff options
context:
space:
mode:
Diffstat (limited to 'APEX_1.4/module/particles/include/ModuleParticlesImpl.h')
-rw-r--r--APEX_1.4/module/particles/include/ModuleParticlesImpl.h308
1 files changed, 0 insertions, 308 deletions
diff --git a/APEX_1.4/module/particles/include/ModuleParticlesImpl.h b/APEX_1.4/module/particles/include/ModuleParticlesImpl.h
deleted file mode 100644
index 5375a340..00000000
--- a/APEX_1.4/module/particles/include/ModuleParticlesImpl.h
+++ /dev/null
@@ -1,308 +0,0 @@
-/*
- * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved.
- *
- * NVIDIA CORPORATION and its licensors retain all intellectual property
- * and proprietary rights in and to this software, related documentation
- * and any modifications thereto. Any use, reproduction, disclosure or
- * distribution of this software and related documentation without an express
- * license agreement from NVIDIA CORPORATION is strictly prohibited.
- */
-
-
-#ifndef __MODULE_PARTICLES_IMPL_H__
-#define __MODULE_PARTICLES_IMPL_H__
-
-#include "Apex.h"
-#include "ModuleParticles.h"
-#include "ApexSDKIntl.h"
-#include "ModuleIntl.h"
-#include "ModuleBase.h"
-
-#include "ApexRWLockable.h"
-#include "ApexSDKHelpers.h"
-#include "ParticlesDebugRenderParams.h"
-#include "ParticlesModuleParameters.h"
-#include "EffectPackageGraphicsMaterialsParams.h"
-
-#include "EffectPackageAssetParams.h"
-#include "EffectPackageActorParams.h"
-
-#include "GraphicsMaterialData.h"
-#include "VolumeRenderMaterialData.h"
-#include "EmitterEffect.h"
-#include "RigidBodyEffect.h"
-
-#include "HeatSourceEffect.h"
-#include "SubstanceSourceEffect.h"
-#include "VelocitySourceEffect.h"
-#include "ForceFieldEffect.h"
-#include "JetFieldSamplerEffect.h"
-#include "WindFieldSamplerEffect.h"
-#include "NoiseFieldSamplerEffect.h"
-#include "VortexFieldSamplerEffect.h"
-#include "AttractorFieldSamplerEffect.h"
-#include "TurbulenceFieldSamplerEffect.h"
-#include "FlameEmitterEffect.h"
-
-#include "EffectPackageData.h"
-#include "AttractorFieldSamplerData.h"
-#include "JetFieldSamplerData.h"
-#include "WindFieldSamplerData.h"
-#include "NoiseFieldSamplerData.h"
-#include "VortexFieldSamplerData.h"
-#include "TurbulenceFieldSamplerData.h"
-#include "HeatSourceData.h"
-#include "SubstanceSourceData.h"
-#include "VelocitySourceData.h"
-#include "ForceFieldData.h"
-#include "EmitterData.h"
-#include "GraphicsEffectData.h"
-#include "ParticleSimulationData.h"
-#include "FlameEmitterData.h"
-
-#include "EffectPackageIOSDatabaseParams.h"
-#include "EffectPackageIOFXDatabaseParams.h"
-#include "EffectPackageEmitterDatabaseParams.h"
-#include "EffectPackageDatabaseParams.h"
-#include "EffectPackageFieldSamplerDatabaseParams.h"
-
-#include "ReadCheck.h"
-#include "WriteCheck.h"
-
-namespace nvidia
-{
-namespace apex
-{
-class SceneIntl;
-class ModuleTurbulenceFS;
-class EmitterActor;
-class EmitterAsset;
-}
-namespace particles
-{
-class ParticlesAsset;
-class ParticlesAssetAuthoring;
-class ParticlesScene;
-
-typedef Array< ModuleSceneIntl* > ModuleSceneVector;
-
-class ModuleParticlesDesc : public ApexDesc
-{
-public:
-
- /**
- \brief Constructor sets to default.
- */
- PX_INLINE ModuleParticlesDesc()
- {
- setToDefault();
- }
- /**
- \brief (re)sets the structure to the default.
- */
- PX_INLINE void setToDefault()
- {
- ApexDesc::setToDefault();
- moduleValue = 0;
- }
-
- /**
- Returns true if an object can be created using this descriptor.
- */
- PX_INLINE bool isValid() const
- {
- return ApexDesc::isValid();
- }
-
- /**
- ModuleBase configurable parameter.
- */
- uint32_t moduleValue;
-};
-
-
-class ModuleParticlesImpl : public ModuleParticles, public ModuleIntl, public ModuleBase, public ApexRWLockable
-{
-public:
- APEX_RW_LOCKABLE_BOILERPLATE
-
- ModuleParticlesImpl(ApexSDKIntl* sdk);
- ~ModuleParticlesImpl();
-
- void init(const ModuleParticlesDesc& desc);
-
- // base class methods
- void init(NvParameterized::Interface&) {}
- NvParameterized::Interface* getDefaultModuleDesc();
- void release()
- {
- ModuleBase::release();
- }
- void destroy();
- const char* getName() const
- {
- READ_ZONE();
- return ModuleBase::getName();
- }
-
- virtual bool setEffectPackageGraphicsMaterialsDatabase(const NvParameterized::Interface* dataBase);
-
- virtual const NvParameterized::Interface* getEffectPackageGraphicsMaterialsDatabase() const;
-
- virtual bool setEffectPackageIOSDatabase(const NvParameterized::Interface* dataBase);
- virtual bool setEffectPackageIOFXDatabase(const NvParameterized::Interface* dataBase);
- virtual bool setEffectPackageEmitterDatabase(const NvParameterized::Interface* dataBase);
- virtual bool setEffectPackageDatabase(const NvParameterized::Interface* dataBase);
- virtual bool setEffectPackageFieldSamplerDatabase(const NvParameterized::Interface* dataBase);
-
- virtual const NvParameterized::Interface* getEffectPackageIOSDatabase(void) const
- {
- READ_ZONE();
- return mEffectPackageIOSDatabaseParams;
- };
- virtual const NvParameterized::Interface* getEffectPackageIOFXDatabase(void) const
- {
- READ_ZONE();
- return mEffectPackageIOFXDatabaseParams;
- };
- virtual const NvParameterized::Interface* getEffectPackageEmitterDatabase(void) const
- {
- READ_ZONE();
- return mEffectPackageEmitterDatabaseParams;
- };
- virtual const NvParameterized::Interface* getEffectPackageDatabase(void) const
- {
- READ_ZONE();
- return mEffectPackageDatabaseParams;
- };
- virtual const NvParameterized::Interface* getEffectPackageFieldSamplerDatabase(void) const
- {
- READ_ZONE();
- return mEffectPackageFieldSamplerDatabaseParams;
- };
-
- bool initParticleSimulationData(ParticleSimulationData* ed);
-
- virtual NvParameterized::Interface* locateResource(const char* resourceName, // the name of the resource
- const char* nameSpace);
-
- virtual const char** getResourceNames(const char* nameSpace, uint32_t& nameCount, const char** &variants);
-
- virtual const NvParameterized::Interface* locateGraphicsMaterialData(const char* name) const;
- virtual const NvParameterized::Interface* locateVolumeRenderMaterialData(const char* name) const;
-
-
- ModuleSceneIntl* createInternalModuleScene(SceneIntl&, RenderDebugInterface*);
- void releaseModuleSceneIntl(ModuleSceneIntl&);
- uint32_t forceLoadAssets();
- AuthObjTypeID getModuleID() const;
- RenderableIterator* createRenderableIterator(const Scene&);
-
- AuthObjTypeID getParticlesAssetTypeID() const;
-
- uint32_t getModuleValue() const
- {
- return mModuleValue;
- }
-
- ModuleTurbulenceFS* getModuleTurbulenceFS(void)
- {
- return mTurbulenceModule;
- }
-
- ParticlesScene* getParticlesScene(const Scene& apexScene);
-
- virtual void setEnableScreenCulling(bool state, bool znegative)
- {
- WRITE_ZONE();
- mEnableScreenCulling = state;
- mZnegative = znegative;
- }
-
- bool getEnableScreenCulling(void) const
- {
- return mEnableScreenCulling;
- }
-
- bool getZnegative(void) const
- {
- return mZnegative;
- }
-
- virtual void resetEmitterPool(void);
-
- virtual void setUseEmitterPool(bool state)
- {
- WRITE_ZONE();
- mUseEmitterPool = state;
- }
-
- virtual bool getUseEmitterPool(void) const
- {
- READ_ZONE();
- return mUseEmitterPool;
- }
-
- PxMaterial *getDefaultMaterial(void) const
- {
- return mDefaultMaterial;
- }
-
- virtual void notifyReleaseSDK(void);
-
- virtual void notifyChildGone(ModuleIntl* imodule);
-
-protected:
- bool mUseEmitterPool;
- bool mEnableScreenCulling;
- bool mZnegative;
-
- ResourceList mAuthorableObjects;
- ResourceList mEffectPackageAuthorableObjects;
-
- ResourceList mParticlesScenes;
-
- uint32_t mModuleValue;
-
- friend class ParticlesAsset;
-
- /**
- \brief Used by the ParticleEffectTool to initialize the default database values for the editor
- */
- virtual void initializeDefaultDatabases(void);
-
- virtual nvidia::apex::Module* getModule(const char* moduleName);
-
-private:
-
- bool fixFieldSamplerCollisionFilterNames(NvParameterized::Interface *fs);
-
- bool fixupNamedReferences(void);
-
- NvParameterized::Interface* mEffectPackageIOSDatabaseParams;
- NvParameterized::Interface* mEffectPackageIOFXDatabaseParams;
- NvParameterized::Interface* mEffectPackageEmitterDatabaseParams;
- NvParameterized::Interface* mEffectPackageDatabaseParams;
- NvParameterized::Interface* mEffectPackageFieldSamplerDatabaseParams;
-
- ParticlesModuleParameters* mModuleParams;
- NvParameterized::Interface* mGraphicsMaterialsDatabase;
- ModuleTurbulenceFS* mTurbulenceModule;
- ModuleSceneVector mScenes;
- Array< const char*> mTempNames;
- Array< const char*> mTempVariantNames;
-
- nvidia::apex::Module* mModuleBasicIos; // Instantiate the BasicIOS module statically
- nvidia::apex::Module* mModuleEmitter; // Instantiate the Emitter module statically
- nvidia::apex::Module* mModuleIofx; // Instantiate the IOFX module statically
- nvidia::apex::Module* mModuleFieldSampler; // Instantiate the field sampler module statically
- nvidia::apex::Module* mModuleBasicFS; // Instantiate the BasicFS module statically
- nvidia::apex::Module* mModuleParticleIos; // PhysX 3.x only : Instantiate the ParticleIOS module
- nvidia::apex::Module* mModuleForceField; // PhysX 3.x only : Instantiate the ForceField module
- PxMaterial *mDefaultMaterial;
-};
-
-}
-} // end namespace nvidia
-
-#endif // __MODULE_PARTICLES_H__