Using BRDF
Calc Positions per pixel
Get incoming angle for Every surface from positions
[IMPORTANT]Get Per pixel or voxel Wi=acos(cos(ATAN(y/x))*z/sqrt(x^2+y^2))
N=abs(Wr-Wi)
Change N to N=Wr-acos(cos(Wr)*(cos(N))
Important part of Function becomes Wicos(New normal)
[IMPORTANT]Save two solutions info 240*360 16BPP[red green] 16BPP[blue Alpha] sprite for javascript
Roughness is a light property so it doesn't really matter right now
Variables to save
3Bit N
3bit Wi
3Bit Wr
6Bit Hue
The important things are getting per pixel distance to the light for Wi
And saving two solutions in RGBA
I thought maybe a blender GLSL shader could do that but none of them seemed to fit
Tools
Office
Paint
Blender
Java
Javascript