But that simply assumes the object doesn't spit out new rays of light right? What if the object can absorb the light, somehow activated by the light and convert some of its internal energy into a stronger ray of light and spit out? Do things like this happen?
We do know that some energy would be absorbed by the material and never re-emitted again, but based on the material itself, isn't it possible to determine what proportion of the energy is absorbed?
In general, to find how light scatters around an object, would you have to evaluate this function on rays of all possible directions?
So do surfaces in our current basic understanding mainly differ in 'how much energy is reflected', assuming the surface is smooth, or are we considering both reflection/refraction of light?
Can you ever get infinite loops during ray tracing if you get two mirrors facing each other for example?
How would you find all the light scattered around?
The BRDF term looks quite abstract. Given any pair of direction, it produces a scalar. How would you store such a function?