surface_copy 함수 설명
surface_copy
함수는 한 서피스의 이미지를 다른 서피스의 지정된 위치에 복사하는 기능을 제공합니다. 복사할 위치는 대상 서피스의 (0, 0) 좌표가 왼쪽 상단 모서리에 해당합니다. 만약 대상 서피스에 이미 정보가 있다면, 복사된 내용으로 덮어쓰게 되며, 이 함수는 원본 서피스에는 아무런 영향을 미치지 않습니다.
문법
surface_copy(destination, x, y, source);
인자 설명
인자 | 타입 | 설명 |
---|---|---|
destination | Surface | 다른 서피스를 복사할 대상 서피스입니다. |
x | Real | 복사할 x 위치입니다. |
y | Real | 복사할 y 위치입니다. |
source | Surface | 복사할 서피스입니다. |
반환값
- N/A
예제 코드
if (view_current == 0) {
surface_copy(surf, 0, 0, temp_surf);
} else {
draw_surface(surf, 0, 0);
}
위의 코드는 현재 그려지고 있는 뷰를 확인합니다. 만약 view[0]
이면, temp_surf
변수에 저장된 서피스를 surf
변수에 복사합니다. 현재 뷰가 view[0]
이 아닌 경우, surf
서피스가 화면에 그려집니다.
활용 예제
예제 1: 서피스 복사 후 변형
surface_copy(surf, 50, 50, temp_surf);
draw_surface(surf, 0, 0);
이 코드는 temp_surf
를 surf
의 (50, 50) 위치에 복사한 후, surf
를 화면에 그립니다.
예제 2: 여러 서피스 복사
surface_copy(surf1, 0, 0, temp_surf1);
surface_copy(surf2, 100, 100, temp_surf2);
이 코드는 두 개의 서피스를 각각 다른 위치에 복사합니다.
예제 3: 조건부 서피스 복사
if (condition) {
surface_copy(surf, 0, 0, temp_surf);
} else {
draw_surface(surf, 0, 0);
}
조건에 따라 서피스를 복사하거나 그립니다.
예제 4: 서피스 복사 후 애니메이션 효과
surface_copy(surf, x, y, temp_surf);
draw_surface(surf, x + 10, y + 10);
서피스를 복사한 후, 약간 이동하여 애니메이션 효과를 줍니다.