Chapter 3-2: Rays, a simple camera, and background

This is the code of main.cpp

You must first include iostream and fstream first on top of this code.


#include "ray.h"

vec3 color(const ray& r) {

vec3 unit_direction = unit_vector(r.direction());
float t = 0.5*(unit_direction.y() + 1.0);
return (1.0 - t)*vec3(1.0, 1.0, 1.0) + t*vec3(0.5, 0.7, 1.0);

}

int main() {

std::ofstream fout;
fout.open("D:\\RayTracer\\code0\\img\\Chap3.ppm");

int nx = 200;
int ny = 100;

fout << "P3\n" << nx << " " << ny <= 0; j--) {
for (int i = 0; i < nx; i++) {

float u = float(i) / float(nx);
float v = float(j) / float(ny);

ray r(origin, lower_left_corner + u*horizontal + v*vertical);

vec3 col = color(r);

int ir = int(255.99*col[0]);
int ig = int(255.99*col[1]);
int ib = int(255.99*col[2]);

fout << ir << " " << ig << " " << ib << "\n";
}
}

fout.close();

return 0;
}

This code outputs following image. 

chap3

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중