일상
프레넬 방정식 적용해보기 본문
이전 포스팅에서 말한대로 Raytracing in Oneweekend 에서는 프레넬 방정식에 대해 다루지 않아서
직접 작성해보면 좋을 것 같아서 작성을 해 보았다.
초기 생각은 간단했다.
1. 유리공에 Ray가 hit 하면 Reflaction ray, Reflection ray 둘로 나뉘어 질 것이다.
2. Reflection ray를 계산하고(reculsive), color를 구한다.
3. Reflaction ray를 계산하고(reculsive), color를 구한다.
4. 프레넬 방정식 계수를 곱한 후 2, 3에서 구한 color에 곱해준다
생각은 참 간단했다. 그래서 그것에 대한 결과는??
그렇다.. 망해버렸다. 참고로 중간 까만공이 원래는 유리공이었어야했다.
코드를 수정해보고 디버깅도 해보고 다 해봤지만 이 결과가 계속 나오게 되었다.
이런 결과가 나오게 된 원인은..
1. Ray Tracing in One Weekend의 소스코드를 제대로 숙지 못한것 같다
2. 너무 급하게 짜려고 하다보니 전체적으로 먼저 생각을 하지 않고 그때그때마다 생각나는데로 코딩을 하였다.
3. c++의 이해도가 아직 많이 부족한것 같다
특히 1, 2번의 이유가 많이 큰 것 같다. 무언가 결과를 내고 싶은 마음이 너무 큰 나머지 너무 성급하게 진행하였다
원인의 결과를 파악했으니 다시 한번 진행해봐야겠다.
시간이 낭비된것같아서 마음이 아프다..
'computer graphics' 카테고리의 다른 글
Cornell box 만들어보기 (0) | 2021.11.06 |
---|---|
Fresnel Coefficient 적용해보기 -03 (0) | 2021.10.08 |
Fresnel Coefficient 적용해보기 -02 (0) | 2021.10.03 |
Fresnel Coefficient 적용해보기 -01 (0) | 2021.09.30 |
Ray Tracing in One Weekend (0) | 2021.09.28 |
Comments