Mapping c3DShininess to property 'Shininess'

Regina Henschel rb.henschel at t-online.de
Wed Jan 19 17:38:05 UTC 2022


Hi Miklos, hi all,

I'm going to implement 'Shininess' for extruded custom shapes.

The chain is
MS c3DShininess
   |
   | import
   ↓
API 'Shininess' = ODF 'draw:extrusion-shininess'
   |
   | rendering
   ↓
SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY

 From experiments I know
   SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY = 2^c3DShininess.

I'm going to use API 'Shininess' = 10 * c3DShininess. That maps MS 
default 5 to ODF default 50%. It would imply, that for rendering an ODF 
document SDRATTR_3DOBJ_MAT_SPECULAR_INTENSITY= 2^(ODF/10) is used.

Do you have any concerns or a better idea?

Should I do it immediately in 
https://gerrit.libreoffice.org/c/core/+/128449? Or should I keep the 
fixed value 32 for nIntensity there temporary and implement 'Shininess' 
in a separate patch?

Kind regards,
Regina


More information about the LibreOffice mailing list