binds...
	* doubleClick/Enter in Entity inspector Class list = convert entities
	* ctrl during creating brush = cube brush

misc...
	* on worldspawn entity create/convert to one do most expected move-selected-primitives-to-worldspawn
	* convert point entity to group one = placeholder brush at origin + remove origin key
	* convert group entity to point one: set origin key to contained primitives center
	* fix uniform rotation operations for eclassmodel, miscmodel entities
	* scale miscmodel entities uniformly
	* added func_detail to world and detail filters
	* region->set_xy: using active projection, not just xy one; is subtractive (no region off before applying)
	* new brush prefab: icosahedron
	* refactored CSGTool, improved Hollow::diagonal algorithm stability

	improved view_cubiclipping.png
This commit is contained in:
Garux
2017-08-02 09:44:13 +03:00
parent 335dcb2fa8
commit 0139fa9de6
16 changed files with 547 additions and 430 deletions

View File

@@ -207,10 +207,18 @@ void translate( const Vector3& translation ){
m_origin = origin_translated( m_origin, translation );
}
void rotate( const Quaternion& rotation ){
m_angles = angles_rotated_for_rotated_pivot( m_angles, rotation );
//m_angles = angles_rotated_for_rotated_pivot( m_angles, rotation );
m_angles = angles_rotated( m_angles, rotation );
}
void scale( const Vector3& scaling ){
m_scale = scale_scaled( m_scale, scaling );
//m_scale = scale_scaled( m_scale, scaling );
Matrix4 mat( matrix4_scale_for_vec3( scaling ) );
matrix4_multiply_by_matrix4( mat, matrix4_rotation_for_euler_xyz_degrees( m_anglesKey.m_angles ) );
matrix4_scale_by_vec3( mat, m_scale );
m_scale = matrix4_get_scale_vec3( mat );
//m_angles = angles_snapped_to_zero( matrix4_get_rotation_euler_xyz_degrees( mat ) );
}
void snapto( float snap ){
m_originKey.m_origin = origin_snapped( m_originKey.m_origin, snap );
@@ -285,7 +293,9 @@ void evaluateTransform(){
if( getRotation() != c_quaternion_identity ){
m_contained.rotate( getRotation() );
}
m_contained.scale( getScale() );
if( getScale() != c_scale_identity ){
m_contained.scale( getScale() );
}
}
}
void applyTransform(){