So here it is, one month on: the first Mac-native Cocoa version. Built on ObjectiveFlickr.
Great idea! But the performance is really bad (low framerate and high CPU load)
I’ve had some (a lot) of experience with 2D pixel pushing on the mac os. Take a look at this (unfortunately dead) project; http://trac.hunch.se/PhotoFeeder, where we had to do alot of performance tweeking. You will want to have a look at this in particular: http://trac.hunch.se/PhotoFeeder/browser/trunk/Core/PFMain.m#L637
Using Quartz Composer was actually the best alternative, both considering performance and ease of use. We met one of Apples 2D/3D developers actually, and he also recommended using QC before implementing everything yourself in OpenGL (as we did earlier).
And! Have a look at “Display Links” – very good for rendering synchronized with display hardware.
Hi Rasmus – thanks for your comments and example code. Your screensaver is far more advanced than mine! Love the ‘providers’ idea, makes a lot of sense and something I could easily implement as I have a similar mechanism already.
I am just learning Objective C, this is really my first effort. I have talked to other programmers about using Core Graphics – at the moment I’m just using NSImage as my way of ‘getting it to work’… I wouldn’t dare show you the source…
Also interesting that you mention Quartz Composer; I hadn’t seriously thought it could so something like this but might be worth giving it a go. If you know of any good online Quartz Composer learning resources I’d love to know.
Thanks again.
Great work on the screensaver – really like it. Can I make a suggestion though – have it subscribe to the ‘Interestingness’ feed on Flickr so that it doesn’t get attached to our screenname?
Hi Christian – thanks for the comment. One day I may revisit the options on the screensaver saver, as I agree it could be much more thorough. One nice suggestion was to use a plug-in architecture so that any image source could be used (e.g. fffound, or your iPhoto library). It would be a lot of work though so I’m saving it as a project for a rainy day…
Hey mate, it runs great, but on 2 screens, i’m getting weird occurrences where the same image will show twice, even three times in a row.
Performance is great though, running on 2 monitors with high quality images, it’s as smooth as a pedo in a chat room.
7 March 2007
1