How to add lights to a standard material in ThreeJS

Oscar de la Hera Gomez
Two flowers that represent ReactJS and ThreeJS. Beneath them sits the text "ReactJS & ThreeJS Lights (Standard Materials)."

A step by step guide on an ambient light to a scene in ThreeJS and learning how they adapt the standard material on a plane geometry in ReactJS.

We recommend that you clone our Open Source React-Redux Starter Project, checking out the tutorial/three-js/starter branch and carrying out the steps below. The changes can be found on the tutorial/three-js/lights-standard-material branch.

git clone git@github.com:delasign/react-redux-starter-project.git

Step One: Setup the project

A screenshot of the app running in a browser. If you change the scale of the screen, the object will adapt accordingly.

Follow the tutorial below to setup a responsive ThreeJS, ReactJS project that displays a plane in a scene.

Step Two: Update the Material

A screenshot of VSCode showing how we have updated the plane material to a MeshLambertMaterial. Code available below.

Update the plane material to a MeshLambhertMaterial using code similar to the one below.

Step Three: Add the Light

A screenshot of VSCode showing how we added an ambient light to the scene. Code available below.

Add an ambient light to the scene using code similar to the one below.

To learn more about the types of lights that are available, consult the link below - the light options are on the left menu side bar.

Step Four: Test

A screenshot of Chrome demonstrating that the plane has adapted the light onto the material.

Run the code and confirm the light works as expected.

Looking to learn more about ReactJS and ThreeJS ?

Search our blog to find educational content on learning how to use ReactJS and ThreeJS.

Any Questions?

We are actively looking for feedback on how to improve this resource. Please send us a note to inquiries@delasign.com with any thoughts or feedback you may have.
delasign logo

Book a Free Consultation.

An icon of an email.

Click here to email us.

Fill in the details below to book a free consultation or to let us know about something else. Whatever it is, we are here to help.

How can we help you ?

Contact Details