File tree Expand file tree Collapse file tree 4 files changed +28
-16
lines changed
DragonBones/src/dragonBones/objects
Starling_1.x/src/dragonBones/starling
Starling_2.x/src/dragonBones/starling Expand file tree Collapse file tree 4 files changed +28
-16
lines changed Original file line number Diff line number Diff line change 1010.flexProperties
1111.project
1212.flexLibProperties
13- .swf
14- .fla
13+ * .swf
14+ * .fla
Original file line number Diff line number Diff line change 541541 if (meshData. skinned)
542542 {
543543 var vertices: Vector .< Number > = new Vector .< Number > ();
544- for (var i: uint = 0 , l: uint = frame . vertices. length ; i < l; i += 2 )
544+
545+ for (var i: uint = 0 , l: uint = meshData. vertices. length ; i < l; ++ i)
545546 {
546- const vertexBoneData: VertexBoneData = meshData. vertexBones[ i / 2 ];
547- helpPoint. x = frame . vertices[ i];
548- helpPoint. y = frame . vertices[ i + 1 ];
547+ const vertexBoneData: VertexBoneData = meshData. vertexBones[ i];
548+
549+ if (i * 2 < frame . offset || i * 2 - frame . offset >= frame . vertices. length )
550+ {
551+ helpPoint. x = 0 ;
552+ helpPoint. y = 0 ;
553+ }
554+ else
555+ {
556+ helpPoint. x = frame . vertices[ i * 2 - frame . offset ];
557+ helpPoint. y = frame . vertices[ i * 2 + 1 - frame . offset ];
558+ }
559+
549560 var result : Point = meshData. slotPose. deltaTransformPoint (helpPoint);
550561 for each (var boneIndex: uint in vertexBoneData. indices)
551562 {
554565 }
555566 }
556567
568+ frame . offset = 0 ;
557569 vertices. fixed = true ;
558570 frame . vertices = vertices;
559571 }
Original file line number Diff line number Diff line change 253253 if (meshData. skinned)
254254 {
255255 const bones: Vector .< Bone> = this . _armature . getBones(false );
256+ var iF: uint = 0 ;
256257 for (i = 0 , l = meshData. numVertex; i < l; i++ )
257258 {
258259 const vertexBoneData: VertexBoneData = meshData. vertexBones[ i];
259260 var j: uint = 0 ;
260- var jD: uint = 0 ;
261261 var xL: Number = 0 ;
262262 var yL: Number = 0 ;
263263 var xG: Number = 0 ;
271271 const point: Point = vertexBoneData. vertices[ j];
272272 const weight : Number = vertexBoneData. weights[ j];
273273
274- if (! this . _ffdVertices || iD < _ffdOffset || iD >= this . _ffdVertices . length )
274+ if (! this . _ffdVertices || iF < _ffdOffset || iF >= this . _ffdVertices . length )
275275 {
276276 xL = point. x ;
277277 yL = point. y ;
278278 }
279279 else
280280 {
281- xL = point. x + this . _ffdVertices [ iD - _ffdOffset + jD ];
282- yL = point. y + this . _ffdVertices [ iD - _ffdOffset + jD + 1 ];
281+ xL = point. x + this . _ffdVertices [ iF ];
282+ yL = point. y + this . _ffdVertices [ iF + 1 ];
283283 }
284284
285285 xG += (matrix . a * xL + matrix . c * yL + matrix . tx ) * weight ;
286286 yG += (matrix . b * xL + matrix . d * yL + matrix . ty ) * weight ;
287287
288288 j++;
289- jD = j * 2 ;
289+ iF += 2 ;
290290 }
291291
292292 meshImage. mVertexData. setPosition(i, xG, yG);
Original file line number Diff line number Diff line change 222222 if (_meshData . skinned)
223223 {
224224 const bones: Vector .< Bone> = this . _armature . getBones(false );
225+ var iF: uint = 0 ;
225226 for (i = 0 , l = _meshData . numVertex; i < l; i++ )
226227 {
227228 const vertexBoneData: VertexBoneData = _meshData . vertexBones[ i];
228229 var j: uint = 0 ;
229- var jD: uint = 0 ;
230230 var xL: Number = 0 ;
231231 var yL: Number = 0 ;
232232 var xG: Number = 0 ;
240240 const point: Point = vertexBoneData. vertices[ j];
241241 const weight : Number = vertexBoneData. weights[ j];
242242
243- if (! this . _ffdVertices || iD < _ffdOffset || iD >= this . _ffdVertices . length )
243+ if (! this . _ffdVertices || iF < _ffdOffset || iF >= this . _ffdVertices . length )
244244 {
245245 xL = point. x ;
246246 yL = point. y ;
247247 }
248248 else
249249 {
250- xL = point. x + this . _ffdVertices [ iD - _ffdOffset + jD ];
251- yL = point. y + this . _ffdVertices [ iD - _ffdOffset + jD + 1 ];
250+ xL = point. x + this . _ffdVertices [ iF ];
251+ yL = point. y + this . _ffdVertices [ iF + 1 ];
252252 }
253253
254254 xG += (matrix . a * xL + matrix . c * yL + matrix . tx ) * weight ;
255255 yG += (matrix . b * xL + matrix . d * yL + matrix . ty ) * weight ;
256256
257257 j++;
258- jD = j * 2 ;
258+ iF += 2 ;
259259 }
260260
261261 style . setVertexPosition(i, xG, yG);
You can’t perform that action at this time.
0 commit comments