Jump to content
  • Advertisement
Sign in to follow this  
carlsfinch

Mac, Good for programming?

This topic is 4039 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, I am a PC user, and after watching WWDC2007 key notes; I am definitely sure I want to buy a Mac since I am a student, and I get a discount, but because of John Carmack's ID Tech 05 Engine he is deploying/been secretly making for the past 2 years for Mac users, and the announcement of other games going to the Mac, and the Leopard OS itself. But, is it good for programming? What benefits does it offer programemrs? I'm sure I'll have to let go of DirectX if I buy a Mac, and start programming on Mac, but how strong is the field for developers on Mac's, could I make games for PSP, Nintendo DS, Windows, web, etc...? What IDE/Compiler would I have to pick up if I buy a Mac I'm quite new to Mac's and just downloaded Safari for Windows, it's awesome. I'm switching, but only if I can continue my game developing career I am pursuing. Please send me links, and suggestions on this matter. Thanks,

Share this post


Link to post
Share on other sites
Advertisement
I think you have to use objective C? Don't know much about it, just googled "game programming mac" and came up with this:

http://www.idevgames.com/ : The Mac Game Developing Community

They might be of more help...

James

Share this post


Link to post
Share on other sites
Macs are great for programming in my opinion.

OS X has its own set of APIs to use for truly native programming (Carbon and Cocoa). Carbon uses C++ and Cocoa uses Objective-C. You will have to let go of DirectX and use OpenGL if you'd like 3D games. A few great places to head to if you're interested in learning more would be iDevGames and its sister site iDevApps. If you want to still make games for Windows, I'd suggest using something like SDL or Ogre for your windowing. Ogre will let you use OpenGL on OS X and choose between OpenGL and DirectX on Windows. Both Ogre and SDL are cross platform for OS X, Windows, and Linux. I figure that's how most cross platform games are created.

As for the IDE/compiler, you can get Xcode (which uses gcc) from apple.com/developer. You just have to register (free) to get it. That's what most people use though there are some other alternatives.

As for benefits, I think it not being Windows is a benefit :). Seriously though I don't really think either platform offers benefits over the other. They both have tools to get the job done. I'm currently on a Windows PC (saving for a new Mac since my last one died) using Ogre so that when I do get a Mac, I can just bring the code over and compile and run my game still.

You can definitely still make web apps (I'd argue it's easier with some of the free tools, editors, and IDEs for OS X such as Smultron, TextMate, and others) on OS X. Not sure about PSP or DS since I don't care about homebrew games for closed systems like those.

Share this post


Link to post
Share on other sites
Quote:
Original post by carlsfinch
But, is it good for programming?
Yes, it's great. Xcode3 (which will ship with Leopard) fixes almost all of my problems with the C++ side of things and makes the Objective-C side even better. .NET support from the Mono project is finally getting to a point where I can realistically see myself switching to C# for my Cocoa applications.
Quote:
What benefits does it offer programemrs?
It's Unix-based, offers one of the strongest implementations of OpenGL (several Apple engineers are on the "new" ARB, and one is even heading up the Mt. Evans implementation), has a robust set of platform-specific APIs (Bonjour, Cocoa), and has one of the better toolkits for developing graphical apps.

I think TextMate alone is one of the stronger arguments, it's an excellent piece of kit.
Quote:
I'm sure I'll have to let go of DirectX if I buy a Mac
Yes, unless you purchase a license to Cider or MacDX or something along those lines.
Quote:
but how strong is the field for developers on Mac's, could I make games for PSP, Nintendo DS, Windows, web, etc...?
Sure -- the various devkits for building console games on Linux work just fine on OS X, since they're just ports of GCC. Web apps, it doesn't matter what platform. Windows, you can cross-compile, but I highly recommend holding onto one Windows machine to build and test the Windows ports of your programs.
Quote:
What IDE/Compiler would I have to pick up if I buy a Mac
Xcode comes free on the installer DVDs you get with every Mac, and it's also downloadable from the Apple developer website.
Quote:
just downloaded Safari for Windows, it's awesome.
If you say so.

Check out iDevGames for a more Mac-oriented independent developer community -- there's a lot of people there making some good cash off of shareware.

Share this post


Link to post
Share on other sites
Quote:
Original post by JamesLewis
I think you have to use objective C?


You can use Objective-C but it is not required. You can use C/C++ with Ogre, SDL, or Carbon to get the same effect.

Share this post


Link to post
Share on other sites
Macs are great for programming ... I switched a few years back and have absolutely no regrets.

As Rav said, you'll be using xCode on the mac, and it (along with all the other dev tools) are totally free.

Personally, I find the debugging in xCode to be a lot less friendly than DevStudio, but the performance and OpenGL tracing tools provided more than make up for it.

