Initial commit: ROW Client source code
Game client codebase including: - CharacterActionControl: Character and creature management - GlobalScript: Network, items, skills, quests, utilities - RYLClient: Main client application with GUI and event handlers - Engine: 3D rendering engine (RYLGL) - MemoryManager: Custom memory allocation - Library: Third-party dependencies (DirectX, boost, etc.) - Tools: Development utilities 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
104
Engine/Zalla3D Scene Class/Z3DGlowHandler.h
Normal file
104
Engine/Zalla3D Scene Class/Z3DGlowHandler.h
Normal file
@@ -0,0 +1,104 @@
|
||||
#pragma once
|
||||
|
||||
#include "d3dx8.h"
|
||||
#include <vector>
|
||||
#include <list>
|
||||
|
||||
|
||||
struct Z3D_GLOW_KEY
|
||||
{
|
||||
D3DXCOLOR c;
|
||||
int nKeyFrame;
|
||||
};
|
||||
|
||||
struct Z3D_GLOW_CONSTANTS
|
||||
{
|
||||
std::vector< Z3D_GLOW_KEY > vecGlowKeyData;
|
||||
int nTotalFrame;
|
||||
|
||||
Z3D_GLOW_CONSTANTS()
|
||||
{
|
||||
nTotalFrame = 0;
|
||||
}
|
||||
};
|
||||
|
||||
struct CUSTOM_TLVERTEX
|
||||
{
|
||||
float x, y, z, rhw;
|
||||
float u, v;
|
||||
|
||||
CUSTOM_TLVERTEX() {}
|
||||
|
||||
CUSTOM_TLVERTEX( float _x, float _y, float _z, float _rhw, float _u, float _v )
|
||||
{
|
||||
x = _x; y = _y; z = _z; rhw = _rhw;
|
||||
u = _u; v = _v;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
class CZ3DGlowHandler
|
||||
{
|
||||
public:
|
||||
CZ3DGlowHandler();
|
||||
~CZ3DGlowHandler();
|
||||
|
||||
void SetLevel( int nLevel );
|
||||
void ApplySetting( IDirect3DDevice8* pDevice );
|
||||
|
||||
|
||||
static void _SetRenderViewport( D3DVIEWPORT8& vp );
|
||||
static void _SetRenderProjectionMatrix( D3DMATRIX& mat );
|
||||
|
||||
static void _Process(); // ī<><C4AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD> <20>ѹ<EFBFBD><D1B9><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ȣ<><C8A3>
|
||||
|
||||
static bool _Init( IDirect3DDevice8* pDevice, bool bLowSpec = false );
|
||||
static void _Close();
|
||||
|
||||
|
||||
static void _PrepareGlowRender(); // ij<><C4B3><EFBFBD>ͺ<EFBFBD> glow RTT <20><> render target <20><><EFBFBD><EFBFBD>
|
||||
static void _EndGlowRender(); // glow RTT <20><><EFBFBD><EFBFBD>. render target <20><><EFBFBD><EFBFBD>
|
||||
static void _ProcessGlow(); // ij<><C4B3><EFBFBD>ͺ<EFBFBD> glow RTT <20><> texture <20><> ȭ<>鿡 glow effect <20><><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
|
||||
static Z3D_GLOW_CONSTANTS& _GetGlowConstantField( int nLevelIndex );
|
||||
static void _AddGlowConstantKeyframe( int nLevelndex, D3DXCOLOR& c, int nDuration );
|
||||
|
||||
static IDirect3DTexture8* TestGetRenderTexture()
|
||||
{
|
||||
return ms_pRenderTargetTexture;
|
||||
}
|
||||
|
||||
|
||||
private:
|
||||
void FrameMove();
|
||||
|
||||
int m_nLevelIndex; // 0<><30><EFBFBD><EFBFBD> 'ȿ<><C8BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'<27><> <20><>Ÿ<EFBFBD><C5B8><EFBFBD>Ƿ<EFBFBD>, <20><><EFBFBD><EFBFBD> <20>Ķ<EFBFBD><C4B6><EFBFBD><EFBFBD><EFBFBD> <20>迭 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> m_nLevelIndex-1 <20>̴<EFBFBD>
|
||||
int m_nCurrentFrame;
|
||||
|
||||
D3DXCOLOR m_CurrentColor;
|
||||
|
||||
std::list< CZ3DGlowHandler* >::iterator m_itrThis;
|
||||
|
||||
|
||||
static IDirect3DDevice8* ms_pDevice;
|
||||
static IDirect3DTexture8* ms_pRenderTargetTexture;
|
||||
static IDirect3DSurface8* ms_pRenderTargetDepth;
|
||||
|
||||
static IDirect3DSurface8* ms_pOldBackBuffer;
|
||||
static IDirect3DSurface8* ms_pOldDepthBuffer;
|
||||
|
||||
|
||||
static Z3D_GLOW_CONSTANTS ms_aGlowParameter[];
|
||||
static std::list< CZ3DGlowHandler* > ms_listInstance;
|
||||
|
||||
static CUSTOM_TLVERTEX ms_Vert[4];
|
||||
|
||||
static D3DVIEWPORT8 ms_RenderViewport, ms_SaveViewport;
|
||||
static D3DMATRIX ms_RenderProjectionMatrix, ms_SaveProjectionMatrix;
|
||||
|
||||
static bool ms_b16bitMode;
|
||||
|
||||
static bool ms_bSkipGlow;
|
||||
};
|
||||
Reference in New Issue
Block a user