forked from metin-server/m2dev-client-src
Merge pull request #110 from onurcan488/main
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
#include "ActorInstance.h"
|
||||
#include "AreaTerrain.h"
|
||||
#include "RaceData.h"
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX.h"
|
||||
#include "SpeedTreeLib/SpeedTreeWrapper.h"
|
||||
|
||||
enum
|
||||
@@ -813,7 +813,7 @@ void CActorInstance::__CreateTree(const char * c_szFileName)
|
||||
{
|
||||
__DestroyTree();
|
||||
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
m_pkTree=rkForest.CreateInstance(m_x, m_y, m_z, GetCaseCRC32(c_szFileName, strlen(c_szFileName)), c_szFileName);
|
||||
m_pkTree->SetPosition(m_x, m_y, m_z);
|
||||
m_pkTree->UpdateBoundingSphere();
|
||||
@@ -825,7 +825,7 @@ void CActorInstance::__DestroyTree()
|
||||
if (!m_pkTree)
|
||||
return;
|
||||
|
||||
CSpeedTreeForestDirectX8::Instance().DeleteInstance(m_pkTree);
|
||||
CSpeedTreeForestDirectX::Instance().DeleteInstance(m_pkTree);
|
||||
}
|
||||
|
||||
void CActorInstance::__SetTreePosition(float fx, float fy, float fz)
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#include "EterLib/ResourceManager.h"
|
||||
#include "EterLib/StateManager.h"
|
||||
#include "EffectLib/EffectManager.h"
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX.h"
|
||||
#include "EterBase/Timer.h"
|
||||
|
||||
#include "Area.h"
|
||||
@@ -550,7 +550,7 @@ void CArea::__SetObjectInstance_SetTree(TObjectInstance * pObjectInstance, const
|
||||
|
||||
void CArea::TObjectInstance::SetTree(float x, float y, float z, DWORD dwTreeCRC, const char* c_szTreeName)
|
||||
{
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
pTree=rkForest.CreateInstance(x, y, z, dwTreeCRC, c_szTreeName);
|
||||
dwType = prt::PROPERTY_TYPE_TREE;
|
||||
}
|
||||
@@ -1106,7 +1106,7 @@ void CArea::__Clear_DestroyObjectInstance(TObjectInstance * pObjectInstance)
|
||||
if (pObjectInstance->pTree)
|
||||
{
|
||||
pObjectInstance->pTree->Clear();
|
||||
CSpeedTreeForestDirectX8::Instance().DeleteInstance(pObjectInstance->pTree);
|
||||
CSpeedTreeForestDirectX::Instance().DeleteInstance(pObjectInstance->pTree);
|
||||
pObjectInstance->pTree = NULL;
|
||||
}
|
||||
|
||||
|
||||
@@ -290,7 +290,7 @@ void CMapManager::BeginEnvironment()
|
||||
// MR-14: -- END OF -- Fog update by Alaric
|
||||
else
|
||||
{
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
rkForest.SetFog(
|
||||
mc_pcurEnvironmentData->GetFogNearDistance(),
|
||||
mc_pcurEnvironmentData->GetFogFarDistance()
|
||||
|
||||
@@ -107,7 +107,7 @@ class CMapManager : public CScreen, public IPhysicsWorld
|
||||
// Map
|
||||
//////////////////////////////////////////////////////////////////////////
|
||||
CMapOutdoor * m_pkMap;
|
||||
CSpeedTreeForestDirectX8 m_Forest;
|
||||
CSpeedTreeForestDirectX m_Forest;
|
||||
|
||||
public:
|
||||
// 2004.10.14.myevan.TEMP_CAreaLoaderThread
|
||||
|
||||
@@ -209,7 +209,7 @@ bool CMapOutdoor::Destroy()
|
||||
|
||||
m_rkList_kGuildArea.clear();
|
||||
m_kPool_kMonsterAreaInfo.Destroy();
|
||||
CSpeedTreeForestDirectX8::Instance().Clear();
|
||||
CSpeedTreeForestDirectX::Instance().Clear();
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -239,7 +239,7 @@ void CMapOutdoor::OnBeginEnvironment()
|
||||
if (!mc_pEnvironmentData)
|
||||
return;
|
||||
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
rkForest.SetFog(
|
||||
mc_pEnvironmentData->GetFogNearDistance(),
|
||||
mc_pEnvironmentData->GetFogFarDistance()
|
||||
@@ -1251,7 +1251,7 @@ void CMapOutdoor::XMasTree_Destroy()
|
||||
{
|
||||
if (m_kXMas.m_pkTree)
|
||||
{
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
m_kXMas.m_pkTree->Clear();
|
||||
rkForest.DeleteInstance(m_kXMas.m_pkTree);
|
||||
m_kXMas.m_pkTree=NULL;
|
||||
@@ -1269,7 +1269,7 @@ void CMapOutdoor::__XMasTree_Create(float x, float y, float z, const char* c_szT
|
||||
assert(NULL==m_kXMas.m_pkTree);
|
||||
assert(-1==m_kXMas.m_iEffectID);
|
||||
|
||||
CSpeedTreeForestDirectX8& rkForest=CSpeedTreeForestDirectX8::Instance();
|
||||
CSpeedTreeForestDirectX& rkForest=CSpeedTreeForestDirectX::Instance();
|
||||
DWORD dwCRC32 = GetCaseCRC32(c_szTreeName, strlen(c_szTreeName));
|
||||
m_kXMas.m_pkTree=rkForest.CreateInstance(x, y, z, dwCRC32, c_szTreeName);
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
#include "PRTerrainLib/TerrainType.h"
|
||||
#include "PRTerrainLib/TextureSet.h"
|
||||
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeLib/SpeedTreeForestDirectX.h"
|
||||
|
||||
#include "MapBase.h"
|
||||
#include "Area.h"
|
||||
|
||||
@@ -33,7 +33,7 @@ bool CMapOutdoor::Load(float x, float y, float z)
|
||||
m_lOldReadX = -1;
|
||||
|
||||
// TODO: SetRenderingDevice에서 Environment로 부터 라이트 속성을 넘겨줘야 스태틱 라이트가 제대로 작동한다.
|
||||
CSpeedTreeForestDirectX8::Instance().SetRenderingDevice(ms_lpd3dDevice);
|
||||
CSpeedTreeForestDirectX::Instance().SetRenderingDevice(ms_lpd3dDevice);
|
||||
|
||||
Update(x, y, z);
|
||||
|
||||
|
||||
@@ -238,7 +238,7 @@ void CMapOutdoor::RenderCloud()
|
||||
void CMapOutdoor::RenderTree()
|
||||
{
|
||||
if (IsVisiblePart(PART_TREE))
|
||||
CSpeedTreeForestDirectX8::Instance().Render();
|
||||
CSpeedTreeForestDirectX::Instance().Render();
|
||||
}
|
||||
|
||||
void CMapOutdoor::SetInverseViewAndDynamicShaodwMatrices()
|
||||
|
||||
@@ -112,7 +112,7 @@ bool CMapOutdoor::Update(float fX, float fY, float fZ)
|
||||
#ifdef __PERFORMANCE_CHECKER__
|
||||
DWORD t3=ELTimer_GetMSec();
|
||||
#endif
|
||||
CSpeedTreeForestDirectX8::Instance().UpdateSystem(CTimer::Instance().GetCurrentSecond());
|
||||
CSpeedTreeForestDirectX::Instance().UpdateSystem(CTimer::Instance().GetCurrentSecond());
|
||||
#ifdef __PERFORMANCE_CHECKER__
|
||||
DWORD t4=ELTimer_GetMSec();
|
||||
#endif
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8 Class
|
||||
// CSpeedTreeForestDirectX Class
|
||||
//
|
||||
// (c) 2003 IDV, Inc.
|
||||
//
|
||||
@@ -38,29 +38,29 @@
|
||||
#include "EterLib/StateManager.h"
|
||||
#include "EterLib/Camera.h"
|
||||
|
||||
#include "SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeForestDirectX.h"
|
||||
#include "SpeedTreeConfig.h"
|
||||
#include "VertexShaders.h"
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8::CSpeedTreeForestDirectX8
|
||||
// CSpeedTreeForestDirectX::CSpeedTreeForestDirectX
|
||||
|
||||
CSpeedTreeForestDirectX8::CSpeedTreeForestDirectX8() : m_dwBranchVertexShader(nullptr), m_pLeafVertexShaderDecl(nullptr), m_pLeafVertexShader(nullptr)
|
||||
CSpeedTreeForestDirectX::CSpeedTreeForestDirectX() : m_dwBranchVertexShader(nullptr), m_pLeafVertexShaderDecl(nullptr), m_pLeafVertexShader(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8::~CSpeedTreeForestDirectX8
|
||||
// CSpeedTreeForestDirectX::~CSpeedTreeForestDirectX
|
||||
|
||||
CSpeedTreeForestDirectX8::~CSpeedTreeForestDirectX8()
|
||||
CSpeedTreeForestDirectX::~CSpeedTreeForestDirectX()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8::InitVertexShaders
|
||||
bool CSpeedTreeForestDirectX8::InitVertexShaders(void)
|
||||
// CSpeedTreeForestDirectX::InitVertexShaders
|
||||
bool CSpeedTreeForestDirectX::InitVertexShaders(void)
|
||||
{
|
||||
// load the vertex shaders
|
||||
if (!m_dwBranchVertexShader)
|
||||
@@ -78,7 +78,7 @@ bool CSpeedTreeForestDirectX8::InitVertexShaders(void)
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CSpeedTreeForestDirectX8::SetRenderingDevice(LPDIRECT3DDEVICE9 lpDevice)
|
||||
bool CSpeedTreeForestDirectX::SetRenderingDevice(LPDIRECT3DDEVICE9 lpDevice)
|
||||
{
|
||||
m_pDx = lpDevice;
|
||||
|
||||
@@ -108,14 +108,14 @@ bool CSpeedTreeForestDirectX8::SetRenderingDevice(LPDIRECT3DDEVICE9 lpDevice)
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8::UploadWindMatrix
|
||||
// CSpeedTreeForestDirectX::UploadWindMatrix
|
||||
|
||||
void CSpeedTreeForestDirectX8::UploadWindMatrix(UINT uiLocation, const float* pMatrix) const
|
||||
void CSpeedTreeForestDirectX::UploadWindMatrix(UINT uiLocation, const float* pMatrix) const
|
||||
{
|
||||
STATEMANAGER.SetVertexShaderConstant(uiLocation, pMatrix, 4);
|
||||
}
|
||||
|
||||
void CSpeedTreeForestDirectX8::UpdateCompundMatrix(const D3DXVECTOR3& c_rEyeVec, const D3DXMATRIX& c_rmatView, const D3DXMATRIX& c_rmatProj)
|
||||
void CSpeedTreeForestDirectX::UpdateCompundMatrix(const D3DXVECTOR3& c_rEyeVec, const D3DXMATRIX& c_rmatView, const D3DXMATRIX& c_rmatProj)
|
||||
{
|
||||
// setup composite matrix for shader
|
||||
D3DXMATRIX matBlend;
|
||||
@@ -135,9 +135,9 @@ void CSpeedTreeForestDirectX8::UpdateCompundMatrix(const D3DXVECTOR3& c_rEyeVec,
|
||||
}
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// CSpeedTreeForestDirectX8::Render
|
||||
// CSpeedTreeForestDirectX::Render
|
||||
|
||||
void CSpeedTreeForestDirectX8::Render(unsigned long ulRenderBitVector)
|
||||
void CSpeedTreeForestDirectX::Render(unsigned long ulRenderBitVector)
|
||||
{
|
||||
UpdateSystem(CTimer::Instance().GetCurrentSecond());
|
||||
|
||||
@@ -40,12 +40,12 @@
|
||||
#include "SpeedTreeMaterial.h"
|
||||
|
||||
///////////////////////////////////////////////////////////////////////
|
||||
// class CSpeedTreeForestDirectX8 declaration
|
||||
class CSpeedTreeForestDirectX8 : public CSpeedTreeForest, public CGraphicBase, public CSingleton<CSpeedTreeForestDirectX8>
|
||||
// class CSpeedTreeForestDirectX declaration
|
||||
class CSpeedTreeForestDirectX : public CSpeedTreeForest, public CGraphicBase, public CSingleton<CSpeedTreeForestDirectX>
|
||||
{
|
||||
public:
|
||||
CSpeedTreeForestDirectX8();
|
||||
virtual ~CSpeedTreeForestDirectX8();
|
||||
CSpeedTreeForestDirectX();
|
||||
virtual ~CSpeedTreeForestDirectX();
|
||||
|
||||
void UploadWindMatrix(unsigned int uiLocation, const float* pMatrix) const;
|
||||
void UpdateCompundMatrix(const D3DXVECTOR3 & c_rEyeVec, const D3DXMATRIX & c_rmatView, const D3DXMATRIX& c_rmatProj);
|
||||
@@ -44,7 +44,7 @@
|
||||
#include "EterLib/StateManager.h"
|
||||
|
||||
#include "SpeedTreeConfig.h"
|
||||
#include "SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeForestDirectX.h"
|
||||
#include "SpeedTreeWrapper.h"
|
||||
#include "VertexShaders.h"
|
||||
|
||||
@@ -92,7 +92,7 @@ void CSpeedTreeWrapper::SetVertexShaders(LPDIRECT3DVERTEXDECLARATION9 pBranchVer
|
||||
void CSpeedTreeWrapper::OnRenderPCBlocker()
|
||||
{
|
||||
if (!ms_dwBranchVertexShader || !ms_pLeafVertexShaderDecl || !ms_pLeafVertexShader)
|
||||
CSpeedTreeForestDirectX8::Instance().EnsureVertexShaders();
|
||||
CSpeedTreeForestDirectX::Instance().EnsureVertexShaders();
|
||||
|
||||
if (ms_dwBranchVertexShader == 0)
|
||||
{
|
||||
@@ -100,13 +100,12 @@ void CSpeedTreeWrapper::OnRenderPCBlocker()
|
||||
//LogBox("Vertex Shader not assigned. You must call CSpeedTreeWrapper::SetVertexShader for this");
|
||||
}
|
||||
|
||||
CSpeedTreeForestDirectX8::Instance().UpdateSystem(ELTimer_GetMSec() / 1000.0f);
|
||||
CSpeedTreeForestDirectX::Instance().UpdateSystem(ELTimer_GetMSec() / 1000.0f);
|
||||
|
||||
// �ϳ��� ������ �� ���� LOD ������� ����
|
||||
m_pSpeedTree->SetLodLevel(1.0f);
|
||||
//Advance();
|
||||
|
||||
CSpeedTreeForestDirectX8::Instance().UpdateCompundMatrix(CCameraManager::Instance().GetCurrentCamera()->GetEye(), ms_matView, ms_matProj);
|
||||
CSpeedTreeForestDirectX::Instance().UpdateCompundMatrix(CCameraManager::Instance().GetCurrentCamera()->GetEye(), ms_matView, ms_matProj);
|
||||
|
||||
STATEMANAGER.SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
|
||||
STATEMANAGER.SetTextureStageState(0, D3DTSS_COLORARG2, D3DTA_DIFFUSE);
|
||||
@@ -241,7 +240,7 @@ void CSpeedTreeWrapper::OnRenderPCBlocker()
|
||||
void CSpeedTreeWrapper::OnRender()
|
||||
{
|
||||
if (!ms_dwBranchVertexShader || !ms_pLeafVertexShaderDecl || !ms_pLeafVertexShader)
|
||||
CSpeedTreeForestDirectX8::Instance().EnsureVertexShaders();
|
||||
CSpeedTreeForestDirectX::Instance().EnsureVertexShaders();
|
||||
|
||||
if (ms_dwBranchVertexShader == 0)
|
||||
{
|
||||
@@ -249,13 +248,13 @@ void CSpeedTreeWrapper::OnRender()
|
||||
//LogBox("Vertex Shader not assigned. You must call CSpeedTreeWrapper::SetVertexShader for this");
|
||||
}
|
||||
|
||||
CSpeedTreeForestDirectX8::Instance().UpdateSystem(ELTimer_GetMSec() / 1000.0f);
|
||||
CSpeedTreeForestDirectX::Instance().UpdateSystem(ELTimer_GetMSec() / 1000.0f);
|
||||
|
||||
// �ϳ��� ������ �� ���� LOD ������� ����
|
||||
m_pSpeedTree->SetLodLevel(1.0f);
|
||||
//Advance();
|
||||
|
||||
CSpeedTreeForestDirectX8::Instance().UpdateCompundMatrix(CCameraManager::Instance().GetCurrentCamera()->GetEye(), ms_matView, ms_matProj);
|
||||
CSpeedTreeForestDirectX::Instance().UpdateCompundMatrix(CCameraManager::Instance().GetCurrentCamera()->GetEye(), ms_matView, ms_matProj);
|
||||
|
||||
STATEMANAGER.SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
|
||||
STATEMANAGER.SetTextureStageState(0, D3DTSS_COLORARG2, D3DTA_DIFFUSE);
|
||||
|
||||
@@ -5,4 +5,4 @@
|
||||
//#include <crtdbg.h>
|
||||
|
||||
//#include "Forest.h"
|
||||
#include "SpeedTreeForestDirectX8.h"
|
||||
#include "SpeedTreeForestDirectX.h"
|
||||
|
||||
@@ -1127,8 +1127,7 @@ void CPythonApplication::Destroy()
|
||||
|
||||
m_grpDevice.Destroy();
|
||||
|
||||
// FIXME : ¸¸µé¾îÁ® ÀÖÁö ¾ÊÀ½ - [levites]
|
||||
//CSpeedTreeForestDirectX8::Instance().Clear();
|
||||
//CSpeedTreeForestDirectX::Instance().Clear();
|
||||
|
||||
CAttributeInstance::DestroySystem();
|
||||
CTextFileLoader::DestroySystem();
|
||||
|
||||
Reference in New Issue
Block a user