I know how to multiply my base color texture with vertex colors, but this only allows for a specific type of color blending, mostly tinting and darkening.
However it would be ideal for my purposes if I could lighten a base color texture on a PBR material using vertex color data. Is this possible?
Colors are not clamped by Three.js. So, you can define vertex colors beyond (1,1,1) – this will make the final color brighter. The bright moving stripes in the following demo are made with colors up to (10,10,10); while the dark stripes are normal white (1,1,1).
https://codepen.io/boytchev/full/LYMdKEx

Notes:
- colors are still multiplied, so out-of-domain colors will make the bright parts brighter, but the black will stay black
- if you want to also brighten the black, you can add emissive color
- if you do not need to control individual vertices colors, the main material color also accepts values beyond 1
2 Likes
Excellent answer. Thank you.
1 Like