You are not logged in.
Lost Password?


Register To Post



 Bottom   Previous Topic   Next Topic

#1
[ENTRY] Mandelbrot Explorer
Posted on: 2010/10/30 10:55
VUE(xpert)
Joined 2006/9/29
USA
267 Posts
CoderLong Time User (11 Years) PVBCC 2010 3rd
On a side note, before anyone says, "That's not a game!" this is not my "real" project. This is a little something I started working on last weekend. At first it was just a demo that had a crippling bug. After fixing the bug, I decided to develop it into a full blown app. Disappointingly, I know I'm not going to be able to finish my main project, but I want to enter at least one thing in the compo that's complete. This is my first foray into procedural graphics, and I used a different method than drawing to the frame buffers. Thus, the project source includes a nice little header file I made to do screen rendering using my method. All the information you should need is in the readme. Hope you like it!

(Let me know if you find any horrible bugs. )

Attach file:



png  mandelbrot.png (7.14 KB)
363_4ccbdc41e7aaa.png 384X224 px
zip mandelbrot.zip Size: 45.95 KB; Hits: 246
Top

#2
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/1 1:16
VUE(xpert)
Joined 2007/10/27
Sweden
399 Posts
ContributorLong Time User (9 Years) 40+ Game Ratings
To be honest I dont even know what this does but then again I am no VB game maker
Top

#3
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/1 3:30
PVB Elite
Joined 2003/7/26
USA
1404 Posts
PVBCC EntryCoderContributorSpecial AchievementTop10 PosterHOTY09 EntryLong Time User (14 Years) App Coder20+ Game RatingsPVBCC 2013 EntryPatreon Backer
Nice work, Fwirt! You totally surprised me with the unexpected Sierpinski triangle(/gasket/sieve) on the warning screen!

I'm really going to have fun exploring the BGMap drawing code!

Suggestions for improvement:
1. Some kind of instruction screen (although the readme is sufficient, I just tend not to read them before diving in )
2. Allow one to abort rendering.
Top

#4
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/1 9:31
VUE(xpert)
Joined 2006/9/29
USA
267 Posts
CoderLong Time User (11 Years) PVBCC 2010 3rd
Hmm... I guess I could have select bring up the instruction screen instead of hiding the cursor... But the problem with aborting a render would be that because of the way I have it drawing right now, if you stopped in the middle of the render, you would be halfway between two images. I guess I could keep track of the previous coordinates and just redraw the old screen at that point, but then you'd have to deal with the time that took, so it's just a messy situation. I'd double buffer if I could, but there's not enough char memory to double buffer a full screen with the BGMap direct draw method I'm showing off. (I talk about that problem in the readme.)

I'm glad you liked the Sierpinski, I had hoped that would be a nice surprise.
Top

#5
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/1 20:30
Nintendoid!
Joined 2008/10/19
USA
102 Posts
Long Time User (9 Years)
Firstly, I think this is a great idea! I've always been a fan of Mandelbrot's myself, so I like it!

So I just tried this on a FlashBoy Plus, and it is rather buggy. There are vertical lines, and the graphics "shake" left and right. But regardless, I really like the concept!
Top

#6
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/3 7:01
VUE(xpert)
Joined 2006/9/29
USA
267 Posts
CoderLong Time User (11 Years) PVBCC 2010 3rd
Quote:

wazzal wrote:
So I just tried this on a FlashBoy Plus, and it is rather buggy. There are vertical lines, and the graphics "shake" left and right. But regardless, I really like the concept!

Oooh, really? Sorry about that... It works flawlessly in mednafen. I wonder what's causing the vertical lines... Where do they appear? Does the screen shake only when rendering or the whole time?

*ahem*

