Questions on UE4 for Mac

My son and I have been using Unity for quite sometime developing a game series. We decided to check out UE4 and were very impressed that it has built in, everything that we would normally have to purchase from 3rd Parties with Unity. As a result, the cost is favorable and the necessary features are integrated. Before totally jumping ship, we wanted to check it out to make sure we could produce the same level of game we have been working on for Mac, Windows and Linux (no interest in IOS or Android).

We both have done our development till now on Mac Pros, a 2010 and a 2012, lots of memory, multiple Xeons, latest OS (10.10). In setting up to test UE4 on the 2010, I found that even at the lowest quality settings, we are looking at having to get PCs to practically work. It also suggests that our game would not run well in a end user Mac and possibly Linux environment based on how the editor and the demos run. We loaded and tweaked the ShooterGame and the Racing Demo. They look great, but the freezing is horrible, in the editor, it’s sluggish, running them standalone, it’s unusable. It’s not like frame rate issues, the frames run smoothly, but in the editor or in standalone, it freezes fairly often, more on high settings, less on low settings, but the freezes never disappear. In 22GB of memory, it’s the only thing running. I’ve found a few posts on the subject, but nothing that helped. I’ve also had numerous times where the editor had to be force-quit after hanging.

Before we give up and stay with Unity (because frankly, this engine looks way better than Unity’s 5.0 for what we are doing), I would like to know if there is hope of solving this. Is this possibly just my test machine and some configuration I’m not aware of? Would new trash-can Mac Pros fix it? The concern is two-fold, we want the product to work well for all three platforms and personally, need something that will work for development in our environment. We aren’t stuck with Macs, but would like to keep our development environment there if possible. My son’s graphic workflow is dependent on his Mac, and my day job is all Mac, so having to have Windows is a real hassle (for anything other than builds and testing before release).

Those Macs have very poor graphics cards, and that’s where you’re having the issue, they hadn’t updated the graphics cards for way too long and they weren’t that great in the first place. Macs tend not to have a very good GPU, most of them these days are using the integrated Intel GPU’s. There just aren’t many people that game on Macs which is why they don’t have them. If you want to still develop on Macs then it looks like the iMacs have the best GPU options. The new graphics cards are more suited for 3D work in 3ds Max or Maya, and don’t run well in games while there are actual gaming cards available for the iMac.

You may have an option of being able to upgrade your graphics card, but you would have to do research to find out what graphics cards are compatible with Mac.

:

Which version of UE4 were you working on? I do my daily work on a 2013 , but my night and weekend work on a 2014 , and I haven’t had the kinds of issues you’re reporting. In the early days of UE4, using the editor on the Mac was really rough, and most of my team would Bootcamp to use UE4. Since about 4.4, however, things have been much better, especially when combined with Yosemite. I actually removed UE4 from my Bootcamp partition.

Are you using spindle drives or SSDs for it? Any chance you’re hosting the project file on a non-boot drive? I have noticed with some of the energy saving features added with mavericks (or maybe earlier), it tends to put drives to sleep whenever it can. When a drive spins down, there’s a definite hiccup when the machine goes to access that drive, as it has to spin up to speed before it can start reading.

You might want to look at the energy savings settings and turn off the “Put hard disks to sleep when possible” setting. That’s the only thing I can think of that might be your problem. I’ve used UE4 on four different Macs (including a 2010 that’s probably comparable to yours) and haven’t seen this issue.

Wish I could be more helpful, but I just haven’t seen this myself, and nobody on my team has reported it either.

One thing to point out, though - I believe currently, with UE4, you have to have a Windows machine to generate a Windows executable, and a Linux machine to generate a Linux executable. While cross-compiling is certainly technically possible (Unity does it), I haven’t see anything from Epic about it, so I wouldn’t count on it.

The ATI Radeon 5870 that came with my old 2010 handles UE4 just fine. The problem that OP is describing does not sound like a GPU problem to me.

Where are you getting this information? While the FirePros are workstation class GPUs, they actually work very well for games and for UE4. They’re not a great value for that purpose, I’ll admit, but I use UE4 all day long on my 2013 . It’s true that you can get a lot more GPU power for your money with a gaming card, but it’s simply not true that the GPUs are not good for UE4 or for games.

That all being said, if you’re considering a new machine primarily for game dev, you’re going to be able to get a lot more rig for your money if you go Windows. It’s unfortunate, but true. There are just a lot more options when it comes to GPUs for Windows machines. You can get a machine that handles UE4 better than a $3000+ baseline for half the prices or less.

Of course, then you have to put up with Windows. :slight_smile:

Either way, I’m pretty certain that the problem is not your graphics card. While the cards that came in those Mac Pros are not as good as the high-end consumer GPUs available today, they are still perfectly capable of driving UE4 on a dual 27" monitor setup. I know, because I’ve done it quite a bit.

You can get a gaming card for much cheaper that performs much better for games, that means that they aren’t good for games.

Sure it can handle it, but you’re paying for something that isn’t built for that purpose and you’re wasting money

