Wendybrot 1.1: Faster, more support, cleaner code


I didn’t intend to post an update to my XNA-based Mandelbrot set explorer quite this fast, but I felt bad that those without an Xbox 360 controller couldn’t use the program.  So I spent some time tonight adding keyboard support, doing some performance work, and tweaking a few things.  I added a fallback technique to the effect file so it will run on a VS 1.1 / PS 1.4 card, in case you don’t have a shader 2.0 card.  See the code for an example of how to do that sort of thing.  Of course, I used PIX for Windows to do the performance tuning — I had been making about 5000 Direct3D calls per frame, and was able to get it down to more like 2000.  Then I changed from using 256×256 pixel nodes to 128×128 nodes (and thus had to draw a lot more nodes per frame), so the call count went up to more like 4000 — but it’s a much smarter 4000.


Here’s another teaser screenshot:


 Wendybrot Screenshot 4


When you download Wendybrot, I recommend that you modify the source code (it’s really easy) to start up in fullscreen mode at your favorite resolution — it’s much more immersive than windowed mode.


Again, let me know if you have feedback on this project.  I’m having some trouble getting the “email” link on this page to actually send me mail — So instead of using that, please just use a regular email tool to contact me at [XYZ]@hotmail.com, where [XYZ] is the name of my blog (with no spaces or punctuation).


-Mike

Wendybrot_1_1.zip


Comments (5)

  1. In this brave new world of XNA , we need to think about how our programs will look when displayed on

  2. I'm still enjoying my vacation in Texas. 80F weather the last several days, but dropping to low 40's

  3. I was playing around with particle behavior algorithms using XNA and came up with an app that’s fun to

  4. The Manders vs. Machine blog recently added a nice entry on Microbes: emergent behavior and "fake" antialiasing

  5. (Insert standard gosh-I-haven’t-blogged-in-a-while blurb here) I decided to improve my old XNA Mandelbrot