-
TIGSource 포럼
- TIGSource는 공식 Discord 서버를 개설함.
- 포럼에는 다양한 주제와 토론이 있으며, 많은 회원들이 참여 중임.
-
Return of the Obra Dinn
- 게임의 그래픽 스타일과 디더링 문제에 대한 토론이 진행 중임.
- 높은 해상도로 렌더링 후 다운스케일링하여 깜박임 문제를 해결하려는 시도가 있음.
- 디더링 패턴을 고정하여 움직임에 안정성을 부여하는 방법이 논의됨.
-
디더링 프로세스
- Obra Dinn은 8비트 그레이스케일로 렌더링 후 1비트로 변환하는 과정을 거침.
- 두 가지 디더링 패턴을 사용하여 다양한 시각적 효과를 제공함.
- 움직이는 이미지에서는 디더링 패턴이 문제를 일으킬 수 있음.
-
디더링 안정화
- 디더링 패턴을 지오메트리에 고정하여 안정성을 높이는 방법이 연구됨.
- 여러 가지 매핑 방법을 시도하여 최적의 결과를 찾으려는 노력이 있음.
-
결론
- 디더링 문제 해결에 많은 시간이 소요되었으나, 결과적으로 게임의 시각적 스타일을 유지하면서 문제를 해결함.
- 최종 게임은 두 가지 디스플레이 모드를 제공할 예정임.
오브라 딘 1비트 디더링 프로세스 안정화 (2017)
(forums.tigsource.com)댓글과 토론
Hacker News 의견들
-
그래픽 프로그래밍을 10년 넘게 했는데도 게임을 플레이할 때는 그걸 알아채지 못했음. 게임의 전체적인 시각 언어를 생각하면 100시간을 정말 잘 쓴 셈이라고 봄
이 정도면 비사실적 렌더링의 시간적 일관성 주제로 SIGGRAPH에 냈어도 됐을 듯함- 장면을 둘러볼 때 디더링 안정성은 확실히 눈에 띄었지만, 그걸 위해 이렇게 많은 작업이 들어갔을 줄은 전혀 몰랐음. 이 글을 읽고 나니 앞으로 훨씬 더 감탄하게 될 것 같음
-
모르는 사람을 위해 덧붙이면, Return of the Obra Dinn과 Papers, Please는 둘 다 Lucas Pope의 게임이고, 여러 상을 받은 확실한 고전으로 평가받음
평소 게임을 즐기는 편이 아니어도 확인해볼 가치가 큼. 둘 다 전형적인 게임이 아님- Papers, Please는 걸작임. Obra Dinn은 내가 뭔가 실수한 것 같은데, 다른 단서와 맞춰보기엔 너무 적은 이야기만 나온 뒤 더 이상 단서를 주지 않았음
- Papers, Please는 내 역대 최애 게임 중 하나임. 핵심 정보를 외우려고 플래시카드까지 만들고, 심사 실력을 높이려고 반복 훈련했음
그렇게까지 하게 만든 게임은 많지 않음. Obra Dinn은 미술 스타일이 끌리지 않아 해보지 않았지만, 추리 게임을 좋아한다면 Curse of the Golden Idol도 확인해볼 만함. 창의성 면에서 이 게임들과 가까운 편이고 꽤 재미있음 - 그의 웹사이트에는 게임잼에서 만든 멋진 프로젝트가 많이 있음. 정말 재미있고 창의적인 아이디어들이고, 그중 몇 개는 정식 게임이 됨
- Wolfenstein 3D 때부터 1인칭 슈팅 게임을 해왔지만, Return of the Obra Dinn만이 유일하게 멀미를 일으킨 게임이었음
그래도 끝까지 깼음
-
강한 1비트 디더링은 정말 흥미로운 주제임. 2D에서도 여러 방식이 있고, 각각 장단점과 절충이 있음
80년대 컴퓨팅 경험의 핵심이었던 일이 현대 하드웨어에서는 오히려 꽤 까다롭다는 점이 놀라움. 내 프로젝트[0]에서는 오프스크린 픽셀과 브라우저가 제공하는 캔버스를 1:1로 매핑하는 게 거의 불가능하다는 걸 알게 됨
[0] https://sheep.horse/2023/1/improved_web_component_for_pixel-...- 꽤 최신 nVidia 카드가 해상도 전환에 몇 초씩 걸리는데, 35년 된 Atari는 화면 새로고침 한 번 안에서도 해상도를 여러 번 바꿀 수 있었다는 게 아직도 웃김
예전에 만든 간단한 게임은 화면의 3/4은 저해상도 컬러 표시를 쓰고, 아래쪽은 더 많은 텍스트를 넣으려고 4색에 가로 해상도 2배를 썼음. 그래서 해상도 전환을 초당 120번 하면서도 CPU가 크게 느려지지 않았음
- 꽤 최신 nVidia 카드가 해상도 전환에 몇 초씩 걸리는데, 35년 된 Atari는 화면 새로고침 한 번 안에서도 해상도를 여러 번 바꿀 수 있었다는 게 아직도 웃김
-
제안된 접근법 중 어느 것도 잘 먹히지 않는 것 같고, 이 문제는 보기보다 훨씬 복잡해 보임
제대로 작동할 가능성이 있는 건 “프랙털” 디더 패턴으로 확대·축소가 부드럽고 스케일 불변이 되게 하는 것, 카메라 이동과 객체 이동이 모두 제대로 되도록 텍셀 공간에서 처리하는 것, 쌍선형 필터링이나 디더 패턴의 초표본 렌더링 뒤 화면 공간에서 계산 셰이더로 일종의 오차 확산 패스를 거는 방식일 듯함
다만 실제로 잘 되는지는 확신이 없음. 충분하지 않다면 화면 공간에서 단순하게 처리한 뒤 결과를 해상도를 보존하는 방식으로 텍셀 공간에 역매핑하고, 다음 프레임에서 텍셀 공간 정보를 이용해 호환되는 화면 공간 해를 만든 뒤 다시 텍셀 공간에 매핑하는 식으로 런타임에 텍셀별 프랙털 패턴을 점진적으로 쌓는 대안도 가능해 보임. 이게 최선일 수 있지만 메모리, 계산량, 복잡도 면에서 매우 비싸 보임- 지난주 기준으로 프랙털 접근법이 꽤 잘 작동하게 만들었음
https://x.com/dgant/status/1851840125065453894
https://x.com/dgant/status/1851835968342446576?t=kCUSWCtJEc_...
동작 방식은 월드 공간 디더링을 쓰고, 삼평면 매핑된 표면에 2D 디더링을 적용하며, 깊이에 따라 좌표 스케일을 골라 디더 패턴이 [1px, 2px) 범위에 오게 하고, 충분히 먼 표면은 구면 좌표로 칠하는 식임. 깊이 임계값에서 일부 다시 칠해지지만 실제로는 크게 거슬리지 않음
- 지난주 기준으로 프랙털 접근법이 꽤 잘 작동하게 만들었음
-
관심 있는 사람을 위해 좀 더 파고들어 보니, 그가 이 주제로 예전에 올린 개발 로그들을 찾았음 [1] [2]
특히 Scale2X라는 업스케일링 알고리즘을 다룬 부분이 눈에 띄었고 꽤 멋짐 [3]
[1] https://forums.tigsource.com/index.php?topic=40832.260
[2] https://forums.tigsource.com/index.php?topic=40832.msg121719...
[3] https://www.scale2x.it -
이 사람이 포럼에 모든 걸 공유한다는 점이 정말 좋음
Papers, Please의 초기 작업을 봤던 기억이 나는데, 작업 과정을 공유하고 피드백에 노출시키는 데는 뭔가 멋진 점이 있음- 작업하는 동안 어느 정도 관객이 있어야 하는 것 같음. 아니면 허공에 소리치는 느낌이 듦
- Tigsource는 정보와 디자인 문서의 보물창고임. Spelunky와 Dead Cells 같은 유명 게임도 많이 거기서 탄생했음
-
지금까지 본 디더링 글 중 최고 수준임. 나는 Return to Dark Castle의 흑백 디더링 작업을 했음
Atkinson 디더링을 쓰고 싶었지만, 인접 픽셀 값이 서로 흘러들어가는 방식 때문에 셰이더에서 구현하기 어려웠고 당시에는 스트레스와 피로도 심했음. 패턴을 장면의 오프셋에 고정한다는 생각은 못 했던 것 같아서, 지하묘지나 헬리콥터 팩처럼 스크롤되는 레벨에서는 반짝임이 있을 듯함. 어쩌면 했을지도 모르지만 기억이 안 남. 어쨌든 훌륭함 -
최근 GOG에서 받아 5K Studio Display로 플레이해보려 했는데, 아름다운 픽셀들이 흐려지지 않는 결과를 얻을 수 없었음. 정말 아쉬움
설정 메뉴는 전부 들어가 봤음- 게임 해상도의 정수 배율이 되는 해상도로, 화면을 레터박스 처리해서 표시하는 방법을 찾아야 함
-
재미로 덧붙이면, 이 게임의 사운드트랙은 여기 있음
https://www.youtube.com/watch?v=8qvdAWLcPyU