Merge pull request #3 from Joshua-Ashton/zhlt_ambient_color
Support for ZHLT sun spread angle and ambient light_environment color
This commit is contained in:
commit
d23ad3e797
1 changed files with 13 additions and 2 deletions
|
@ -246,7 +246,7 @@ void CreateEntityLights( void ){
|
||||||
const char *name;
|
const char *name;
|
||||||
const char *target;
|
const char *target;
|
||||||
vec3_t dest;
|
vec3_t dest;
|
||||||
const char *_color, *_light_brightness;
|
const char *_color, *_light_brightness, *_spread;
|
||||||
float intensity, scale, deviance, filterRadius;
|
float intensity, scale, deviance, filterRadius;
|
||||||
int spawnflags, flags, numSamples;
|
int spawnflags, flags, numSamples;
|
||||||
qboolean junior;
|
qboolean junior;
|
||||||
|
@ -304,6 +304,10 @@ void CreateEntityLights( void ){
|
||||||
} else {
|
} else {
|
||||||
/* alternative: read color in RGB8 values -eukara */
|
/* alternative: read color in RGB8 values -eukara */
|
||||||
_color = ValueForKey( e, "ambientcolor255" );
|
_color = ValueForKey( e, "ambientcolor255" );
|
||||||
|
if ( !_color || !_color[ 0 ] ) {
|
||||||
|
/* ZHLT's ambient light_environment color. */
|
||||||
|
_color = ValueForKey( e, "_diffuse_light" );
|
||||||
|
}
|
||||||
if ( _color && _color[ 0 ] ) {
|
if ( _color && _color[ 0 ] ) {
|
||||||
sscanf( _color, "%f %f %f", &ambientColor[ 0 ], &ambientColor[ 1 ], &ambientColor[ 2 ] );
|
sscanf( _color, "%f %f %f", &ambientColor[ 0 ], &ambientColor[ 1 ], &ambientColor[ 2 ] );
|
||||||
ambientColor[0] /= 255;
|
ambientColor[0] /= 255;
|
||||||
|
@ -336,7 +340,14 @@ void CreateEntityLights( void ){
|
||||||
|
|
||||||
/* get filter radius from shader */
|
/* get filter radius from shader */
|
||||||
sun->filterRadius = FloatForKey( e, "filterradius" );
|
sun->filterRadius = FloatForKey( e, "filterradius" );
|
||||||
|
_spread = ValueForKey( e, "_spread" );
|
||||||
|
if ( _spread && _spread[ 0 ] ) {
|
||||||
|
/* ZHLT's sun spread angle. */
|
||||||
|
sun->deviance = atof( _spread );
|
||||||
|
}
|
||||||
|
else {
|
||||||
sun->deviance = FloatForKey( e, "sunspreadangle" );
|
sun->deviance = FloatForKey( e, "sunspreadangle" );
|
||||||
|
}
|
||||||
sun->deviance = sun->deviance / 180.0f * Q_PI;
|
sun->deviance = sun->deviance / 180.0f * Q_PI;
|
||||||
sun->numSamples = IntForKey( e, "samples" );
|
sun->numSamples = IntForKey( e, "samples" );
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue