나아가기

[Unity] 기본적인 프로젝트 만들기 본문

Unity_Metaverse

[Unity] 기본적인 프로젝트 만들기

channnnii 2022. 5. 13. 12:40

3D 바닥 만들기

1. 프로젝트 생성하기.

core -> 3d를 선택하고, 프로젝트 이름을 입력하고 생성 버튼을 누른다.

 

 

2. 바닥 만들기

Hierarchy에서 마우스 우측 버튼을 누르고, "3d Object"를 누르고 Plane을 선택한다.

씬 뷰(Scene View)에 바닥이 나타남.

Plane을 선택하고 Inspector 뷰를 보면, Transform이 보인다.

1. Position: 3D 오브젝트의 x, y, z 값으로 위치 조정. x는 좌우, y는 상하, z는 앞뒤를 의미한다.

2. Rotation: 회전 각도를 의미하며 x, y, z는 축이 되어 회전

3. Scale : Object의 크기를 조정. 1이 10m 정도이다.

 

 

 

3. 바닥에 재질 지정하기.

구글에 바닥 패턴을 검색하여, 크리에이티브 라이선스 메뉴를 클릭한 후 상업용으로 사용 가능한 이미지만 검색한다.

바닥을 반복적으로 사용하여 하므로, 평평한 이미지를 골라 다음이름으로 저장한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

그리고 프로젝트뷰에서 마우스 우측 버튼을 클릭한 후,

Create -> Folder를 선택하여 "Image" 폴더를 만들어준다.

추가라한 이미지를 Image폴더로 드래그 해서 넣어준다.

 

 

 

 

 

 

 

 

 

 

 

추가한 이미지를 씬뷰테서 바닥 Object로 드래그해서 놓으면 표면에 이지가 입혀지는 것을 볼 수 있다.

 

 

 

 

컴포넌트 (Component) 

유니티는 컴포넌트 기반으로 개발하는 CBD(Component Based Development) 방법을 사용합니다.

기능들을 하나씩 추가하거나 제거할 수 있어서 빠르게 개발할 수 있습니다.

컴포넌트를 추가할 땐, "Add Component"를 눌러서 추가하거나 드래드를 해서 추가 할 수 있습니다.

 

 

C# 컴포넌트 (스크립트 생성하기) 

게임을 구성하는 여러가지 요소들이 어떻게 동작해야 할지를 코드로 작성한 것을 스크립트라고 한다.

Unity에서는 스크립트 언어로 C#을 사용한다.

 

1. C# 스크립트 생성하기

프로젝트뷰에서 오른쪽 마우스를 클릭하여 Create -> C# Script를 클릭하고, 이름을 지정한다.

만들어진 C# Script를 더블 클릭하면, Visual Studio로 연결되어 기본적인 코드가 보여진다.

위의 Class의 이름은 "Controll"로 다른 이름으로 되어있다면, 코드를 실행 시 오류가 발생한다.

따라서 반드시 C# 스크립트 파일명과 동일한 Class로 이름이 되어 있는지 확인하여야 한다.

 

 

2. C# 스크립트 구조 살펴보기

  • using System.Collections;
    using System.Collections.Generis;
    using UnityEngine;
    -> C#과 유니티에서 제공하는 여러가지 라이브러리를 가져오는 키워드이다.
  • void Start() {  }
    게임이 시작될 때 자동으로 한 번만 실행되는 유니티 이벤트 메서드이다.
    게임이 시작과 함께 실행될 코드를 이 메서드 안에 작성한다.
  • void Update() {  }
    게임 화면이 새로 그려질 때마다 실행되는 유니티 이벤트 메소드이다.
    컴퓨터는 1초에 60번 정도 화면을 새로 그리는데 새로 그리는 각각의 화면을 프래임(Frame)이라고 한다.
    실시간으로 변하는 정보를 나타내 주는 코드는 이 메서드 안에 작성한다.

 

3. C# 스크립트로 "나의 정보" 출력하기.

 

※ 변수란?

1) 프로그램이 돌아가는 동안 필요한 여러가지 정보를 담아주는 저장소

2) 변수는 미리 선언한 후 사용할 수 있다. 선언하면서 초기값을 바로 저장할 수 있다.

3) string : 문자열 + 큰따옴표로 묶어서 표시

4) char : 문자 하나 + 작은 따옴표로 묶어서 표시

5) int : 정수. 소수점 아래 값이 없는 숫자

6) float : 실수. 소수점을 가진 숫자로 숫자 뒤에 f를 붙여서 표시함

7) bool(불리언) : true(참) + false(거짓) 중 하나를 저장

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Controll : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        string name = "삼순";
        int age = 20;
        float weight = 6.5f;
        float height = 160.0f;

        //콘솔창에 출력하기
        Debug.Log("나의 이름 : " + name);
        Debug.Log("나의 나이 : " + age);
        Debug.Log("나의 몸무게 : " + weight);
        Debug.Log("나의 키 : " + height);
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

코드를 작성한 후, 다시 unity로 돌아간다.

그리고 게임 오브젝트에 Plane을 클릭한 후, 스크립트를 Pland의 오브젝트로 드래그해서 추가 

드래그 한후, 추가된 것을 확인!!

그리고 실행을 시키면, 콘솔 창에 뜨는 것을 확인할 수 있다.

 

 

 

변수

유니티 3D 오브젝트를 변수를 통해 조종하기

 

1. Hierarchy 뷰에서 3D Object에서 Cube 추가하기

 

2. Inspector 뷰에서 Add Component → Physics → Rigidbody 클릭

Rigidboby 컴포넌트는 물리 시뮬레이션을 통해서 게임 오브젝트의 위치를 제어하고, 충돌에 대한 반응 크기 계산 및 중력의 영향에 의해 오브젝트를 아래로 떨어지게 할 수 있습니다.

 

3. 프로젝트 뷰에서 Create → c# Script  그리고, 스크립트 이름을 Box로 지정!

 

1) Box 스크립트 작성하기!

1. public Rigidbody myRigidbody;

Rigidbody 타입의 변수인 myRigidbody를 선언

myRigidbody 변수로 myRigidbody가 가리키는 실체인 Cube 오브젝트를 움직이게 할 수 있다.

 

void Start( )

{

      myRigidbody.AddForce(0, 500, 0);

}  

 

AddForce(x 방향, y 방향, z 방향)으로,

    힘을 추가하는 Rigidbody 컴포넌트의 메서드

 

 

 

2) Cube를 선택했을 때 나오는 Inspector 뷰에서, Rigidbody란에 작성한 Box에 대한 C# Script를 드래그해서 넣어준다.

 

Box Script안에 My Rigidbody에 위에 있는 Rigidbody

드래그 해서 넣어주기.

 

그리고 실행을 시키면,

Cube가 위로 살짝 올라갔다가 아래로 떨어지는 것을 볼 수 있다.

Comments