Today we submitted the app “flipink” to app store, hopefully it will get approve in one week : ). this is the most complex project I have ever built with my parter Perry, more than 50 thousands lines of code really make me exhausted.
Perry is a great iOS programmer, he did all the database,painting tray UI, file management and SNS sharing modules of this app, I did the 3D UI, openGL accelerated painter and designed the icons, UI, and animations.
To make the smooth and efficient 3D animation, I rewrite my lite 3D engine in Object-C and integrated with iOS openGL environment, also made a Tween engine together with it, making a 3D engine from scratch on mobile platform is far more restricted than on PC, rendering performance and memory management is always the key issues to make me headache, but fortunately, after 200 hours hardworking, this app’s 3D UI works really neat and smooth.
The painting engine is also very tricky, at the beginning , I didn’t realize the CG draw API in UIKit is too slow for serious drawing, especially on ipad 3 retina screen, my first try is using a whole UIImage to draw everything , then I divide the screen to a grid with 16 cells and using 16 threads to render each cell image, but the rendering is still too slow, finally I gave up the CGDraw approach and moved to openGL shader based algorithm, this almost took me a month to figure it out.
Filed under small beer in my life | Comments (7)