본문 바로가기

유니티7

유니티 물리충돌 이벤트 // 물리적 충돌이 시작할 때 호출되는 함수 // Collision은 충돌 정보를 제공하는 클래스 private void OnCollisionEnter(Collision collision) { //이름이 myBall인 오브젝트와 충돌했을때 if(collision.gameObject.name == "myBall") { mat.color = new Color(0, 0, 0); //충돌시 색을 검정색으로 변경 } }​ MeshRenderer mesh;//오브젝트의 재질 접근은 Meshrenderer를 통해서 Material mat; void Start() { mesh = GetComponent(); mat = mesh.material; } 유니티 오브젝트의 재질 접근은 MeshRenderer를 사용한다. //.. 2019. 11. 7.
유니티 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.