Also, I have the feeling that people aren't reading README.TXT and consequently aren't figuring out the controls... This is a note to people who skip the readme: The most important control for this app is holding A and dragging a box around someplace on the edge of that weird shape. The whole point of the Mandelbrot set is that you can zoom in forever. It's kind of disappointing to me that the screenshot that KR155E chose for the front page only shows a zoom out... If you've never heard of the Mandelbrot set, here's a Wikipedia page, and here are a ton of examples of the cool things you can see if you spend some time with a program like this one. Following this post are some screenshots of what you can see if you play around with the compo entry... (Note that I pressed Select to disable the cursor. I left the overlay on so you could see where I was, but you can also disable that by pressing L. Do I really have to tell you to go over the readme at this point? )

Attach file:



png  2010-11-02-224845_384x224_scrot.png (12.55 KB)
363_4cd0f96c88abd.png 384X224 px

png  2010-11-02-225409_384x224_scrot.png (12.22 KB)
363_4cd0f9762eba5.png 384X224 px

png  2010-11-02-225145_384x224_scrot.png (11.58 KB)
363_4cd0f97f65178.png 384X224 px
Top

#7
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/3 7:34
Administrator
Joined 2000/1/8
Germany
2420 Posts
Highscore Top10Highscore Top ScoreCoder#1 PosterHOTY09 1stLong Time User (15 Years) App Coder90+ Game Ratings
Oh! So that's how you zoom in. Sorry, I have to admit that I was in a hurry and skipped the readme... Will replace that screenshot!
Top

#8
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/3 18:24
VUE(xpert)
Joined 2006/9/29
USA
267 Posts
CoderLong Time User (11 Years) PVBCC 2010 3rd
Hey, thanks KR155E! I was kind of worried that people were going to think my entry was really boring...
Top

#9
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/3 19:25
PVB Elite
Joined 2003/7/26
USA
1404 Posts
PVBCC EntryCoderContributorSpecial AchievementTop10 PosterHOTY09 EntryLong Time User (14 Years) App Coder20+ Game RatingsPVBCC 2013 EntryPatreon Backer
Quote:

Fwirt wrote:
Hey, thanks KR155E! I was kind of worried that people were going to think my entry was really boring...


Oh, yeah... it's a thrill-a-minute!

heh, only kidding! It's very impressive and makes a great addition both to the VB's library and to the pool of homebrew code. I hope you win, and I'm not just saying that.

I have to admit that I, too, had to look at the readme... probably because the last Mandelbrot explorer software I used ran in MS-DOS (on my 486), used 16-color VGA mode, and was made before the VB was even a twinkle in Mr. Yokoi's eye

I've got a question about your code, though: obviously, it's the fractal calculation code that makes it slower than real-time, but have you done any benchmarking (or algorithm analysis) on the BGMap-as-framebuffer code itself?
Top

#10
Re: [ENTRY] Mandelbrot Explorer
Posted on: 2010/11/4 2:13
VUE(xpert)
Joined 2006/9/29
USA
267 Posts
CoderLong Time User (11 Years) PVBCC 2010 3rd
Quote:

RunnerPack wrote:
Oh, yeah... it's a thrill-a-minute!

Well when you zoom really deep, it might take it that long to render...

I haven't done any benchmarking, but the drawing code should be pretty efficient. The setup function is O(n) and the draw function is O(1). You could make the setup function faster if you commented out the part that clears all the chars, but the setup function is only run once at the beginning of your program, so that's probably not an issue. The real time-hog is just the Mandelbrot routine, as it has to do a whole bunch of FLOPs per pixel rendered. At one point I was toying with fixed-point math, but it didn't seem any faster.

But now that I think of it... the BGMap method probably is a lot slower than the framebuffer method in practical application (polygons, etc.), as you have to clear the screen manually.

BTW, giving credit where credit is due, this idea actually came from the official development manual:
Quote:

Virtual Boy Development Manual, P. 2-6-1:
Another method to include polygons is to place characters in a row in the BG map or place OBJs in a row on display, and write the polygon characters in character RAM. When this method is used, display priorities can be readily assigned to the polygon characters and normal OBJ and BG characters.
Top

 Top   Previous Topic   Next Topic


Register To Post