IPhone dev on Windows - possible?
by Andy Hawkins · in Technical Issues · 01/11/2009 (4:51 am) · 36 replies
I am looking into developing a game for the iPhone. Is it possible to run a Mac emulator on Windows to do this? I need to buy the OS as well right?
#2
01/11/2009 (2:11 pm)
So I can boot OS X on an ASUS or do I need a specific laptop to work with OS X?
#3
01/11/2009 (2:17 pm)
I have a MacBook Pro which I loaded Windows Vista on to. I know you have to have an Intel chipset for this to work.
#4
There are a few simulators (not emulator) that gives an 'appearance' of a Mac. But it is the same coding as a PC.
Basically, Mac can run PC, but PC can't run a Mac. You will need to get a Mac for iPhone.
01/11/2009 (2:23 pm)
Mac cannot be booted on Windows. Mac is run under Unix, and you would need a second processor to run it.There are a few simulators (not emulator) that gives an 'appearance' of a Mac. But it is the same coding as a PC.
Basically, Mac can run PC, but PC can't run a Mac. You will need to get a Mac for iPhone.
#5
01/11/2009 (2:42 pm)
So if I have a Dual Core does that mean I can run OS X? Surely I need dedicated Mac hardware?
#6
01/11/2009 (2:50 pm)
To legally run Mac OS X, you have to have a Macintosh. You can, with some google-fu, find hacks that will enable it to run on a "generic" PC - but those hacks violate the terms of the Mac OS X license, which specifically allows its use only on Apple-branded hardware.
#7
01/11/2009 (9:41 pm)
So in order to develop an iPhone game I have to have a Mac then - plain and simple?
#8
01/11/2009 (9:47 pm)
@Andy - You or a team mate. No getting around it.
#9
01/11/2009 (9:54 pm)
Does it have to be a whizz bang Mac or can I code iPhone games using an older Mac? I don't even know Mac's. What's good? PowerPC or something?
#10
01/12/2009 (1:28 pm)
I have been looking into this issue myself. What I am going to do is VMWare Workstation ($179.00) setup a guest OS for OSX 10.5. I have the workstation and it allows me to load multiple OS's at the same time. Swithch back and forth at will
#11
01/12/2009 (2:44 pm)
So what hardware are you going to run this on?
#12
I've simply abstracted the render calls to a central location.
now I can pass it thru anything from Direct Frame Buffering, DX, OpenGL, Bit Blitter or even write a raycaster.
so then I write a dll, that contains the rasterizer of choice.
at runtime I select the appropriate dll, now I can develop on the target or a dev machine.
I can use cross compilers or anything I want.
this type of flexibility makes targeted development trivial.
so the question is not, do I need this or that to develop.
it's a statement that says:
here is my framework to develop whatever you want on anything you want for whatever you want.
01/12/2009 (2:56 pm)
I have an application I use, that can run on any GL imp.I've simply abstracted the render calls to a central location.
now I can pass it thru anything from Direct Frame Buffering, DX, OpenGL, Bit Blitter or even write a raycaster.
so then I write a dll, that contains the rasterizer of choice.
at runtime I select the appropriate dll, now I can develop on the target or a dev machine.
I can use cross compilers or anything I want.
this type of flexibility makes targeted development trivial.
so the question is not, do I need this or that to develop.
it's a statement that says:
here is my framework to develop whatever you want on anything you want for whatever you want.
#13
1) Things on the iPhone are "quirky" even things that work perfectly on the official iPhone simulator may not actually work on the device.
2) The iPhone doesn't use the c++ language - it uses Objective-C which to my knowledge you can't program in on any other platform.
As for development machines. I use a Mac Mini that simply hooks up to my PC accessories through a switch allowing easy switching between my PC and Mac. I also got a iTouch specifically for testing reasons - with another member of my team getting an iPhone to round out our development equipment.
Edit:
Short Answer - No. You cannot make an iPhone game without a mac. However, if you are working with someone else you could use an engine to create a game on windows and have another member (or team) convert it to the iPhone provided the engine is cross-platform.
01/12/2009 (3:02 pm)
Andy I have some experience with the iPhone with making my own 3D Engine and while I currently have an engine that works on Windows / Mac and iPhone - I strongly suggest just doing iPhone development on a Mac + testing on a real device for the following reasons:1) Things on the iPhone are "quirky" even things that work perfectly on the official iPhone simulator may not actually work on the device.
2) The iPhone doesn't use the c++ language - it uses Objective-C which to my knowledge you can't program in on any other platform.
As for development machines. I use a Mac Mini that simply hooks up to my PC accessories through a switch allowing easy switching between my PC and Mac. I also got a iTouch specifically for testing reasons - with another member of my team getting an iPhone to round out our development equipment.
Edit:
Short Answer - No. You cannot make an iPhone game without a mac. However, if you are working with someone else you could use an engine to create a game on windows and have another member (or team) convert it to the iPhone provided the engine is cross-platform.
#14
developing your engine code to be platform agnostic gives you many benefits.
if your game was essentially abstracted away from the platform, then you will find development much easier and most likely faster.
the reason is because your target is a black box. you cannot properly debug on it.
or at least if you can its not as fun.
I do this everyday, and I can with confidence tell you that using the development machine in its native environment to do the development will save you many moons of pain.
then once you are happy with that, getting it worked out for the app layer support for the iPhone will be a cakewalk.
and as an added bonus, you have developed a framework for your next game drag and drop style.
01/12/2009 (3:08 pm)
Objective c supports c++, so you are able to insert c++ objects.developing your engine code to be platform agnostic gives you many benefits.
if your game was essentially abstracted away from the platform, then you will find development much easier and most likely faster.
the reason is because your target is a black box. you cannot properly debug on it.
or at least if you can its not as fun.
I do this everyday, and I can with confidence tell you that using the development machine in its native environment to do the development will save you many moons of pain.
then once you are happy with that, getting it worked out for the app layer support for the iPhone will be a cakewalk.
and as an added bonus, you have developed a framework for your next game drag and drop style.
#15
01/12/2009 (9:55 pm)
What about a Apple Mac G4 - any good?
#16
01/12/2009 (10:02 pm)
@Andy - The iPhone SDK is Intel-only. PPC Macs are not supported.
#17
01/12/2009 (10:09 pm)
Well... bugger! So what model of Mac can I use? Oldest please... I just know nothing about Macs.
#18
01/12/2009 (10:17 pm)
How about a Apple MacBook 13" Intel Core 2 Duo 2.1 ? Maybe I'll just rent one for the project duration.
#19
01/12/2009 (10:53 pm)
@Andy - Yes, any Intel-based Mac will do the job. For laptops and towers you can tell by the name - Intel-based machines are called MacBook and Mac Pro, where older PPC-based machines were PowerBook and PowerMac, respectively. For the iMac and Mac Mini, you'll have to look at the specs before you buy, since they didn't change the names. If the specs say G3, G4, or G5, it's a PPC system.
#20
01/13/2009 (8:52 am)
I am not sure if the question was for me or not, but as far as hardware for the VMWare Workstation I am currently run Dual core Xenon 3.9 Ghz, 750g HD, 8 GBytes Ram, and Vista Ultimate 64-bit.
Employee Michael Perry
GarageGames
I'm just glad I have dual boot for Vista and OS X 10.5.