데이터 지향 설계(Data Oriented Design)에서의 게임 개발에 대해서
상세
게임 개발을 할 때의 생각에는 데이터 지향 설계(Data Oriented Design)라는 것이 있습니다.
지난 수십 년 동안 CPU 성능이 1만배 이상인 반면 메모리 성능은 10배 미만밖에 되지 않았습니다. 또한 앞으로도 CPU와 메모리의 차이는 점점 늘어날 것으로 보입니다.
그 때문에, 게임 개발에서의 병목이 메모리 대역이 되는 경우가 많아졌습니다.
참고: INTRODUCTION TO DATA ORIENTED DESIGN
htps //w w. 그래. 코 m / f로 st 흠 /
게임의 처리나 퍼포먼스에 가장 영향을 받는 것은 메모리의 읽기 속도입니다. 현재 CPU의 대부분의 시간이 메모리에서 데이터 전송을 기다리고 있습니다. CPU의 성능을 끌어내기 위해서는 메모리 대역을 얼마나 효율적으로 사용하는가가 중요해지고 있습니다.
향후의 게임 개발에서는 메모리의 데이터를 읽는 프로세스를 가능한 한 적게 하는 것에 주목한 설계가 요구됩니다. 데이터 지향 설계(Data Oriented Design)에서는 이러한 사고방식으로 효율적인 메모리 레이아웃을 생각해 설계합니다.
데이터 지향 설계란?
프로그램은 데이터를 입력으로 받고, 데이터에 어떠한 가공을 실시해, 결과의 데이터를 출력하고 있습니다. 무엇을 할지라도 데이터가 얽혀 있습니다. 그 때문에, 데이터의 메모리 레이아웃이나, 데이터가 어떻게 읽혀 내보내지는지 주목한 설계가 데이터 지향 설계입니다.
Unity의 데이터 지향 설계 정보
Unity의 경우에는 Entity Component System(약칭:ECS)이라는 소프트웨어 아키텍처 패턴이 있습니다.
샘플 코드: EntityComponentSystemSamples
htps : // 기주 b. 코 m / 우니 ty- ch ぉ ギエ s / 엔치 ty 코 m 포넨 tSys m mp ぇ s
참고
ㅡㅡㅡㅡㅡㅜ 코 m / 다타 오리 엔테 d
htps //w w. 그래. 코 m / f로 st 흠 /
Reference
이 문제에 관하여(데이터 지향 설계(Data Oriented Design)에서의 게임 개발에 대해서), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nekoharuyuki/items/6550391d05b9a636a317텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)