미디어 콘텐츠 스터디
09. 좀비 죽이는 효과 만들기 본문
시선(카메라)가 에단을 보면 광선총을 발사합니다. 만약 광선총이 에단에 명중하면 불꽃이 발생하고 3초가 지나면 에단은 죽습니다. 에단이 죽었을 때, 에단은 폭발하고(여기서는 포인트를 얻습니다) 새로운 위치에서 다시 부활합니다.
1. 좀비를 죽이는 스크립트 작성하기
① GameOjbect | Create Empty 메뉴를 선택하여 빈 GameObject 만들고 이름을GameManager로 변경합니다.
② 하이러키 창에서 GameManager를 선택하고 인스펙터 창에서 [Add Component]버튼을 클릭하고 New Script를 선택하여 KillTarget이라고 입력하고 [Create And New]버튼을 클릭합니다.
③ KillTarget.cs 스크립트를 열어 다음 코드를 작성합니다.
KillTarget.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class KillTarget : MonoBehaviour {
public GameObject target;
public ParticleSystem hitEffect;
public GameObject killEffect;
public float timeToSelect = 3.0f;
public int score;
Transform camera;
private float countDown;
void Start() {
camera = Camera.main.transform;
score = 0;
countDown = timeToSelect;
}
void Update()
{
bool isHitting = false;
Ray ray = new Ray(camera.position, camera.rotation *
Vector3.forward);
RaycastHit hit;
if (Physics.Raycast(ray, out hit))
{
if (hit.collider.gameObject == target)
{
isHitting = true;
}
}
if (isHitting)
{
if (countDown > 0.0f)
{
// on target
countDown -= Time.deltaTime;
// print (countDown);
hitEffect.transform.position = hit.point;
if (hitEffect.isStopped)
{
hitEffect.Play();
}
}
else
{
// killed
Instantiate(killEffect, target.transform.position,
target.transform.rotation);
score += 1;
countDown = timeToSelect;
SetRandomPosition();
}
}
else
{
// reset
countDown = timeToSelect;
hitEffect.Stop();
}
}
void SetRandomPosition() {
float x = Random.Range(-5.0f, 5.0f);
float z = Random.Range(-5.0f, 5.0f);
target.transform.position = new Vector3(x, 0.0f, z);
}
}
2. 총탄 타격의 불꽃 만들기
2.1 파티클 효과 만들기
파티클 시스템사용하면 불, 폭발, 반짝임, 연기, 물 등 다양한 시각 효과를 만드는 데 사용되는 수명이 짧은 파티클을 많이 생성할 수 있습니다.
① 하이러키 창에서 GameManager를 선택하고 인스펙터 창에서 KillTarget(Script)창으로 이동합니다.
② 하이러키 창에서 Ethan 오브젝트를 인스펙터 창에서 Target 필드를 드래그인앤드룹합니다.
③ GameObject | Effects | Particle System 메뉴를 선택하고 이름을 SparkEmitter로 변경합니다.
④ 하이러키 창에서 GameManager를 선택하고 SparkEmitter를 Hit Effect필드로 드래그앤드룹합니다.
2.2 파티클 입자 변경하기
① 하이러키 창에서 SparkEmitter를 선택합니다. 그러면 씬창에서 재생되는 것을 볼 수 있습니다.
②인스펙터 창의 Particle System에서 다음 값을 설정합니다.
- Start Size: : 0.15
- Start Color: :빨간색/주황색 선택
- Start Lifetime : 0.3
- Start Speed : 0.3
- Max Particles : 50
③ Emission에서Rate over Time : 100을 설정합니다.
④ Shape에서 Shape: Sphere 및 Radius: 0.01을 설정합니다.
2.3 붉은 색 입자 뿌리기
① 프로젝트 창에서 StandardAssets / ParticleSystems / Prefabs의 Explosion을 선택합니다.
② Explosion을 하이러키 창에서 GameManager을 선택하고 인스펙터 창에서 Kill Target | Kill Effect필드에 드래그앤드룹합니다.

'가상현실(Virtual Reality) > 가상현실 맛보기' 카테고리의 다른 글
11. 풍선 총으로 상호 작용하기 (0) | 2021.07.28 |
---|---|
10. 손으로 상호 작용하기I (0) | 2021.07.19 |
08. 좀비 만들기 (0) | 2021.07.12 |
07. 시선 방향으로 이동하기 (0) | 2021.07.12 |
06. NavMesh를 이용한 장애물 피하기 (0) | 2021.07.12 |