/cub3D

레이캐스팅을 이용한 1인칭 시점의 3D 미로 프로그램

Primary LanguageC

cud3D

레이캐스팅 원리를 이용하여 3D 그래픽으로 표현한 1인칭 시점의 미로입니다. 최초의 FPS이자 세계적으로 유명한 Wolfenstein 3D 게임에서 영감을 받았습니다.

Features

  • 자연스러운 움직임과 벽 충돌 감지
  • 동서남북에 다른 벽 텍스쳐를 디스플레이
  • description file을 특정 룰에 따라 검사하고 파싱하여 미로 생성

Preview

image

Usage

make && ./cub3D descriptionfile/2.cub 혹은 description file 규칙에 따라 새로운 맵을 직접 생성하여 프로그램 실행 시 첫 번째 인자에 넣어주세요.

Controls

동작
왼쪽 보기
오른쪽 보기
W 앞으로 이동
A 왼쪽으로 이동
S 뒤로 이동
D 오른쪽으로 이동
ESC 프로그램 종료

Peer Reviews

image image image

Blog Post

코드에 대한 자세한 설명이 Lode's Computer Graphics Tutorial: Raycasting에 대한 조금 긴 사설에 있습니다.