* Valve220: fix patch.CapTexture (patch had invalid control points: define basis)

* Curve->Simple patch mesh: CapTexture() instead of NaturalTexture() for convinience
This commit is contained in:
Garux 2017-10-02 18:00:40 +03:00
parent 0dfdf77c18
commit 097c1e8fc5
2 changed files with 5 additions and 4 deletions

View File

@ -660,6 +660,7 @@ void Patch::CapTexture(){
Vector3 normal = Calculate_AvgNormal();
TextureProjection projection;
TexDef_Construct_Default( projection );
ComputeAxisBase( normal, projection.m_basis_s, projection.m_basis_t ); /* Valve220 */
ProjectTexture( projection, normal );
#endif
}
@ -1563,7 +1564,10 @@ void Patch::ConstructPrefab( const AABB& aabb, EPatchPrefab eType, int axis, std
InsertRemove( true, false, true );
}
NaturalTexture();
if ( eType == ePlane )
CapTexture();
else
NaturalTexture();
}
void Patch::RenderDebug( RenderStateFlags state ) const {

View File

@ -519,12 +519,9 @@ static void OnBtnPatchFit( GtkWidget *widget, gpointer data ){
}
static void OnBtnReset( GtkWidget *widget, gpointer data ){
//globalOutputStream() << "--> [OnBtnAxial]...\n";
UndoableCommand undo( "textureDefault" );
TextureProjection projection;
//globalOutputStream() << " TexDef_Construct_Default()...\n";
TexDef_Construct_Default( projection );
//globalOutputStream() << " Select_SetTexdef()...\n";
#if TEXTOOL_ENABLED