개발일지/유니티 3D

유니티3D 게임 개발 일지 - 2 [복셀디펜스]

CarBonSIX 2020. 1. 7. 22:20

오늘은 타워의 위아래 움직임을 줄려고 했는데...

이걸 5시간 동안

결론부터 말하자면 일단 성공했습니다!

 

움직이는 타워!!!

이거 그냥 애니메이션 넣을까 생각도 해봤습니다

친구랑 연락 안 돼서

그래도 실력을 쌓기 위해서!

 

 

만들면서 최대한 최적화를 하려고 Rigidbody를 안 썼는데

Rigidbody 안 쓰고 구현하려니까 어려웠습니다;;

Rigidbody 쓰면 물리엔진 사용하는 타워 완성!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
 
public class Tower_top_shake : MonoBehaviour
{
    private float speed = 1.6f;
    private bool UpDownShake;
 
    void Update()
    {
        if (transform.localPosition.z >= 20)
            UpDownShake = true;
        else if (transform.localPosition.z <= 16)
            UpDownShake = false;
 
        if(UpDownShake == true)
            transform.Translate(Vector3.forward * speed * Time.deltaTime * -1);
        else
            transform.Translate(Vector3.forward * speed * Time.deltaTime);
    }
}
 
cs

 

이게 소스코드인데 참고하실 분은 참고하셔도 됩니다.

Transform으로 구현해서 다른 컴포넌트는 필요 없어도 되게 했습니다.

 

 

그래도 아직 배워야 할게 많은 것 같습니다;;

transform.localPosition 이걸 오늘 알게 되었습니다.

부모 객체가 있을 때 부모 객체 기준으로 자신의 좌표를 알 수 있게 해 주는데,

이걸 써서 쉽게 만들 수 있었습니다.

이거 모르고 월드 좌표로 구현하다가 2시간 가고,

심지어 1편에 썼는데 오브젝트가 90도로 꺾여있는 줄도 몰라서 1시간 가고...

 

아무튼 열심히 개발 중!