본문 바로가기
GameMaker강좌[GM8]/파티클강좌

[게임메이커강좌-파티클]파티클에 대하여

by 타락카얀 2014. 1. 26.
728x90



GAME MAKER 강좌



KAYAN




파티클은 불꽃, 화염, 먼지, 연기와 같은 효과를 만들 수 있는 게임메이커에서 내장된 고급 그래픽

기능입니다.



(▲ 파티클 효과)


위와 같이 사용에 따라서는 매우 멋진 효과를 게임 상에 만들어 낼 수 있습니다.
게임메이커에는 기본적으로 표시할 수 있는 기본 이펙트가 내장되어 있긴 하지만 한정되어 있다는

점에서 고급 효과를 다양하게 만들어 낼 수 있는 파티클은 기본 이펙트보다 매우 매력적인 기능이라

볼 수 있습니다.


이러한 파티클에 대해 알아보도록 합시다.







◈ 파티클에 대하여



파티클은 간단한 조작만으로 멋진 효과를 만들어 낼 수 있지만, 파티클 사용에 따라 메모리에 누적되어

게임이 느려질 수도 있기 때문에 프로그래밍적으로 파티클 관리를 잘해야 합니다.
또한 시각적 효과만 가능하여 개별 파티클의 좌표를 알수가 없고, 충돌 이벤트나 그에 따른 변수 변경

같은 것을 구성할 수 없습니다. 그렇기 때문에 이 점을 유의하여 게임을 제작해야합니다.



(▲ 멋진 효과를 내지만 게임이 느려질 수도 있으므로 파티클 너무 많이 생성하지 않도록 주의)


파티클 시스템들의 종류에 대해 알아봅시다.
파티클의 종류에는 파티클 타입, 파티클 시스템, 파티클 이미터가 있습니다.
그 외에 파티클 어트랙터, 디스트로이어, 디플렉터, 체인저가 있지만, 이들은 게임메이커 8.x 이하

버전에만 있는 기능으로 게임메이커 스튜디오에서는 더 이상 사용하지 않는 기능이기도 합니다.

파티클은 액션으로도 생성할 수 있고, 코드로도 생성할 수 있습니다.



(▲ 파티클 액션)


하지만, 액션으로는 매우 제한적이므로, 코드를 사용하여 생성하는 것이 좀 더 다양한 효과를 낼 수

있습니다.
파티클 타입은 게임 상에 생성시킬 입자를 나타냅니다.



(▲ 파티클 타입의 속성을 설정할 수 있는 액션)


여기에서 파티클의 수명과, 색상, 이동방향, 회전등 파티클의 행동 및 속성, 그리고 소멸 과정, 등을

상세하게 설정할 수 있지요.
코드로는 part_type_ 함수를 사용합니다.








이 파티클을 구성 및 관리하기 위해서는 파티클 시스템을 사용합니다.



(▲ 파티클 시스템 액션. 파티클을 생성하고 제어할 수 있음)


파티클 시스템은 생성할 파티클들을 총괄하여 관리합니다.

파티클 시스템은 파티클을 생성할 수 있으며, 파티클 시스템에 종속된 모든 파티클들의 생성되는

위치를 변경하거나, 종속된 파티클은 물론 그에 연결된 파티클 기능들을 모두 제어할 수 있지요.

즉, 모든 생성되는 파티클은 이 파티클 시스템에 의해 제어된다는 것입니다.

파티클 시스템은 여러개 만들 수 있지만, 너무 많이 만들게 되면 게임이 느려질 수 있기 때문에 주의

해야합니다.

물론 파티클을 너무 많이 생성해도 메모리에 누적되어 게임이 느려질 수 있기 때문 파티클 사용시

필요 없는 파티클이나 파티클 시스템들은 파기해야 합니다.
특히 다른 룸으로 이동할 때, 파티클이 계속 생성될 수도 있어 파기해야 하는지 반드시 확인해야 해요.

파티클 시스템part_system_ 함수와 part_particles_ 함수를 사용하지요.

파티클 시스템만으로 파티클을 생성할 수도 있지만, 간편하게 대량으로 생성하는 경우

파티클 이미터 사용합니다.



(▲ 파티클 이미터 액션)


파티클 이미터파티클 시스템에 종속된 파티클들을 물 흐르듯이 방출시키는 방사체 역할을 합니다.
코드로는 part_emitter_ 함수를 사용하며, 함수를 사용하기 위해선 파티클 타입파티클 시스템이 있어야 해요.



(▲ 파티클의 구성)


간략하게 파티클에 대해 알아보았습니다.


파티클은 직접 구성할 수 있지만, 매번 확인해야하는 번거러움이 있지요.
그러나 파티클 디자이너(ParticleDesigner) 프로그램을 사용하면 파티클이 어떻게 생성되는지,

어떤 모습, 어떠한 형태의 효과인지 생성되는 파티클을 쉽게 확인하며 구성할 수 있습니다.



(▲ 파티클 디자이너)


흐음... 뭔가 복잡해보이는 군요.
하지만 파티클의 속성 및 설정이나 파티클 시스템들을 알고 있다면 수치에 들어가는 값이 무엇인지
또한 어떻게 이동하며, 어떻게 소멸하는지 한눈에 쉽게 확인할 수 있을 겁니다.

그래서 다음 강좌에서는 먼저 이 파티클을 구성하게 될 파티클 타입의 설정에 대해 알아보도록 해요.







----- 파티클 디자이너 -----


ParticleDesigner2_51.zip



300x250

댓글