Cocos2d-x에서 파티클을 처리하는 방법

목차



1. 소개
2. 파티클 만들기
3. 실제로 그려 보자!
4. 조심하세요!

1. 소개



Cocos2d-x 버전은 3.10으로 진행됩니다.

2. 파티클 만들기



우선 소재인 파티클이 필요하기 때문에 particle2dx 에 액세스합시다

Particle2dx





영어만! ! 야다! ! ! 라고 생각합니다만, 의외로 설정은 간단하기도 합니다



빨간색으로 표시된 부분을 만지면 왼쪽에 나와있는 미리보기가 제대로 전환되어보기 쉽습니다.



빨간색으로 표시된 탭을 전환하여 색상, 모양 및 템플릿을 선택할 수도 있습니다.



이번에는 탭의 Template 안에있는 FireWorks의 fw2에서 진행하고 싶습니다.

내가 그릴 파티클이 정해지면 탭에서 내보내기를 선택하세요.



그러면 생성하는 plist의 이름과 텍스처 밖에 텍스처 있음을 선택할 수 있는 화면이 됩니다
이름은 기본적으로 텍스처 없음을 선택해 봅니다.
그러면 plist 파일이라는 것이 생성됩니다.
plist 파일은 그대로 프로젝트의 리소스 파일 안에 넣어 봅시다.

3. 실제로 그려 보자!



그럼 파티클의 준비도 갖추었으므로 실제로 그리자!

그리고는 HelloWorldScene에 코드를 쓸 뿐!

HelloWorldScene.cpp
   // 作成したパーティクルのプロパティリストを読み込み
   ParticleSystemQuad* particle = ParticleSystemQuad::create("particle_texture.plist");
   //パーティクルのメモリーリーク回避(★重要)
   particle->setAutoRemoveOnFinish(true);
   // パーティクルを開始
   particle->resetSystem();
   // パーティクルを表示する場所の設定
   particle->setPosition(300,200);
   // パーティクルを配置
   this->addChild(particle);

코드에서도 거기까지 어렵지 않고 구현할 수 있습니다.
실제로이 코드를 움직여 보면 ...



매우 깨끗한 파티클이 그려졌습니다!

4. 조심하세요!



방금 쓴 코드 안에

HelloWorldScene.cpp
   //パーティクルのメモリーリーク回避(★重要)
   particle->setAutoRemoveOnFinish(true);

라는 것이 있었지만이 setAutoRemoveOnFinish는 기본적으로 false입니다.
그래서 파티클이 보이지 않더라도 실제로는 거기 있는 것을 계속하게 됩니다.
파티클을 사용하는데 있어서 앱이 무거워지는 것은 NG이므로 반드시 true로 설정해 둡시다!

좋은 웹페이지 즐겨찾기