Skip to content

LimChanyeop/miniRT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

miniRT

42Cursus RayTracing Subject

레이트레이싱을 활용하여 다양한 도형을 시각화하는 프로그램입니다.

prerequisite

MAC OS 환경에서 구동됩니다.

Usage

ex) ./miniRT ./scene/test.rt

프로그램은 첫번째 인자로 장면.rt 파일을 받습니다.
make 명령어를 입력하면 빌드가 완료되며 실행파일인 miniRT가 생성됩니다.
.rt에는 창과 렌더링 된 이미지의 size가 포함됩니다.
miniRT 실행파일은 아무 양의 정수인 size로 렌더링 할 수 있습니다.

RT file format

  • 각 타입은 1개 이상의 \n(뉴라인)으로 구분할 수 있습니다.
  • 각 정보 타입은 하나 이상의 ‘ ‘(공백)으로 분리 할 수 있습니다.
  • 대문자로 정의 된 요소는 장면에서 한 번만 선언 할 수 있습니다.
  • 각 요소의 첫 번째 정보는 type identifier(1 ~ 2 개의 문자로 구성됨)와 그에 따르는 각 개체에 대한 모든 구체적인 정보가 순서에 맞게 적혀있습니다.

아래는 유형 식별자(R,A,c,l,sp,pl,sq,cy,tr)와 그에 따라 각 함수에서 파싱되어야 할 요소들 입니다.

  • R 해상도
    x
    y

  • A 주변광
    밝기 [0.0 ~ 1.0]
    색 R,G,B [0 ~ 255]

  • c 카메라
    시각 view point x,y,z
    3d normalized orientation vector [-1 ~ 1] x,y,z
    화각 FOV [0 ~ 180]

  • l 스포트라이트
    좌표 x,y,z
    밝기 [0.0 ~ 1.0]
    색 R,G,B [0 ~ 255]

  • sp 구
    구의 중심점 좌표 x,y,z
    지름
    색 R,G,B [0 ~ 255]

  • pl 평면
    좌표 x,y,z
    3d normalized orientation vector [-1 ~ 1] x,y,z
    색 R,G,B [0 ~ 255]

  • sq 사각형
    사각형의 중심점 좌표 x,y,z
    3d normalized orientation vector [-1 ~ 1] x,y,z
    변의 길이
    색 R,G,B [0 ~ 255]

  • cy 원기둥
    좌표 x,y,z
    3d normalized orientation vector [-1 ~ 1] x,y,z
    원기둥 지름
    원기둥 높이
    색 R,G,B [0 ~ 255]

  • tr 삼각형
    꼭지점 1의 좌표 x,y,z
    꼭지점 2의 좌표 x,y,z
    꼭지점 3의 좌표 x,y,z
    색 R,G,B [0 ~ 255]

Display Example image

About

42Cursus RayTracing Subject

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published