구간 반복 logic은 두 가지가 있다.
1. 속도 더하기
2. 속도 곱하기
속도 더하기
속도를 update문에서 더해서 위치를 이동시키는 방식.
조건문 체크하기 -> 위치값에 속도값 더하기 -> 이동시키기(실시간 위치 할당)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | using System.Collections; using System.Collections.Generic; using UnityEngine; public class transform : MonoBehaviour { private float speed = 0.5f; private float speedX = 0.3f; private float speedZ = 0.2f; private Vector3 pos; void Update () { //x축 방향 전환 범위 조건 if (pos.x > 20.0f) { pos.x = 20.0f; speedX = -speedX; } else if (pos.x < -20.0f) { pos.x = -20.0f; speedX = -speedX; } //z축 방향 전환 범위 조건 if (pos.z > 20.0f) { pos.z = 20.0f; speedZ = -speedZ; } else if (pos.z < -20.0f) { pos.z = -20.0f; speedZ = -speedZ; } //위치에 속도 더하기 pos.x += speedX; pos.z += speedZ; //실시간 위치 할당 transform.position = pos; } } | cs |
속도 곱하기
위치 값 받기 -> 범위 체크 -> 이동하기
tr.Translate(Vector3 * Time.deltaTime)
Vector는 방향과 크기이다. 그렇기 때문에
정확한 수치만큼 이동이 불가능하기 때문에 범위에서 이동거리를 제한해야 한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | using System.Collections; using System.Collections.Generic; using UnityEngine; public class transformX : MonoBehaviour { private Transform tr; private float speedX = 8.0f; private float speedZ = 5.0f; private Vector3 pos; private void Start() { tr = GetComponent<Transform>(); } void Update () { //실시간 위치 받아오기 pos = tr.position; //x축 방향 전환 범위 조건 if (pos.x > 20.0f) { pos.x = 20.0f; speedX = -speedX; } else if(pos.x < -20.0f) { pos.x = -20.0f; speedX = -speedX; } //z축 방향 전환 범위 조건 if (pos.z > 20.0f) { pos.z = 20.0f; speedZ = -speedZ; } else if(pos.z < -20.0f) { pos.z = -20.0f; speedZ = -speedZ; } //x축 이동하기 tr.Translate(Vector3.right * speedX * Time.deltaTime); //z축 이동하기 tr.Translate(Vector3.forward * speedZ * Time.deltaTime); } } | cs |
최종 결과
숙제
Rene Schulte - Fluid Demo 분석하기
유체역학 수학 이론 공부하기
개발 flow 작성하기 (crossDevice, 유체역학(interaction, GPU instancing), 머신러닝)
'Project > Galapagos' 카테고리의 다른 글
네트워크 Day5 (포톤네트워크 PUN2 - 동기화 분석) (0) | 2018.12.25 |
---|---|
네트워크 Day4 (포톤네트워크 PUN2 - Cross Device) (0) | 2018.12.18 |
네트워크 Day3 (포톤네트워크 PUN2 - 동기화) (2) | 2018.12.13 |
네트워크 Day2 (포톤네트워크 PUN2 - 네트워크 개념, 포톤네트워크 사용) (1) | 2018.12.12 |
네트워크 Day1 (포톤네트워크 PUN2 - 테스트) (0) | 2018.12.10 |