disable fastnormalize for light: was increasing dirt from arealights, lighting with acute angle

Radiant:

binds...
	* QE tool: alt + m1 drag in primitives mode:
		click face = clicked faces shear
	* m3 in texbro: select texture w/o applying to selection
	* `: XYFocusOnSelected
	* ctrl + shift + e: Select Connected Entities
misc...
	* search in shortcuts list
	* edit shortcuts on m1 dbl click
	* edit shortcuts fix: could highlight a few rows for editing
	* texbro: toggle off hideUnused on loading a tag
	* fix of: undo something, select tex in texbro, no redo available
	* epsilon in resize brush selector to prevent perpendicular faces pickup
	* clone group entity primitives to separate entity on cloneSelectedMakeUnique
	* Focus on Selected option in Entity List (focus cam and center xy)
	* entity inspector: connected entities walker (select target / targeting / both)(focus)
This commit is contained in:
Garux
2017-08-02 09:21:32 +03:00
parent 461d008daa
commit dfce2da577
20 changed files with 424 additions and 44 deletions

View File

@@ -102,12 +102,19 @@ void _CrossProduct( vec3_t v1, vec3_t v2, vec3_t cross );
// This define affect the precision of VectorNormalize() function only.
#define MATHLIB_VECTOR_NORMALIZE_PRECISION_FIX 1
vec_t VectorAccurateNormalize( const vec3_t in, vec3_t out );
vec_t VectorFastNormalize( const vec3_t in, vec3_t out );
vec_t VectorFastNormalize_( const vec3_t in, vec3_t out );
#if MATHLIB_VECTOR_NORMALIZE_PRECISION_FIX
#define VectorNormalize VectorAccurateNormalize
#else
#define VectorNormalize VectorFastNormalize
#define VectorNormalize VectorFastNormalize_
#endif
#if 0 //use fastnormalize in a few -light spots
#define VectorFastNormalize VectorFastNormalize_
#else
#define VectorFastNormalize VectorNormalize
#endif
vec_t ColorNormalize( const vec3_t in, vec3_t out );
void VectorInverse( vec3_t v );
void VectorPolar( vec3_t v, float radius, float theta, float phi );

View File

@@ -179,7 +179,7 @@ vec_t VectorAccurateNormalize( const vec3_t in, vec3_t out ) {
return (vec_t) length;
}
vec_t VectorFastNormalize( const vec3_t in, vec3_t out ) {
vec_t VectorFastNormalize_( const vec3_t in, vec3_t out ) {
// SmileTheory: This is ioquake3's VectorNormalize2
// for when accuracy matters less than speed

View File

@@ -84,7 +84,12 @@ ID_INLINE mat3_t::mat3_t() {
}
ID_INLINE mat3_t::mat3_t( float src[ 3 ][ 3 ] ) {
memcpy( mat, src, sizeof( src ) );
//memcpy( mat, src, sizeof( src ) );
for( unsigned int i = 0; i < 3; i++ ) {
mat[i].x = src[i][0];
mat[i].y = src[i][1];
mat[i].z = src[i][2];
}
}
ID_INLINE mat3_t::mat3_t( idVec3 const &x, idVec3 const &y, idVec3 const &z ) {