From 5ecbce679d4ed88061faf53d55ca9855debecd62 Mon Sep 17 00:00:00 2001 From: cxgeorge <> Date: Fri, 1 Mar 2002 01:05:25 +0000 Subject: [PATCH] cosmetic chng --- panda/src/dxgsg/dxTextureContext.cxx | 35 ++++++++++++++-------------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/panda/src/dxgsg/dxTextureContext.cxx b/panda/src/dxgsg/dxTextureContext.cxx index 893d0a9dbe..fe80f65657 100644 --- a/panda/src/dxgsg/dxTextureContext.cxx +++ b/panda/src/dxgsg/dxTextureContext.cxx @@ -23,15 +23,14 @@ #include "dxGraphicsStateGuardian.h" #include "pnmImage.h" - static const DWORD g_LowByteMask = 0x000000FF; //#define FORCE_16bpp_1555 -#define PANDA_ARGB_ORDER +#define PANDA_BGRA_ORDER -#ifdef PANDA_ARGB_ORDER -// assume Panda uses int ARGB format in PixelBuffers natively (byte-order BGRA or BGR) +#ifdef PANDA_BGRA_ORDER +// assume Panda uses byte-order BGRA/LA to store pixels, which when read into little-endian word is ARGB/AL // these macros GET from PixelBuffer, (wont work from DDSurface) #define GET_RED_BYTE(PIXEL_DWORD) ((BYTE)((PIXEL_DWORD >> 16) & g_LowByteMask)) #define GET_BLUE_BYTE(PIXEL_DWORD) ((BYTE)((PIXEL_DWORD) & g_LowByteMask)) @@ -229,7 +228,7 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS case Conv32to32: case Conv32to32_NoAlpha: { -#ifdef PANDA_ARGB_ORDER +#ifdef PANDA_BGRA_ORDER if(ConvNeeded==Conv32to32) { memcpy(pDDSurfBytes,(BYTE*) pbuf,dwOrigWidth*dwOrigHeight*sizeof(DWORD)); } else { @@ -374,7 +373,7 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS case Conv24to24: { - #ifdef PANDA_ARGB_ORDER + #ifdef PANDA_BGRA_ORDER memcpy(pDDSurfBytes,(BYTE*)pbuf,dwOrigHeight*dwOrigWidth*3); #else BYTE *pSrcWord = (BYTE *) pbuf; @@ -412,7 +411,7 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS for(DWORD x=0; x> 3; r = *(pSrcWord+2) >> 3; #else @@ -439,7 +438,7 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS for(DWORD x=0; x> 3; g = *(pSrcWord+1) >> 2; r = *(pSrcWord+2) >> 3; @@ -467,7 +466,7 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS // pixel buffer is in ABGR format(it stores big-endian RGBA) // need to change byte order to ARGB - #ifdef PANDA_ARGB_ORDER + #ifdef PANDA_BGRA_ORDER b = *pSrcWord; r = *(pSrcWord+2); #else @@ -490,8 +489,8 @@ HRESULT ConvertPixBuftoDDSurf(ConversionType ConvNeeded,BYTE *pbuf,LPDIRECTDRAWS pDstWord = (DWORD *)pDDSurfBytes; for(DWORD x=0; x> greenshift; r = (dwPixel & redmask) >> redshift; - #ifdef PANDA_ARGB_ORDER + #ifdef PANDA_BGRA_ORDER *pDstWord = 0xFF000000 | (r << 16) | (g << 8) | b; #else *pDstWord = 0xFF000000 | (b << 16) | (g << 8) | r; @@ -887,7 +886,7 @@ HRESULT ConvertDDSurftoPixBuf(PixelBuffer *pixbuf,LPDIRECTDRAWSURFACE7 pDDSurf) g = (BYTE)((dwPixel>> 8) & g_LowByteMask); b = (BYTE)((dwPixel ) & g_LowByteMask); - #ifdef PANDA_ARGB_ORDER + #ifdef PANDA_BGRA_ORDER *pDstByte++ = b; *pDstByte++ = g; *pDstByte++ = r; @@ -907,7 +906,7 @@ HRESULT ConvertDDSurftoPixBuf(PixelBuffer *pixbuf,LPDIRECTDRAWSURFACE7 pDDSurf) pDDSurfBytes+=ddsd.lPitch*(dwYWindowOffset+dwCopyHeight-1); for(DWORD y=0; y> greenshift; r = (dwPixel & redmask) >> redshift; - #ifdef PANDA_ARGB_ORDER + #ifdef PANDA_BGRA_ORDER *pDstByte++ = b; *pDstByte++ = g; *pDstByte++ = r;