DrawSetTextureRGBA: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
| m (code sample) | |||
| Line 20: | Line 20: | ||
| ===Set Up Texture ID=== | ===Set Up Texture ID=== | ||
|   	m_iHudTexture=surface()->[[CreateNewTextureID]](); |   	m_iHudTexture=surface()->[[CreateNewTextureID]](); | ||
|   	surface()-> |   	surface()->'''DrawSetTextureRGBA'''(m_iHudTexture,(unsigned char*)abPic,128,256,false,true); | ||
|   	surface()->[[DrawSetColor]](Color(255,255,255,128)); |   	surface()->[[DrawSetColor]](Color(255,255,255,128)); | ||
|   	surface()->[[DrawTexturedRect]](0,0,GetWide(),GetTall()); |   	surface()->[[DrawTexturedRect]](0,0,GetWide(),GetTall()); | ||
| ==See Also== | ==See Also== | ||
| * [[CreateProceduralTexture]] | * [[CreateProceduralTexture]] | ||
Revision as of 18:59, 9 May 2006
void DrawSetTextureRGBA(int id, const unsigned char *rgba, int wide, int tall, int hardwareFilter, bool forceReload)
This is a function that you should use to draw raw RGBA data to the HUD, for example when you are rendering a mask.
Sample
Initialization
unsigned char abPic[128 * 256 * 4];
Raw Data
for (j = 0; j < 128; j++) // up/down traverse
{ 
	for (i = 0; i < 256; i++) // left/right traverse
	{
		int offset = (j * 256 + i) * 4;
		char *dst = ((char*)abPic) + offsdest;
					
		dst[0] = (unsigned char)255;//red
		dst[1] = (unsigned char)255;//green
		dst[2] = (unsigned char)255;//blue
		dst[3] = (unsigned char)255;//alpha
	}
}
Set Up Texture ID
m_iHudTexture=surface()->CreateNewTextureID(); surface()->DrawSetTextureRGBA(m_iHudTexture,(unsigned char*)abPic,128,256,false,true); surface()->DrawSetColor(Color(255,255,255,128)); surface()->DrawTexturedRect(0,0,GetWide(),GetTall());