@safe-engine/pixi 8.8.1 → 8.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (146) hide show
  1. package/dist/app.d.ts +1 -0
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +20 -1
  4. package/dist/core/NodePool.d.ts +1 -1
  5. package/dist/core/Size.d.ts +0 -1
  6. package/dist/core/Size.d.ts.map +1 -1
  7. package/dist/dragonbones/DragonBonesComponent.d.ts +1 -1
  8. package/dist/dragonbones/DragonBonesComponent.d.ts.map +1 -1
  9. package/dist/dragonbones/DragonBonesComponent.js +1 -1
  10. package/dist/dragonbones/DragonBonesSystem.d.ts.map +1 -1
  11. package/dist/dragonbones/DragonBonesSystem.js +1 -1
  12. package/dist/dragonbones/db-pixi/PixiArmatureDisplay.d.ts +59 -0
  13. package/dist/dragonbones/db-pixi/PixiArmatureDisplay.d.ts.map +1 -0
  14. package/dist/dragonbones/db-pixi/PixiArmatureDisplay.js +180 -0
  15. package/dist/dragonbones/db-pixi/PixiFactory.d.ts +87 -0
  16. package/dist/dragonbones/db-pixi/PixiFactory.d.ts.map +1 -0
  17. package/dist/dragonbones/db-pixi/PixiFactory.js +159 -0
  18. package/dist/dragonbones/db-pixi/PixiSlot.d.ts +31 -0
  19. package/dist/dragonbones/db-pixi/PixiSlot.d.ts.map +1 -0
  20. package/dist/dragonbones/db-pixi/PixiSlot.js +332 -0
  21. package/dist/dragonbones/db-pixi/PixiTextureAtlasData.d.ts +38 -0
  22. package/dist/dragonbones/db-pixi/PixiTextureAtlasData.d.ts.map +1 -0
  23. package/dist/dragonbones/db-pixi/PixiTextureAtlasData.js +85 -0
  24. package/dist/dragonbones/db-pixi/index.d.ts +5 -0
  25. package/dist/dragonbones/db-pixi/index.d.ts.map +1 -0
  26. package/dist/dragonbones/db-pixi/index.js +4 -0
  27. package/dist/dragonbones/dragonBones/animation/Animation.d.ts +241 -0
  28. package/dist/dragonbones/dragonBones/animation/Animation.d.ts.map +1 -0
  29. package/dist/dragonbones/dragonBones/animation/Animation.js +692 -0
  30. package/dist/dragonbones/dragonBones/animation/AnimationState.d.ts +323 -0
  31. package/dist/dragonbones/dragonBones/animation/AnimationState.d.ts.map +1 -0
  32. package/dist/dragonbones/dragonBones/animation/AnimationState.js +1161 -0
  33. package/dist/dragonbones/dragonBones/animation/BaseTimelineState.d.ts +100 -0
  34. package/dist/dragonbones/dragonBones/animation/BaseTimelineState.d.ts.map +1 -0
  35. package/dist/dragonbones/dragonBones/animation/BaseTimelineState.js +479 -0
  36. package/dist/dragonbones/dragonBones/animation/IAnimatable.d.ts +38 -0
  37. package/dist/dragonbones/dragonBones/animation/IAnimatable.d.ts.map +1 -0
  38. package/dist/dragonbones/dragonBones/animation/IAnimatable.js +9 -0
  39. package/dist/dragonbones/dragonBones/animation/TimelineState.d.ts +159 -0
  40. package/dist/dragonbones/dragonBones/animation/TimelineState.d.ts.map +1 -0
  41. package/dist/dragonbones/dragonBones/animation/TimelineState.js +998 -0
  42. package/dist/dragonbones/dragonBones/animation/WorldClock.d.ts +74 -0
  43. package/dist/dragonbones/dragonBones/animation/WorldClock.d.ts.map +1 -0
  44. package/dist/dragonbones/dragonBones/animation/WorldClock.js +162 -0
  45. package/dist/dragonbones/dragonBones/armature/Armature.d.ts +314 -0
  46. package/dist/dragonbones/dragonBones/armature/Armature.d.ts.map +1 -0
  47. package/dist/dragonbones/dragonBones/armature/Armature.js +650 -0
  48. package/dist/dragonbones/dragonBones/armature/Bone.d.ts +123 -0
  49. package/dist/dragonbones/dragonBones/armature/Bone.d.ts.map +1 -0
  50. package/dist/dragonbones/dragonBones/armature/Bone.js +438 -0
  51. package/dist/dragonbones/dragonBones/armature/Constraint.d.ts +99 -0
  52. package/dist/dragonbones/dragonBones/armature/Constraint.d.ts.map +1 -0
  53. package/dist/dragonbones/dragonBones/armature/Constraint.js +672 -0
  54. package/dist/dragonbones/dragonBones/armature/IArmatureProxy.d.ts +47 -0
  55. package/dist/dragonbones/dragonBones/armature/IArmatureProxy.d.ts.map +1 -0
  56. package/dist/dragonbones/dragonBones/armature/IArmatureProxy.js +1 -0
  57. package/dist/dragonbones/dragonBones/armature/Slot.d.ts +357 -0
  58. package/dist/dragonbones/dragonBones/armature/Slot.d.ts.map +1 -0
  59. package/dist/dragonbones/dragonBones/armature/Slot.js +1009 -0
  60. package/dist/dragonbones/dragonBones/armature/Surface.d.ts +41 -0
  61. package/dist/dragonbones/dragonBones/armature/Surface.d.ts.map +1 -0
  62. package/dist/dragonbones/dragonBones/armature/Surface.js +463 -0
  63. package/dist/dragonbones/dragonBones/armature/TransformObject.d.ts +80 -0
  64. package/dist/dragonbones/dragonBones/armature/TransformObject.d.ts.map +1 -0
  65. package/dist/dragonbones/dragonBones/armature/TransformObject.js +77 -0
  66. package/dist/dragonbones/dragonBones/core/BaseObject.d.ts +53 -0
  67. package/dist/dragonbones/dragonBones/core/BaseObject.d.ts.map +1 -0
  68. package/dist/dragonbones/dragonBones/core/BaseObject.js +130 -0
  69. package/dist/dragonbones/dragonBones/core/DragonBones.d.ts +236 -0
  70. package/dist/dragonbones/dragonBones/core/DragonBones.d.ts.map +1 -0
  71. package/dist/dragonbones/dragonBones/core/DragonBones.js +61 -0
  72. package/dist/dragonbones/dragonBones/event/EventObject.d.ts +143 -0
  73. package/dist/dragonbones/dragonBones/event/EventObject.d.ts.map +1 -0
  74. package/dist/dragonbones/dragonBones/event/EventObject.js +99 -0
  75. package/dist/dragonbones/dragonBones/event/IEventDispatcher.d.ts +48 -0
  76. package/dist/dragonbones/dragonBones/event/IEventDispatcher.d.ts.map +1 -0
  77. package/dist/dragonbones/dragonBones/event/IEventDispatcher.js +1 -0
  78. package/dist/dragonbones/dragonBones/factory/BaseFactory.d.ts +292 -0
  79. package/dist/dragonbones/dragonBones/factory/BaseFactory.d.ts.map +1 -0
  80. package/dist/dragonbones/dragonBones/factory/BaseFactory.js +735 -0
  81. package/dist/dragonbones/dragonBones/geom/ColorTransform.d.ts +17 -0
  82. package/dist/dragonbones/dragonBones/geom/ColorTransform.d.ts.map +1 -0
  83. package/dist/dragonbones/dragonBones/geom/ColorTransform.js +33 -0
  84. package/dist/dragonbones/dragonBones/geom/Curve.d.ts +10 -0
  85. package/dist/dragonbones/dragonBones/geom/Curve.d.ts.map +1 -0
  86. package/dist/dragonbones/dragonBones/geom/Curve.js +26 -0
  87. package/dist/dragonbones/dragonBones/geom/Matrix.d.ts +105 -0
  88. package/dist/dragonbones/dragonBones/geom/Matrix.d.ts.map +1 -0
  89. package/dist/dragonbones/dragonBones/geom/Matrix.js +207 -0
  90. package/dist/dragonbones/dragonBones/geom/Point.d.ts +38 -0
  91. package/dist/dragonbones/dragonBones/geom/Point.d.ts.map +1 -0
  92. package/dist/dragonbones/dragonBones/geom/Point.js +31 -0
  93. package/dist/dragonbones/dragonBones/geom/Rectangle.d.ts +53 -0
  94. package/dist/dragonbones/dragonBones/geom/Rectangle.d.ts.map +1 -0
  95. package/dist/dragonbones/dragonBones/geom/Rectangle.js +37 -0
  96. package/dist/dragonbones/dragonBones/geom/Transform.d.ts +102 -0
  97. package/dist/dragonbones/dragonBones/geom/Transform.d.ts.map +1 -0
  98. package/dist/dragonbones/dragonBones/geom/Transform.js +170 -0
  99. package/dist/dragonbones/dragonBones/index.d.ts +37 -0
  100. package/dist/dragonbones/dragonBones/index.d.ts.map +1 -0
  101. package/dist/dragonbones/dragonBones/index.js +36 -0
  102. package/dist/dragonbones/dragonBones/model/AnimationConfig.d.ts +162 -0
  103. package/dist/dragonbones/dragonBones/model/AnimationConfig.d.ts.map +1 -0
  104. package/dist/dragonbones/dragonBones/model/AnimationConfig.js +81 -0
  105. package/dist/dragonbones/dragonBones/model/AnimationData.d.ts +174 -0
  106. package/dist/dragonbones/dragonBones/model/AnimationData.d.ts.map +1 -0
  107. package/dist/dragonbones/dragonBones/model/AnimationData.js +256 -0
  108. package/dist/dragonbones/dragonBones/model/ArmatureData.d.ts +319 -0
  109. package/dist/dragonbones/dragonBones/model/ArmatureData.d.ts.map +1 -0
  110. package/dist/dragonbones/dragonBones/model/ArmatureData.js +450 -0
  111. package/dist/dragonbones/dragonBones/model/BoundingBoxData.d.ts +188 -0
  112. package/dist/dragonbones/dragonBones/model/BoundingBoxData.d.ts.map +1 -0
  113. package/dist/dragonbones/dragonBones/model/BoundingBoxData.js +500 -0
  114. package/dist/dragonbones/dragonBones/model/CanvasData.d.ts +15 -0
  115. package/dist/dragonbones/dragonBones/model/CanvasData.d.ts.map +1 -0
  116. package/dist/dragonbones/dragonBones/model/CanvasData.js +17 -0
  117. package/dist/dragonbones/dragonBones/model/ConstraintData.d.ts +46 -0
  118. package/dist/dragonbones/dragonBones/model/ConstraintData.d.ts.map +1 -0
  119. package/dist/dragonbones/dragonBones/model/ConstraintData.js +57 -0
  120. package/dist/dragonbones/dragonBones/model/DisplayData.d.ts +98 -0
  121. package/dist/dragonbones/dragonBones/model/DisplayData.d.ts.map +1 -0
  122. package/dist/dragonbones/dragonBones/model/DisplayData.js +174 -0
  123. package/dist/dragonbones/dragonBones/model/DragonBonesData.d.ts +108 -0
  124. package/dist/dragonbones/dragonBones/model/DragonBonesData.d.ts.map +1 -0
  125. package/dist/dragonbones/dragonBones/model/DragonBonesData.js +86 -0
  126. package/dist/dragonbones/dragonBones/model/SkinData.d.ts +40 -0
  127. package/dist/dragonbones/dragonBones/model/SkinData.d.ts.map +1 -0
  128. package/dist/dragonbones/dragonBones/model/SkinData.js +68 -0
  129. package/dist/dragonbones/dragonBones/model/TextureAtlasData.d.ts +73 -0
  130. package/dist/dragonbones/dragonBones/model/TextureAtlasData.d.ts.map +1 -0
  131. package/dist/dragonbones/dragonBones/model/TextureAtlasData.js +102 -0
  132. package/dist/dragonbones/dragonBones/model/UserData.d.ts +73 -0
  133. package/dist/dragonbones/dragonBones/model/UserData.d.ts.map +1 -0
  134. package/dist/dragonbones/dragonBones/model/UserData.js +101 -0
  135. package/dist/dragonbones/dragonBones/parser/BinaryDataParser.d.ts +29 -0
  136. package/dist/dragonbones/dragonBones/parser/BinaryDataParser.d.ts.map +1 -0
  137. package/dist/dragonbones/dragonBones/parser/BinaryDataParser.js +356 -0
  138. package/dist/dragonbones/dragonBones/parser/DataParser.d.ts +153 -0
  139. package/dist/dragonbones/dragonBones/parser/DataParser.d.ts.map +1 -0
  140. package/dist/dragonbones/dragonBones/parser/DataParser.js +283 -0
  141. package/dist/dragonbones/dragonBones/parser/ObjectDataParser.d.ts +130 -0
  142. package/dist/dragonbones/dragonBones/parser/ObjectDataParser.d.ts.map +1 -0
  143. package/dist/dragonbones/dragonBones/parser/ObjectDataParser.js +2098 -0
  144. package/dist/dragonbones/index.js +1 -1
  145. package/dist/helper/utils.js +1 -1
  146. package/package.json +3 -4
