Struct para Light Chams

Posts 1–7 of 7 · Page 1 of 1
Struct para Light Chams
Code:
struct sChamsColor
{
	sChamsColor(VOID)
	{
	};

	sChamsColor(INT A, INT R, INT G, INT B)
	{
		a = A;
		r = R;
		g = G;
		b = B;
	};

	D3DCOLOR GetD3DColor()
	{
		return D3DCOLOR_ARGB(a, r, g, b);
	}

	D3DCOLOR GetInverseD3DColor()
	{
		return D3DCOLOR_ARGB(255, ((r - 255) * (-1)), ((g - 255) * (-1)), ((b - 255) * (-1)));
	}

	sChamsColor GetChamsColor()
	{
		return sChamsColor(a, r, g, b);
	}

	sChamsColor GetInverseChamsColor()
	{
		return sChamsColor(255, ((r - 255) * (-1)), ((g - 255) * (-1)), ((b - 255) * (-1)));
	}

	INT a, r, g, b;
};

VOID SetLightChams(LPDIRECT3DDEVICE9 pDevice, sChamsColor Color)
{
	D3DMATERIAL9 pMaterial;
	D3DCOLORVALUE pColor;
	RtlZeroMemory(&pMaterial, sizeof(D3DMATERIAL9));
	pDevice->SetRenderState(D3DRS_LIGHTING, TRUE);

	pColor.a = (FLOAT)Color.a / 255;
	pColor.r = (FLOAT)Color.r / 255;
	pColor.g = (FLOAT)Color.g / 255;
	pColor.b = (FLOAT)Color.b / 255;

	pMaterial.Ambient = pColor;
	pMaterial.Diffuse = pColor;
	pMaterial.Emissive = pColor;
	pMaterial.Specular = pColor;

	pDevice->SetMaterial(&pMaterial);
}
Como eu uso :

Code:
HRESULT WINAPI hkDIP(LPDIRECT3DDEVICE9 pDevice, D3DPRIMITIVETYPE a, INT b, UINT c, UINT d, UINT e, UINT f)
{
	if((*(BYTE *)GameStatus == 1) && D3DChams)
	{
		if(GetCharacterStrides(pDevice, d, f))
		{
			pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_FALSE);
			D3D->SetLightChams(pDevice, sChamsColor(255, 000, 255, 000));
			oDIP(pDevice, a, b, c, d, e, f);
			pDevice->SetRenderState(D3DRS_ZENABLE, D3DZB_TRUE);
			D3D->SetLightChams(pDevice, sChamsColor(255, 000, 255, 000).GetInverseChamsColor());
		}
	}
	return oDIP(pDevice, a, b, c, d, e, f);
}
Bem simplesinho mas facilita bastante quando se tem mais de 1 tipo de chams ^^
Muito bom chaos, bem utilitario.
vou bota essa coisa Linda na minha Bagaça.

"Thanks"
Quote Originally Posted by The Decoder View Post
vou bota essa coisa Linda na minha Bagaça.

"Thanks"
se sobrar um ovo posso fritar ele ?
essa coiza ay eh pa rack ?
Posts 1–7 of 7 · Page 1 of 1
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Need help?