레이캐스팅 원리를 이용하여 3D 그래픽으로 표현한 1인칭 시점의 미로입니다. 최초의 FPS이자 세계적으로 유명한 Wolfenstein 3D 게임에서 영감을 받았습니다.
- 자연스러운 움직임과 벽 충돌 감지
- 동서남북에 다른 벽 텍스쳐를 디스플레이
- description file을 특정 룰에 따라 검사하고 파싱하여 미로 생성
make && ./cub3D descriptionfile/2.cub
혹은
description file 규칙에 따라 새로운 맵을 직접 생성하여 프로그램 실행 시 첫 번째 인자에 넣어주세요.
키 | 동작 |
---|---|
← |
왼쪽 보기 |
→ |
오른쪽 보기 |
W | 앞으로 이동 |
A | 왼쪽으로 이동 |
S | 뒤로 이동 |
D | 오른쪽으로 이동 |
ESC | 프로그램 종료 |
코드에 대한 자세한 설명이 Lode's Computer Graphics Tutorial: Raycasting에 대한 조금 긴 사설에 있습니다.