I am exporting elements from Sketchup into obj format.
I have found that elements that have textures when exported have diffuse color that is not white.
The diffuse color is almost similar to texture color.
How can I avoid this unnecessary diffuse color through ruby API calls?
No control over that via the API.
I’m not entirely clear what the issue is though? What is causing problem where/when?
What is expected results?
For e.g when you export Sofa - attached model.
Following is the generated material file
newmtl _
Ka 0.000000 0.000000 0.000000
Kd 0.898039 0.878431 0.721569
Ks 0.330000 0.330000 0.330000
map_Kd Sofa/_.jpg
newmtl BackColor
Ka 0.000000 0.000000 0.000000
Kd 0.643137 0.698039 0.733333
Ks 0.330000 0.330000 0.330000
newmtl FrontColor
Ka 0.000000 0.000000 0.000000
Kd 1.000000 1.000000 1.000000
Ks 0.330000 0.330000 0.330000
As you can see material named “_” has diffuse color(Kd) : Kd 0.898039 0.878431 0.721569.
Why the diffuse color is not white?
Sofa.skp (208.0 KB)
if you interrogate your material in SU is the ‘average_color’ being used for diffuse?
MATERIAL:
display_name => Material
materialType => 1
alpha => 1.0
use_alpha? => false
colorize_deltas => [0.0, 0.0, 0.0]
colorize_type => 0
texture => #<Sketchup::Texture:0x00007f9d9b959c60>
owner_type => 0
name => Material
color => [229, 224, 184, 255]
TEXTURE:
width => 6.400000000000001
height => 4.0
valid? => true
image_rep => #<Sketchup::ImageRep:0x00007f9d98a86cd0>
image_width => 650
image_height => 650
filename => C:\Users\Stonex\Downloads\Sofa2.jpg
average_color => [229, 224, 184, 255]
john
Got it. In that case a can just avoid color where there is texture in my renderings.
1 Like