Bevy 0.20 출시 — 렌더링·씬 시스템·ECS 개선
Rust 게임 엔진 Bevy 0.20이 실시간 경로 추적 렌더러 Solari와 DLSS를 개선하고, 새 씬 시스템 BSN의 문법을 다듬었습니다. WESL 셰이더, 약한 시스템 순서 지정, 스케줄 무작위화, 텍스처 압축 등 렌더링과 개발 도구 전반의 변경 사항도 담았습니다.
개발 도구와 언어, 웹 기술과 오픈소스 프로젝트의 변화를 다룹니다.
Rust 게임 엔진 Bevy 0.20이 실시간 경로 추적 렌더러 Solari와 DLSS를 개선하고, 새 씬 시스템 BSN의 문법을 다듬었습니다. WESL 셰이더, 약한 시스템 순서 지정, 스케줄 무작위화, 텍스처 압축 등 렌더링과 개발 도구 전반의 변경 사항도 담았습니다.
PSP 게임의 MIPS 코드를 C++로 정적 재컴파일하고, PSP 운영체제와 그래픽 기능을 구현해 WebAssembly와 WebGL2로 실행하는 프로젝트입니다. 《God of War: Chains of Olympus》는 측정한 장면에서 초당 60프레임으로 동작하며, 성능 개선의 상당 부분은 렌더러 최적화보다 프레임 동기화와 브라우저별 병목을 찾아 해결한 결과입니다.
Solitude 근처 산에 Magelight를 던지면 Alteration 경험치가 반복해서 오르는 이유를 게임 데이터와 충돌 처리 코드로 분석합니다. 주문이 특정 충돌 레이어의 보이지 않는 벽과 여러 번 충돌해 시전 한 번에 경험치를 거듭 지급하며, 조준 위치를 최적화하면 Alteration 15레벨에서 100레벨까지 17번의 시전으로 올립니다.
1992년 게임 Comanche의 지형 파일 8개를 분석해 색상 맵과 높이 맵을 BMP로 변환하는 과정을 설명합니다. 파일은 독자 형식이 아니라 앞부분의 서명만 바꾼 PCX였으며, 헤더와 RLE 데이터, 팔레트를 확인해 이를 검증합니다.
AnyPS5는 PS5 실행 파일을 Linux와 Windows의 네이티브 형식으로 변환하고, 동적 링크에 필요한 시스템 라이브러리를 구현하는 프로젝트입니다. 에뮬레이션이나 별도 런타임 프로세스 없이 Dreaming Sarah를 특정 PC에서 60fps로 실행했다고 소개합니다.
텍스트 어드벤처 Infidel의 ZIL 코드에서 선택적 인수의 기본값으로 전역 변수를 지정한 부분이 컴파일 오류를 일으킵니다. 사막에 물건을 여러 개 버리면 메모리 주소 30번대부터 덮어쓰고, 결국 문자열 압축용 약어 데이터까지 손상됩니다.
The Goblin Warren은 Sanity에 저장한 D&D 5e 규칙을 조회하고 근거 문서를 인용하는 브라우저 기반 던전 크롤입니다. 자연어 규칙 질문은 Knowledge Base로, 정확한 능력치 조회는 GROQ로 나눠 처리하며, 답변 추적 화면에서 조회 과정도 확인합니다.
Anthroposcaper는 브라우저에서 그린 도면이나 DXF 파일에 태그를 달고, GLB 모델 템플릿을 배치해 3D 도시 환경을 만드는 도구입니다. 도면이나 태그를 바꾸면 장면을 다시 생성하며, 결과를 GLB로 내보내 3D 편집기와 게임 엔진에서 활용합니다.
ASM Bots는 실제 8086 어셈블리로 전투 프로그램을 작성해 64KB 메모리 코어에서 겨루는 Core War 게임입니다. 한 명령씩 번갈아 실행하는 전투와 디버거, 순위전·토너먼트를 제공하며, 결정론적 실행으로 대전을 재생하고 검증합니다.
MUGEN 호환 오픈소스 대전 격투 게임 엔진 Ikemen GO가 1.0.0을 출시했습니다. 롤백 넷코드를 기본 활성화하고 리플레이 저장·관리와 넷플레이 설정 동기화를 추가했습니다. glTF 기반 3D 무대, Z축 이동, 다양한 MUGEN 기능 호환성 개선도 포함했습니다.
게임 업계 베테랑 Georg Zoeller는 AI 에이전트로 1989년작을 역공학해 브라우저로 옮기고 새 게임으로 현대화한 과정을 소개합니다. 이 작업을 지식 노동의 비용과 게임 업계 일자리, 저작권의 미래를 가늠하는 사례로 해석합니다.
Rapier 0.36.0에 천, 젤리, 로프 같은 변형체를 시뮬레이션하는 기능이 추가됐습니다. 글은 형상 매칭, 스프링 제약, 유한요소법(FEM)의 선택 기준과 비정상적인 관통·자기 교차를 다루는 방법, 조인트와 스키닝을 위한 구조를 설명합니다.
Among Us 오픈소스 클론의 역할 배정은 가장 높은 플레이어 ID를 가진 클라이언트가 임포스터를 자처하는 방식이었습니다. 개발팀은 Midnight의 Compact 계약과 커밋먼트, 비공개 증명을 이용해 역할 배정과 처치를 검증하는 Shadow Protocol을 만들었으며, 데모는 실제 블록체인 대신 같은 규칙을 검사하는 모의 원장으로 실행했습니다.
Wube가 초기 게임 요소를 재현한 3D 프린팅 모델 65종을 STL 파일로 공개했습니다. 게임 속 등각 투영 화면에 맞춰 만든 자산을 실제 입체물로 바꾸면서 생긴 형태·출력 문제와, 이를 해결한 조립 및 서포트 설계 과정을 소개합니다.
Oniria에서 DEV.to 글을 책으로 배치하는 3D 도서관을 만들며, 좌표를 코드로 고치는 대신 공간 안에서 위치를 지정하는 마커 도구를 개발했습니다. 마커를 Sanity 문서로 저장하고 내보내면서 별도 레벨 편집기 없이도 배치를 이어갈 수 있는 작업 흐름을 마련했습니다.
Castle Game Engine의 Object Pascal 입문서가 스트림 기반 입출력, 제네릭 컨테이너, 객체 복사를 설명합니다. FPC와 Delphi 사이의 호환성을 고려한 컨테이너 선택부터 TPersistent.Assign의 상속 규칙까지 코드 예제로 다룹니다.
CedarDB 개발자가 1993년판 Doom의 게임 로직과 렌더러를 SQL로 구현했습니다. 게임은 데이터베이스 안에서 35Hz로 작동하고, Ryzen 노트북에서 장면에 따라 초당 35~60프레임을 그립니다. 글은 BSP 렌더링과 SQL 성능, 트랜잭션을 활용한 멀티플레이 구현 과정을 설명합니다.
3D 카메라의 원리를 x와 y를 깊이 z로 나누는 원근 투영에서 출발해 설명합니다. 단순한 나눗셈이 perspective projection matrix와 전체 그래픽 파이프라인의 한 단계라는 점을 수식과 인터랙티브 예제로 보여줍니다.
개발자는 GBA·e-Reader용 게임 Eridin을 PC판과 함께 개발하고 있습니다. e-Reader 카드 제조 실패를 대비하면서 C 기반 엔진에 플랫폼별 API 구현을 나눴고, PC판에는 같은 240×160 화면 구성 위에 고해상도 렌더링과 부드러운 스크롤을 더합니다.
N64 게임 Ogre Battle 64를 N64Recomp 툴체인으로 네이티브 PC 실행 파일로 옮기는 프로젝트입니다. 함수 재컴파일 기준 99.05%까지 진행됐고 현재 플레이와 모드 제작이 가능합니다. 원본 ROM은 포함하지 않으며 사용자가 직접 준비해야 합니다.