@@ -623,30 +623,32 @@ private BabylonNode ExportMasterMesh(IIGameScene scene, IIGameNode meshNode, Bab
623623 return babylonMesh ;
624624 }
625625
626- private IEnumerable < GlobalVertex > ExtractMorphTargetVertices ( BabylonAbstractMesh babylonAbstractMesh , List < GlobalVertex > vertices , IMatrix3 offsetTM , int morphIndex , IIGameNode maxMorphTarget , bool optimizeVertices , List < int > faceIndexes )
626+ private IList < GlobalVertex > ExtractMorphTargetVertices ( BabylonAbstractMesh babylonAbstractMesh , List < GlobalVertex > vertices , IMatrix3 offsetTM , int morphIndex , IIGameNode maxMorphTarget , bool optimizeVertices , List < int > faceIndexes )
627627 {
628- if ( maxMorphTarget != null )
628+ if ( maxMorphTarget != null )
629629 {
630- foreach ( var v in ExtractVertices ( babylonAbstractMesh , maxMorphTarget , optimizeVertices , faceIndexes ) )
631- {
632- yield return v ;
633- }
634- yield break ;
630+ return ExtractVertices ( babylonAbstractMesh , maxMorphTarget , optimizeVertices , faceIndexes ) ;
635631 }
636- // rebuild Morph Target
637- if ( exportParameters . rebuildMorphTarget )
632+
633+ var result = new List < GlobalVertex > ( ) ;
634+
635+ if ( ! exportParameters . rebuildMorphTarget )
638636 {
639- var points = ExtractMorphTargetPoints ( babylonAbstractMesh , morphIndex , offsetTM ) . ToList ( ) ;
640- for ( int i = 0 ; i != vertices . Count ; i ++ )
637+ return result ;
638+ }
639+
640+ var points = ExtractMorphTargetPoints ( babylonAbstractMesh , morphIndex , offsetTM ) . ToList ( ) ;
641+ for ( int i = 0 ; i != vertices . Count ; i ++ )
642+ {
643+ int bi = vertices [ i ] . BaseIndex ;
644+ result . Add ( new GlobalVertex ( )
641645 {
642- int bi = vertices [ i ] . BaseIndex ;
643- yield return new GlobalVertex ( )
644- {
645- BaseIndex = bi ,
646- Position = points [ bi ]
647- } ;
648- }
646+ BaseIndex = bi ,
647+ Position = points [ bi ]
648+ } ) ;
649649 }
650+
651+ return result ;
650652 }
651653
652654 private IEnumerable < IPoint3 > ExtractMorphTargetPoints ( BabylonAbstractMesh babylonAbstractMesh , int morphIndex , IMatrix3 offsetTM )
0 commit comments