Click on the filename to display or download the file.
show_uv_steps.mi
declare shader
color "show_uv_steps" (
integer "u_count" default 4,
integer "v_count" default 4 )
version 1
apply material, texture
end declare
show_uv_steps.c
#include "shader.h"
struct show_uv_steps {
miInteger u_count;
miInteger v_count;
};
DLLEXPORT
int show_uv_steps_version(void) {return 1;}
miScalar quantize(miScalar value, miInteger count)
{
miScalar q = (miScalar)count;
if (count < 2)
return q;
else
return (miScalar)((int)(value * q) / (q - 1));
}
DLLEXPORT
miBoolean show_uv_steps (
miColor *result, miState *state, struct show_uv_steps *params )
{
result->r = quantize(state->tex_list[0].x,
*mi_eval_integer(¶ms->u_count));
result->g = quantize(state->tex_list[0].y,
*mi_eval_integer(¶ms->v_count));
result->b = 0;
return miTRUE;
}
22 April 2008 23:39:55