Category: Tetzle (Page 4 of 6)

I should have announced this sooner, but better late than never I suppose. I will no longer be creating new PowerPC builds of my programs. There are many reasons, but the biggest two are that my iBook G3 finally gave up the ghost, and that Qt has dropped support for PowerPC. I know that this is an inconvenience for some of my users, and I am sorry about that. Still, I hung in there as long as I could, but Apple has moved on.

A short story about source code comments

Posted on December 7, 2011, under Tetzle

A bug was reported in Tetzle, and the reporter helpfully tracked down why it was happening but was not sure what the purpose of the offending code was. I took a look at the code and said, “Beats the hell outta me!” I’m lazy, so of course it was not commented. I traced it through git all of the way to the very first release, and then had to track down my ancient notes about what the purpose was (it turns out Tetzle crashes if you delete the image of the current game, so it was preventing that but not clearing it on launch—kind of obvious, really). I fixed the code and added comments so that I would know what the purpose of that code is if I ever wonder in the future. The moral of the story is: comment your damn code, you’ll need it someday. Of course, I doubt I will be diligent about that, since I’ve run into this exact same situation before. 😛

Huzzah, a new release!

Posted on May 18, 2011, under Tetzle

It’s taken longer than I wanted, but I have finally finished Tetzle 2.0! There are some big visual changes from the previous version (drop shadows, piece bevels, adjustable background color…), and some smaller ones like a brand new dialog for choosing games. I didn’t like the disconnect between the new and open game dialogs, so I merged them into a tabbed dialog. Also, I rewrote the entire graphics layer, along with the code to detect which pieces to attach and which pieces to push when you drop a piece. Finally, thanks go to Sergiy Gavrylov for adding a Ukrainian translation. I hope you enjoy this release as much as I did making it!

Update on supported Tetzle puzzles

Posted on March 27, 2011, under Tetzle

It actually turned out to be a lot easier to support current puzzles than I was anticipating. I solved the bevel issue by simply disabling bevels for puzzles created before piece-based bevels were added. Plus, the file format had not changed as much as I had thought, so they were much simpler to convert than I expected. Current puzzles will still be supported in the next Tetzle after all!

A brand new look for Tetzle!

Posted on March 22, 2011, under Tetzle

I decided earlier this month that I still wasn’t satisfied with the way Tetzle looked. For one thing, the pieces were too small when zoomed all of the way in. I also realized that I did miss the bevels. However, I was never very happy with the old bevels, so I designed new ones for the entire piece. Plus, I decided that a new color scheme was in order, since the white background was so blinding. The result of all of these changes can be seen in this screenshot:

Development tetzle

I had to change the puzzle file to track what bevel each tile has, so old puzzle files can no longer be played with the new Tetzle. In fact, the file format has changed so much that puzzles from version 1.2 can not be played in the development version. I am thinking about trying to add a converter, but a big problem is that there is no way of knowing what bevel a tile is supposed to have.

Along the way I also decided to improve my use of OpenGL. I had been using the incredibly slow and deprecated immediate mode, because all of the starter tutorials online told you how to use that. I now use vertex arrays, and will use vertex buffer objects and vertex array objects if they are available. And, to top it off, I also added basic shaders to imitate the fixed function pipeline so that Tetzle will run on OpenGL 3+ without compatibility mode.

Categories