|
|
It is possible to use a background image in POV-Ray. It requires some code
based on (I'm pretty sure) John VanSickles work:
#local CamE = <0.0,0,3.0>; //where the camera's look_at is
#local CamL = <1,0.5,-1>; //where the camera's location is
#local CamZ = 2; //the amount of camera zoom you want
#local CamA = 4/3; // camera aspect ratio
#local CamS = <0,1,0>;
#local CamD = vnormalize(CamE-CamL);
#local CamR = vnormalize(vcross(CamS,CamD));
#local CamU = vnormalize(vcross(CamD,CamR));
#local cam_dir = CamD * CamZ;
#local cam_right = CamR * CamA;
#declare fz = vlength(cam_dir);
#declare fx = vlength(cam_right)/2;
#declare fy = vlength(CamU)/2;
#local nz = vnormalize(CamE-CamL);
#local nx = vnormalize(vcross(CamS,nz));
#local ny = vcross(nz,nx);
camera {
location CamL
up CamU
right CamR*CamA
direction CamD*CamZ
}
union{
triangle { <fx,fy,0> <-fx,fy,0> <-fx*1.1,-fy,0> }
triangle { <fx,fy,0> <fx,-fy,0> <-fx*1.1,-fy,0> }
texture { //texture information }
translate fz*z
scale 2000
matrix <nx.x,nx.y,nx.z,
ny.x,ny.y,ny.z,
nz.x,nz.y,nz.z,
CamL.x,CamL.y,CamL.z>
no_shadow }
The scale can be anything. This should keep an image the same size when it's
rendered. Just keep track of where those triangles are, you have to place the
image map carefully.
Josh
Hartmut Wagener wrote:
> Here is a picture made several months ago. I had not found a function for a
> background-image, so the image and the fake-stuff had to be put before the
> camera. The fake-stuff is a function in pov-ray (some fourier-functions).
> The reason to fake this was to put something like a "alien-head" to the
> data-line, but someone with photo-shop was faster ...
>
> Hartmut
>
> http://www.killozap.de
>
> [Image]
Post a reply to this message
|
|