12345678910111213141516171819202122232425262728293031323334 |
- function lovr.load()
- shader = lovr.graphics.newShader([[
- vec4 lovrmain() {
- return DefaultPosition;
- }
- ]], [[
- #define BANDS 5.0
- vec4 lovrmain() {
- const vec3 lightDirection = vec3(-1, -1, -1);
- vec3 L = normalize(-lightDirection);
- vec3 N = normalize(Normal);
- float normal = .5 + dot(N, L) * .5;
- vec3 baseColor = Color.rgb * normal;
- vec3 clampedColor = round(baseColor * BANDS) / BANDS;
- return vec4(clampedColor, Color.a);
- }
- ]])
- end
- function lovr.draw(pass)
- pass:setShader(shader)
- pass:setColor(0, 0, 1)
- pass:sphere(0, 1.7, -1, .15)
- pass:setColor(0, 1, 0)
- pass:sphere(-.4, 1.7, -1, .15)
- pass:setColor(1, 0, 0)
- pass:sphere(.4, 1.7, -1, .15)
- end
|