«entity-system» 태그된 질문

게임 오브젝트 (엔티티)가 구성 요소로 구성되어 시스템에 의해 운영되는 프로그래밍 패러다임입니다. 각 엔티티는 특정 구성 요소를 가리키는 ID입니다.

4
Lua 엔티티 생성 / 관리가 우수한 게임 엔진 [닫기]
현재로서는이 질문이 Q & A 형식에 적합하지 않습니다. 답변, 사실, 참고 자료 또는 전문 지식을 통해 답변이 뒷받침 될 것으로 예상되지만이 질문은 토론, 논쟁, 여론 조사 또는 광범위한 토론을 요구할 것입니다. 이 질문을 개선하고 다시 열 수 있다고 생각 되면 도움말 센터 를 방문하여 안내를 받으십시오 . 휴일 칠년 전에 …

4
엔터티 시스템 및 렌더링
좋아요, 지금까지 내가 아는 것; 엔티티는 다음과 같은 정보를 보유하는 구성 요소 (데이터 저장 장치)를 포함합니다. -텍스쳐 / 스프라이트-쉐이더-등 그리고이 모든 것을 그리는 렌더러 시스템이 있습니다. 그러나 내가 이해하지 못하는 것은 렌더러가 어떻게 디자인되어야 하는가입니다. 각 "시각 유형"마다 하나의 구성 요소가 있어야합니다. 셰이더가없는 컴포넌트, 셰이더가있는 컴포넌트 등? 이를 위해 "올바른 …

2
엔티티 / 컴포넌트 기반 시스템에서 게임 상태를 구성하는 방법
여기에 설명 된대로 시스템을 사용하여 구성 요소간에 통신하는 엔티티 구성 요소 패러다임으로 설계된 게임을 만들고 있습니다 . 개발 단계에서 게임 상태 (일시 중지, 재생, 레벨 시작, 라운드 시작, 게임 오버 등)를 추가해야하는 시점에 도달했지만 내 프레임 워크로 어떻게해야하는지 잘 모르겠습니다. 모든 사람들이 참조하는 게임 상태 에서이 코드 예제를 살펴 보았지만 …

1
홈 브루어 렌더링 시스템에서 리소스를 캐시하는 방법
배경: C ++ 및 OpenGL을 사용하여 엔터티 구성 요소 시스템 유형 아키텍처를위한 간단한 3D 렌더링 시스템을 설계하고 있습니다. 이 시스템은 렌더러와 장면 그래프로 구성됩니다. 렌더러의 첫 번째 반복을 마치면 장면 그래프를 ECS 아키텍처에 배포 할 수 있습니다. 현재로서는 자리 표시 자입니다. 가능하면 렌더러의 목표는 다음과 같습니다. 단순성 . 이것은 연구 …

1
엔터티 구성 요소 시스템에 전역 컨텍스트 데이터를 어떻게 저장합니까?
내 질문은 이것입니다 : 어떻게 글로벌 컨텍스트 데이터를 저장하겠습니까? 엔터티 구성 요소 시스템의 월드 데이터 정보, 현재 월드 타임 등? 저는 C ++에서 Dwarf Fortress 스타일의 개방형 세계 시뮬레이션 게임을 구축하려고 노력하고 있습니다. 나는 재미를 위해 엔터티 구성 요소 스타일의 게임 엔진을 구축했으며 현재 내가 원하는 모든 기능에서 어떻게 작동하는지 …

