topical media & game development

talk show tell print

graphic-processing-site-examples-Topics-Effects-UnlimitedSprites-UnlimitedSprites.pde / pde



  
Unlimited Sprites Demo Effect by luis2048. An infinate number of sprites drawn to screen. It's basically a flick-book effect; you draw the same sprite in different positions on different bufffer 'screens' and flip between them. When you've drawn on all frames, you loop back to the beginning and repeat.

  
  
  PGraphics[] spriteFrames = new PGraphics[6];
  PImage sprite;
  
  float x, y;
  float xang = 0.0;
  float yang = 0.0;
  int surf = 0;
  
  void setup() {
    size(640, 360);
    noSmooth();
    background(0);
    
    // Create sprite
    sprite=loadImage("Aqua-Ball-48x48.png");
  
    // Create blank surfaces to draw on
    for (int i = 0; i < spriteFrames.length; i++)  {
      spriteFrames[i] = createGraphics(width, height, JAVA2D);
    }   
  }
  
  void draw()
  {
    background(0);
    
    // Get X, Y positions
    x = (width/2)*sin((radians(xang))*0.95);
    y = (height/2)*cos((radians(yang))*0.97);
  
    // Inc the angle of the sine
    xang += 1.17;
    yang += 1.39;
  
    // Blit our 'bob' on the 'active' surface
    spriteFrames[surf].beginDraw();
    spriteFrames[surf].image(sprite, x+(width/2)-32, y+(height/2)-32);
    spriteFrames[surf].endDraw();            
  
    // Blit the active surface to the screen
    image(spriteFrames[surf], 0, 0, width, height);
  
    // Inc the active surface number
    surf = (surf+1) % spriteFrames.length;
  
    // Display the results
    //image(spriteEffect, 0, 0, width, height); 
  }
  
  


(C) Æliens 20/2/2008

You may not copy or print any of this material without explicit permission of the author or the publisher. In case of other copyright issues, contact the author.