Wednesday, July 18, 2012

Tile Sets


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


Here is the image generated by the above code:



And another:


No comments:

Post a Comment