@@ -0,0 +1,332 @@
1
+ import * as PIXI from 'pixi.js';
2
+ import { MeshSimple, Sprite } from 'pixi.js';
3
+ import { BaseObject, Slot } from '../dragonBones';
4
+ import { PixiTextureAtlasData } from './PixiTextureAtlasData';
5
+ /**
6
+ * - The PixiJS slot.
7
+ * @version DragonBones 3.0
8
+ * @language en_US
9
+ */
10
+ export class PixiSlot extends Slot {
11
+ static toString() {
12
+ return '[class dragonBones.PixiSlot]';
13
+ }
14
+ _onClear() {
15
+ super._onClear();
16
+ this._textureScale = 1.0;
17
+ this._renderDisplay = null;
18
+ this._updateTransform = this._updateTransformV4;
19
+ }
20
+ _initDisplay(value, isRetain) {
21
+ // tslint:disable-next-line:no-unused-expression
22
+ // value
23
+ // tslint:disable-next-line:no-unused-expression
24
+ // isRetain
25
+ }
26
+ _disposeDisplay(value, isRelease) {
27
+ // tslint:disable-next-line:no-unused-expression
28
+ // value
29
+ if (!isRelease) {
30
+ ;
31
+ value.destroy();
32
+ }
33
+ }
34
+ _onUpdateDisplay() {
35
+ this._renderDisplay = (this._display ? this._display : this._rawDisplay);
36
+ }
37
+ _addDisplay() {
38
+ const container = this._armature.display;
39
+ container.addChild(this._renderDisplay);
40
+ }
41
+ _replaceDisplay(value) {
42
+ const container = this._armature.display;
43
+ const prevDisplay = value;
44
+ container.addChild(this._renderDisplay);
45
+ container.swapChildren(this._renderDisplay, prevDisplay);
46
+ container.removeChild(prevDisplay);
47
+ this._textureScale = 1.0;
48
+ }
49
+ _removeDisplay() {
50
+ this._renderDisplay.parent.removeChild(this._renderDisplay);
51
+ }
52
+ _updateZOrder() {
53
+ const container = this._armature.display;
54
+ const index = container.getChildIndex(this._renderDisplay);
55
+ if (index === this._zOrder) {
56
+ return;
57
+ }
58
+ container.addChildAt(this._renderDisplay, this._zOrder);
59
+ }
60
+ /**
61
+ * @internal
62
+ */
63
+ _updateVisible() {
64
+ this._renderDisplay.visible = this._parent.visible && this._visible;
65
+ }
66
+ _updateBlendMode() {
67
+ if (this._renderDisplay instanceof PIXI.Sprite) {
68
+ switch (this._blendMode) {
69
+ case 0 /* BlendMode.Normal */:
70
+ this._renderDisplay.blendMode = 'normal';
71
+ break;
72
+ case 1 /* BlendMode.Add */:
73
+ this._renderDisplay.blendMode = 'add';
74
+ break;
75
+ case 3 /* BlendMode.Darken */:
76
+ this._renderDisplay.blendMode = 'darken';
77
+ break;
78
+ case 4 /* BlendMode.Difference */:
79
+ this._renderDisplay.blendMode = 'difference';
80
+ break;
81
+ case 6 /* BlendMode.HardLight */:
82
+ this._renderDisplay.blendMode = 'hard-light';
83
+ break;
84
+ case 9 /* BlendMode.Lighten */:
85
+ this._renderDisplay.blendMode = 'lighten';
86
+ break;
87
+ case 10 /* BlendMode.Multiply */:
88
+ this._renderDisplay.blendMode = 'multiply';
89
+ break;
90
+ case 11 /* BlendMode.Overlay */:
91
+ this._renderDisplay.blendMode = 'overlay';
92
+ break;
93
+ case 12 /* BlendMode.Screen */:
94
+ this._renderDisplay.blendMode = 'screen';
95
+ break;
96
+ default:
97
+ break;
98
+ }
99
+ }
100
+ // TODO child armature.
101
+ }
102
+ _updateColor() {
103
+ const alpha = this._colorTransform.alphaMultiplier * this._globalAlpha;
104
+ this._renderDisplay.alpha = alpha;
105
+ if (this._renderDisplay instanceof Sprite || this._renderDisplay instanceof MeshSimple) {
106
+ const color = (Math.round(this._colorTransform.redMultiplier * 0xff) << 16) +
107
+ (Math.round(this._colorTransform.greenMultiplier * 0xff) << 8) +
108
+ Math.round(this._colorTransform.blueMultiplier * 0xff);
109
+ this._renderDisplay.tint = color;
110
+ }
111
+ // TODO child armature.
112
+ }
113
+ _updateFrame() {
114
+ let currentTextureData = this._textureData;
115
+ if (this._displayIndex >= 0 && this._display !== null && currentTextureData !== null) {
116
+ let currentTextureAtlasData = currentTextureData.parent;
117
+ if (this._armature.replacedTexture !== null) {
118
+ // Update replaced texture atlas.
119
+ if (this._armature._replaceTextureAtlasData === null) {
120
+ currentTextureAtlasData = BaseObject.borrowObject(PixiTextureAtlasData);
121
+ currentTextureAtlasData.copyFrom(currentTextureData.parent);
122
+ currentTextureAtlasData.renderTexture = this._armature.replacedTexture;
123
+ this._armature._replaceTextureAtlasData = currentTextureAtlasData;
124
+ }
125
+ else {
126
+ currentTextureAtlasData = this._armature._replaceTextureAtlasData;
127
+ }
128
+ currentTextureData = currentTextureAtlasData.getTexture(currentTextureData.name);
129
+ }
130
+ const renderTexture = currentTextureData.renderTexture;
131
+ if (renderTexture !== null) {
132
+ if (this._geometryData !== null) {
133
+ // Mesh.
134
+ const data = this._geometryData.data;
135
+ const intArray = data.intArray;
136
+ const floatArray = data.floatArray;
137
+ const vertexCount = intArray[this._geometryData.offset + 0 /* BinaryOffset.GeometryVertexCount */];
138
+ const triangleCount = intArray[this._geometryData.offset + 1 /* BinaryOffset.GeometryTriangleCount */];
139
+ let vertexOffset = intArray[this._geometryData.offset + 2 /* BinaryOffset.GeometryFloatOffset */];
140
+ if (vertexOffset < 0) {
141
+ vertexOffset += 65536; // Fixed out of bouds bug.
142
+ }
143
+ const uvOffset = vertexOffset + vertexCount * 2;
144
+ const scale = this._armature._armatureData.scale;
145
+ const meshDisplay = this._renderDisplay;
146
+ const vertices = new Float32Array(vertexCount * 2);
147
+ const uvs = new Float32Array(vertexCount * 2);
148
+ const indices = new Uint16Array(triangleCount * 3);
149
+ for (let i = 0, l = vertexCount * 2; i < l; ++i) {
150
+ vertices[i] = floatArray[vertexOffset + i] * scale;
151
+ }
152
+ for (let i = 0; i < triangleCount * 3; ++i) {
153
+ indices[i] = intArray[this._geometryData.offset + 4 /* BinaryOffset.GeometryVertexIndices */ + i];
154
+ }
155
+ for (let i = 0, l = vertexCount * 2; i < l; i += 2) {
156
+ const u = floatArray[uvOffset + i];
157
+ const v = floatArray[uvOffset + i + 1];
158
+ if (currentTextureData.rotated) {
159
+ uvs[i] = 1 - v;
160
+ uvs[i + 1] = u;
161
+ }
162
+ else {
163
+ uvs[i] = u;
164
+ uvs[i + 1] = v;
165
+ }
166
+ }
167
+ this._textureScale = 1.0;
168
+ meshDisplay.texture = renderTexture;
169
+ meshDisplay.vertices = vertices;
170
+ meshDisplay.geometry.uvs = uvs;
171
+ meshDisplay.geometry.indices = indices;
172
+ const isSkinned = this._geometryData.weight !== null;
173
+ const isSurface = this._parent._boneData.type !== 0 /* BoneType.Bone */;
174
+ if (isSkinned || isSurface) {
175
+ this._identityTransform();
176
+ }
177
+ }
178
+ else {
179
+ // Normal texture.
180
+ this._textureScale = currentTextureData.parent.scale * this._armature._armatureData.scale;
181
+ const normalDisplay = this._renderDisplay;
182
+ normalDisplay.texture = renderTexture;
183
+ }
184
+ this._visibleDirty = true;
185
+ return;
186
+ }
187
+ }
188
+ if (this._geometryData !== null) {
189
+ const meshDisplay = this._renderDisplay;
190
+ meshDisplay.texture = null;
191
+ meshDisplay.x = 0.0;
192
+ meshDisplay.y = 0.0;
193
+ meshDisplay.visible = false;
194
+ }
195
+ else {
196
+ const normalDisplay = this._renderDisplay;
197
+ normalDisplay.texture = null;
198
+ normalDisplay.x = 0.0;
199
+ normalDisplay.y = 0.0;
200
+ normalDisplay.visible = false;
201
+ }
202
+ }
203
+ _updateMesh() {
204
+ const scale = this._armature._armatureData.scale;
205
+ const deformVertices = this._displayFrame.deformVertices;
206
+ const bones = this._geometryBones;
207
+ const geometryData = this._geometryData;
208
+ const weightData = geometryData.weight;
209
+ const hasDeform = deformVertices.length > 0 && geometryData.inheritDeform;
210
+ const meshDisplay = this._renderDisplay;
211
+ if (weightData !== null) {
212
+ const data = geometryData.data;
213
+ const intArray = data.intArray;
214
+ const floatArray = data.floatArray;
215
+ const vertexCount = intArray[geometryData.offset + 0 /* BinaryOffset.GeometryVertexCount */];
216
+ let weightFloatOffset = intArray[weightData.offset + 1 /* BinaryOffset.WeigthFloatOffset */];
217
+ if (weightFloatOffset < 0) {
218
+ weightFloatOffset += 65536; // Fixed out of bouds bug.
219
+ }
220
+ for (let i = 0, iD = 0, iB = weightData.offset + 2 /* BinaryOffset.WeigthBoneIndices */ + bones.length, iV = weightFloatOffset, iF = 0; i < vertexCount; ++i) {
221
+ const boneCount = intArray[iB++];
222
+ let xG = 0.0, yG = 0.0;
223
+ for (let j = 0; j < boneCount; ++j) {
224
+ const boneIndex = intArray[iB++];
225
+ const bone = bones[boneIndex];
226
+ if (bone !== null) {
227
+ const matrix = bone.globalTransformMatrix;
228
+ const weight = floatArray[iV++];
229
+ let xL = floatArray[iV++] * scale;
230
+ let yL = floatArray[iV++] * scale;
231
+ if (hasDeform) {
232
+ xL += deformVertices[iF++];
233
+ yL += deformVertices[iF++];
234
+ }
235
+ xG += (matrix.a * xL + matrix.c * yL + matrix.tx) * weight;
236
+ yG += (matrix.b * xL + matrix.d * yL + matrix.ty) * weight;
237
+ }
238
+ }
239
+ meshDisplay.vertices[iD++] = xG;
240
+ meshDisplay.vertices[iD++] = yG;
241
+ }
242
+ }
243
+ else {
244
+ const isSurface = this._parent._boneData.type !== 0 /* BoneType.Bone */;
245
+ const data = geometryData.data;
246
+ const intArray = data.intArray;
247
+ const floatArray = data.floatArray;
248
+ const vertexCount = intArray[geometryData.offset + 0 /* BinaryOffset.GeometryVertexCount */];
249
+ let vertexOffset = intArray[geometryData.offset + 2 /* BinaryOffset.GeometryFloatOffset */];
250
+ if (vertexOffset < 0) {
251
+ vertexOffset += 65536; // Fixed out of bouds bug.
252
+ }
253
+ for (let i = 0, l = vertexCount * 2; i < l; i += 2) {
254
+ let x = floatArray[vertexOffset + i] * scale;
255
+ let y = floatArray[vertexOffset + i + 1] * scale;
256
+ if (hasDeform) {
257
+ x += deformVertices[i];
258
+ y += deformVertices[i + 1];
259
+ }
260
+ if (isSurface) {
261
+ const matrix = this._parent._getGlobalTransformMatrix(x, y);
262
+ meshDisplay.vertices[i] = matrix.a * x + matrix.c * y + matrix.tx;
263
+ meshDisplay.vertices[i + 1] = matrix.b * x + matrix.d * y + matrix.ty;
264
+ }
265
+ else {
266
+ meshDisplay.vertices[i] = x;
267
+ meshDisplay.vertices[i + 1] = y;
268
+ }
269
+ }
270
+ }
271
+ }
272
+ _updateTransform() {
273
+ throw new Error();
274
+ }
275
+ /*
276
+ protected _updateTransformV3(): void {
277
+ this.updateGlobalTransform(); // Update transform.
278
+
279
+ const transform = this.global;
280
+
281
+ if (this._renderDisplay === this._rawDisplay || this._renderDisplay === this._meshDisplay) {
282
+ const x = transform.x - (this.globalTransformMatrix.a * this._pivotX + this.globalTransformMatrix.c * this._pivotY);
283
+ const y = transform.y - (this.globalTransformMatrix.b * this._pivotX + this.globalTransformMatrix.d * this._pivotY);
284
+ this._renderDisplay.worldTransform.setTransform(
285
+ x, y,
286
+ 0, 0, //TODO: NOTE: Add pivot
287
+ transform.scaleX * this._textureScale, transform.scaleY * this._textureScale,
288
+ transform.rotation,
289
+ transform.skew, 0.0,
290
+ );
291
+ }
292
+ else {
293
+ this._renderDisplay.position.set(transform.x, transform.y);
294
+ this._renderDisplay.rotation = transform.rotation;
295
+ this._renderDisplay.skew.set(transform.skew, 0.0);
296
+ this._renderDisplay.scale.set(transform.scaleX, transform.scaleY);
297
+ }
298
+ }
299
+ */
300
+ _updateTransformV4() {
301
+ this.updateGlobalTransform(); // Update transform.
302
+ const transform = this.global;
303
+ if (this._renderDisplay === this._rawDisplay || this._renderDisplay === this._meshDisplay) {
304
+ //console.log("PixiSlot._updateTransformV4", "Raw/Mesh", this.name);
305
+ const x = transform.x - (this.globalTransformMatrix.a * this._pivotX + this.globalTransformMatrix.c * this._pivotY);
306
+ const y = transform.y - (this.globalTransformMatrix.b * this._pivotX + this.globalTransformMatrix.d * this._pivotY);
307
+ /*
308
+ this._renderDisplay.worldTransform.setTransform(
309
+ x, y,
310
+ 0, 0, //TODO: NOTE: Add pivot
311
+ transform.scaleX * this._textureScale, transform.scaleY * this._textureScale,
312
+ transform.rotation,
313
+ -transform.skew, 0.0
314
+ );
315
+ */
316
+ this._renderDisplay.position.set(x, y);
317
+ this._renderDisplay.rotation = transform.rotation;
318
+ this._renderDisplay.skew.set(-transform.skew, 0.0);
319
+ this._renderDisplay.scale.set(transform.scaleX, transform.scaleY);
320
+ }
321
+ else {
322
+ //console.log("PixiSlot._updateTransformV4", "Sprite", this.name);
323
+ this._renderDisplay.position.set(transform.x, transform.y);
324
+ this._renderDisplay.rotation = transform.rotation;
325
+ this._renderDisplay.skew.set(-transform.skew, 0.0);
326
+ this._renderDisplay.scale.set(transform.scaleX, transform.scaleY);
327
+ }
328
+ }
329
+ _identityTransform() {
330
+ this._renderDisplay.worldTransform.setTransform(0.0, 0.0, 0, 0, 1.0, 1.0, 0.0, 0.0, 0.0);
331
+ }
332
+ }
@@ -0,0 +1,38 @@
1
+ import * as PIXI from 'pixi.js';
2
+ import { Texture } from 'pixi.js';
3
+ import { TextureAtlasData, TextureData } from '../dragonBones';
4
+ /**
5
+ * - The PixiJS texture atlas data.
6
+ * @version DragonBones 3.0
7
+ * @language en_US
8
+ */
9
+ export declare class PixiTextureAtlasData extends TextureAtlasData {
10
+ static toString(): string;
11
+ private _renderTexture;
12
+ protected _onClear(): void;
13
+ /**
14
+ * @inheritDoc
15
+ */
16
+ createTexture(): TextureData;
17
+ /**
18
+ * - The PixiJS texture.
19
+ * @version DragonBones 3.0
20
+ * @language en_US
21
+ */
22
+ /**
23
+ * - PixiJS 贴图。
24
+ * @version DragonBones 3.0
25
+ * @language zh_CN
26
+ */
27
+ get renderTexture(): Texture | null;
28
+ set renderTexture(value: Texture | null);
29
+ }
30
+ /**
31
+ * @internal
32
+ */
33
+ export declare class PixiTextureData extends TextureData {
34
+ static toString(): string;
35
+ renderTexture: PIXI.Texture | null;
36
+ protected _onClear(): void;
37
+ }
38
+ //# sourceMappingURL=PixiTextureAtlasData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PixiTextureAtlasData.d.ts","sourceRoot":"","sources":["../../../src/dragonbones/db-pixi/PixiTextureAtlasData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAa,OAAO,EAAE,MAAM,SAAS,CAAA;AAC5C,OAAO,EAAc,gBAAgB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC1E;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,gBAAgB;WAC1C,QAAQ,IAAI,MAAM;IAIhC,OAAO,CAAC,cAAc,CAAuB;IAE7C,SAAS,CAAC,QAAQ,IAAI,IAAI;IAS1B;;OAEG;IACI,aAAa,IAAI,WAAW;IAGnC;;;;OAIG;IACH;;;;OAIG;IACH,IAAW,aAAa,IAAI,OAAO,GAAG,IAAI,CAEzC;IACD,IAAW,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,EAwB7C;CACF;AACD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,WAAW;WAChC,QAAQ,IAAI,MAAM;IAIzB,aAAa,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAO;IAEhD,SAAS,CAAC,QAAQ,IAAI,IAAI;CAS3B"}
@@ -0,0 +1,85 @@
1
+ import { Rectangle, Texture } from 'pixi.js';
2
+ import { BaseObject, TextureAtlasData, TextureData } from '../dragonBones';
3
+ /**
4
+ * - The PixiJS texture atlas data.
5
+ * @version DragonBones 3.0
6
+ * @language en_US
7
+ */
8
+ export class PixiTextureAtlasData extends TextureAtlasData {
9
+ constructor() {
10
+ super(...arguments);
11
+ this._renderTexture = null; // Initial value.
12
+ }
13
+ static toString() {
14
+ return '[class dragonBones.PixiTextureAtlasData]';
15
+ }
16
+ _onClear() {
17
+ super._onClear();
18
+ if (this._renderTexture !== null) {
19
+ // this._renderTexture.dispose();
20
+ }
21
+ this._renderTexture = null;
22
+ }
23
+ /**
24
+ * @inheritDoc
25
+ */
26
+ createTexture() {
27
+ return BaseObject.borrowObject(PixiTextureData);
28
+ }
29
+ /**
30
+ * - The PixiJS texture.
31
+ * @version DragonBones 3.0
32
+ * @language en_US
33
+ */
34
+ /**
35
+ * - PixiJS 贴图。
36
+ * @version DragonBones 3.0
37
+ * @language zh_CN
38
+ */
39
+ get renderTexture() {
40
+ return this._renderTexture;
41
+ }
42
+ set renderTexture(value) {
43
+ if (this._renderTexture === value) {
44
+ return;
45
+ }
46
+ this._renderTexture = value;
47
+ if (this._renderTexture !== null) {
48
+ for (const k in this.textures) {
49
+ const textureData = this.textures[k];
50
+ textureData.renderTexture = new Texture({
51
+ source: this._renderTexture.source,
52
+ frame: new Rectangle(textureData.region.x, textureData.region.y, textureData.region.width, textureData.region.height),
53
+ orig: new Rectangle(textureData.region.x, textureData.region.y, textureData.region.width, textureData.region.height),
54
+ trim: new Rectangle(0, 0, textureData.region.width, textureData.region.height),
55
+ rotate: textureData.rotated ? 2 : 0,
56
+ });
57
+ }
58
+ }
59
+ else {
60
+ for (const k in this.textures) {
61
+ const textureData = this.textures[k];
62
+ textureData.renderTexture = null;
63
+ }
64
+ }
65
+ }
66
+ }
67
+ /**
68
+ * @internal
69
+ */
70
+ export class PixiTextureData extends TextureData {
71
+ constructor() {
72
+ super(...arguments);
73
+ this.renderTexture = null; // Initial value.
74
+ }
75
+ static toString() {
76
+ return '[class dragonBones.PixiTextureData]';
77
+ }
78
+ _onClear() {
79
+ super._onClear();
80
+ if (this.renderTexture !== null) {
81
+ this.renderTexture.destroy(false);
82
+ }
83
+ this.renderTexture = null;
84
+ }
85
+ }
@@ -0,0 +1,5 @@
1
+ export * from './PixiArmatureDisplay';
2
+ export * from './PixiFactory';
3
+ export * from './PixiSlot';
4
+ export * from './PixiTextureAtlasData';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dragonbones/db-pixi/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,wBAAwB,CAAA"}
@@ -0,0 +1,4 @@
1
+ export * from './PixiArmatureDisplay';
2
+ export * from './PixiFactory';
3
+ export * from './PixiSlot';
4
+ export * from './PixiTextureAtlasData';