2024/09 5

[Unity] Awake()와 Start()의 차이점

Unity에서 Awake()와 Start() 메서드는 게임 오브젝트와 컴포넌트의 초기화 과정에서 중요한 역할을 합니다. 이 두 메서드는 각각 고유한 시점에 호출되며, 각기 다른 용도로 사용됩니다. Awake()Awake()는 Unity의 스크립트 생명주기 중 가장 먼저 호출되는 메서드입니다. 게임 오브젝트가 씬에 로드될 때, 모든 컴포넌트가 초기화되기 전에 호출됩니다. 특징:호출 시점: 모든 컴포넌트가 초기화되기 전에 호출됩니다. 따라서 Awake()는 스크립트나 컴포넌트의 설정과 관련된 코드가 독립적으로 실행되도록 보장합니다.의존성 관리: Awake()에서는 다른 컴포넌트의 상태에 의존하지 않고, 필요한 초기화 작업을 수행합니다. 예를 들어, 게임 오브젝트의 상태나 설정을 기본값으로 초기화할 때 유용합..

Unity/정보 2024.09.16

[Unity] 프리팹(Prefab) 기초

프리팹(Prefab)이란?프리팹은 Unity에서 재사용 가능한 객체 템플릿을 의미합니다. 게임에서 반복적으로 생성되거나 배치되는 오브젝트를 하나하나 수작업으로 배치하는 것은 비효율적이기 때문에, 프리팹을 활용하여 이를 자동화할 수 있습니다. 프리팹은 하나의 원본 객체를 미리 저장해 두고, 그 객체의 인스턴스를 게임 내에서 동적으로 생성할 수 있도록 해줍니다. 프리팹의 특징재사용 가능: 프리팹은 게임 내 원하는 위치에 동일한 오브젝트를 빠르게 생성할 수 있습니다. 예를 들어 적 캐릭터, 아이템, 총알 등을 프리팹으로 만들면 여러 곳에서 동일한 설정을 공유하면서 효율적으로 사용할 수 있습니다.동적 생성: 코드에서 Instantiate() 함수를 사용하여 프리팹을 동적으로 생성할 수 있습니다. 예를 들어, 플..

Unity/정보 2024.09.16

[Unity] GPU Instancing

GPU Instancing이란?GPU Instancing은 동일한 메쉬와 머티리얼을 사용하는 여러 오브젝트를 한 번의 드로우 콜로 렌더링하는 기술입니다. 일반적으로 다수의 오브젝트를 렌더링할 때, 각각의 오브젝트마다 GPU로 데이터를 보내는 과정(드로우 콜)이 필요합니다. 하지만 GPU Instancing을 사용하면 이 드로우 콜의 횟수를 크게 줄일 수 있습니다. GPU Instancing의 원리GPU Instancing은 동일한 메쉬와 머티리얼을 사용하는 여러 오브젝트를 묶어서 한 번에 GPU로 전송합니다.각 오브젝트의 위치, 회전, 크기와 같은 개별적인 변환 정보만을 GPU로 넘겨주고, 나머지 메쉬 데이터는 공유됩니다.이를 통해 CPU에서 처리해야 할 작업이 줄어들어 성능이 향상됩니다. GPU Ins..

Unity/정보 2024.09.13

[Unity] 유니티에서 코루틴(Coroutine) 사용하기

코루틴이란?코루틴은 IEnumerator를 반환하는 함수로, 비동기적으로 작업을 처리하거나 지연된 작업을 수행할 수 있습니다. yield를 사용하여 특정 시간 동안 대기하거나, 여러 프레임에 걸쳐 작업을 나누어 처리할 수 있습니다. 이는 게임에서 타이밍 제어나 비동기적 로딩, 애니메이션 제어 등 다양한 용도로 사용됩니다.  기본 사용법코루틴은 다음과 같이 정의하고 호출할 수 있습니다:using System.Collections;using UnityEngine;public class Greeting : MonoBehaviour{ void Start() { StartCoroutine(GreetEverySecond()); } IEnumerator GreetEverySecond..

Unity/정보 2024.09.08

[Unity] 휴머노이드 애니메이션을 활용한 상체와 하체의 방향 조정 방법

Unity에서 캐릭터 애니메이션을 구현할 때, 상체와 하체를 각각 다른 방향으로 향하게 하는 것은 다양한 게임에서 중요한 요소입니다. 예를 들어, FPS 게임에서 플레이어가 상체는 오른쪽을 조준하면서 하체는 앞으로 뛰는 상황을 구현하고 싶다면, 상체와 하체의 애니메이션 방향을 별도로 조정해야 합니다. 이번 글에서는 이러한 기능을 구현하는 여러 방법 중 하나를 소개하겠습니다. 위 사진처럼 캐릭터의 상체와 하체 등 부위별로 서로 다른 방향을 주는 것이 최종 목표입니다. 부위별로 다른 애니메이션을 재생하는 방법은 이미 널리 알려져 있으므로, 이번에는 다루지 않겠습니다.​작업할 캐릭터 모델 준비캐릭터와 애니메이션은 무료로 제공되는 사이트인 Mixamo에서 가져옵시다.​www.mixamo.com Mixamo ww..

Unity/정보 2024.09.04