[XCode] Looking to create a 3D spinning logo as Screensaver

Discussion in 'Mac Programming' started by Matt Devlin, Oct 21, 2015.

  1. Matt Devlin macrumors newbie

    Oct 21, 2015
    I'm trying to make a company screensaver that includes a set of 3D objects with a simple spin animation like the .gif below.

    I'd like to know which program would be best suited for a project like this.

    Most of my Google searches seemed to point me toward XCode, which I started using a little bit to familiarize myself. I completed the two tutorials at this website ( http://www.cocoadevcentral.com/articles/000088.php ) but it didn't say anything about importing the 3D objects that I've already made.

    Is such a thing even possible with XCode? If so, what formats does it support (.obj, .fbx, ...)?

    I tried looking it up on Google but everything seemed to be directing me to iOS apps ( bear in mind this is only going to be on OSX Yosemite (v10.10.5) and eventually Windows 7 ).

    Also, the Mac I'm using uses an Intel processor (Core i5, if that makes any difference). I remember some people saying Intel Mac's require certain settings for screensavers to work properly.

    spin logo.gif example animation

    Let me know if I'm missing any information. I'll continue researching in the meantime and see if I find out anything.
  2. ArtOfWarfare macrumors G3


    Nov 26, 2007
    Does anybody actually use screen savers anymore? It seems like they stopped being used because:

    1 - Modern screens start up a lot faster. It's a pointless waste of energy to leave them on.
    2 - Modern screens are a lot more resilient to image burn in. So even if you leave your screen on, there's no harm just leaving it on whatever for hours on end (other than the fact you've left it unlocked, if that's a concern of yours.)
    3 - Laptops have become a lot more common and desktops a lot less common. Most people close their laptops when they're not in use.

    If you still want to insist on making a screensaver, I think the official way of doing so would involve this:


    But really, I think it's been nearly 10 years since anyone cared about a screensaver.
  3. xStep macrumors 68000

    Jan 28, 2003
    Less lost in L.A.
    Well no.

    I still use one today along with requiring a login on my personal systems.

    This may be more popular in a corporate setting because many, maybe most, corps require that their computers time out after no activity into a mode that requires a password to get back in.
  4. cruisin macrumors 6502a


    Apr 1, 2014
    Unlikely, as usually screen locks after a bit and goes to the switch user interface, then eventually turns off the screen and goes to sleep. In the quest for energy efficiency, very few companies allow for screensavers as they use a fair amount of power. Think of 200 computers, all with screens that are unnecessarily turned on and their GPUs rendering the screensaver, this is about 200W of power per machine. Then think of the truly large companies with thousands of machines.

    I think screensavers might still be used in customer facing areas as this can be treated as advertising, but I have seen dedicated TVs for this as well.

    Maybe at the start of the Intel transition, but by the time of the i5 series and 10.10 I think everything is fixed for screensavers.
  5. Matt Devlin thread starter macrumors newbie

    Oct 21, 2015
    Thanks for the link, ArtOfWarfare. I came across that site a few times while searching Google, but it didn't seem to say anything about 3D animation. I dug a little deeper and found a reference for GLKit [ Link ] which is what the Cocoa Dev Central tutorial used to draw a 3D Pyramid with animation.

    I'm currently looking for a way to load an existing mesh from an OBJ or FBX file. I'd rather not have to plot each individual vertex for something as complex as a logo or text, if at all possible. Especially since I've already got the file I want to use ready to go.

    Ah, thanks! The Cocoa Dev tutorial I referenced was a bit dated (copyright date is 2005) so I probably don't have to worry about all that then. Good to know!
  6. ArtOfWarfare macrumors G3


    Nov 26, 2007
    The OBJ file format is extremely easy to parse and pull coordinates out of. As I recall, the format just consists of two types of lines: lines which start with the letter v, followed by 3 comma seperated floats (x,y,z) - those represent vertices, and lines that start with the letter f, followed by 3 comma seperated ints, which indicate the vertex indexes of a triangle face.

    Sometimes the v line has a / followed by a set of normal angles, and then another / followed by UX skinning coordinates.

    Something like that. I wrote a Python script for parsing them and converting them to my own format a few months ago.

Share This Page