본문 바로가기
[Unity] 마인크래프트 Voxel System 구현과 Jobs + Burst 최적화 이 글에서는 마인크래프트를 구현하는 데 사용되는 방법인 Voxel System과, 이를 Job System + Burst Compiler로 최적화하여 속도를 2배 가까이 빠르게 만든 과정을 설명하려 합니다. A. 서론 서론이 길지만 딱히 쓸 데 있는 내용은 아니니, 넘어가셔도 좋습니다. 최근 만들고 있는 모바일 게임에서 3D 맵 에디터를 만들기 위해 여러가지 방안을 생각해 봤습니다. 처음엔 무식하게 GameObject를 하나씩 Instantiate/Destroy하는 방식으로 구현했는데, 사실 맵이 클 필요가 없어서 성능이 그리 크게 저하되지는 않았습니다. 그런데 모바일이니 성능은 최대한 올리는게 좋고, 기왕 하는거 좀 더 큰 맵을 만들 수 있도록 했으면 좋을 것 같고, 마인크래프트와 같이 블록을 일일이 .. 2024. 1. 5.
[Unity] Job System 간단 매뉴얼 자세한 개념은 대부분 생략하고, Job System의 사용법을 예제와 함께 간단히 설명드리려 합니다.1. 사용 순서작업을 Job으로 만들기Job 인스턴스 생성Job 인스턴스의 Schedule() 메서드를 통해 JobHandle 객체 생성JobHandle 인스턴스의 Complete() 메서드를 통해 스케줄된 Job을 실행2. 예제(1) IJob아래와 같이 IJob 인터페이스를 구현하는 형태로 만들어 실행할 수 있습니다.using Unity.Collections;using Unity.Jobs;using UnityEngine;public class MyMono : MonoBehaviour{ public int arraySize = 100; void Start() .. 2024. 1. 3.