2024/09/16 3

[Unity] 유니티의 가비지 콜렉터 (G.C)

가비지 콜렉터란?가비지 콜렉터(GC)는 프로그램에서 더 이상 필요하지 않은 메모리(가비지)를 자동으로 회수하여 메모리 누수를 방지하고 메모리를 관리하는 시스템입니다. 유니티는 C#을 사용하여 스크립트를 작동하며 .NET의 가비지 콜렉터를 기반으로 메모리를 관리합니다.   작동 방식 가비지 콜렉션은 주로 C#에서 관리되는 힙 메모리에서 이루어집니다. Unity는 생성된 객체가 더 이상 사용되지 않을 때 자동으로 메모리에서 해제하는데, 메모리에서 해제되는 시점을 완벽하게 제어하기는 어렵습니다. 그리고 GC는 메모리를 세대별로 나누어 오래된 객체와 최근에 생성된 객체를 구분해서 관리합니다.0세대 (Gen 0): 가장 최근에 생성된 객체들이 위치하며, 수명이 짧은 객체가 많습니다. 이 세대는 빠르게 메모리에서 ..

Unity/정보 2024.09.16

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

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

Unity/정보 2024.09.16

[Unity] 프리팹(Prefab) 기초

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

Unity/정보 2024.09.16