Search Unity

iOS dev - Intel HD 3000 graphics sufficient?

Discussion in 'iOS and tvOS' started by rjdfhorn2006, Aug 21, 2011.

  1. rjdfhorn2006

    rjdfhorn2006

    Joined:
    Jun 14, 2010
    Posts:
    141
    I am planning to purchase a mac mini - it is equipped with Intel HD 3000 integrated graphics. I understand that some previous versions of Intel integrated graphics DID NOT support occclusion culling. Does anyone know if the HD 3000 supports occlusion culling?

    I am trying to save as much money as possible - any suggestions are appreciated - are older macs sufficient to run Unity? Processor? Ram? etc. I've heard that older mac minis can get the job done (dating back to 2006). Are there any graphics cards or parts I should avoid?
     
  2. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    No it doesn't

    the HD4x00 was the first to support it and even that one has a performance that you are going to wait for a day for OC data being done and alike (can even happen on the 2008 MBP on its 8600M GT). OC is purely GPU bound.

    If you intend to use OC, then get a current one with the dedicated if possible as that makes a day night difference but at minimum one with the NVIDIA onboard if its none of the 2011 models

    for the two of those nothing to avoid :)


    the other question to keep in mind is: do I have or intend to buy Unity Pro + iOS Pro - cause otherwise Occlusion Culling isn't a topic for iOS anyway.
     
    Last edited: Aug 21, 2011
  3. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Get any mac with ati graphics or nvidia graphics. Higher end macbooks have ati, while airs have intels. You could go older and get any nvidia based one.
     
  4. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    Well this thread is kind of ambiguous. The subject asks if the HD3000 is sufficient for iOS development. The answer to that is a definite YES. It's what I've been using for all 3D modeling, animation, and Photoshop use. The Unity editor is smooth even with large scenes and Lightwave, Silo, Cheetah and Messiah show zero slowdown.

    I just bought the brand new Macbook Pro in July. I struggled with whether I should get the new one or the old one with the 320M for well over a month. Sure, the 320M is *slightly* faster for actually playing games, but the i5 in the new system utterly destroys the Core2 Duo in every area. Trust me on this one, don't waste your money on old tech.

    To answer your last question, yes, my original dev box was an early 2009 Mac Mini with the old nVidia 9400M. It was a dog until I upped the RAM to 4G. After that it was great. I built my first six games on that thing, and it was recently repurposed as the family room HTPC. If you're looking to go cheap, I doubt the new Mac Mini would give you any trouble. If, however, you must have a laptop, definitely get the newest model.
     
  5. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    The subject asks if its enough if you want to use Umbra and the answer to that is no, cause umbra will not run on the gpu at all. Umbra (as already the unity own pvs in unity iphone 1.x btw) requires GFXOcclusionQuery which the Intel GPUs lacked until the HD4000 series
     
  6. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    Not to be particular, but the subject is "iOS dev - Intel HD 3000 graphics sufficient?" The answer is a resounding "Yes." He then goes on to ask about Umbra, which you already answered. Just sayin. ;)

    Btw, how's it going, Dreamora? Found any good BBQ lately?
     
  7. rjdfhorn2006

    rjdfhorn2006

    Joined:
    Jun 14, 2010
    Posts:
    141
    Okay so let me make sure i'm understanding correctly - Occlusion Culling IS NOT a factor to figure when developing for iOS devices? I want to get the mac SOLELY for the purpose of developing iOS games. I do plan to buy iOS Pro and Unity Pro. I already have a powerful Windows machine equipped with an ATI card so I just need a mac system for iOS development (according to Unity's website, iphone occlusion culling can be done: http://unity3d.com/support/resources/tutorials/video-occlusion-culling.html)..
     
  8. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    OC is a rendering optimization. Whether or not your video card supports it will not prevent your game from being built with OC enabled. Also, it will not effect your ability to create said game.
     
  9. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Yeah just make him buy one with that GPU but please don't blame others if he gets by your house to kick your ass ;-)
    Reason is that its all about the gpu being able to generate occlusion data or not.
    An Intel HD 3000 series card can not generate occlusion data so this means if you waste money on such a trash box you can not use umbra at all, point. it will simply not start at all as Umbra uses the gpu exclusively to generate the occlusion data.
    Why do you think do people warn from buying these outdated stoneage boxes and say "get the current one and you are safe" :)


    And yes, Umbra / occlusion culling is fundamental to raise the performance given you do a 3D game in 3rd person / 1st person perspective where you can use it.

    if you create something in iso perspective or similar or nothing with "3d view at all" but a 2D thing where the viewable area is minimal, you don't gain much if anything from it if anything at all.

    The support is correct, you can use it. don't forget occlusion does not run on the gpu at all at runtime, its fully cpu based using the editor generated data (so no dynamic occlusion only static occlusion - you will often find sPVS mentioned in relation to umbra which talks about that exactly)
     
    Last edited: Aug 21, 2011
  10. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    Can we get a quote from a Unity Tech rep on this one? It's not like you're playing the game you're building, so Umbra data should be generated by the tool rather than the hardware. It would seem like the stupidest thing in the world for a tool that generates optimization data to rely on what GPU your video card uses. Especially since it opens the door for different GPU's to create different datasets.
     
  11. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    The umbra data are always generated by the editor. But the editor requires the hardware capability of GFXOcclusionQuery from the graphics card to generate the occlusion data (otherwise it would take magnitudes longer to calculate visibility) and thats a thing the HD3000 and earlier series don't support, that simple it is.

    You can search the board there are a few threads on the matter with Unity staff answering (I think it was aras)

    Also you are totally missconcepting a few things: Its not like these GPUs (hd3000 and older) generate different data sets, these gpus will not generate any occlusion data at all because they technically are just not capable of doing any occlusion tests, which are required to calculate the occlusion data. As such umbra will not calculate any occlusion data at all but throw you an error that your hardware cant calculate it and fail.
    Thats what I meant with users that will get around to your house and kick your ass cause you claim that the gpu is enough to use occlusion when it isn't because it will plain simply not be able to use umbra and calculate the occlusion data.


    this has nothing to do with the player and using occlusion at runtime, there you don't need the graphic card anymore, thats all purely cpu. But on the machine you want to calculate the occlusion data, you MUST have a gpu capable of doing occlusion queries to generate the static occlusion data from it for runtime usage.

    Unity does not use nor support any realtime occlusion calculation (the only thing that could lead to "different occlusion depending on hardware") so no worries required for that end.
     
  12. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    First off, regarding your comment about people coming to kick my ass: feel free. I'm armed to the teeth and don't value the lives of strangers.

    I have to say that if you are indeed correct, that's a HUGE negative on the Unity checklist. I have to wonder if Shiva and other engines (who had occlusion culling before Unity 3.0) rely on the GPU. I think I'll create a thread over there and find out.

    Finally, are you certain the supposed lack of occlusion culling is indeed a hardware issue with the HD 3000 or is it driver related? The reason I ask is I found a thread on a hardware forum dating back to May of this year where a user posted about having problems with Minecraft with occlusion turned on. After a driver update later that month his problem was solved. This user was using an i5-2500 series Sandy Bridge, the same that is in the new Macbook Pros.

    P.S: Why do you keep calling the HD 3000 an old or stone age part? Are you getting it confused with the GMA 3000?

    P.P.S: According to Intel, the X3000 even supported occlusion query back in the DX9 days (2006):
    http://software.intel.com/en-us/articles/intel-gma-3000-and-x3000-developers-guide/ and http://software.intel.com/en-us/articles/tips-for-developers-the-deadly-light/.

    Some clarification on requirements and compatibility from Unity Tech would nice.
     
    Last edited: Aug 21, 2011
  13. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    the macbook pros also have ati installed
     
  14. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Raaaaaa :(

    I just realized I mixed up that god damn intel naming thing, mixing up the X3000 and HD3000 thanks to intels genius at choosing even more stupid names than ATI which will get problems in 2013 thanks to two distinct incaranations of 8000 and then 9000 series cards.
    I got lured down that path due to his text about 2006


    The CPU inbuilt gpu on current sandy bridge cpus is fine, no problem there at all. As mentioned, anything you could buy from apple since 2008 (aside of the macbook air prior the current ones) does occlusion culling without a problem and is fine for iOS focused development in general, if you equip it with 2-4GB RAM
    These GPUs are the first from Intel that are usable for anything but Office and watching videos actually!

    (naturally if you have the $150 more for a mac mini with the decicated gpu go and get that one, its several times faster which also in consequence means it takes you significantly less time to calculate occlusion culling data)

    @codinghero: you know how I meant that with kicking asses, at least I hope / assume so :)
    But I want to say that I'm sorry for going down that path due to the miss thinking in my head on which GPU we talk about. People optimally would just not use HDXXXX with the new ones and just say sandy bridge XY or its real name not the nicy name (and intel too)
    But naturally after causing that rukus you would be entitled to kick my ass in trade now ^^

    The X3000 would indeed not work. Can't tell you on why it wouldn't work but I would suspect that it supports not the full range, as with many other things it claimed to support that it didn't and doesn't fully support.
     
    Last edited: Aug 21, 2011
  15. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    @dreamora, yes, I knew you were joking around. :p We've "known" each other long enough to give each other grief in jest, so no worries. Haha Also, don't sweat the mixup. It happens to me all the time. Just as my wife. ;)

    SO! Back on track here, are we all in agreement that any current generation offering from Apple is 100% a-ok for iOS development in Unity 3.*?
     
    Last edited: Aug 21, 2011
  16. hippocoder

    hippocoder

    Digital Ape

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Let me tell you straight: 2GB ram is *not* close enough. I disabled all non essential processes and run only unity and it will still flatline during compilation and run out of ram - especially when building for xcode. This leads to a very long and tiresome compilation process as the disk swap is used.

    4GB is total minimum if you don't want to wait 5 mins between builds. I'm gonna go nuts and get 8 gig for my next mac :)
     
  17. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Yupp all fine :)


    @hippocoder: hehe I would agree, if you can get 4GB, take 4GB (heck I upgraded my 4GB MBP with 8GB kingstom mac model ram for less than $100 ;)), can only get better and prevents OSX from starting to use RAM paging due to RAM limitations during build :)
     
  18. codinghero

    codinghero

    Joined:
    Mar 21, 2009
    Posts:
    450
    As if I needed to concur on this one. I hated my Mini before I upgraded to 4GB. :p
     
  19. Eric5h5

    Eric5h5

    Volunteer Moderator Moderator

    Joined:
    Jul 19, 2006
    Posts:
    32,401
    Meh, I was using a 1GB 2007 Mac mini without any issues, aside from not using occlusion culling, which I fortunately didn't need anyway. It was running OS X 10.5 and Unity iPhone though (as opposed to Unity 3.x). Also I was running it in a VNC session from my main computer, so the only things that were ever running were Unity and Xcode. I wouldn't actually recommend trying to use 1GB these days even if it was an option....

    --Eric
     
  20. rjdfhorn2006

    rjdfhorn2006

    Joined:
    Jun 14, 2010
    Posts:
    141
    ...so the Intel HD 3000 is fine? it does occlusion culling?
     
  21. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    Yupp the HD 3000 on the current sandy bridge CPUs does occlusion culling, not problem.
    Any apple system you can buy at apples store right now (excluding the refurb) can calculate the occlusion culling etc and is enough for iOS dev
     
  22. code749

    code749

    Joined:
    Jan 17, 2009
    Posts:
    100
    i would rather buy a beast of a pc for the art side and buy a el-cheapo mac to do the builds only

    insane money if you want a decent mac for art work!!!!
     
  23. CoatlGames

    CoatlGames

    Joined:
    Apr 25, 2008
    Posts:
    773
    i have a macbook pro with a intel hd3000 and everything works greatin it, the performance is very similar to the geforce 330 included in some other mac models
     
  24. joshimoo

    joshimoo

    Joined:
    Jun 23, 2011
    Posts:
    266
    Is it possible to calculate the Occlusion Data on a desktop
    then move the project over to the old mac which does not support calculating the data
    and do the build on that?

    Or does the data always needs to be recalculated during the build phase?

    EDIT:
    The Macbook I am looking at has a "Intel Graphics Media Accelerator (GMA) X3100" and is a modell "A1181". This is my frist and I have no intention of using it for anything but as a build machine for IOS.

    Thank you for your answers.
     
    Last edited: Oct 11, 2011