POVRay has a large number of stone textures available. I used this one to create a set of tiles. These can be imported into Photoshop and used to create dungeon crawl maps like I posted earlier.
This one has surface texturing so it takes "forever" to render (>24 hrs! at 1024 x 768). If I remove the texturing I can get it down to a more reasonable rendering time without losing much detail in fact it may even look better.
/*
Tilesets for D&D
by Hans Mikelson July 2012
*/
#include "colors.inc"
#include "textures.inc"
#include "shapes.inc"
#include "stones.inc"
#include "woods.inc"
#include "metals.inc"
#include "skies.inc"
#declare q = 0; // Set to 1 to use isosurface but that will render *much* slower.
#declare q2 = 1; // This controls the light sources change to 0 to zoom in.
#declare paver = T_Stone29; // Change these to try out other stone textures
#declare grout = T_Stone32;
#if (q2)
light_source {<-400, 500, 400> color 1.5 spotlight radius 15 falloff 18 tightness 10 area_light <1, 0, 0>, <0, 0, 1>, 2, 2 adaptive 1 jitter point_at <0, -.5, 0>}
camera {orthographic location <.5,10,.5> look_at <.5,0,.5> up 12*y right 16*x}
#else
light_source { <-40,50,40> color rgb 1.5}
camera {orthographic location <0,10,0> look_at <0,0,0> up 3*y right 4*x}
#end
global_settings { ambient_light rgb 1.6}
background { color rgb 0 }
#if (q)
plane { y, -1 hollow on texture {grout scale .5} translate <0,1.07,0>}
#else
plane { y, -1 hollow on texture {grout scale .5} translate <0,1.54,0>}
#end
#declare fb3 = function {pattern {crackle turbulence .01 octaves 5 omega 1.8 lambda 1.5 scale .2}} ;
#declare fb4 = function {pattern {bozo turbulence .05 octaves 5 omega 1.8 lambda 1.5 scale 2}} ;
#declare i = -10;
#while(i <= 10)
#declare j = -10;
#while(j <= 10)
#if (q)
isosurface {function {f_rounded_box(x,y,z, .1,.48,.1,.48) + fb3(x-i,y,z-j)*.008+fb4(x-i,y,z-j)*.1-.04} contained_by{sphere{0,1}} max_gradient 6.0 texture{paver translate <i,0,j>} finish {specular 0.4 roughness 0.06} translate <i,0,j>}
#else
superellipsoid {<.1,.2> texture { paver translate <i,0,j>} finish {specular 0.6 roughness 0.03} scale <.48,.6,.48> translate <i,0,j> }
#end
#declare j = j + 1;
#end
#declare i = i + 1;
#end
No comments:
Post a Comment