aboutsummaryrefslogtreecommitdiff
path: root/APEX_1.4/module/destructible/fracture/SimScene.h
diff options
context:
space:
mode:
Diffstat (limited to 'APEX_1.4/module/destructible/fracture/SimScene.h')
-rw-r--r--APEX_1.4/module/destructible/fracture/SimScene.h60
1 files changed, 60 insertions, 0 deletions
diff --git a/APEX_1.4/module/destructible/fracture/SimScene.h b/APEX_1.4/module/destructible/fracture/SimScene.h
new file mode 100644
index 00000000..fd0e82e6
--- /dev/null
+++ b/APEX_1.4/module/destructible/fracture/SimScene.h
@@ -0,0 +1,60 @@
+/*
+ * 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.
+ */
+
+
+#include "RTdef.h"
+#if RT_COMPILE
+#ifndef SIM_SCENE
+#define SIM_SCENE
+
+#include "SimSceneBase.h"
+
+namespace nvidia
+{
+namespace destructible
+{
+ class DestructibleActorImpl;
+}
+
+namespace fracture
+{
+
+class FracturePattern;
+class Actor;
+
+class SimScene : public base::SimScene
+{
+public:
+ static SimScene* createSimScene(PxPhysics *pxPhysics, PxCooking *pxCooking, PxScene *scene, float minConvexSize, PxMaterial* defaultMat, const char *resourcePath);
+protected:
+ SimScene(PxPhysics *pxPhysics, PxCooking *pxCooking, PxScene *scene, float minConvexSize, PxMaterial* defaultMat, const char *resourcePath);
+public:
+ virtual ~SimScene();
+
+ virtual void createSingletons();
+
+ virtual base::Actor* createActor(nvidia::destructible::DestructibleActorImpl* actor);
+ virtual base::Convex* createConvex();
+ virtual base::Compound* createCompound(const base::FracturePattern *pattern, const base::FracturePattern *secondaryPattern = NULL, float contactOffset = 0.005f, float restOffset = -0.001f);
+ virtual base::FracturePattern* createFracturePattern();
+ virtual void onWake(PxActor** actors, uint32_t count);
+ virtual void onSleep(PxActor** actors, uint32_t count);
+
+ FracturePattern* getDefaultGlass() {return mDefaultGlass;}
+
+protected:
+ FracturePattern* mDefaultGlass;
+};
+
+}
+}
+
+#endif
+#endif \ No newline at end of file