2016년 8월 1일 월요일

캡스톤 디자인 프로젝트 UI제작 - 3(lerp를 이용한 거리표시)

이번게임은 굉장히 간단한 게임이었기 때문에 어떻게 하면 몰입을 시킬 수 있을까

생각을 하다가 달로 올라가는 게임이었기 때문에 기록을 거리로 해서 게임 끝났을 때

달까지 얼마나 도달 했는지 보여주면 몰입이 더 잘 될것같아서 한번 표현을 해보았다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    void Update () {
        endScore.text = "내가 달까지 간 거리\n 385000KM중\n" + ScoreManager.gameScore + "KM"
        if (Player.S.isDead == true) {
        float distCovered = (Time.time - startTime);
        float fracJourney = distCovered / journeyLength;
        if (ScoreManager.score >= 192500f){ 
            transform.position = Vector3.Lerp (startMarker.transform.position, 
                                                endMarker.transform.position * 
                                                (ScoreManager.score / 385000f), 
                                                fracJourney);
        } else {
            transform.position = Vector3.Lerp (startMarker.transform.position,
                                                endMarker.transform.position * 
                                                -(1f-(ScoreManager.score / 385000f)),
                                                fracJourney);
        }
    }
    GetComponent<LineRenderer>().SetPosition(0new Vector3(startMarker.transform.position.x,
                                                            startMarker.transform.position.y , -1));
    GetComponent<LineRenderer>().SetPosition(1new Vector3(transform.position.x,
                                                            transform.position.y , -1));
}
cs

lerp를 이용해서 토끼 캐릭터를 움직이게 만든뒤에 
linelenderer를 사용해서 토끼가 이동할때 선이 그려지게 만들었다.

좌표계를 바꿔서 만들려고 했는데 다른 데서 바꿔놓은 좌표계랑 충돌을 하는건지 잘 안되서 결국에 0을 기점으로 반으로 나눠서 계산을 했다. 
이런 식으로 토끼가 움직이면서 거리표현을 하게된다.

댓글 없음:

댓글 쓰기