4
엔터티 구성 요소 시스템에서 엔터티 '유형'식별
엔터티에 명시적인 '유형'(예 : 플레이어)이없고 단순히 구성 요소 모음 인 경우 시스템에서 작업하지 않아야하는 엔터티를 어떻게 식별합니까? 예를 들어, Pong 게임에서 패들과 공은 모두 창 경계와 충돌합니다. 그러나 각각의 충돌 처리 시스템은 다르므로 시스템이 잘못된 유형의 엔티티를 처리해서는 안됩니다. void PlayerCollisionSystem::update(std::vector<Entity *> entities) { typedef std::vector<Entity *>::iterator EIter; for (EIter …

3
엔터티 구성 요소 시스템에서 "Blob-Systems"를 피하는 방법은 무엇입니까?
현재 다음 문제에 직면하고 있습니다. 엔터티 구성 요소 시스템 (ECS) 을 사용하여 퐁 클론을 작성하려고합니다 . 나는 스스로 "프레임 워크"를 썼습니다. 따라서 모든 구성 요소로 엔티티를 관리하는 클래스가 있습니다. 그런 다음 구성 요소 클래스 자체가 있습니다. 마지막으로 시스템에 필요한 구성 요소가있는 모든 엔티티를 얻는 시스템이 있습니다. 예를 들어 내 이동 …

3
컴포넌트 기반 게임에서 엔티티 상태 및 애니메이션을 업데이트하는 방법은 무엇입니까?
학습 목적으로 (그리고 나중에 일부 게임에서 사용하기 위해) 구성 요소 기반 엔터티 시스템을 설계하려고하는데 엔터티 상태를 업데이트하는 데 문제가 있습니다. 구성 요소 사이에 종속성을 방지하기 위해 구성 요소 안에 update () 메서드를 원하지 않습니다. 현재 내가 생각하는 것은 구성 요소에 데이터가 있고 시스템이 구성 요소를 업데이트한다는 것입니다. 따라서 Transform, Movement, …

3
구성 요소 엔티티 시스템-업데이트 및 호출 주문
구성 요소가 모든 프레임 을 업데이트 할 수있게하고 (필요하지 않은 구성 요소에서이 기능을 사용하지 않도록) UpdateComponent 구성 요소를 만드는 아이디어를 얻었습니다. MovableComponent속도를 유지하는 것과 같은 다른 구성 요소 는 IUpdatable추상 클래스 에서 상속됩니다 . 이렇게 하면에 대한 포인터를 제공 MovableComponent하는 Update(gametime dt)메소드와 다른 메소드를 강제 로 구현 합니다 . 많은 …

3
엔티티를 집계로 작성
나는 최근에 엔티티와 그들의 행동 을 분리 하는 방법에 대해 물었다. 과 과이 기사에 링크 된 주요 답변 : http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/ 여기에 쓰여진 궁극적 인 개념은 다음과 같습니다. 순수한 합의로서의 목표. C #을 사용하여 게임 엔터티를 순수한 집계로 만드는 방법에 대해 궁금합니다. 나는 이것이 어떻게 작동하는지에 대한 개념을 파악하지 못했습니다. (아마도 …


2
캐시 친화적 인 구성 요소 저장소를 사용하여 구성 요소 간 통신을 안전하게 지원하려면 어떻게해야합니까?
구성 요소 기반 게임 개체를 사용하는 게임을 만들고 있는데 각 구성 요소가 해당 게임 개체와 통신하는 방법을 구현하는 데 어려움을 겪고 있습니다. 한 번에 모든 것을 설명하는 대신 관련 샘플 코드의 각 부분을 설명하겠습니다. class GameObjectManager { public: //Updates all the game objects void update(Time dt); //Sends a message to …

1
컴포넌트 / 엔터티 기반 디자인 + 동작 트리 => 통합 방법?
현재 프로젝트를 위해 기본적으로 구성 요소 / 엔티티 기반 시스템을 구현했습니다 . 기본적으로 대부분의 모범 사례에 따라이 정의되지 않은 영역에 있습니다 . 그래서 기본적으로 ID, 사람이 읽을 수있는 이름, 구성 요소 및 구성 요소가 무엇인지 나타내는 데 사용되는 "유형 표시기"인 (약간 확장 된) 엔티티를 얻었습니다 ( 모든 구성 요소에 대해 …

2
엔터티 시스템의 많은 이동원
나는 잔뜩 읽은, 기업 시스템의 개념에 비교적 새로운 해요 (대부분의 유용, 이 위대한 블로그 및 이 답변 ). 정의되지 않은 수의 소스로 객체의 위치를 ​​조작하는 것만 큼 간단한 것이 무엇인지 이해하는 데 약간의 어려움이 있습니다. 즉, 직위 구성 요소가있는 엔터티가 있습니다. 그런 다음 게임에서 일정 시간 동안이 엔티티가 주어진 거리를 …

3
엔터티 구성 요소 시스템 기반 엔진
참고 : 나는 이것을 자바 스크립트로 프로그래밍하고 있지만, 대부분 언어에 무관심해야합니다. 엔진을 ECS 기반 엔진으로 변환하려고합니다. 나는 기본 아이디어를 얻습니다 ( 참고 : 이것은 잘못되었습니다, 내 대답 참조 ) : 엔터티 는 게임 개체입니다. 컴포넌트 는 엔티티에 "접착"될 수있는 기능성 비트 ( reactToInput()) 또는 상태 ( position)입니다. 시스템 에는 관리하고 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.