Why is there Diffuse color on exported elements?

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