# cub3d

42seoul:: <cub3d> 레이케스팅을 활용한 그래픽 디자인
Subject 링크최초의 fps게임인 Wolfenstein 3D와 같은 프로그램을 레이케스팅이라는 랜더링 기술을 활용하여 그래픽 디자인을 구현해보는것이 목표이다.플레이어를 기준으로 시야각 범위에서 무수히 많은 빛을 쏘아서 벽을 탐지하는 기법이다. 이때 벡터를 활용하여

[cub3d]레이 캐스팅
레이캐스팅은 3D모델을 점근선 등의 요소를 활용해 2D 화면으로 구현하는 것이고, 레이트레이싱은 빛 반사와 관련한 질감을 구현하는 것이다. 두개가 합쳐져서 물리엔진을 이룬다. cub3d는 이 중 레이캐스팅과 관련한 것이다.

Lode's Computer Graphics Tutorial: Raycasting에 대한 조금 긴 사설
왜 수직거리를 구해야만 할까? 0으로 나눠도 될까? 막힌 벽인지를 결정하는 코드, 정말 괜찮을까? 둘이서 한 달 동안 튜토리얼과 씨름해보았다.
cub3d
고전게임 <Wolfenstein 3D>에서 영감을 받은 과제로 42 교육과정에서 제공하는 그래픽 라이브러리 mlx를 이용해 해당 게임의 일부를 구현하는 과제이다.2D 엔진인 mlx를 사용해 3D 처럼 보이도록 화면을 출력하는 것을 목표로 한다.2D 화면을 3D 처

[so_long, cub3D] Minilibx(mlx) 톺아보기
해당 글은 minilibx의 man page를 기반으로 작성하였습니다 Minilibx 란? 42에서 Unix/Linux 기반의 X-Window/X11이나 MacOS 기반의 AppKit 관련 지식 없이도 쉽게 graphical software를 만들 수 있도록 제공하

cub3D 구현과정
Cub3D 1. Initialize 항상 들고다닐 구조체(필요한 모든 정보를 담고 있음) 내부의 변수들 0으로 초기화 Map 정보 받을 linked list 생성, 초기화 (malloc) buf, texture 배열 생성, 초기화 (ft_calloc)

Raycasting이란? (cub3D)
레이캐스팅은 2차원 맵에서 3차원의 원근감을 구현하기 위한 렌더링 기술이다. 나무위키의 레이캐스팅에 대한 정의는 다음과 같다.레이캐스팅은 가상의 공간에 보이지 않는 빛(Ray)을 투사해 빛에 닿는 표면을 파악하는 기술이다.레이캐스팅이 게임에 처음 활용된 곳이 바로 FP
Cub3D chapter3 : Raycast 2d 구현하기
set map2차원 배열로 맵 데이터를 저장한 다음 스크린에 2d 벽을 그릴것이다.draw_rectanglesdraw_rectangle(i, j) 함수를 이용해 2차원배열의 인덱스가 1일 때 tile_size \* tile_size 만큼의 정사각형을 만든다.
Cub3d Chapter1 : Minilibx 사용법
이번 mlx 사용법은 제가 코딩에서 사용한 mlx함수들 위주로 정리 할 것입니다.mlx함수에 대해 더 알고싶으시다면 yeosong님의 git을 참고해주세요.void \*mlx_init()mlx함수들을 사용하기에 앞서 반드시 필요한 함수.디스플레이와 내 소프트웨어를 연결

42seoul Cub3d review!
Minilibx 함수는 뭐가 있을까?raycasting을 알아보기에 앞서 삼각비에 대해 얄팍하게 알아보자!!.cub 파일의 구조.cub 파일에 있는 데이터 저장하기map data 읽기mlx 함수를 이용한 window와 image 세팅player 데이터 setting
cub3d (1 일차) - MiniLibX
윈도우 인터페이스 라이브러리다음내용들은 man의 내용을 그대로 옮긴것임To use MiniLibX functions, you may need to link your software with several libraries, including the MiniLibX