반응형 개발49 [Unity][DOTS] ECS & C# Job System, 샘플 프로젝트 따라잡기 #2 샘플 프로젝트는 https://github.com/Unity-Technologies/EntityComponentSystemSamples 에서 받아볼 수 있다. 샘플 프로젝트의 예제는 총 일곱 개다. HelloECS 폴더에 여섯 개, Advanecd 폴더 아래 한 개가 들어있다. HelloECS 여섯 개 예제 중 첫 번째 예제인 HelloCube_01_ForEach 씬(scene)를 파헤쳐 보겠다. Project 뷰를 보면 아래 그림과 같이 HelloCube_01_ForEach 폴더 안에 씬, README 문서, 세 개의 C# 스크립트가 들어있다. README 파일의 내용만으로 이 예제의 전체 구조와 동작을 파악할 수 있다. ECS의 각 요소인 Entity, Component, System은 번역하지 않고.. 2019. 3. 29. [Unity][DOTS] Entity Debugger 사용 방법 ECS를 사용하면 유니티 에디터의 Game View나 Hierarchy 창에서 Entity를 볼 수 없다. 기존에 유니티 에디터에서 GameObject를 만들고 눈으로 정보를 확인하면서 작업하던 사람에게는 너무나 당황스러운 상황이다. 100% 만족스럽지는 않지만 Entity Debugger 창에서 Entity를 볼 수 있다. 유니티 에디터의 Window 메뉴에서 Entity Debugger를 찾아서 열면 다음 그림과 같은 화면이 뜬다. 참고로 유니티에서 제공한 Boid 샘플 프로젝트를 사용했다. 왼쪽의 System 탭은 게임에서 실행 중인 모든 System 리스트를 보여준다. 리스트는 알파벳 순 정렬이 아닌 Player Loop 순 정렬이라고 한다. 각 System은 on/off 체크박스로 껐다 켰다 하.. 2019. 3. 27. [Unity][DOTS] ECS의 핵심, Archetype과 Chunk 유니티에서 밀고 있는 개발 패러다임인 DOTS는 Data-Oriented Tech Stack의 약자다. DOTS는 C# Job System, Entity Component System(ECS), Burst Compiler로 이뤄져 있다. ECS는 이름 그대로 Entity, Component, System을 모아 놓은 것이다. DOTS의 핵심은 데이터인데 ECS의 세 요소 중 Component가 바로 데이터다. 나머지 두 요소도 간단히 살펴보겠다. Entity는 여러 종류의 Component 묶음을 가리키고 있을 뿐이다. System은 Component의 값을 바꾸거나 Component를 이용해서 프로그램의 로직을 수행하는 일을 한다. Archetype과 Chunk는 ECS가 Component를 저장하고 .. 2019. 3. 26. [Unity][DOTS] 빈(empty) ECS Project 생성하기 빈 ECS 프로젝트를 생성하는 방법이다. 새로운 내용은 없다. 아래 참고 페이지를 그대로 번역한 수준이다. 이 페이지 찾는데 한참 걸렸기 때문에 시간 절약하시라고 포스팅한다. ECS가 아직 실험 단계인 기술이라 그런지 문서가 여기저기 흩어져있다. 버전 2019.1b4 이상의 유니티 에디터를 실행한다. 적당히 새로운 프로젝트를 생성한다. 패키지 매니저(Package Manager) 창을 연다. Menu -> Window -> Package Manager 창 위쪽의 Advanced 버튼을 클릭해서 Show preview package 옵션을 선택한다. Packages 폴더의 manifest.json 파일을 수정하는 방법도 있지만 위 방법이 더 쉽고 직관적이다. 아래의 주요 패키지를 프로젝트에 추가한다. En.. 2019. 3. 15. [Unity][DOTS] ECS & C# Job System, 샘플 프로젝트 따라잡기 #1 유니티의 Entity Component System & C# Job System 샘플 프로젝트를 파헤쳐보겠다. Entity Component System(이하 ECS)과 C# Job System이 뭔지 먼저 얘기하는게 순서지만 이 글이 우선순위가 높다고 판단하여 먼저 쓴다. 그래도 간단히 얘기하자면 Entity Component System은 유니티 새로운 개발 패러다임으로 객체 지향 프로그래밍에서 데이터 지향 프로그래밍으로의 전환을 돕는다. 아직 실험적인 단계로 유니티 2018.3 이상 버전에서 사용할 수 있다. C# Job 시스템은 멀티쓰레딩을 쉽게 구현할 수 있도록 도와주는 시스템이다. ECS가 Package Manager로 수동 설치해야 하는데에 비해 Job System은 유니티 2018.1 버전.. 2019. 3. 13. 이전 1 2 3 4 5 6 7 ··· 10 다음 반응형