I have completed a test model in blender 2.7 and upon assigning a material and texture to a shirt it all appears fine and the texture looks great in blender. However upon export to three.js the material color, blender default gray, of the shirt appears to bleed through the UV texture, which is a white cloth, not to be confused with cloth simulation, and it appears a lighter shade of blender default gray.
But indeed the UV texture is present while I can observe the cloth fabric, threads etc. I have correctly chosen the assign button as needed. Would this be a shading issue or have I missed something after months and months of tutorials and reading?
-
$\begingroup$ Making a copy of your ~.blend file accessible would help diagnosing the issue. However, I have found in my own work that in some circumstances, a material can influence a texture, so that if I want a white wall, I will generally use a white material behind a texture with a white background. $\endgroup$– brasshatCommented Oct 17, 2014 at 13:46
-
$\begingroup$ I did actually attempt to change the material color to white through the use of diffuse, however, the default gray remained? $\endgroup$– user2544743Commented Oct 18, 2014 at 0:58
-
$\begingroup$ I wonder if there is a way to make the material color transparent? $\endgroup$– user2544743Commented Oct 18, 2014 at 0:59
1 Answer
Set the diffuse color to full white.
Blender internal materials do not overlay the diffuse color over the texture (blending) while depending on your application / three.js shaders probably do take diffuse color into account as a color overlay.
Als make sure to set the intensity to 1 as that might change the RGB values upon export. Blender default materials have a gray value and intensity 0.8 as default, so you could write a little script to update all the materials:
import bpy
for material in bpy.data.materials:
material.diffuse_color = (1.0, 1.0, 1.0)
material.diffuse_intensity = 1
material.specular_intensity = 1
A neutral white should therefore produce the proper result.