@@ -170,155 +170,13 @@ var ParticleRenderer = new Class({
170170 ) ;
171171 } ,
172172
173- /*
174- renderEmitter: function (emitter, camera)
175- {
176- var particles = emitter.alive;
177- var length = particles.length;
178-
179- if (length === 0)
180- {
181- return;
182- }
183-
184- if (emitter.blendMode !== this.manager.blendMode)
185- {
186- this.manager.setBlendMode(emitter.blendMode);
187- }
188-
189- var data = this.vertexDataBuffer;
190- var vbF32 = data.floatView;
191- var vbU32 = data.uintView;
192- var vtxOffset = 0;
193-
194- var cameraMatrix = camera.matrix.matrix;
195- var cma = cameraMatrix[0];
196- var cmb = cameraMatrix[1];
197- var cmc = cameraMatrix[2];
198- var cmd = cameraMatrix[3];
199- var cme = cameraMatrix[4];
200- var cmf = cameraMatrix[5];
201-
202- var elementCount = this.elementCount;
203-
204- var particleCount = 0;
205- var batchCount = Math.ceil(length / CONST.MAX);
206-
207- var renderTarget = emitter.renderTarget;
208-
209- var tempMatrix = this.tempMatrix;
210- var tempMatrixMatrix = tempMatrix.matrix;
211-
212- var particleOffset = 0;
213-
214- var cameraScrollX = camera.scrollX * emitter.scrollFactorX;
215- var cameraScrollY = camera.scrollY * emitter.scrollFactorY;
216-
217- this.manager.setRenderer(this, emitter.defaultFrame.source.glTexture, renderTarget);
218-
219- // If there are more particles than fit into a single batch (16000) then it flushes after each one
220- for (var batchIndex = 0; batchIndex < batchCount; ++batchIndex)
221- {
222- var batchSize = Math.min(length, CONST.MAX);
223-
224- for (var index = 0; index < batchSize; index++)
225- {
226- var particle = particles[particleOffset + index];
227-
228- var frame = particle.frame;
229- var uvs = frame.uvs;
230-
231- var x = -(frame.halfWidth);
232- var y = -(frame.halfHeight);
233-
234- var color = particle.color;
235-
236- var xw = x + frame.width;
237- var yh = y + frame.height;
238-
239- tempMatrix.applyITRS(
240- particle.x - cameraScrollX * particle.scrollFactorX,
241- particle.y - cameraScrollY * particle.scrollFactorY,
242- particle.rotation,
243- particle.scaleX,
244- particle.scaleY
245- );
246-
247- var sra = tempMatrixMatrix[0];
248- var srb = tempMatrixMatrix[1];
249- var src = tempMatrixMatrix[2];
250- var srd = tempMatrixMatrix[3];
251- var sre = tempMatrixMatrix[4];
252- var srf = tempMatrixMatrix[5];
253-
254- var mva = sra * cma + srb * cmc;
255- var mvb = sra * cmb + srb * cmd;
256- var mvc = src * cma + srd * cmc;
257- var mvd = src * cmb + srd * cmd;
258- var mve = sre * cma + srf * cmc + cme;
259- var mvf = sre * cmb + srf * cmd + cmf;
260-
261- var tx0 = x * mva + y * mvc + mve;
262- var ty0 = x * mvb + y * mvd + mvf;
263- var tx1 = x * mva + yh * mvc + mve;
264- var ty1 = x * mvb + yh * mvd + mvf;
265- var tx2 = xw * mva + yh * mvc + mve;
266- var ty2 = xw * mvb + yh * mvd + mvf;
267- var tx3 = xw * mva + y * mvc + mve;
268- var ty3 = xw * mvb + y * mvd + mvf;
269-
270- vtxOffset = data.allocate(20);
271- elementCount += 6;
272-
273- // Top Left
274- vbF32[vtxOffset++] = tx0;
275- vbF32[vtxOffset++] = ty0;
276- vbF32[vtxOffset++] = uvs.x0;
277- vbF32[vtxOffset++] = uvs.y0;
278- vbU32[vtxOffset++] = color;
279-
280- // Bottom Left
281- vbF32[vtxOffset++] = tx1;
282- vbF32[vtxOffset++] = ty1;
283- vbF32[vtxOffset++] = uvs.x1;
284- vbF32[vtxOffset++] = uvs.y1;
285- vbU32[vtxOffset++] = color;
286-
287- // Bottom Right
288- vbF32[vtxOffset++] = tx2;
289- vbF32[vtxOffset++] = ty2;
290- vbF32[vtxOffset++] = uvs.x2;
291- vbF32[vtxOffset++] = uvs.y2;
292- vbU32[vtxOffset++] = color;
293-
294- // Top Right
295- vbF32[vtxOffset++] = tx3;
296- vbF32[vtxOffset++] = ty3;
297- vbF32[vtxOffset++] = uvs.x3;
298- vbF32[vtxOffset++] = uvs.y3;
299- vbU32[vtxOffset++] = color;
300- }
301-
302- particleOffset += batchSize;
303-
304- length -= batchSize;
305-
306- this.elementCount = elementCount;
307-
308- this.flush(undefined, renderTarget);
309-
310- elementCount = 0;
311- }
312- },
313- */
314-
315173 renderEmitterManager : function ( emitterManager , camera )
316174 {
317175 var renderTarget = emitterManager . renderTarget ;
318176
319177 this . manager . setRenderer ( this , emitterManager . defaultFrame . source . glTexture , renderTarget ) ;
320178
321- var emitters = emitterManager . emitters ;
179+ var emitters = emitterManager . emitters . list ;
322180
323181 for ( var i = 0 ; i < emitters . length ; i ++ )
324182 {
@@ -351,11 +209,8 @@ var ParticleRenderer = new Class({
351209
352210 var elementCount = this . elementCount ;
353211
354- var particleCount = 0 ;
355212 var batchCount = Math . ceil ( length / CONST . MAX ) ;
356213
357- // var renderTarget = emitter.renderTarget;
358-
359214 var tempMatrix = this . tempMatrix ;
360215 var tempMatrixMatrix = tempMatrix . matrix ;
361216
0 commit comments