RPG Maker
2009.09.06 19:13

다운로드

조회 수 761 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
다운로드

VC만으로 게임을 만들 때 그림 처리가 상당히 곤란하시죠? 리소스로 넣자니 실행파일 크기가 커지고, 비트맵 파일로 불러들일려고 해도 상당히 귀찮잖아요. (아니라고 하시면 곤란-_-;)



PNG 타입의 그림 파일은 여러분도 잘 아시다시피 RPG만들기 2000부터 지원해온 그림 파일입니다. 이런 파일을 간편하게 DC 형태로 바꿔주는 라이브러리...의 소스입니다.



사용하실 때는 컴파일 결과의 DLL파일과 동봉된 두 DLL파일과 헤더파일 두개를 모두 한곳에 몰아넣고 Image.h만 인클루드 해서 쓰시면 됩니다.



메소드를 살펴보지요.

CImage::Get*()

이놈들은 그림파일을 연 다음에 GDI 오브젝트들을 사용하고 싶을 때 호출하는 함수가 되겠습니다.

CImage::OpenImgFile(LPCTSTR szFileName, BOOL bSprite = TRUE)

이놈이 핵심인데요, 이놈은 그림파일을 열어서 DIB 사양의 GDI 오브젝트를 만들어줍니다.



간단한 사용법이라고 한다면, 예제를 들면 되겠네요.



#include <windows.h>
#include "Image.h"

void main()
{
HDC hdcScr;
CImage image;
int x, y, w, h;

image.OpenImgFile("test.png"); // 그림파일을 열고
x = (1024 - image.GetBitmapInfo()->bmiHeader.biWidth) / 2, // image.GetBitmapInfo()는 그림에 대한 각종 정보가 들어 있는 구조체의 포인터를 리턴. BITMAPINFO 구조체
y = (768 - image.GetBitmapInfo()->bmiHeader.biHeight) / 2,
w = image.GetBitmapInfo()->bmiHeader.biWidth,
h = image.GetBitmapInfo()->bmiHeader.biHeight;

hdcScr = GetDC(NULL); // DC를 받아서
if(image.HasAlpha()) // 투명색이 있다면
{
  BitBlt(hdcScr, x, y, w, h, *image.GetMaskImage(), 0, 0, SRCAND); // 마스크를 찍어주고
}
BitBlt(hdcScr, x, y, w, h, image, 0, 0, image.HasAlpha() ? SRCPAINT : SRCCOPY); // 그 위에 그림을 뾱[...]

ReleaseDC(NULL, hdcScr);
}



뭐, 대충 이런 느낌으로 쓰시면[...]



소스 파일에는 상당히 자세하게 주석을 단다고 달아뒀으니[...] 아마 이해하는데 큰 어려움은 없을거라고[...]



참, 컴파일 하실 때는 Win32 Dynamic-Link Library로 프로젝트를 생성하셔서 쓰셔야 할겁니다~_~ 그리고 동봉된 lib파일도 필수로 삽입을..



ps. 테스트 환경은 펜티엄 M 프로세서 1.5기가헤르츠, 윈도우즈 엑스피였고, 문제 없이 잘 돌아갔습니다.

ps2. 동봉된 DLL 파일은 각각 libpng.org, zlib.net에서 소스를 받아서 Win32 DLL ASM Release 에서 컴파일했습니다.

ps3. 이걸로 조만간 어떠한 게임이 만들어질 예정[...]
?

  1. RPG2003용 플러그인 제작 SDK:DynRPG 의 설치와 적용 +@

    Date2012.05.08 CategoryRPG Maker By아름다운마을 Views1850
    Read More
  2. [rpg2k] 바로가기를 이용해 테스트 플레이 실행하기

    Date2012.01.14 CategoryRPG Maker By베넘 Views1595
    Read More
  3. [RPG2003] 한단계 도약 : 이중 변수번호의 변수

    Date2011.07.31 CategoryRPG Maker ByA. 미스릴 Views2364
    Read More
  4. rpg2K에서 경험치 패턴

    Date2011.06.21 CategoryRPG Maker By베넘 Views2616
    Read More
  5. RPG2K에서 함수를 사용해보기

    Date2010.09.15 CategoryRPG Maker ByBlack-☆ Views958
    Read More
  6. RPG2K로 객체 지향적 프로그래밍을 해보자

    Date2010.08.02 CategoryRPG Maker ByBlack-☆ Views970
    Read More
  7. 날씨/구름/안개/바람 등

    Date2010.07.12 CategoryRPG Maker By설사즙 Views997
    Read More
  8. RPG2K 최적화 백과 사전

    Date2010.07.12 CategoryRPG Maker By아싸사랑 Views1220
    Read More
  9. 본문스크랩- rpg 제작툴 NWN

    Date2010.06.26 CategoryRPG Maker By세죠 Views3746
    Read More
  10. 본문 스크랩ㅡ 게임 브리오 엔진 소개

    Date2010.06.26 CategoryRPG Maker By세죠 Views3251
    Read More
  11. 본문 스크랩ㅡ 언리얼 엔진2

    Date2010.06.14 CategoryRPG Maker By세죠 Views2955
    Read More
  12. [R2K]변수값을 픽쳐로 표시하기

    Date2010.04.11 CategoryRPG Maker ByIriaroan。 Views985
    Read More
  13. rpg만들기2003사용법

    Date2010.02.24 CategoryRPG Maker ByC8마린 Views886
    Read More
  14. MID 파일의 소리를 개선해보자.

    Date2010.02.07 CategoryRPG Maker By밀크커피 Views820
    Read More
  15. 은행 시스템 구현하기

    Date2009.11.03 CategoryRPG Maker By앞만보맨 Views814
    Read More
  16. RPG의뜻

    Date2009.09.06 CategoryRPG Maker Byzl게임을만들고파 Views650
    Read More
  17. 다운로드

    Date2009.09.06 CategoryRPG Maker Byzl게임을만들고파 Views761
    Read More
  18. 넷플레이 스크립트 2.0 사용법

    Date2009.05.03 CategoryRPG Maker By독도2005 Views3170
    Read More
  19. RPG2000 마우스 사용 관련 자료

    Date2009.04.02 CategoryRPG Maker ByBlack-☆ Views768
    Read More
  20. RPG2003 에서요

    Date2009.03.18 CategoryRPG Maker By완폐남™ Views741
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15






[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)