GpgStudy °Ô½ÃÆÇ À妽º GpgStudy
Game Programming Gems Åä·Ð
 
 FAQFAQ   °Ë»ö°Ë»ö   ¸â¹ö¸®½ºÆ®¸â¹ö¸®½ºÆ®   »ç¿ëÀÚ ±×·ì»ç¿ëÀÚ ±×·ì  À̹ÌÁö ÀÚ·á½ÇÀ̹ÌÁö ÀÚ·á½Ç   »ç¿ëÀÚ µî·ÏÇϱâ»ç¿ëÀÚ µî·ÏÇϱâ 
 °³ÀÎ Á¤º¸°³ÀÎ Á¤º¸   ÂÊÁö(°³ÀÎ ¸Þ½ÃÁö)¸¦ È®ÀÎÇÏ·Á¸é ·Î±×ÀÎÇϽʽÿÀÂÊÁö(°³ÀÎ ¸Þ½ÃÁö)¸¦ È®ÀÎÇÏ·Á¸é ·Î±×ÀÎÇϽʽÿÀ   ·Î±×Àηα×ÀΠ
GpgStudy ȨÀ¸·Î

DirectDraw·Î BMP ·Îµå½ÃŰ´Â ÁßÀε¥ Áú¹®ÀÌ¿ä~

 
Àá±è[?]    GpgStudy °Ô½ÃÆÇ À妽º -> ±×·¡ÇÈ ÇÁ·Î±×·¡¹Ö
ÀÌÀü ÁÖÁ¦ º¸±â :: ´ÙÀ½ ÁÖÁ¦ º¸±â  
±Û¾´ÀÌ ¸Þ½ÃÁö
gamemyth



°¡ÀÔ: 2006³â 4¿ù 28ÀÏ
¿Ã¸° ±Û: 4

¿Ã¸®±âDirectDraw·Î BMP ·Îµå½ÃŰ´Â ÁßÀε¥ Áú¹®ÀÌ¿ä~ ¿Ã·ÁÁü: 2007-04-16 19:44
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

¹è°æÀº Àß ³ª¿À´Âµ¥

´Ù¸¥°ÍµéÀÌ ±×·¡ÇÈÀÌ 꺠Áö´Â±º¿ä -¤±-¤»

BOOL CChap2View::CreateSurfaces()
{
// À̹ÌÁö
DDSURFACEDESC2 ddSD;
DDSURFACEDESC2 ddSD1;
DDSURFACEDESC2 ddSD2;
DDSURFACEDESC2 ddSD3;
DDSURFACEDESC2 ddSD4;
DDSURFACEDESC2 ddSD5;
DDSCAPS2 ddsC;
BOOL surface = FALSE;
HRESULT result;

memset(&ddSD, 0, sizeof(DDSURFACEDESC2));
ddSD.dwSize = sizeof(DDSURFACEDESC2);
ddSD.dwFlags = DDSD_CAPS|DDSD_BACKBUFFERCOUNT;
ddSD.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE|DDSCAPS_FLIP|DDSCAPS_COMPLEX;
ddSD.dwBackBufferCount = 1;

result = m_pDDObj->CreateSurface( &ddSD, &m_pPS, NULL );
if (result == DD_OK)
{
ZeroMemory(&ddsC, sizeof(ddsC));
ddsC.dwCaps = DDSCAPS_BACKBUFFER;
result = m_pPS->GetAttachedSurface(&ddsC, &m_pBB);
if (result == DD_OK)
surface = TRUE;
}

// À̹ÌÁö¸¦ ·Îµå
CString temp;
temp.Format("back1.bmp");
m_pDib = new CDib(temp);
m_pDDP = CreateDDPalette(m_pDDObj, m_pDib);
if(m_pDDP != NULL)
{
HRESULT result;
result = m_pPS->SetPalette(m_pDDP);
if (result == DD_OK)
m_DDrawOK = TRUE;
}
//¹è°æ È­¸é¿ë Surface »ý¼º
memset(&ddSD1, 0, sizeof(DDSURFACEDESC2));
ddSD1.dwSize = sizeof(DDSURFACEDESC2);
ddSD1.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddSD1.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddSD1.dwWidth = m_pDib->GetWidth();
ddSD1.dwHeight = m_pDib->GetHeight();
m_pDDObj->CreateSurface(&ddSD1, &m_pBack, NULL);
LoadBMP(m_pBack, m_pDib);

//¹Ù1 Surface »ý¼º
temp.Format("bar1.bmp");
m_pDib1 = new CDib(temp);
memset(&ddSD2, 0, sizeof(DDSURFACEDESC2));
ddSD2.dwSize = sizeof(DDSURFACEDESC2);
ddSD2.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddSD2.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddSD2.dwWidth = m_pDib1->GetWidth();
ddSD2.dwHeight = m_pDib1->GetHeight();
m_pDDObj->CreateSurface(&ddSD2, &m_pBar1, NULL);
LoadBMP(m_pBar1, m_pDib1);

//¹Ù2 Surface »ý¼º
temp.Format("bar2.bmp");
m_pDib2 = new CDib(temp);
memset(&ddSD3, 0, sizeof(DDSURFACEDESC2));
ddSD3.dwSize = sizeof(DDSURFACEDESC2);
ddSD3.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddSD3.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddSD3.dwWidth = m_pDib2->GetWidth();
ddSD3.dwHeight = m_pDib2->GetHeight();
m_pDDObj->CreateSurface(&ddSD3, &m_pBar2, NULL);
LoadBMP(m_pBar2, m_pDib2);

//È­»ìÇ¥1 Surface »ý¼º
temp.Format("ar1.bmp");
m_pDib3 = new CDib(temp);
memset(&ddSD4, 0, sizeof(DDSURFACEDESC2));
ddSD4.dwSize = sizeof(DDSURFACEDESC2);
ddSD4.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddSD4.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddSD4.dwWidth = m_pDib3->GetWidth();
ddSD4.dwHeight = m_pDib3->GetHeight();
m_pDDObj->CreateSurface(&ddSD4, &m_pAr1, NULL);
LoadBMP(m_pAr1, m_pDib3);

//È­»ìÇ¥2 Surface »ý¼º
temp.Format("ar2.bmp");
m_pDib4 = new CDib(temp);
memset(&ddSD5, 0, sizeof(DDSURFACEDESC2));
ddSD5.dwSize = sizeof(DDSURFACEDESC2);
ddSD5.dwFlags = DDSD_CAPS | DDSD_HEIGHT | DDSD_WIDTH;
ddSD5.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
ddSD5.dwWidth = m_pDib4->GetWidth();
ddSD5.dwHeight = m_pDib4->GetHeight();
m_pDDObj->CreateSurface(&ddSD5, &m_pAr2, NULL);
LoadBMP(m_pAr2, m_pDib4);

//Åõ¸í »ö ÁöÁ¤À» À§ÇÑ Colorkey ¼³Á¤
DDCOLORKEY key;
key.dwColorSpaceHighValue = 0;
key.dwColorSpaceLowValue = 0;
m_pBar1->SetColorKey(DDCKEY_SRCBLT, &key);
m_pBar2->SetColorKey(DDCKEY_SRCBLT, &key);
m_pAr1->SetColorKey(DDCKEY_SRCBLT, &key);
m_pAr2->SetColorKey(DDCKEY_SRCBLT, &key);

return surface;
}

