|
|
And really, with all that's been developed and provided by many contributors and
developers, you can get started THIS fast:
(copy and paste the below into a new scene:)
// So first, I just use the Insert Menu to paste in
// Ready Made Scenes > Basic Scene M2
// Which gives me everything I need to render a workspace
// Boom. Done in like 5 seconds. Save as BE_Chess.pov
// PoVRay 3.7 Scene File " ... .pov"
// author: ...
// date: ...
//------------------------------------------------------------------------
#version 3.7;
global_settings{ assumed_gamma 1.0 }
#default{ finish{ ambient 0.1 diffuse 0.9 }}
//------------------------------------------------------------------------
#include "colors.inc"
#include "textures.inc"
#include "glass.inc"
#include "metals.inc"
#include "golds.inc"
#include "stones.inc"
#include "woods.inc"
#include "shapes.inc"
#include "shapes2.inc"
#include "functions.inc"
#include "math.inc"
#include "transforms.inc"
//------------------------------------------------------------------------
#declare Camera_0 = camera {/*ultra_wide_angle*/ angle 15 // front view
location <0.0 , 1.0 ,-40.0>
right x*image_width/image_height
look_at <0.0 , 1.0 , 0.0>}
#declare Camera_1 = camera {/*ultra_wide_angle*/ angle 14 // diagonal view
location <20.0 , 15.0 ,-20.0>
right x*image_width/image_height
look_at <0.0 , 1 , 0.0>}
#declare Camera_2 = camera {/*ultra_wide_angle*/ angle 90 //right side view
location <3.0 , 1.0 , 0.0>
right x*image_width/image_height
look_at <0.0 , 1.0 , 0.0>}
#declare Camera_3 = camera {/*ultra_wide_angle*/ angle 90 // top view
location <0.0 , 3.0 ,-0.001>
right x*image_width/image_height
look_at <0.0 , 1.0 , 0.0>}
#declare Camera_BE = camera {
location <0.0, 5.0, -10.0>
right x*image_width/image_height
look_at <0.0 , 0.0 , 0.0>
}
camera{Camera_BE}
//------------------------------------------------------------------------
// sun -------------------------------------------------------------------
light_source{<1500,2500,-2500> color White}
// sky -------------------------------------------------------------------
sky_sphere{ pigment{ gradient <0,1,0>
color_map{ [0 color rgb<1,1,1> ]//White
[0.4 color rgb<0.14,0.14,0.56>]//~Navy
[0.6 color rgb<0.14,0.14,0.56>]//~Navy
[1.0 color rgb<1,1,1> ]//White
}
scale 2 }
} // end of sky_sphere
//------------------------------------------------------------------------
//------------------------------ the Axes --------------------------------
//------------------------------------------------------------------------
#macro Axis_( AxisLen, Dark_Texture,Light_Texture)
union{
cylinder { <0,-AxisLen,0>,<0,AxisLen,0>,0.05
texture{checker texture{Dark_Texture }
texture{Light_Texture}
translate<0.1,0,0.1>}
}
cone{<0,AxisLen,0>,0.2,<0,AxisLen+0.7,0>,0
texture{Dark_Texture}
}
} // end of union
#end // of macro "Axis()"
//------------------------------------------------------------------------
#macro AxisXYZ( AxisLenX, AxisLenY, AxisLenZ, Tex_Dark, Tex_Light)
//--------------------- drawing of 3 Axes --------------------------------
union{
#if (AxisLenX != 0)
object { Axis_(AxisLenX, Tex_Dark, Tex_Light) rotate< 0,0,-90>}// x-Axis
text { ttf "timrom.ttf", "x", 0.15, 0 texture{Tex_Dark}
rotate<20,-45,0> scale 0.75 translate <AxisLenX+0.05,0.4,-0.10>
no_shadow}
#end // of #if
#if (AxisLenY != 0)
object { Axis_(AxisLenY, Tex_Dark, Tex_Light) rotate< 0,0, 0>}// y-Axis
text { ttf "timrom.ttf", "y", 0.15, 0 texture{Tex_Dark}
rotate<10,0,0> scale 0.75 translate <-0.65,AxisLenY+0.50,-0.10>
rotate<0,-45,0> no_shadow}
#end // of #if
#if (AxisLenZ != 0)
object { Axis_(AxisLenZ, Tex_Dark, Tex_Light) rotate<90,0, 0>}// z-Axis
text { ttf "timrom.ttf", "z", 0.15, 0 texture{Tex_Dark}
rotate<20,-45,0> scale 0.85 translate <-0.75,0.2,AxisLenZ+0.10>
no_shadow}
#end // of #if
} // end of union
#end// of macro "AxisXYZ( ... )"
//------------------------------------------------------------------------
#declare Texture_A_Dark = texture {
pigment{ color rgb<1,0.45,0>}
finish { phong 1}
}
#declare Texture_A_Light = texture {
pigment{ color rgb<1,1,1>}
finish { phong 1}
}
object{ AxisXYZ( 4.50, 3.00, 5.00, Texture_A_Dark, Texture_A_Light)}
//-------------------------------------------------- end of coordinate axes
// ground -----------------------------------------------------------------
//---------------------------------<<< settings of squared plane dimensions
#declare RasterScale = 1.0;
#declare RasterHalfLine = 0.035;
#declare RasterHalfLineZ = 0.035;
//-------------------------------------------------------------------------
#macro Raster(RScale, HLine)
pigment{ gradient x scale RScale
color_map{[0.000 color rgbt<1,1,1,0>*0.6]
[0+HLine color rgbt<1,1,1,0>*0.6]
[0+HLine color rgbt<1,1,1,1>]
[1-HLine color rgbt<1,1,1,1>]
[1-HLine color rgbt<1,1,1,0>*0.6]
[1.000 color rgbt<1,1,1,0>*0.6]} }
#end// of Raster(RScale, HLine)-macro
//-------------------------------------------------------------------------
plane { <0,1,0>, 0 // plane with layered textures
texture { pigment{color White*1.1}
finish {ambient 0.45 diffuse 0.85 emission 0}}
texture { Raster(RasterScale,RasterHalfLine ) rotate<0,0,0> }
texture { Raster(RasterScale,RasterHalfLineZ) rotate<0,90,0>}
rotate<0,0,0>
}
//------------------------------------------------ end of squared plane XZ
//--------------------------------------------------------------------------
//---------------------------- objects in scene ----------------------------
//--------------------------------------------------------------------------
// I added a camera definition near the beginning to give me a nice working view
// now I make some quick objects to get me started
#declare Origin = <0, 0, 0>;
#declare Surface = 0.25; // Height of chessboard surface
#declare _White = texture {pigment {rgb <1, 1, 1>} normal {granite scale 0.01}
finish {specular 0.1}};
#declare _Black = texture {pigment {rgb <1, 1, 1>*0.01} normal {granite scale
0.01} finish {specular 0.1}};
#declare Board = box {<-1, 0, -1>*4, <1, Surface/4, 1>*4
texture {
checker texture {_White} texture {_Black}
}
}
// Now I make some objects with geometry but no texture assigned to them
#declare Pawn = sphere {Origin, 0.4 translate <0.5, 0.4+Surface, 0.5>}
// I again use the Insert Menu and choose
// Basic Shapes Round >
// and down in the SOR section, choose the 3rd option - the silver cup
///sor Surface of Revolution
#declare Rook =
sor{
10,
<0.000, 0.000>
<0.289, 0.000>
<0.274, 0.026>
<0.072, 0.100>
<0.070, 0.123>
<0.070, 0.436>
<0.175, 0.536>
<0.240, 0.672>
<0.327, 1.000>
<0.290, 1.000>
open
/* and I comment out the texture block
// sturm // optional!
material{ //-----------------------------------------------------------
texture { pigment{ rgbf <0.98, 0.92, 0.80, 0.7> }
finish { diffuse 0.1 reflection{ 0.25 metallic 0.20}
specular 0.8 roughness 0.0003 phong 1 phong_size 400}
} // end of texture -------------------------------------------
interior{ ior 1.5 caustics 0.5
} // end of interior ------------------------------------------
} // end of material ----------------------------------------------------
scale 1.0 rotate<0,0,0> translate<0,0,0>
*/
// and translate it onto the center of a unit square
translate <0.5, Surface, 0.5>
} // end of sor ---------------------------------
// and one more pice using a lathe this time instead
// Basic Shapes Round >
// and down in the Lathe section, choose the 2nd option - the quadratic
// since it's smooth
#declare Bishop =
lathe{ // rotates a 2-D outline of points around the Y axis to create a 3-D
shape
quadratic_spline // quadratic_spline | cubic_spline | linear_spline
5, // number of points,
<2, 0>, // list of <x,y> points,
<3, 0>,
<3, 5>,
<2, 5>,
<2, 0>
// sturm
/* and again I comment out the texture block
texture { Polished_Chrome
pigment{ color rgb<0.7,0.0,0.3>}
finish { phong 1 reflection{ 0.40 metallic 0.30} }
} // end of texture
*/
scale <1,1,1>*0.125
rotate <0,0,0>
translate <0.5, Surface, 0.5> // translate it onto the center of a unit square
} // ----------------------------------------------- end of lathe object
// Now I need to actually put the objects into the scene
object {Board}
/*
I use a #for loop to make copies of the pieces and place them quickly
NOW I assign the textures so that I can use the same geometry but choose _White
or _Black
*/
#for (WhitePawn, -4, 3)
object {Pawn texture {_White} translate <WhitePawn, 0, -3>}
#end
#for (BlackPawn, -4, 3)
object {Pawn texture {_Black} translate <BlackPawn, 0, 2>}
#end
object {Rook texture {_White} translate <-4, 0, -4>}
object {Rook texture {_White} translate < 3, 0, -4>}
object {Rook texture {_Black} translate <-4, 0, 3>}
object {Rook texture {_Black} translate < 3, 0, 3>}
object {Bishop texture {_White} translate <-2, 0, -4>}
object {Bishop texture {_White} translate < 1, 0, -4>}
object {Bishop texture {_Black} translate <-2, 0, 3>}
object {Bishop texture {_Black} translate < 1, 0, 3>}
/*
and that should get you started
only 3 more pieces to model, and then you can start adding and editing textures,
etc.
*/
Post a reply to this message
|
|