1 year ago

#383254

test-img

Sarmak

Is there a way to apply a rainbow emission on a Standard Material?

I must implement a model that has a rainbow emission on itself, but, as I have noticed the Standard material only takes a single color as an emissive value at a time, I have a rainbow map I must implement in order to recreate my model's appearance but, as I have noticed it seems like its not possible.

I am currently working with React and ThreeJS using react-three-fiber, I am not sure if that's relevant for my problem but I'll mention it anyway.

<meshStandardMaterial
                        //color={"#FFFFFF"}
                        map={modelMap}
                        normalMap={modelNormal}
                        envMap={environmentMapTextureModel}
                        envMapIntensity={3}
                        roughness={0.2}
                        metalness={0.5}
                        side={THREE.DoubleSide}
                        emissive={'#ffffff'} // This emissive only takes 1 color, if you put a texture it won't work at all
                        emissiveMap={emissionMap} // This is meant to delimit which parts of the model should emit light and which ones shouldn't, as long as I know
                        emissiveIntensity={0.05} // the emission's intensity
                    />

How can I achieve this goal? Can it be done using shaders and then how? I'm not very knowledgable in the subject of shaders.

Thanks in advance for any help.

reactjs

three.js

three20

react-three-fiber

0 Answers

Your Answer

Accepted video resources