POV-Ray : Newsgroups : povray.newusers : declaring a new texture with a macro : declaring a new texture with a macro Server Time
16 Apr 2024 16:34:50 EDT (-0400)
  declaring a new texture with a macro  
From: Warren
Date: 30 Nov 2015 11:30:01
Message: <web.565c782768d9e8a4a73f5e290@news.povray.org>
Hi,
Here's my problem:
I have a macro in an include file ("textures_JeuM_v3.inc") defined like this:

#macro
T_var_Wrinkles(multiplicateur,Cmarron1,Cmarron2,Cmarron3,Cmarron4,Cmarron5,ValAmbient,ValDiffuse)
    texture{pigment{wrinkles color_map{
                                       [0.0 Cmarron3*multiplicateur]
                                       [0.125 Cmarron2*multiplicateur]
                                       [0.25 Cmarron1*multiplicateur]
                                       [0.375 Cmarron2*multiplicateur]
                                       [0.5 Cmarron3*multiplicateur]
                                       [0.675 Cmarron4*multiplicateur]
                                       [0.75 Cmarron5*multiplicateur]
                                       [0.875 Cmarron4*multiplicateur]
                                       [1.0 Cmarron3*multiplicateur]
                                      }
                    scale 0.005
                    }
            finish { ambient ValAmbient diffuse ValDiffuse}
           }
#end

//Definitions des sols marron avec les macros
#declare T_marron_MacroNiv1 =
T_var_Wrinkles(<1,1,1>,C_marronA1,C_marronA2,C_marronA3,C_marronA4,C_marronA5,1,0)
#declare T_marron_MacroNiv2 =
T_var_Wrinkles(<1.12,1.1,1.1>,C_marronA1,C_marronA2,C_marronA3,C_marronA4,C_marronA5,1,0)
#declare T_marron_MacroNiv3 =
T_var_Wrinkles(<1.32,1.3,1.3>,C_marronA1,C_marronA2,C_marronA3,C_marronA4,C_marronA5,1,0)
#declare T_marron_MacroNiv4 =
T_var_Wrinkles(<1.52,1.5,1.5>,C_marronA1,C_marronA2,C_marronA3,C_marronA4,C_marronA5,1,0)

Below the macro definition you can see several callings of this macro that
define themselves a new texture.

And in the main scene file/pov file , I have this code:
#version 3.7;

global_settings{assumed_gamma 2.0}

#declare Anim_Serie=true;
#declare xN=128;
#declare HeightField=true;
#declare Mesh=false;
#declare Photo=true;
#include "textures_JeuM_v3.inc"

#declare T_transition1_2 = texture{gradient y texture_map{[0.0
T_marron_MacroNiv1][0.1 T_rocheGriseA2][0.9 T_rocheGriseA2][1.0
T_marron_MacroNiv2]}};
#declare T_transition2_3 = texture{gradient y texture_map{[0.0
T_marron_MacroNiv2][0.1 T_rocheGriseA2][0.9 T_rocheGriseA2][1.0
T_marron_MacroNiv3]}};
#declare T_transition3_4 = texture{gradient y texture_map{[0.0
T_marron_MacroNiv3][0.1 T_rocheGriseA2][0.9 T_rocheGriseA2][1.0
T_marron_MacroNiv4]}};

camera{
       orthographic
       location <0.000001,20,0>
       look_at <0,0,0>
       direction -y
       sky z

       up 2*z
       right 2*x
      }


height_field{png

             #if (Anim_Serie=true)

                     #if (tps>=0 & tps<4)
                        "HF_x128_lineaire1"
                     #end
                     #if (tps>=4 & tps<8)
                        "HF_x128_lineaire2"
                     #end
                     #if (tps>=8 & tps<12)
                        "HF_x128_coin1"//Orniere
                     #end
                     #if (tps>=12 & tps<16)

                     #end
                #end
             #end
             smooth
             translate <-0.5,0,-0.5>


             rotate 90*tps*y
             #end

             scale <2,1,2>
             texture{T_transition1_2}
             scale <1,4,1>

             no_shadow
           }

When I render this scene I expect to get images (with an ini file) with
different height_fields with the macro textures, alas this doesn't work ,
because
all the images are entirely black. I have no error message when I start the
render. I think something must be done with the macro but I don't know what.

Antoine.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.