// HouseObject.h: interface for the CHouseObject class. // ////////////////////////////////////////////////////////////////////// #if !defined(AFX_HOUSEOBJECT_H__F85E679D_0A78_40BA_91F8_DABE3690E8F1__INCLUDED_) #define AFX_HOUSEOBJECT_H__F85E679D_0A78_40BA_91F8_DABE3690E8F1__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "BaseDataDefine.h" #include "./NMesh.h" //#include "MeshObjectContainer.h" #include "./OctreeScene.h" #include "LightObjectScene.h" #include "ObjectScene.h" #include "InHouseObjectMap.h" #include "BspScene.h" #include "SectorLight.h" #include "NTexture.h" #include class COctreeScene; class CHouseObject { public: COctreeScene *m_pOctree; CROSSM::CNMesh *m_pInHouseObject; CROSSM::CNMesh *m_pMedHouseObject; CROSSM::CNMesh *m_pOutHouseObject; CROSSM::CNMesh *m_pFlagHouseObject; // ±ê¹ß ¸Þ½¬. CROSSM::CNTexture *m_Lightmap; CROSSM::CNTexture *m_InLightmap; bool m_isHaveLightmap; bool m_isHaveInLightmap; bool m_bModulate2X; std::vector m_pVertex; std::vector m_nVertex; std::vector m_pIndices; std::vector m_nIndices; CHouseObject(); virtual ~CHouseObject(); void GetPolygon(); void CalcBox(vector3 &MinBox,vector3 &MaxBox,int iCalcObject = 0); void GenerateOctree(); void Render(LPDIRECT3DDEVICE8 pd3dDevice); void GenerateLightmap(matrix matSet,matrix matHouseTM,int LightmapMode); void GenerateNewLightmap(int ivalue,matrix matSet,matrix matHouseTM,CSectorLight *pLights,int iLights); bool LoadOut(char *strOutName); bool LoadIn(char *strInName); bool LoadMed(char *strName); bool LoadFlag(char *strFlagName); bool LoadOctree(char *strOct); bool LoadLightmap(char *strName); bool LoadInLightmap(char *strName); void ReleaseOut(); void ReleaseIn(); void ReleaseMed(); void ReleaseFlag(); void ReleaseOctree(); void RenderOctree(IDirect3DDevice8* pDevice); }; /* class CHouseObject { public: void RenderGlare(LPDIRECT3DDEVICE8 pd3dDevice); static DWORD m_dwShadowMapVertexShader; static DWORD m_dwShadowMapPixelShader; static DWORD m_dwHouseDiffuseVertexShader; static DWORD m_dwHouseDiffusePixelShader; static DWORD m_dwHouseSpecularVertexShader; static DWORD m_dwHouseSpecularPixelShader; static LPDIRECT3DCUBETEXTURE8 m_pNormalizeCubeMap; matrix RenderShadow(LPDIRECT3DDEVICE8 pd3dDevice); COctreeScene *m_pOctree; void GetPolygon(); void CalcBox(vector3 &MinBox,vector3 &MaxBox,int iCalcObject = 0); //List m_LightList; //List m_ObjectList; void GenerateOctree(); void Render(LPDIRECT3DDEVICE8 pd3dDevice); void GenerateLightmap(matrix matSet,matrix matHouseTM,int LightmapMode); void GenerateNewLightmap(int ivalue,matrix matSet,matrix matHouseTM,CSectorLight *pLights,int iLights); bool SettingNight(bool bNight); CROSSM::CNMesh *m_pInHouseObject; CROSSM::CNMesh *m_pMedHouseObject; CROSSM::CNMesh *m_pOutHouseObject; CROSSM::CNMesh *m_pLodHouseObject; CBspScene *m_pBspObject; CInHouseObjectMap *m_pInHouseMap; CTexture m_Lightmap; CTexture m_InLightmap; CTexture m_Detailmap; bool m_isHaveLightmap; bool m_isHaveInLightmap; CHouseObject(); virtual ~CHouseObject(); //List m_pVertex; //List m_nVertex; //List m_pIndices; //List m_nIndices; // Night ¿ë ¼¼ÆÃ µÇ¾ú´ÂÁö bool m_bConvertNight; bool m_bNightMap; bool m_bNightUv; bool m_bModulate2X; // Night ¿ë µ¥ÀÌÅ͵é //List m_pBackupVertex; //List m_pBackupTmp; CTexture m_BackupLightmap; };*/ #endif // !defined(AFX_HOUSEOBJECT_H__F85E679D_0A78_40BA_91F8_DABE3690E8F1__INCLUDED_)