Archive for May, 2005

May 24th 2005

Speed Demon again

So, back in an earlier alpha of 2005, I sped up Graphics.DrawPicture immensely. So much so that it basically made it so that UseOldRenderer didn’t make a difference, which is great, and the way it should have been. I thought that was fast.

But, someone on the betas list started complaining about speed — of something I had already sped up, and when sharking the performance, found out that 70% was just drawing pictures. So, last night, I set out to solve that problem with another optimization in mind.

My results were staggering. I was truly taken aback. Here’s the results:

(All tests draw the same image 4000 times — this particular optimization won’t affect images that were being altered each time before being drawn, only repetitive drawing of the same image)
In 2005 after changes:
100×100x32 image: 18 ticks
2000×2000x32 image: 24 ticks
100×100x32 with mask image: 19 ticks
2000×2000x32 with mask image: 25 ticks

Before changes in 2005:
100×100x32 images: 79 ticks
2000×2000x32 images: 20927 ticks
100×100x32 with mask images: 81 ticks
2000×2000x32 with mask images: 20696 ticks

Ahh… much better. No, these aren’t typos: the same test that took 5.78 minutes before now takes less than half a second. Let me know what you think if you’re on the betas list when the new beta comes out.

8 Comments »

May 14th 2005

I’ll fix it myself

So, I was happily using 2005b8 this morning, constantly running into a bug that I told Mars about a few days ago. It wasn’t too bad — just had to close and reopen the project if I killed the app while the debugger was stopped at a breakpoint or exception. Not a biggie — needs to be fixed, but I could still work.

However, my BSP tree generation code wasn’t working quite right, and so I started debugging it. I clicked on an object, and boom. Ok.. maybe it was a random thing. Again.. boom. Ok.. annoying, let’s try doing it a different way… Boom.

So, I thought — “Not a big deal, I’ll just debug it in 5.5, and tell Mars about it later.” I then realized I’m using a lot of cool language features of 2005 in this project already. Ok. I’ll just fix it by code inspection.

Nope, not a chance. After 20 minutes, I gave up, and started getting frustrated. I thought, “I wish Mars was working right now.” I haven’t had VPN set up on my Mac since I upgraded to Tiger, so I wasn’t going to be able to check in any changes I made at home, so I tried working a bit longer without it.

Finally, my mind was set — I need to fix this bug now, or else I won’t work on the project again. Who cares that I wasn’t familiar with the debugger code, how it worked, or why it was crashing. I *had* to fix it. So, I did. :) Didn’t actually take too long, surprisingly.

So, if you can’t view objects in b8, wait for b9 ;) I’m going to go back to work now… :P

3 Comments »

May 6th 2005

What’s been going on?

Well, I’ve been working more with REALbasic 2005, as well as working on it more. It’s becoming a pleasure to work with — little annoyances are now gone, and everything is really starting to come together. I spent most of the day today speeding up the code editor, as well as making autocomplete even nicer. I laid the blocks for getting declares to autocomplete :)

I also made array methods autocomplete, which was fun. I also made them even more descriptive than in 5.5, which was also fun. The optional For-loop syntax now works with autocomplete, as does Static. Of course, these are some of the cool language features in RB 2005, which I will post nice summaries about when it’s released.

In the meantime, if you’re a beta tester, please hammer away at these latest betas. They’re getting much better, and even the simplest thing you can find, please report it! If you’re not, be happy that we have plenty of great beta testers that will help us make REALbasic 2005 a great release :)

No Comments yet »