유니티3D_5_1

Download Report

Transcript 유니티3D_5_1

모바일
게
임
제작
한국IT전문학교
박재성
게임 제작의 기초(2)
5
장
모바일
게
임
제작
5.18 Object의 크기 및 색깔 설정
- 운석의 파괴
void HitMissile (Vector3 pos)
{
// 작은 불꽃 표시
Instantiate(expSmall, pos, Quaternion.identity);
AudioSource.PlayClipAtPoint(sndExp, transform.position); // 사운드
HP--; //운석의 생명
if (HP < 0) {
DestroySelf();
}
}
5.18 Object의 크기 및 색깔 설정
- 운석의 파괴
void DestroySelf ()
{
// 큰 불꽃 표시
Instantiate(expBig, transform.position, Quaternion.identity);
AudioSource.PlayClipAtPoint(sndExp, transform.position); // 사운드
Destroy(gameObject);
}
5.19 폭파 불꽃 파티클 만들기
- 파티클용 매트리얼 만들기
1. 프로젝트뷰에서 Create > Material 메뉴에서 particle 이름으로 material생성.
2. Shader를 Particles/Additive 설정
3. Particle Texture에 폭파 불꽃 이미지 할당.
- GameObject에 파티클용 컴포넌트 추가
1. 하이어아키 뷰에 빈 오브젝트를 추가, 이름을 ExpSmall로 변경.
2. 컴포넌트 Legacy Particle 3개를 추가(비행기 제트 화염 만들때 처럼)
3. 표5-11 참고하여 속성 변경
4. ExpSmall을 복사하여 ExpBig을 생성
5. 표5-12 참고하여 속성 변경
* 작은 불꽃, 큰 불꽃 모두 프리팹으로 만든다. CsAsteroid.cs의 변수에 불꽃을 연결한다.
5.20 미사일 만들기
- Cube로 미사일을 만든다.
- 표5-13을 참고 하여 속성변경.
- 미사일에 Rigidbody 추가하고, Use Gravity 옵션 해제.
- Box Collider의 Is Trigger 옵션 설정.
- 프리팹으로 만들고, 하이어아키 뷰의 미사일은 삭제.
5.21 SendMessage
- SendMessage ()는 다른 오브젝트에 연결된 스크립트의 특정 함수를 호출.
- CsMissile.cs 생성, 미사일에 연결
void Update ()
{
float amtMove = speed * Time.smoothDeltaTime;
transform.Translate(Vector3.forward * amtMove);
if (transform.position.z > 35) { //화면을 벗어나면
Destroy(gameObject); //미사일 제거
}
}