• A
    Implemented real spotlights. · 1087cf8c
    alteredq 提交于
    This adds 2 extra parameters to SpotLight:
    
    - "angle" for controlling light cone width
    - "exponent" for controlling sideways light attenuation (from light->target axis towards edges of light cone)
    
    Warning: this changes appearance of everything that used old fake SpotLight. To get approximately similar look use these parameter values:
    
    ```
    spotLight.angle = Math.PI;
    spotLight.exponent = 1;
    ```
    
    Todo:
    
    - implement spotlights in normal map and skin shaders
    - check what's going on with vertex colors and ambient term in unlit parts
    - check shadowmap darkening vs unlit parts darkening
    - maybe some better formula for light cone attenuation, current one varies too wildly with cone angle
    1087cf8c
webgl_shadowmap.html 10.1 KB