particlemanager.cpp

来自「国外网游源码....除工具源码缺少之外,其余程序都全...至于,什么游戏,因为国」· C++ 代码 · 共 64 行

CPP
64
字号
// ParticleManager.cpp: implementation of the CParticleManager class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"

const DWORD POINTVERTEXEX::FVF = D3DFVF_XYZ | D3DFVF_DIFFUSE | D3DFVF_TEX1;

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CParticleManager::CParticleManager()
{
	m_pVBOneParticle = NULL;
	m_pVBParticle = NULL;
	m_dwPDiscard = 0;
}

CParticleManager::~CParticleManager()
{
	SAFE_RELEASE(m_pVBOneParticle);
	SAFE_RELEASE(m_pVBParticle);
}

HRESULT CParticleManager::Create()
{
	RestoreDeviceObjects();
	
	return S_OK;
}

HRESULT CParticleManager::AddParticle()
{
	return S_OK;
}

HRESULT CParticleManager::InvalidateDeviceObjects()
{
	SAFE_RELEASE(m_pVBOneParticle);
	SAFE_RELEASE(m_pVBParticle);
	return S_OK;
}

HRESULT CParticleManager::RestoreDeviceObjects()
{
	if(FAILED( g_pApp->GetD3dDevice()->CreateVertexBuffer( 4*sizeof(POINTVERTEXEX),
									0, POINTVERTEXEX::FVF,D3DPOOL_DEFAULT, &m_pVBOneParticle, NULL) ))
	{
		OutputDebugString("[角菩] CBillBoardManager::RestoreDeviceObjects");
		return E_FAIL;
	}

	if(FAILED( g_pApp->GetD3dDevice()->CreateVertexBuffer( m_dwPDiscard*sizeof(POINTVERTEXEX),
									D3DUSAGE_DYNAMIC|D3DUSAGE_WRITEONLY,
									POINTVERTEXEX::FVF,D3DPOOL_DEFAULT, &m_pVBParticle, NULL) ))
	{
		OutputDebugString("[角菩] CBillBoardManager::RestoreDeviceObjects");
		return E_FAIL;
	}

	return S_OK;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?