![](https://blog.kakaocdn.net/dn/rPjSt/btslOBzMfSX/I8KsUhGX2WfeZuV2Vnd2mk/img.png)
광대한 필드를 탐색하면서 적과 싸우거나 아이템을 만들거나 건물을 건축하는 등 높은 자유도를 가진 샌드박스계 2D 액션 게임이 '테라리아'입니다.
이 「테라리아」에서는 다양한 소재를 사용해 회로를 만들 수 있습니다만, 방대한 회로를 구축해 32bit의 컴퓨터를 재현해, 게임을 프로그래밍하거나 3D모델을 렌더링 하는 영상이 공개되었습니다.
I Made a 32-bit Computer Inside Terraria - YouTube
테라리아에는 회로를 작동시키는 신호를 출력하는 '스위치', 신호를 전달하는 '와이어', 신호를 받아 작동하는 '도어'와 '조명' 등의 아이템이 준비되어 있어, 거점을 만든 후 다양한 아이템의 동작을 자동화할 수 있습니다.
![](https://blog.kakaocdn.net/dn/bkKshg/btslSrplnZ5/IUZfDqF87ChVzEef7LbNo1/img.png)
이러한 장치를 이용하여 스위치의 ON/OFF 상태를 '0' 또는 '1'로 보는 논리 연산이 가능했다고 하는 것이, 32bit 컴퓨터를 테라리아에 재현한 From Scratch 씨입니다.
From Scratch 씨는 테라리아의 본 게임은 뒷전으로 하고, 회로를 사용해 놀고 있었다고 합니다. ㅋㅋ
![](https://blog.kakaocdn.net/dn/u95fK/btslMnazchS/Fb5ZNq2JscjEUGKWSuOKVK/img.png)
약 3개월에 걸쳐 회로를 계속 연결한 From Scratch 씨.
![](https://blog.kakaocdn.net/dn/rUvnD/btslSpykgSb/LAONDVJ4bd3LE6mVjUlCXK/img.png)
증설에 이어 증설
![](https://blog.kakaocdn.net/dn/cyIe1o/btslV137s17/mhKoH1JhDYKUbwOwwdbLpk/img.png)
이 과정에서 디지털 로직과 CPU 설계에 대한 방대한 양의 지식을 테라리아를 통해 배웠다고 From Scratch 씨는 말합니다.
![](https://blog.kakaocdn.net/dn/dxLCAT/btslUNE2tZJ/zNLseARrTsaG4IvOMbklNK/img.png)
이 회로를 실제로 시험하는 데 있어서 고생한 것이 「디버그」였다는 것. 회로는 모두 테라리아의 아이템으로 만들어져 있기 때문에 외형이 번잡하고, 어딘가에서 연결 미스가 있을 경우, 찾는데 매우 고생했다고 합니다.
![](https://blog.kakaocdn.net/dn/YXltG/btslRmCnl4A/1FCA3rKtkDo10XW5vdolSK/img.png)
와이어의 종류를 1개 틀리는 것만으로도 회로 전체가 먹통이 된 경우도 있었습니다. 이 작업을 From Scratch 씨는 "건초 더미에서 건초 모양을 한 바늘 찾기와 같았다"라고 회상했습니다.
![](https://blog.kakaocdn.net/dn/bCcB41/btslR1xyp7B/2LxcSvLUN2cgd0dhZelWFk/img.png)
게다가 테라리아가 「광대한 월드」에 최적화되어 있지 않은 것에 의한 문제도 발생했다고 합니다. 이 문제는 너무 긴 와이어의 신호 전송은 속도가 느려지는 형태로 나타났다고 합니다.
![](https://blog.kakaocdn.net/dn/kEYio/btslR2pHYwk/OtTCKxbAqtwpapJb3XVxjk/img.png)
와이어의 신호 전달 구조는 이렇게 신호를 받은 와이어는 먼저 인접한 픽셀을 체크하고, 어느 픽셀에 신호를 전달할 수 있는 객체가 있으면 전달을 실행하는 움직임을 합니다.
![](https://blog.kakaocdn.net/dn/ej0AFP/btslRmI5Pip/Hxwkpqh57gONfSH6KGgAXK/img.png)
1픽셀씩 신호를 전달하는 구조상, 와이어가 길어질수록 신호 전달 속도도 저하되어 버립니다. 이것을 개선하기 위해서는 와이어를 짧게 다시 연결할 수밖에 없었다고 합니다.
![](https://blog.kakaocdn.net/dn/5bS6J/btslT0LpqKV/yXA6qWdotIlk2h5qFIAE7K/img.png)
From Scratch 씨가 테라리아 내에서 프로그래밍한 것이, 초기의 컴퓨터 게임으로서 유명한 「폰」입니다. 테라리아 위에서 캐릭터를 움직이면 테라리아 위에 배치한 디스플레이로 폰을 플레이할 수 있었다는 것.
![](https://blog.kakaocdn.net/dn/djGUEG/btslS5GcSTU/3kGQUGVtAK945KyEz7VP2k/img.png)
셀이 탄생 · 소멸을 반복하는 시뮬레이션 게임 「라이프 게임」도 만들었습니다. 덧붙여 탄생 · 소멸의 속도는 상당히 느리고, 영상은 240배속이라고 합니다.
![](https://blog.kakaocdn.net/dn/kXBlj/btslTTezU3J/ArcxGr7UcMbHKzqyZSYQH1/img.png)
X, Y, Z 좌표를 지정하여 3D의 세계를 렌더링 하는 시스템도 작성. 이것도 동작 속도는 느리고, 1 프레임을 렌더링 할 때마다 45초나 걸린다는 것.
![](https://blog.kakaocdn.net/dn/boQI0D/btslT0Sb6PN/7F1lX0tQmBT8WITV0Abs7k/img.png)
From Scratch 씨는 "테라리아 안에서 테라리아를 실행하는 것"을 목표로 개발을 계속하고 있습니다.
이 프로젝트는 GitHub에 공개되어 있습니다.
GitHub - misprit7/computerraria: A fully compliant RISC-V computer made inside the game Terraria
https://github.com/misprit7/computerraria
GitHub - misprit7/computerraria: A fully compliant RISC-V computer made inside the game Terraria
A fully compliant RISC-V computer made inside the game Terraria - GitHub - misprit7/computerraria: A fully compliant RISC-V computer made inside the game Terraria
github.com
'트렌드 이슈 · 토픽' 카테고리의 다른 글
「매직 : 더 개더링(MtG)」단 1장 뿐인 '절대반지'를 발견, 그 가치는 무려 27.5억 (3) | 2023.07.03 |
---|---|
페이스북과 인스타그램의 추천 콘텐츠는 어떻게 선출되고 있는지 Meta가 자세히 설명 (4) | 2023.07.03 |
Apple Watch를 기계식 시계로 개조 (4) | 2023.07.03 |
헤드폰 + 공기 청정기라는 이색 조합&기발한 외관이 돋보이는 「다이슨 Zone」 (6) | 2023.06.30 |
「내셔널 지오그래픽」이 마지막으로 남은 작가를 해고 (3) | 2023.06.30 |
혼다 오토바이를 개조해, 한 번의 급유로 4183km를 주행하는 세계 신기록을 달성 (6) | 2023.06.30 |
음성 인증 시스템을 6회 시도로 거의 100% 돌파할 수 있는 공격법 발견 (3) | 2023.06.30 |
아마존 창고의 자율형 운반 로봇은 75만 대 (3) | 2023.06.29 |