´çÃÖ ÀÌÀ¯¸¦ ¸ð¸£°Ú¾î¿ä

µµ¿ÍÁÖ¼¼¿ä~~~
_________________
"Seize the day! Make your life extraordinary!!!"
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â
Zeprod



°¡ÀÔ: 2006³â 11¿ù 4ÀÏ
¿Ã¸° ±Û: 480
¼Ò¼Ó: Creaty Networks


Ÿ »çÀÌÆ® ID(?):
Creaty.net::Á¦ÇÁ, zeprod.org::Zeprod
¿Ã¸®±âÀú´Â DD¿¡ ´ëÇØ ÀÚ¼¼È÷´Â ¸ð¸¨´Ï´Ù¸¸... ¿Ã·ÁÁü: 2007-04-18 17:14
Àοë°ú ÇÔ²² ´äº¯ ÀÌ °Ô½Ã¹°À» del.icio.us¿¡ Ãß°¡

Àοë:
m_pDDP = CreateDDPalette(m_pDDObj, m_pDib);



ÆÈ·¹Æ® ¼³Á¤ÇϽǶ§ ¹è°æ±×¸²¿¡ ¸Â´Â ÆÈ·¹Æ®¸¸ »ý¼ºÇϼ̱⠶§¹®¿¡,

´Ù¸¥ À̹ÌÁöµéÀº ÀÚ½ÅÀÇ ÆÈ·¹Æ®¿Í ´Ù¸¥ ÆÈ·¹Æ®¿¡¼­ ±×¸²ÀÌ ±×·ÁÁö°Ô µÇ´Â°ÍÀÌ ¾Æ´ÒÁö ½Í½À´Ï´Ù.


»öÀÌ ÀÌ»óÇÏ°Ô ³ª¿À´Â°Ç ´ç¿¬ÇÑ °Í °°°í, ½ÉÇÒ°æ¿ì ±×¸²ÀÌ ±úÁú ¼öµµ ÀÖÁö ¾ÊÀ»±î¿ä.
_________________
¼¼»óÀÌ ±â´Ù¸®´Â ³ª¸¸ÀÇ SHOW!
----------------------------------------------
Zeprod Ȩ : http://Zeprod.org
Project. Creaty : http://Creaty.net/
Creaty °ÔÀÓÁ¦ÀÛ Ä¿¹Â´ÏƼ : http://Creaty.net/game/
----------------------------------------------
À§·Î
»ç¿ëÀÚ Á¤º¸ º¸±â ÂÊÁö º¸³»±â ±Û ¿Ã¸°ÀÌÀÇ À¥»çÀÌÆ® ¹æ¹®
ÀÌÀü ±Û Ç¥½Ã:   
Àá±è[?]    GpgStudy °Ô½ÃÆÇ À妽º -> ±×·¡ÇÈ ÇÁ·Î±×·¡¹Ö ½Ã°£´ë: GMT + 9 ½Ã°£(Çѱ¹)
ÆäÀÌÁö 1 Áß 1

ÀÌ ÁÖÁ¦¿¡ ´ëÇÑ Æ®·¢¹é ÁÖ¼Ò: (Âü°í)

±Û ÀÕ±â(?): |

 
°Ç³Ê¶Ù±â:  
»õ·Î¿î ÁÖÁ¦¸¦ ¿Ã¸± ¼ö ¾ø½À´Ï´Ù
´ä±ÛÀ» ¿Ã¸± ¼ö ¾ø½À´Ï´Ù
ÁÖÁ¦¸¦ ¼öÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù
¿Ã¸° ±ÛÀ» »èÁ¦ÇÒ ¼ö ¾ø½À´Ï´Ù
ÅõÇ¥¸¦ ÇÒ ¼ö ¾ø½À´Ï´Ù


Powered by phpBB © 2001, 2005 phpBB Group