Except you seem to be ignoring that the OP already has these Mac Pros, so no money is being wasted. You also don’t seem to realize that many hobby developers will use their computers for “regular” development, which Macs are fantastic for.

If you want to build a gaming rig, sure you’d be silly to not go with a windows machine with a gaming video card; but if you want an incredible development machine, Mac is often the way to go.

Not to argue semantics, but no, that’s actually not what it means. It means they’re not a good value if buying only or primarily for gaming, a point I made. It doesn’t mean they “aren’t good for them.”

OP also asked if getting a new garbage can Mac would help. It would, but it would be an awfully expensive option for the computing power. The iMac, however, seems to be benchmarking pretty solidly. I didn’t expect that, given the number of pixels it has to push, but there it is.

I agree with you as a very general statement, at least if you’re someone who’s use to Macs. I use both platforms and I feel I’m far more effective in Mac OS. But, if you’re buying a machine primarily for game development with UE4, Darth is absolutely right. It’s the same equation as buying a gaming rig. You’ll get a lot more for your money if you go Windows (or Linux, but really…), and most of the consumer-targeted Macs that Apple makes do have less than stellar graphics cards.

I didn’t mean to create a contention here, but frankly, the replies all point to what I consider a solution. While I may not have the optimum system for UE4, my specific system has a unique problem and that has to be dealt with and it’s clearly not a UE4 issue from your experiences. The type of problem I’m experiencing would probably be front page news for anyone with a Mac and would have been well discussed here. An example: Running the race game standalone, the window opens and it freezes the entire system for a couple of minutes, then the countdown starts, “3”, “2”-freeze for 15 seconds-“1” “go”, then you drive to the first turn, audio stutters and vehicle stops for 10 seconds… this continues as you progress through the demo. It’s a big problem and must be my system. I guess what led me astray in thinking it might be something about UE4, was that Unity and other things I use like Logic, don’t exhibit this sort of thing. I doubt that means anything though.

We will put this on my sons newer and frankly more reliable box today to see what we really should expect from UE4. We are quite sold on this engine after just a bit of playing with it. I gather from this thread that it’s quite doable to migrate. If a Mac Book Pro or iMac is capable of running it, the end user should be able to run our game on many consumer Macs. I’m assuming any reasonable PC should handle it too. Thanks very much for the info.

On the issues you were discussing, it is nice to keep a single box that can do most of your work and I have Xcode, Mono, Logic (music and sound work) and Virtual Box SoC development stuff I do on my mac. Would be quite painful to switch to a PC just because of the level of change, but I can see that I will need to do some Visual Studio anyway when we get ready to release, and of course, will need a PC for testing.

