Wednesday, April 28, 2010

Sunday, April 11, 2010

Wednesday, April 7, 2010

Warp Dreams Logo

I consulted a logo design studio for a quote and they presented a whopping $1750 price tag... Well, not that I don't recognize the value of their work, but that price is simply way above my budget. So I DIYed one myself using a toy-like Paintbrush on Mac OS X. (GIMP for Mac just sucks because X window on Mac sucks. You have to click twice on a button to activate it if the window contains it is not the active window). Look at left of the page.

It does has some issues, like: top-right proportion of the logo seems too empty. However, I think it works for now. Maybe I'll pay $1750 when I am rich.

Using short value in vertex array instead of float

I've been trying to squeeze more FPS from the rendering part of Smart Brick. I came across an article which suggests using GL_SHORT instead of GL_FLOAT in vertex array to boost performance:

The solution quite makes sense. Basically you use short value to replace float values; to compensate the precision loss, a pair of additional glScalef and glTranslatef is required per-model.

A reply attached at the end of the post suggests that on iPhone it would be 30% faster. However, this is not the case for Smart Brick; not because the article is wrong, but I think the performance increment depends on actual scenarios. Here is my guess:

If your model contains large amounts of vertices the solution may help a lot. You get big computational savings for using short instead of float, with the price of only one additional glScale and glTranslate calls respectively.

However, it does not help Smart Brick, because Smart Brick renders large amounts of models, each of them contains only few vertices. This way, the savings on float vertices are probably offset by glScale and glTranslate calls, because they are called once per-model, and they are called a lot when there are a lot of models.

Monday, April 5, 2010

Smark Brick Game Play

This is a demo showing 2D mode in Smart Brick. Well, 2D is a special case of 3D after all.

The true 3D mode in Smart Brick.