home..
    Unity에서 통통 튀는 큐브 만들기
Goraniworks / June 2024 (358 Words, 2 Minutes)
    
    blog
    
    Unity
    
    c#
    
    3D
    
  
Unity에서 통통 튀는 큐브 만들기
유니티 책 산지 3일 만에 해보는 간단 프로젝트. 아는 거라고는 hierarchy창, scene창, inspector창, 이정도 밖에 잘 잘모르는데 챗 gpt의 힘을 빌려 해보았다.
1. Cube 객체 설정
hierarchy창에서 cube객체를 추가한다.
1.1. Rigidbody 컴포넌트 추가
Rigidbody 컴포넌트를 추가하여 물리적 움직임을 제어할 수 있습니다.

- Hierarchy 창에서 큐브 객체를 선택합니다.
 - Inspector 창에서 Add Component 버튼을 클릭합니다.
 - Rigidbody를 검색하여 추가합니다.
 
1.2. Box Collider 설정

- Inspector 창의 Box Collider 섹션에서 기본 설정을 그대로 둡니다.
 
1.3. Bouncy Material 설정

- Project 창에서 Assets 폴더를 마우스 오른쪽 버튼으로 클릭합니다.
 - Create -> Physic Material을 선택합니다.
 - 새로 생성된 Physic Material의 이름을 “New Physic Material”로 변경합니다.
 - Inspector 창에서 다음과 같이 설정합니다:
    
- Bounciness: 1
 - Bounce Combine: Maximum (못보고 minimum으로 했는데 잘 되었다.튀는 강도 조절하는 것 같다.)
 
 
1.4. Physic Material 적용

- Hierarchy 창에서 큐브 객체를 선택합니다.
 - Inspector 창에서 Box Collider 컴포넌트를 찾습니다.
 - Box Collider 컴포넌트 내에서 Material 항목을 찾습니다.
 - Material 항목 옆의 원형 아이콘을 클릭합니다.
 - “Bouncy” 물리 재질을 선택합니다.
 
2. 스크립트 작성 및 적용
2.1. 스크립트 작성
- Project 창에서 Create -> C# Script를 선택하여 새 스크립트를 만듭니다.
 - 스크립트 이름을 “cube_pop”로 설정합니다.
 - 아래 코드를 스크립트에 작성합니다:
 
using UnityEngine;
public class BouncyCube : MonoBehaviour
{
    public float bounceForce = 10f;
    
    void Start()
    {
        // 큐브에 처음 힘을 가합니다.
        Rigidbody rb = GetComponent<Rigidbody>();
        if (rb != null)
        {
            rb.AddForce(Vector3.up * bounceForce, ForceMode.Impulse);
        }
    }
    
    void OnCollisionEnter(Collision collision)
    {
        // 큐브가 바닥에 닿을 때마다 위로 튀게 합니다.
        if (collision.gameObject.CompareTag("Ground"))
        {
            Rigidbody rb = GetComponent<Rigidbody>();
            if (rb != null)
            {
                rb.AddForce(Vector3.up * bounceForce, ForceMode.Impulse);
            }
        }
    }
}
2.2. 스크립트 적용
- 작성한 스크립트를 저장합니다.
 - Inspector 창에서 큐브 객체를 선택합니다.
 - BouncyCube 스크립트를 큐브 객체에 드래그하여 추가합니다.
 
3. 바닥 객체 생성 및 태그 설정
3.1. 바닥 객체 생성
- Hierarchy 창에서 마우스 오른쪽 버튼을 클릭합니다.
 - 3D Object -> Plane을 선택합니다.
 - Hierarchy 창에 Plane 객체가 생성된 것을 확인합니다.
 
3.2. Ground 태그 설정

- Hierarchy 창에서 생성된 Plane 객체를 선택합니다.
 - Inspector 창에서 Tag 드롭다운 메뉴를 찾습니다. 기본값은 “Untagged”로 되어 있을 것입니다.
 - Tag 드롭다운 메뉴를 클릭하여 Add Tag…를 선택합니다.
 - Tags and Layers 창이 열리면, Tags 섹션에서 + 버튼을 클릭하여 새로운 태그를 추가합니다.
 - 새로운 태그 이름을 “Ground”로 입력하고, Save 버튼을 클릭합니다.
 - 다시 Hierarchy 창으로 돌아와 Plane 객체를 선택합니다.
 - Inspector 창의 Tag 드롭다운 메뉴에서 방금 추가한 “Ground” 태그를 선택합니다.
 
이제 모든 설정이 완료되었습니다. 이렇게 하면 큐브가 바닥과 충돌할 때 튀는 동작을 구현할 수 있습니다.
    브라우저 설정에 따라 댓글창이 보이지 않을 수도 있습니다.
        
          
        
        © 2024 Gorani Works
           
          •
           Powered by Gorani Works
           
          •
           Theme  Moonwalk