POV-Ray
위키백과, 우리 모두의 백과사전.
| 개발자 | POV 팀 |
|---|---|
| 최근 버전 | 3.6.2 / 2009년 06월 01일[1] |
| 미리보기 버전 | 3.7 RC 6 |
| 프로그래밍 언어 | C++ |
| 운영 체제 | 크로스 플랫폼 |
| 종류 | 레이 트레이서 |
| 라이선스 | POV-Ray 라이선스 |
| 웹사이트 | www.povray.org |
POV-Ray는 다양한 컴퓨터 플랫폼에서 사용할 수 있는 레이 트레이싱 프로그램이다. 원래는 David Kirk Buck와 Aaron A. Collins가 작성한 DKBTrace 기반이었다. 만든이 Alexander Enzmann가 공헌하였던 초기 Polyray 레이트레이서로부터의 영향도 있었다. POV-Ray는 소스 코드가 공개되어 있는 프리웨어이다.
목차 |
기능 [편집]
POV-Ray는 만들어진 이후로 지금에 이르러 완성도가 매우 높다. 최근에 나온 소프트웨어 버전은 다음의 기능을 포함하고 있다:
- 매크로와 루프를 지원하는 튜링 완전 장면 서술 언어 (SDL)[2]
- 미리 준비된 장면, 텍스처, 객체
- 수많은 기하학 원시 데이터와 CSG(구조적 고체 기하학) 지원
- 여러 종류의 광원
- 안개, 매체(연기, 구름)와 같은 대기 효과
- 포톤 매핑을 사용한 반사, 굴절, 화선
- 라디오시티 (radiosity)
- 주름, 울퉁불퉁한 모습, 물결과 같은 표면 패턴 (절차적 텍스처와 범프 매핑 사용)
- TGA, PNG, JPEG (입력만)로 텍스처, 랜더 출력 지원
- 확장된 사용자 문서
SDL로 작성한 프로그래밍 예 [편집]
아래의 예는 POV-Ray가 사용하는 SDL의 예제로 랜더링할 장면을 설명한다. 카메라, 광원, 단순한 상자 모양, 변형 효과, 회전 등의 사용을 증명하고 있다.
#version 3.6; #include "colors.inc" global_settings { assumed_gamma 1.0 } background { color rgb <0.25, 0.25, 0.25> } camera { location <0.0, 0.5, -4.0> direction 1.5*z right x*image_width/image_height look_at <0.0, 0.0, 0.0> } light_source { <0, 0, 0> color rgb <1, 1, 1> translate <-5, 5, -5> } light_source { <0, 0, 0> color rgb <0.25, 0.25, 0.25> translate <6, -6, -6> } box { <-0.5, -0.5, -0.5> <0.5, 0.5, 0.5> texture { pigment { color Red } finish { specular 0.6 } normal { agate 0.25 scale 1/2 } } rotate <45,46,47> }
아래의 예는 변수 선언, 할당, 비교, while 루프를 사용한 스크립트 부분이다.:
#declare the_angle = 0; #while (the_angle <= 360) box { <-0.5, -0.5, -0.5> <0.5, 0.5, 0.5> texture { pigment { color Red } finish { specular 0.6 } normal { agate 0.25 scale 1/2 } } rotate the_angle } #declare the_angle = the_angle + 45; #end
주석 [편집]
- ↑ Download. POV-Ray (2009년 6월 1일). 2010년 4월 10일에 확인.
- ↑ http://local.wasp.uwa.edu.au/~pbourke/modelling_rendering/scc3/final/