Game !




Graphics.DrawImage

(Image*, INT x, INT y, INT srcx, INT srcyINT srcwidh, INT srcheight, Unit)

함수 정리





하나의 이미지에 여러개의 스프라이트가 있을 경우,

스프라이트의 정보를 받아 이미지의 위치에 따라 출력하여 애니메이션 만들기



사용한 함수

출처 : https://msdn.microsoft.com/ko-kr/library/windows/desktop/ms536053(v=vs.85).aspx


Graphics.DrawImage

(Image*, INT x, INT y, INT srcx, INT srcyINT srcwidh, INT srcheight, Unit)


<매개변수>

Image* : 이미지 소스 객체

x : 화면 x 좌표 

y : 화면 y 좌표

srcx : 소스 이미지의 lect.left

srcy : 소스 이미지의 lect.top

srcwidh : 소스 이미지의 lect.right

srcheight : 소스 이미지의 lect.bottom

Unit : Gdiplus::Unit::UnitPixel




★★★

lectright / bottom 은 위치값(position)이 아니라 너비, 높이를 의미한다!!






그래서 right, bottom 에는 위치값 (pos)를 스프라이트 정보로 주는 것이 아니라

left (pos) - right (pos) => 값 : 너비

top (pos) - bottom (pos) => 값 : 높이


값을 정보로 주어야한다!



왜냐하면


지정 x,y위치로부터 이만큼의 너비, 높이 만큼 출력할 것이다


라는 것이기 때문!!!!



★ left의 right, bottom은 position으로 계산할 수도 있지만,

너비, 높이를 의미할 수도 있습니다. 상황에 따라 다른점 유의! ★