i´m trying to put a shader in wings3d v33, but it seams to not work, what i get is just a black uvmap. The shader is the procedural Bricks that i found on this site 3dshaders.com.
Dgud says that we need to make a wpc_shadername.auv file i made it, and the shader shows in the uvw window, but the texture is showing black. Here are the shaders and the wpc file. Any help will be wealcome.
//
// Vertex shader for procedural bricks
//
// Authors: Dave Baldwin, Steve Koren, Randi Rost
// based on a shader by Darwyn Peachey
//
// Copyright © 2002-2006 3Dlabs Inc. Ltd.
//
// See 3Dlabs-License.txt for license information
//uniform vec3 LightPosition;
const float SpecularContribution = 0.3;
const float DiffuseContribution = 1.0 - SpecularContribution;varying float LightIntensity;
varying vec2 MCposition;void main()
{
vec3 ecPosition = vec3(gl_ModelViewMatrix * gl_Vertex);
vec3 tnorm = normalize(gl_NormalMatrix * gl_Normal);
vec3 lightVec = normalize(LightPosition - ecPosition);
vec3 reflectVec = reflect(-lightVec, tnorm);
vec3 viewVec = normalize(-ecPosition);
float diffuse = max(dot(lightVec, tnorm), 0.0);
float spec = 0.0;if (diffuse > 0.0) { spec = max(dot(reflectVec, viewVec), 0.0); spec = pow(spec, 16.0); } LightIntensity = DiffuseContribution * diffuse + SpecularContribution * spec; MCposition = gl_Vertex.xy; gl_Position = ftransform();}
//
// Fragment shader for procedural bricks
//
// Authors: Dave Baldwin, Steve Koren, Randi Rost
// based on a shader by Darwyn Peachey
//
// Copyright © 2002-2006 3Dlabs Inc. Ltd.
//
// See 3Dlabs-License.txt for license information
//uniform vec3 BrickColor, MortarColor;
uniform vec2 BrickSize;
uniform vec2 BrickPct;varying vec2 MCposition;
varying float LightIntensity;void main()
{
vec3 color;
vec2 position, useBrick;position = MCposition / BrickSize; if (fract(position.y * 0.5) > 0.5) position.x += 0.5; position = fract(position); useBrick = step(position, BrickPct); color = mix(MortarColor, BrickColor, useBrick.x * useBrick.y); color *= LightIntensity; gl_FragColor = vec4(color, 1.0);}
{name, “Bricks”}. % The name in the shader selector
{vertex_shader, “Bricks.vs”}. % Vertex shader used
{fragment_shader, “Bricks.fs”}. % Fragment shader used
{auv, auv_bbpos3d}. % Use bounding box for positions