If you’re using C++, you will need Visual Studio to compile. If you’re careful about not using any platform-specific stuff (like [FONT=Courier New]#pragma - or [FONT=Courier New]arc4random() which isn’t system specific, but VS doesn’t include it in its standard libraries), you might never need to actually open Visual Studio. UE4 has great platform-independent libraries. My art team all uses Windows, and they’ve only had problems a few time. They launch UE4, and as long as I haven’t done anything unholy, it compiles it in the background and they never actually see the code or open VS.

Blueprint is even more platform-agnostic, as it gets compiled in-engine.

Thanks for that info. I’m assuming MSVS C++ will be needed eventually before prime time, indeed, it may make sense to pick up a skookum PC for my code development now. My OP was really more focused on whether what I was seeing was an anomaly (which it clearly is) or if the Mac was even possible, development of course, but end user ability to use our product was at least as important. When we first started this seriously (back when we bought Unity 3.x (then 4.x, then 5.x :() we had passed over UDK at that time to avoid a Windows-centric product release. It seems like UE4 solved that.

Really appreciate all the replies.

Yeah, that was our story also. UDK looked great, but we’re mostly Mac-heads, so we ruled it out. The new licensing scheme and a Mac client brought us into the fold, and we’re really happy here.
:slight_smile:

You might want to pickup a Windows PC but, another option would be to pick up a retail copy of Windows and use BootCamp instead. You can upgrade the GPU in those Mac Pros. There aren’t official hardware upgrades, but there are several after market cards available that people have figured out how to get working in the aluminum Mac Pros. Another big win is to replace your a spindle boot drive (if you have one) with an SSD. For less money, you could end up with a better Mac and a pretty decent PC. I use Bootcamp on my Mac Pros pretty extensively and have had no problems with UE4 or any games I’ve played.

Not to talk you out of the PC purchase - I’ve been contemplating a dedicated gaming rig myself. :slight_smile:

I hadn’t even thought of that, perhaps Windows 7 or 8 in Virtual Box would do the trick to run UE4. That’s how I do all my Linux development. It’s not so much talking me out of buying a PC, it’s just monitor space is already at a premium. Bootcamp or Virtual Box would be much better.

If this machine turns out to be the problem, a video card replacement might be the ticket. I did have to switch from mini-DVI to a mini-SVGA adaptor on one of my monitors. I assumed it was the cable, but perhaps there is something more serious causing this problem in the video card, the other problem showed up as momentary hangs on screen refresh. I didn’t know after-market video cards existed for this thing, I’ll look into it.

I will have to spring for an SSD one of these days. Cheaper than upgrading to the new Pro (or a new PC).

I still have not installed UE4 on the other box, sometime today.

We installed UE4 on the mid-2012 (my son’s newer box). The driving demo still shows the same type of freezes mentioned earlier. The ShooterGame running medium quality settings seems to work. The driving game appears to work worse than it did on my mid-2010. Both of us have the 5770 Video card, he has faster CPUs but fewer cores, he has 16GB to my 22GB. It appears these older Pros will not work well as is.

I am willing to try out a new video card to see if it fixes this. Does anyone know if the HD 7950 Sapphire video card will work the magic it advertises on UE4? It is supposed to be Yosemite ready and boasts up to 300% improvements in frame rates. I’m thinking of buying one of these to test it out. Perhaps this and an SSD will salvage our older systems to effectively develop in UE4. Any guesses as to whether this would do the trick?

I haven’t had much luck with UE4 in a VM. I haven’t tried VirtualBox, and I haven’t tried in a few releases, but the last time I tried, it basically didn’t boot in VMWare. UE4 is pretty GPU-heavy, so I’m not sure you’re going to be super-happy using virtualization. :frowning:

One of my development machines is a Quad-core 5,1 (2010) so I think I know what you’re talking about. For this 2010 Pro I have a Sapphire 7950 Mac Edition which is demonstrably superior to the 5770 it came with - exact percentage is very dependent on the scene. I also have a stock PC EVGA Nvidia 680 GTX for comparison which provides a similarly big boost when used in the 2010 Pro. A GPU upgrade along those lines should help noticeably over the much slower 5770’s you are using now.

The biggest cause of stuttering in UE4 games (incl. ShooterGame & VehicleGame) is that UE4 defers submitting shaders to OpenGL until they are first used, which then causes pretty horrendous stalls in glCompileShader, glLinkProgram & the first glDraw* used. This is even worse on OS X because of the split responsibilities between Apple’s OpenGL.framework & the GPU vendors low-level driver extensions. This is far more noticeable on the 5,1 than my shiny new 6,1 (2013) because the newer CPU has vastly better single-thread performance.

Running UE4 under a VM/Virtualizer will not improve matters one iota - these programs provide 3D graphics support to the hosted Windows by piping D3D/GL commands through Apple’s OpenGL so you will face exactly the same performance problems you have now.

I’m working right now on trying to fix the terrible shader stuttering problems in UE4/OpenGL & the Github repo should already have the changes to switch to GL_ARB_separate_shader_objects in combination with a shader usage log so that program pipelines can be constructed at deserialisation, not first use. I’m still working on further improvements.

My understanding is that the 2013 's GPUs are a similar GCN architecture to the AMD Sapphire 7950 Mac Edition so actually they’ll run games just fine, they just aren’t as fast as newer GPU designs. They aren’t CAD-specialised GPUs (if such things even exist anymore) - they are just custom designs/daughter-cards to fit inside the more limited space and thermal/power envelope of the new .

Note that UE4 can only render with the primary display GPU in the new because OS X doesn’t have CrossFire.

They better be workstation graphics cards, they are advertised and priced as such. I would think the 5K iMac or the one with the GTX 775 would still run better

If someone would prefer the for some reason then they shouldn’t be dissuaded by the GPU used. A single D500 is plenty fast enough for UE4 & they are intended to be so, they aren’t hobbled for games or specifically designed for CAD. The 's cards aren’t related to the earlier Windows FirePro lineup AFAICT - they appear to be derived from & perform like the 7800/7900 series GPUs. For comparison they should be faster than the older Nvidia GTX 775 & 780 Mobility GPUs used in the non-iMacs but are likely slower than the newer AMD GPUs used in the iMac’s.

Based on this review: http://www.electronista.com/articles/14/04/11/amd.firepro.d.series.power.the.mac.pro.to.new.performance.highs/
Considering how much you pay for that, I wouldn’t spend that much if you’re a game developer unless you had no other choice. It’s just a waste of money.

That’s really interesting, from our testing with UE4 I’d expect to see the new Mac Pros a bit further ahead of the Nvidia 775, so that’s a bit surprising. The spec. lineup with the W series cards is also illuminating.

It is a bit surprising that that 's aren’t faster in the linked article, but I never said it was the most cost-effective Mac around, just that it isn’t an especially poor performer either. Like the G4 Cube the 2013 is beautiful, but at a substantial cost. The could potentially run UE4 faster still if we were able to use the second GPU efficiently but that is extremely tricky and it isn’t a priority to optimise one small subset of Macs for the moment.

As Chris.B says in the Q&A at the end, AMD don’t optimise their Mac drivers just for CAD or just for games. His team have been fixing bugs on the D-series cards for us as we’ve reported them, just as they did for the 6000-series back when I was porting Batman Arkham City .