My Project
ParaScriptingScene.h
1 //-----------------------------------------------------------------------------
2 // Copyright (C) 2004 - 2006 ParaEngine Dev Studio, All Rights Reserved.
3 // Date: 2004.5
4 // Description: API for 3D scene objects.
5 //-----------------------------------------------------------------------------
6 #pragma once
7 
8 #include "ParaScriptingCommon.h"
9 #include "ParaScriptingCharacter.h"
10 #include "ParaScriptingGlobal.h"
11 #include "MiniSceneGraph.h"
12 
13 namespace ParaEngine{
14  class CTerrainTile;
15  class CGUIBase;
16  class CBaseObject;
17  class CGUIResource;
18  struct GUILAYER;
19  struct CGUIPosition;
20  class IGameObject;
21  class CMiniSceneGraph;
22 }
23 
24 namespace luabind
25 {
26  namespace adl{
27  class object;
28  }
29  using adl::object;
30 }
31 
35 namespace ParaScripting
36 {
37  using namespace std;
38  using namespace ParaEngine;
39  using namespace luabind;
40 
56  class PE_CORE_DECL ParaObject
57  {
58  public:
59  CBaseObject::WeakPtr_type m_pObj; // a pointer to the object
60 
61  ParaObject();
62  ParaObject(CBaseObject* pObj);
63  ~ParaObject();
64 
65  CBaseObject* get() const {
66  return m_pObj.get();
67  };
68 
70  const char* GetType();
74  int GetMyType() const;
75 
82  int GetID();
83 
87  bool IsValid() const;
89  bool IsAttached() const;
90 
92  ParaAssetObject GetPrimaryAsset();
94  void GetPrimaryAsset_(ParaAssetObject* pOut);
95 
97  ParaParamBlock GetEffectParamBlock();
98 
102  bool IsPersistent();
103 
105  void SetPersistent(bool bPersistent);
106 
110  bool SaveToDB();
111 
115  bool equals(const ParaObject obj) const;
116 
119  const char* ToString() const;
128  const char* ToString1(const char* sMethod) const;
129 
131  ParaAttributeObject GetAttributeObject();
133  void GetAttributeObject_(ParaAttributeObject& output);
142  void CheckLoadPhysics();
143 
145  void LoadPhysics();
146 
159  object GetField(const char* sFieldname, const object& output);
160 
167  void SetField(const char* sFieldname, const object& input);
168 
171  void CallField(const char* sFieldname);
172 
183  object GetDynamicField(const char* sFieldname, const object& output);
184 
191  void SetDynamicField(const char* sFieldname, const object& input);
192 
197  ParaObject GetObject(const char* name);
198  public:
199 
201  bool IsStanding();
202 
204  bool IsVisible();
205 
207  void SetVisible(bool bVisible);
208 
217 
219 
223 
228 
231 
233 
235 
237 
239 
241 
243 
245 
249  bool CheckAttribute(DWORD attribute);
250 
258 
260 
264 
269 
272 
274 
276 
281  void SetAttribute(DWORD dwAtt, bool bTurnOn);
282 
303  void SetPosition(double x, double y, double z);
313  void GetPosition(double *x, double *y, double *z);
319  void GetViewCenter(double *x, double *y, double *z);
320 
325  void OffsetPosition (float dx, float dy, float dz);
332  void SetFacing(float fFacing);
334  float GetFacing();
335 
347  void Rotate(float x, float y, float z);
348 
356  void Scale(float s);
357  void SetScaling(float s);
358 
365  float GetScale();
370  void SetScale(float s);
371 
377  object GetRotation(const object& quat);
378 
383  void SetRotation(const object& quat);
384 
386  void Reset();
387 
394  void SetPhysicsGroup(int nGroup);
395 
402  int GetPhysicsGroup();
403 
404 
409  void SetSelectGroupIndex(int nGroupIndex);
410 
412  int GetSelectGroupIndex();
413 
424  void SetDensity(float fDensity);
426  float GetDensity();
427 
430  float GetPhysicsRadius();
433  void SetPhysicsRadius(float fR);
434 
441  float GetPhysicsHeight();
442 
449  void SetPhysicsHeight(float fHeight);
450 
452  string GetName() const;
454  const char* GetName_() const;
455 
464  void SetName(const char* sName);
465 
470  void SnapToTerrainSurface(int bUseNorm);
474  bool IsCharacter() const;
478  bool IsOPC() const;
479 
486  ParaCharacter ToCharacter();
487 
491  IGameObject* ToGameObject();
492 
544  void AddEvent(const char* strEvent, int nEventType, bool bIsUnique);
545 
550  void AddChild(const ParaObject obj);
551 
553  void EnablePhysics(bool bEnable);
554 
556  bool IsPhysicsEnabled();
557 
559  float DistanceTo(ParaObject obj);
561  float DistanceToSq(ParaObject obj);
563  float DistanceToPlayerSq();
565  float DistanceToCameraSq();
566 
574  object GetViewBox(const object& output);
575 
579  bool HasAttachmentPoint(int nAttachmentID);
580 
586  void GetAttachmentPosition(int nAttachmentID, float * x, float * y, float *z);
587 
591  void SetHomeZone(const char* sHomeZone);
592 
594  const char* GetHomeZone();
595 
597  //
598  // IHeadOn3D object
599  //
601 
603  void SetHeadOnText(const char* sText, int nIndex);
604 
606  const char* GetHeadOnText(int nIndex);
607 
608 
614  void SetHeadOnUITemplateName(const char* sUIName, int nIndex);
615 
622  const char* GetHeadOnUITemplateName(int nIndex);
623 
627  void SetHeadOnTextColor(const char* color, int nIndex);
628 
630  void SetHeadOnOffest(float x, float y, float z, int nIndex);
631 
633  void GetHeadOnOffset(int nIndex, float* x, float* y, float* z);
634 
636  void ShowHeadOnDisplay(bool bShow, int nIndex);
637 
639  bool IsHeadOnDisplayShown(int nIndex);
640 
642  bool HasHeadOnDisplay(int nIndex);
643 
645  //
646  // x reference script objects
647  //
649 
651  int GetXRefScriptCount();
652 
654  const char* GetXRefScript(int nIndex);
655 
659  void GetXRefScriptPosition(int nIndex, float *x, float *y, float *z);
660 
664  void GetXRefScriptScaling(int nIndex, float *x, float *y, float *z);
665 
669  float GetXRefScriptFacing(int nIndex);
670 
676  const char* GetXRefScriptLocalMatrix(int nIndex);
677 
678  public:
680  // game object functions
682 
683  bool IsSentient();
684 
686  float GetSentientRadius();
687 
689  float GetPerceptiveRadius();
691  void SetPerceptiveRadius(float fNewRaduis);
692 
694  int GetNumOfPerceivedObject();
695 
697  ParaObject GetPerceivedObject(int nIndex);
698 
700  bool IsAlwaysSentient();
701 
703  void SetAlwaysSentient(bool bAlways);
704 
709  void MakeSentient(bool bSentient);
710 
713  void UpdateTileContainer();
714 
716  void MakeGlobal(bool bGlobal);
717 
719  bool IsGlobal();
720 
723  void SetGroupID(int nGroup);
724 
732  void SetSentientField(DWORD dwFieldOrGroup, bool bIsGroup);
733 
735  bool IsSentientWith(const ParaObject& pObj);
736 
740  void SetMovableRegion(float center_x, float center_y, float center_z, float extent_x, float extent_y, float extent_z);
748  void GetMovableRegion(float* center_x, float* center_y, float* center_z, float* extent_x, float* extent_y, float* extent_z);
749 
752  void SetAnimation(int nAnimID);
753 
755  int GetAnimation();
756 
758  // call back script functions
760 
762  string GetOnEnterSentientArea() const;
763  void SetOnEnterSentientArea(const char* script);
764 
767  string GetOnLeaveSentientArea() const;
768  void SetOnLeaveSentientArea(const char* script);
769 
772  string GetOnClick() const;
773  void SetOnClick(const char* script);
775  void On_Click(DWORD nMouseKey, DWORD dwParam1, DWORD dwParam2);
776 
779  string GetOnPerceived() const;
780  void SetOnPerceived(const char* script);
781 
784  string GetOnFrameMove() const;
785  void SetOnFrameMove(const char* script);
786 
790  string GetOnNetSend() const;
791  void SetOnNetSend(const char* script);
792 
796  string GetOnNetReceive() const;
797  void SetOnNetReceive(const char* script);
798 
800  //
801  // some effect parameters
802  //
804 
808  int GetEffectHandle();
809 
816  void SetEffectHandle(int nHandle);
817 
819  //
820  // Reference object
821  //
823 
829  int AddReference(const ParaObject& maker, int nTag);
830 
836  int DeleteReference(const ParaObject& ref);
837 
839  int DeleteAllRefs();
840 
842  int GetRefObjNum();
843 
845  ParaObject GetRefObject(int nIndex);
846 
848  ParaAssetObject GetTexture();
849 
851  //
852  // mesh and physics mesh function object
853  //
855 
864  int GetNumReplaceableTextures();
865 
874  ParaAssetObject GetDefaultReplaceableTexture(int ReplaceableTextureID);
875 
884  ParaAssetObject GetReplaceableTexture(int ReplaceableTextureID);
885 
895  bool SetReplaceableTexture(int ReplaceableTextureID, ParaAssetObject pTextureEntity);
896  };
897 
898 
903  class PE_CORE_DECL ParaMiniSceneGraph
904  {
905  public:
906  CMiniSceneGraph::WeakPtr_type m_pSceneGraph;
907  ParaMiniSceneGraph(){};
908  ParaMiniSceneGraph(CMiniSceneGraph* pGraph):m_pSceneGraph(pGraph){};
910  public:
912  const char* GetName();
913 
915  void SetName(const char* sName);
916 
920  bool IsValid() const {return m_pSceneGraph;};
921 
923  ParaAttributeObject GetAttributeObject();
927  ParaAttributeObject GetAttributeObject1(const char* name);
928 
930  void GetAttributeObject_(ParaAttributeObject& output);
931 
933  ParaAttributeObject GetAttributeObjectCamera();
934 
948  bool CreateSkyBox(const char* strObjectName, const char* strMeshAssetName, float fScaleX, float fScaleY,float fScaleZ, float fHeightOffset);
949  bool CreateSkyBox_(const char* strObjectName, ParaAssetObject& asset, float fScaleX, float fScaleY,float fScaleZ, float fHeightOffset);
952  void DeleteSkyBox(const char* strObjectName);
953 
955  void EnableLighting(bool bEnable);
956  bool IsLightingEnabled();
957 
960  void SetTimeOfDaySTD(float time);
961 
964  float GetTimeOfDaySTD();
965 
974  void SetFog(bool bRenderFog, const char* strFogColor, float fFogStart,float fFogEnd, float fFogDensity);
975 
977  bool IsVisible();
978 
979 
981  void SetVisible(bool bVisible);
982 
984  void EnableCamera(bool bEnable);
985 
991  bool IsCameraEnabled();
992 
994  //void UpdateCameraParam(float lookat_x, float lookat_y, float lookat_z, float eyeat_x, float eyeat_y, float eyeat_z);
995 
999  //void GetCameraParam(float* lookat_x, float* lookat_y, float* lookat_z, float* eyeat_x, float* eyeat_y, float* eyeat_z);
1000 
1005  ParaObject GetObject(const char* name);
1006 
1008  ParaObject GetObject3(float x, float y, float z);
1009 
1011  ParaObject GetObject4(float x, float y, float z, float fEpsilon);
1012 
1015  int RemoveObject(const char* name);
1016 
1019  int RemoveObject_(const ParaObject& pObj);
1020 
1025  void AddChild(const ParaObject obj);
1026 
1031  int DestroyObject(const char* name);
1032 
1038  int DestroyObject_(const ParaObject& pObj);
1039 
1041  void DestroyChildren();
1042 
1044  void Reset();
1045 
1046 
1052  void SetActor(const ParaObject pActor);
1053 
1055  ParaObject GetActor();
1056 
1061  ParaAssetObject GetTexture();
1062 
1063 
1068  void CameraZoom(float fAmount);
1069 
1077  void CameraZoomSphere(float center_x, float center_y, float center_z, float raduis);
1078 
1085  void CameraRotate(float dx, float dy, float dz);
1086 
1092  void CameraPan(float dx, float dy);
1093 
1097  void CameraSetLookAtPos(float x, float y, float z);
1098  void CameraGetLookAtPos(float* x, float* y, float* z);
1099 
1106  void CameraSetEyePosByAngle(float fRotY, float fLiftupAngle, float fCameraObjectDist);
1107  void CameraGetEyePosByAngle(float* fRotY, float* fLiftupAngle, float* fCameraObjectDist);
1108  void CameraSetEyePos(double x, double y, double z);
1109  void CameraGetEyePos(double* x, double* y, double* z);
1110 
1111 
1112 
1116  void Draw(float fDeltaTime);
1117 
1124  void SaveToFile(const char* sFileName, int nImageSize = 0);
1125  void SaveToFileEx(const char* sFileName, int width = 0, int height = 0, DWORD dwFormat = 3, UINT MipLevels = 0, int srcLeft = 0, int srcTop = 0, int srcWidth = 0, int srcHeight = 0);
1126 
1132  void SetRenderTargetSize(int nWidth, int nHeight);
1133 
1137  void SetBackGroundColor(const char* rgba);
1138 
1142  void SetMaskTexture(ParaAssetObject pTexture);
1143 
1145  void EnableActiveRendering(bool bEnable);
1146 
1148  bool IsActiveRenderingEnabled();
1149 
1182  ParaObject MousePick(float x, float y, float fMaxDistance, const char* sFilterFunc);
1183 
1185  void ShowHeadOnDisplay(bool bShow);
1186 
1188  bool IsHeadOnDisplayShown();
1189  };
1190 
1191 
1198  class PE_CORE_DECL ParaCamera
1199  {
1200  public:
1201 
1207  static void FollowObject(ParaObject obj);
1214  static void FollowObject(const char* strObjectName);
1215  public:
1222  static void FirstPerson(int nTransitionMode, float fHeight, float fAngle);
1223 
1232  static void ThirdPerson(int nTransitionMode, float fHeight, float fFacing, float fAngle);
1233 
1242  static void Default(int nTransitionMode, float fHeight, float fAngle);
1243 
1252  static void Fixed(int nTransitionMode, float fX, float fY, float fZ);
1262  static void GetPosition(float* x, float* y, float* z);
1263 
1265  static void GetLookAtPosition(float* x, float* y, float* z);
1266 
1270  static void SetKeyMap(int key, int scancode);
1271 
1273  static int GetKeyMap(int key);
1274 
1276  static ParaAttributeObject GetAttributeObject();
1278  static void GetAttributeObject_(ParaAttributeObject& output);
1279  };
1291  class PE_CORE_DECL ParaScene
1292  {
1293  public:
1295  static ParaAttributeObject GetAttributeObject();
1296  static ParaAttributeObject GetAttributeObject1(const char* name);
1298  static void GetAttributeObject_(ParaAttributeObject& output);
1300  static ParaAttributeObject GetAttributeObjectSky();
1302  static void GetAttributeObjectSky_(ParaAttributeObject& output);
1304  static ParaAttributeObject GetAttributeObjectPlayer();
1306  static void GetAttributeObjectPlayer_(ParaAttributeObject& output);
1308  static ParaAttributeObject GetAttributeObjectOcean();
1310  static void GetAttributeObjectOcean_(ParaAttributeObject & output);
1312  static ParaAttributeObject GetAttributeObjectSunLight();
1314  static void GetAttributeObjectSunLight_(ParaAttributeObject & output);
1315 
1326  static ParaObject GetObject(const char * strObjName);
1327 
1329  static ParaObject GetObject5(int nID);
1330 
1331  /* check whether a given object exist. */
1332  static bool CheckExist(int nID);
1333 
1341  static ParaObject GetObject3(float x, float y, float z);
1342 
1344  static ParaObject GetObject4(float x, float y, float z, float fEpsilon);
1345 
1347  static void GetObject_(ParaObject* pOut, const char * strObjName);
1348 
1350  static ParaObject GetPlayer();
1352  static void GetPlayer_(ParaObject* pOut);
1353 
1359  static ParaObject GetNextObject(ParaObject& obj);
1360 
1369  static void CreateWorld(const char * sWorldName, float fWorldSize, const char* sConfigFile);
1370 
1377  static void Reset();
1423  static ParaObject CreateManagedLoader(const char * sLoaderName);/*, float vMinX, float vMinY, float vMinZ, float vMaxX, float vMaxY, float vMaxZ*/
1424 
1437  //static void UpdateTerrainTile(int nRow, int nCol, const char* sConfigFile);
1438 
1459  static void CreateGlobalTerrain(float fRadius, int nDepth, const char* sHeightmapfile,
1460  float fTerrainSize, float fElevscale, int bSwapvertical,
1461  const char* sMainTextureFile, const char* sCommonTextureFile,
1462  int nMaxBlockSize, float fDetailThreshold);
1463 
1478  static void Attach(ParaObject& pObj);
1482  static void Delete(ParaObject& pObj);
1488  static void Detach(ParaObject& pObj);
1489 
1491  static void FireMissile(int nMissileID, float fSpeed, double fromX, double fromY, double fromZ, double toX, double toY, double toZ);
1492  static void FireMissile1(const char* assetname, float fSpeed, double fromX, double fromY, double fromZ, double toX, double toY, double toZ);
1493  static void FireMissile2(ParaAssetObject& asset, float fSpeed, double fromX, double fromY, double fromZ, double toX, double toY, double toZ);
1494 
1496  static void SetModified(bool bModified);
1498  static bool IsModified();
1499 
1501  static bool IsScenePaused();
1503  static void PauseScene(bool bEnable);
1504 
1508  static bool IsSceneEnabled();
1510  static void EnableScene(bool bEnable);
1511 
1536  static ParaObject CreateMeshObject(const char* strObjectName, const char* strMeshAssetName,
1537  float fOBB_X, float fOBB_Y, float fOBB_Z,float fFacing, bool bSolid,const char* localMatrix);
1538  static ParaObject CreateMeshObject(const char* strObjectName, ParaAssetObject& asset,
1539  float fOBB_X, float fOBB_Y, float fOBB_Z,float fFacing, bool bSolid,const char* localMatrix);
1540 
1547  static ParaObject CreateObject(const char* strType, const char * strObjectName, double x, double y, double z);
1548 
1558  static ParaObject CreateZone(const char* sZoneName, const char* sBoundingVolumes, float width, float height, float depth, float facing);
1559 
1569  static ParaObject CreatePortal(const char* sPortalName, const char* sHomeZone, const char* sTargetZone, const char* sQuadVertices, float width, float height, float depth, float facing);
1570 
1577  static ParaObject CreateVoxelMesh(const char* strObjectName, const char* sGridFileName, const char* sTextureFileName);
1591  static bool CreateSkyBox(const char* strObjectName, const char* strMeshAssetName, float fScaleX, float fScaleY,float fScaleZ, float fHeightOffset);
1592  static bool CreateSkyBox_(const char* strObjectName, ParaAssetObject& asset, float fScaleX, float fScaleY,float fScaleZ, float fHeightOffset);
1595  static void DeleteSkyBox(const char* strObjectName);
1596 
1633  static ParaObject CreateMeshPhysicsObject(const char* strObjectName, const char* strMeshAssetName, float fOBB_X, float fOBB_Y, float fOBB_Z, bool bApplyPhysics,const char* localMatrix);
1634  static ParaObject CreateMeshPhysicsObject(const char* strObjectName, ParaAssetObject& asset, float fOBB_X, float fOBB_Y, float fOBB_Z, bool bApplyPhysics,const char* localMatrix);
1636  static void CreateMeshPhysicsObject__(ParaObject* pOut, const char* strObjectName, ParaAssetObject& asset, float fOBB_X, float fOBB_Y, float fOBB_Z, bool bApplyPhysics,const char* localMatrix);
1637 
1666  static ParaObject CreateLightObject(const char* strObjectName, float fPosX, float fPosY, float fPosZ, const char* sLightParams, const char* localMatrix);
1667 
1673  static ParaObject CreateDynamicPhysicsObject(const char* strObjectName, const char* strMeshAssetName, float fOBB_X, float fOBB_Y, float fOBB_Z, bool bRenderMesh);
1674  //static ParaObject CreateDynamicPhysicsObject(const char* strObjectName, ParaAssetObject asset, float fOBB_X, float fOBB_Y, float fOBB_Z, bool bRenderMesh);
1675 
1676 
1691  static ParaObject CreateCharacter(const char* strObjectName, const char* strMultiAnimationAssetName, const char* strScript, bool bIsGlobal,
1692  float fRadius, float fFacing, float fScaling);
1693  static ParaObject CreateCharacter(const char* strObjectName, ParaAssetObject& asset, const char* strScript, bool bIsGlobal,
1694  float fRadius, float fFacing, float fScaling);
1696  static void CreateCharacter__(ParaObject* pOut, const char* strObjectName, ParaAssetObject& asset, const char* strScript, bool bIsGlobal,
1697  float fRadius, float fFacing, float fScaling);
1698 
1704  static void Play3DSound(const char* strSoundAssetName, float fX, float fY, float fZ);
1705  //static void Play3DSound(ParaAssetObject asset, float fX, float fY, float fZ);
1706 
1714  static void SetGlobalWater(bool bEnable, float fWaterLevel);
1715 
1717  static float GetGlobalWaterLevel();
1718 
1720  static bool IsGlobalWaterEnabled();
1721 
1724  static void UpdateOcean();
1725 
1732  static void AddWaterRipple(float x, float y, float z);
1733 
1743  static void Execute(const char* strCmd);
1772  static ParaObject MousePick(float fMaxDistance, const char* sFilterFunc);
1773 
1789  static int SelectObject(int nGroupIndex, float x,float y, float z, float radius, const char* sFilterFunc );
1793  static int SelectObject1(int nGroupIndex, float x1,float y1, float z1,float x2,float y2, float z2, float fRotY, const char* sFilterFunc );
1794 
1795 
1809  static void RegisterEvent(const char* sID, const char* sScript);
1816  static void RegisterEvent1(DWORD nEventType, const char* sID, const char* sScript);
1818  static void UnregisterEvent(const char* sID);
1820  static void UnregisterAllEvent();
1821 
1824  static void EnableMouseClick(bool bEnable);
1825 
1827  static ParaObject GetCurrentActor();
1829  static void SetCurrentActor(ParaObject pActor);
1830 
1837  static ParaObject TogglePlayer();
1838 
1848  static ParaObject GetObjectByViewBox(const object& viewbox);
1849 
1854  static int GetActionMeshesBySphere(const object& inout, float x, float y, float z, float radius);
1855 
1873  static int GetObjectsBySphere(const object& inout, float x, float y, float z, float radius, const char* sFilterFunc);
1874 
1894  static int GetObjectsByScreenRect(const object& inout, int left, int top, int right, int bottom, const char* sFilterFunc, float fMaxDistance);
1895 
1903  static void OnTerrainChanged(float x,float y, float fRadius);
1904 
1910  static int SaveAllCharacters();
1911 
1913  static void ShowHeadOnDisplay(bool bShow);
1914 
1916  static bool IsHeadOnDisplayShown();
1917 
1926  static int LoadNPCsByRegion(float min_x, float min_y, float min_z, float max_x, float max_y, float max_z, bool bReload);
1927 
1936  static void SetCharacterRegionPath(int slot, const std::string& path);
1937 
1943  static void SetCharTextureSize(int nCharacterTexSize, int nCartoonFaceTexSize);
1944 
1950  static void SetCharRegionCoordinates(int nRegionIndex, int xpos, int ypos, int xsize, int ysize);
1951 
1953  //
1954  // the following is for sun system
1955  //
1957 
1961  static void SetTimeOfDay(float time);
1964  static void SetTimeOfDaySTD(float time);
1965 
1967  static float GetTimeOfDay();
1968 
1971  static float GetTimeOfDaySTD();
1972 
1974  static void SetMaximumAngle(float fMaxAngle);
1975 
1979  static float AdvanceTimeOfDay(float timeDelta);
1980 
1984  static void SetDayLength(float fMinutes);
1985 
1987  static float GetDayLength();
1989  //
1990  // global effect and light settings
1991  //
1993 
2000  static void SetShadowMethod(int nMethod);
2001  static int GetShadowMethod();
2002 
2004  static void EnableLighting(bool bEnable);
2005  static bool IsLightingEnabled();
2006 
2015  static void SetFog(bool bRenderFog, const char* strFogColor, float fFogStart,float fFogEnd, float fFogDensity);
2016 
2018  //
2019  // mini scene graph
2020  //
2022 
2024  static ParaMiniSceneGraph GetMiniSceneGraph(const char* name);
2025 
2029  static int DeleteMiniSceneGraph(const char* name);
2030 
2032  static void EnableMiniSceneGraph(bool bEnable);
2033 
2035  static bool IsMiniSceneGraphEnabled();
2036 
2039  static ParaMiniSceneGraph GetPostProcessingScene();
2040 
2046  static void EnablePostProcessing(bool bEnable, const char* sCallbackScript);
2047 
2049  static bool IsPostProcessingEnabled();
2050 
2058  static bool GetScreenPosFrom3DPoint(float x, float y, float z, const object& output);
2059 
2065  static void SetMaxRenderCount(int nRenderImportance, int nCount);
2066 
2072  static int GetMaxRenderCount(int nRenderImportance);
2073  };
2074 };
ParaMiniSceneGraph class:
Definition: ParaScriptingScene.h:903
The camera controller.
Definition: ParaScriptingScene.h:1198
Definition: combase.h:159
Mini scene graph does not use a spatial partitions for its stored objects, instead it just implement ...
Definition: MiniSceneGraph.h:29
different physics engine has different winding order.
Definition: EventBinding.h:32
ParaObject class: it is used to control game scene objects from scripts.
Definition: ParaScriptingScene.h:56
ParaScene namespace contains a list of HAPI functions to create and modify scene objects in paraworld...
Definition: ParaScriptingScene.h:1291
ParaObject class: it is used to control game scene objects from scripts.
Definition: ParaScriptingCharacter.h:241
bool IsValid() const
check if the object is valid
Definition: ParaScriptingScene.h:920
a list of CParameter{name, value} pairs of anything.
Definition: ParaScriptingCommon.h:37
this is an interface class for game objects, such as NPC, OPC and players.
Definition: IGameObject.h:15
Definition: PEtypes.h:507
it represents an attribute object associated with an object.
Definition: ParaScriptingGlobal.h:458
Defines the base class of all scene elements:CBaseObject for Parallel World Engine.
Definition: BaseObject.h:230
for luabind, The main drawback of this approach is that the compilation time will increase for the fi...
Definition: luaSQLite.cpp:1971
it represents an asset entity.
Definition: ParaScriptingCommon.h:85