We'd be lying if we said it'll be a totally seamless transition. Mac UI just works differently to Windows, and this extends to the xCode. So give yourself a bit of time to get used to the new UI.

I think the hardest decision you'll need to make is whether DirectX is important to you or not. Obviously you can run windows on the mac hardware (and there seems to be some cool virtualisation stuff coming) - but the bottom line for me would be, if you're developing for a windows target, have a windows machine.

Share this post


Link to post
Share on other sites
Just to clarify, the new id engine is not mac exclusive. It will run equally on: PC, Mac, 360, PS3. So you won't be gaining any special access by switching to a mac:

http://www.tuaw.com/2007/06/13/john-carmack-id-tech-5-demo-from-wwdc/

That said, a Mac is perfectly fine for programming.

Also, just to point it out, since id Software is associated with Activision that means it's politically unlikely that other major publishers will use the technology (EA, THQ, etc). They're more likely to maintain their relationship with unreal (who's not strongly affiliated with any particular publisher). I don't think that unreal has strong Mac support (please correct me if I'm wrong). So at the end of the day, yes there will be more games offered for Mac than are currently; however, the majority of games will still not run on Mac (or at least won't on first release).

I'm not mac hating (I love the OS and their laptops). I just don't want you to switch for games and then be left high & dry by the industry at large.

-me

Share this post


Link to post
Share on other sites
I recently ported a commercial game on MAC OS, here is my opinion about Mac Versus Windows Programming (as far as my experience goes) :

( Note that on Windows I'm not used to OpenGL, I always use DirectX )

MAC Pros:
- OpenGL Profiler
- When the QA has a crash on a release build where debug symbols have not been stripped, the callstack of the crash is automatically displayed ... VERY HANDY

MAC Cons:
- The carbon API (the equivalent of Win32) documentation is in my opinion very very poor. You hardly find what you search for.
- The XCode2 UI is very messy.
- XCode2 has some annoying bugs ( e.g. often you modify a single .cpp and the WHOLE project get recompiled, and our project took half an hour to compile ... so imagine the frustration )
- XCode2 debugger is really a piece of crap. (crashing, not displaying NULL terminated string, not able to display a lot of globals, slow responsivness, etc, etc )
- Mac keyboards don't have every character printed on them, e.g.: to write || (OR operator) you have to type ALT+SHILFT+L ( It took some time before i find this one...)
- OpenGL Profiler is quite good, but I had a lot of trouble with the OpenGL implementation itself ... we had some crashes into OpenGL that corrupted our stack, or that completely crashed the MAC forcing us to un-plug the power coord !! In that respect Direct3D is far more better. OpenGL should REALLY have a debug driver that validates all states and parameters. In its current state it can easily become a pain. (We even sent the game to Apple to see if they could find the cause of the crash and they were unable to help with this one)

Share this post


Link to post
Share on other sites
Well, first I must say they were showing EA games for the Mac, and I'm not sure bout the love that Epic Games has from Mac users. I do know I am getting one though, but not because of the games, NO! Because, there are 6 different Vista's to choose from, and I was barely happy with XP after I deleted/Added a bunch of stuff. Mac is also on Unix which is a plus already, and Mac just seems to have everything in the box when I buy it, so no adding this, and that, and I can't stand Visual C++.

No I'm not going to depend on Dx, and I'm really just interested in 2D game Engines right now, for I love 2D right now, and I'm still just a student, and Mac already has plenty of API, and 2D Game Engines out there to use.

I'd like to know what Mac book would be best for me as a programmer? How much RAM, CPU usage I will need? I honestly only using a computer for online work, C++/C/Java coding, music, and surf the web. If anyone has the answer to this one let me know. Let me know "The Best Bang for the Buck" Mac wise. And Gaming if they have enough games to game it out on a Mac, or when they do! (but mostly for programming, and school work :) )

peace,

c.s. Finch

p.s. Thanks for all the responses. I was suprised to find so many so quickly.

Share this post


Link to post
Share on other sites
Quote:
Original post by carlsfinch
Mac is also on Unix which is a plus already, and Mac just seems to have everything in the box when I buy it, so no adding this, and that, and I can't stand Visual C++.


Yeah. the OS and the whole user experience is what Apple really excels at.

Quote:
Original post by carlsfinch
I'd like to know what Mac book would be best for me as a programmer? How much RAM, CPU usage I will need? I honestly only using a computer for online work, C++/C/Java coding, music, and surf the web. If anyone has the answer to this one let me know. Let me know "The Best Bang for the Buck" Mac wise. And Gaming if they have enough games to game it out on a Mac, or when they do! (but mostly for programming, and school work :) )


Any Macbook Pro would more than suffice in terms of feature set. Their only drawback is that, to quote a friend: "they cook your balls & subsequently threaten you with sterility". hot hot hot

-me

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!