본문 바로가기

전체 글12

유니티 rigidbody rigidbody는 물리효과에 대한 컴포넌트이다. Rigidbody rigid; void Start() { rigid = GetComponent(); //괄호 안 타입의 컴포넌트를 가져온다. //2D에서 3D Rigidbody를 쓰면 적용이 안됨. rigid.velocity = new Vector3(0, 1, 0); //현재 이동속도 Rigidbody 객체를 만들고 GetComponent로 가져온다. velocity는 속도에 대한 프로퍼티로, Vector3.left/right를 주면 좌 우로 움직이고 사용자가 new Vector3(x, y, z)로 직접 값을 지정할 수도 있다. void FixedUpdate() { rigid.velocity = new Vector3(2, 3, 1); } Rigidbody.. 2019. 11. 7.
유니티 오브젝트 충돌 관련 컴포넌트 - Collider - 충돌위치 충돌 하는 겉면의 위치를 나타냄. Sphere는 원이라서 Radius를 조절해서 이 범위를 좁히거나 넓힐 수 있음. - Rigidbody - 중력 중력을 조절할 수 있음. Use Gravity를 체크하면 중력의 영향을 받는다. Mass값이 클수록 무겁다. Is Kinematic을 체크하면 오브젝트가 고정되고 충돌이나 중력의 영향을 전혀 받지 않는다 - 재질 변경하기 프로젝트 창에서 create -> material 로 재질을 생성할 수 있음. 스크립트 적용하듯 오브젝트의 Inspector에 끌어다 놓으면 적용된다. Albedo로 색 변경. Albedo 옆에 박스에 텍스쳐 이미지를 끌어다 놓으면 겉면이 이미지로 덮여짐. Metallic - 금속 재질 수치 Smoothness.. 2019. 11. 3.
유니티 목표지점으로 이동하기 1. MoveTowards Vector3 target = new Vector3(-4f, 1.5f, 0); void Update() { transform.position = Vector3.MoveTowards(transform.position, target, 0.1f); } transform.position은 현재 위치를 나타낸다. Vector3.MoveTowards(현재위치, 목표위치, 속도); 2. SmoothDamp Vector3 target = new Vector3(-4f, 1.5f, 0); void Update() { Vector3 velo = Vector3.zero; transform.position = Vector3.SmoothDamp(transform.position, target, ref .. 2019. 11. 2.
유니티 키입력, 이동 유니티 입력은 유니티 엔진에서 제공하는 Input 클래스를 사용한다. 입력방식은 주로 누르기(down), 누른채로 있기(stay), 떼기(up) 세가지로 분류된다. - 아무키나 입력받았을 때 if(Input.anyKeyDown) { Debug.Log("플레이어가 아무 키를 눌렀습니다."); } if(Input.anyKey) { Debug.Log("플레이어가 아무 키를 누르고 있는 중입니다."); } - 키보드 입력하기 if (Input.GetKeyDown(KeyCode.LeftArrow)) Debug.Log("왼쪽으로 이동 시작"); if (Input.GetKey(KeyCode.LeftArrow)) Debug.Log("왼쪽으로 이동 중"); if (Input.GetKeyUp(KeyCode.LeftArro.. 2019. 11. 2.