Thx guys! I used double-buffering like in Ryan's code and it worked like a charm!
M On Jul 25, 4:01 am, Ryan Sattler <xgravi...@gmail.com> wrote: > I've been working on a game with Clojure/Swing lately and the simplest > way to avoid flashing is to draw to a bufferedImage first, then draw > that bufferedImage all at once. This means that parts of the screen > that don't change won't be briefly overwritten by the background > color, avoiding flashing. Here's some code: > > (defn render [game window] > (let [#^BufferedImage image (.createImage window window-width window- > height) > #^Graphics gfx (.createGraphics image) > #^Graphics2D gfx2 (.getGraphics #^JFrame window)] > > (render-background gfx) > ;draw more stuff on gfx here, eg, your draw-boid would go here > > (.drawImage gfx2 image 0 0 window))) ;finally draws the buffered > image to the screen all at once > > -- > Ryan Sattler -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en