Hedra, 고등학생 때 처음부터 직접 만든 3D 오픈월드 게임

1 week ago 20

Hedra는 약 15세 때 OpenGL을 배우려고 시작해 수년에 걸쳐 게임과 자체 엔진으로 확장한 저폴리곤 오픈월드 RPG이며, Linux와 Windows를 정식 지원함 절차적 생성으로 끝없이 펼쳐지는 세계와 퀘스트를 만들며, 월드 파일 없이 플레이어 데이터와 시드만 저장하고 나머지는 실행 중 생성함 현대적 OpenGL 렌더러를 바탕으로 애니메이션, 반사와 그림자, 물리, 파티클, 무한 월드용 청크 시스템 등을 직접 구성함 게임 자체를 기본 엔진의 모드로 구현해 모드 API를 계속 유지하도록 설계했으며, Python 스크립트에서 C# API를 직접 사용할 수 있음 드로 콜 축소와 사용자 정의 메모리 할당자로 렌더링 및 GC 부담을 줄이도록 설계했으며, 1,000개 이상의 테스트와 게임 구성 요소 모킹/통합 테스트 프레임워크를 갖춤 시작과 게임 구성 Project Hedra는 고등학생 시절 약 15세에 OpenGL을 배우기 위해 시작한 프로젝트로, 개발 범위가 커지면서 수년에 걸쳐 본격적인 3D 게임과 엔진으로 발전함 Linux와 Windows를 정식 지원함 플레이어는 클래스를 선택해 절차적으로 생성되는 무한 세계를 탐험하고, 스킬을 해금하며 절차적으로 생성되는 퀘스트를 수행함 클래스는 4개이며 각각 전문화 2개를 갖추고, 스킬과 스킬 트리 시스템을 제공함 퀘스트와 보스, 희귀도 체계가 적용된 100개 이상의 아이템이 있음 구조물은 동적으로 생성하고 절차적으로 배치함 낚시, 제작, 거래, NPC, 동료와 펫을 지원함 사운드트랙, 길 찾기와 지도, 서로 다른 차원이 있음 렌더링과 엔진 기능 현대적 OpenGL 기반 렌더러가 정적 메시와 스키닝 메시를 렌더링하고, 범용 애니메이션의 로딩과 재생을 지원함 화면 공간 반사, 화면 공간 앰비언트 오클루전, 블룸, FXAA, MSAA를 지원함 스카이박스, 그림자, 3D 궤적 렌더링을 제공하며, 파티클에는 OpenGL 오브젝트 인스턴싱을 사용함 절두체 컬링과 오클루전 컬링을 적용하고, 메시 단순화로 실행 중 LOD를 처리함 동적 셰이더 시스템으로 실행 중 셰이더를 다시 불러올 수 있으며, 드롭다운과 버튼을 비롯한 UI 및 조작 시스템도 OpenGL로 직접 작성함 OpenAL로 사운드를 처리하고, bulletphysics를 통합함 데이터 지향 객체를 로드하는 모듈 시스템과 엔티티 컴포넌트 시스템을 갖추고, 현지화와 모딩을 지원함 Steam 통합을 지원하며, CI를 통해 Stea...

Read Entire Article




피플앤툴즈 네트워크
🛍 샵