Live data from Hacker News

Windows game developer about porting to and using OS X

shiningrocksoftware.com

41–50 of 205 posts

Re: Windows game developer about porting to and using OS X

#41

Tangentially related: Banished is higly recommended. Quiet room, couple glasses of whiskey and you're guaranteed to have a nice evening.

It's not a bad game, especially for its price, but remember that this is a town, not city building game. That means that there is a hard limit to the size of the town - any bigger, and the agents (citizens) will literally starve to death en route to their next destination because it is too far from their home. If you want to expand further, all you're doing is making exact, self-contained replicas of the same town in…

All true. But there's trading that can be quite a bit entertaining. And theres Colonial Charter[1], which is an excellent mod, but it can be daunting because of sheer volume of changes and new stuff.

[1]: http://www.colonialcharter.com/

Re: Windows game developer about porting to and using OS X

#42
post #2

Xcode isn’t too bad. I wish the author told me more about it than just this. Can somebody comment on how it compares to recent VS editions these days? About 5 years ago I also looked into using OSX as main OS. As I've always been using non-commandline graphic text editors and IDEs for most coding that made XCode the go-to environment but I just couldn't deal with it even though I tried. I don't remember all details b…

I'm using both every day at the moment.

- I don't spend a lot of time setting up the IDE, so it's important the defaults are sensible. For instance, it might be possible to change this, but XCode's code completion seems to be less useful than VC2015. I really need it to be near immediate, and I also need it to check string that may appear in the middle of a function name instead of just the start. Especially since NS libraries have strange and long names for things. As I'm writing this, I just found out you can have tabs in XCode. Why isn't that a default?

- XCode crashes maybe once or twice a week for me. VC doesn't.

- Unspecific weird things happen in XCode way more than VC. For instance I was unable to see variable values in XCode for a while. Eats up my time looking it up. Hasn't happened to me on VC yet.

- XCode is highly integrated with the Apple environment. You can build stuff for the app store and send it right there.

- XCode has a less than complete Git integration. You need a bit more detail than what it gives you. I use SourceTree anyway, but it might matter for some people.

- Compile times are hard to compare, as I'm doing different things on the two environments. VC2015 is definitely a lot faster than a few years ago though.

Re: Windows game developer about porting to and using OS X

#44

The comment about C++ templates is baffling and I wish the author would elaborate. The behavior he describes that clang doesn't support is... how templates are specified to work. They're near-useless without that property. Most of these had to do with templates that expected the code inside them not to be compiled until they were instantiated. The Microsoft compiler has that behavior, while clang does not.

He's talking about two-phase name lookup, which VS doesn't implement (yet?), but clang does (as it should, striving to be a standard-compliant compiler). Here's a nice article about it: http://blog.llvm.org/2009/12/dreaded-two-phase-name-lookup.h...

TL;DR: If a type, variable... depends on template parameters, code using it is checked when the template is instantiated with concrete template arguments. Otherwise it is checked when the template is defined.

I don't quite understand why you call templates near-useless, if two-phase name lookup didn't exist?

Re: Windows game developer about porting to and using OS X

#45
post #20

So he's got a working port on an OS he's never seen before, in only 1 week? Does that seem extraordinarily productive to anyone else?

He had done most of the work on Windows beforehand (OpenGL, implementing his own portable shading language, UTF-8 etc).

Re: Windows game developer about porting to and using OS X

#46
post #2

Xcode isn’t too bad. I wish the author told me more about it than just this. Can somebody comment on how it compares to recent VS editions these days? About 5 years ago I also looked into using OSX as main OS. As I've always been using non-commandline graphic text editors and IDEs for most coding that made XCode the go-to environment but I just couldn't deal with it even though I tried. I don't remember all details b…

I use both VS and Xcode daily. Once you get over the initial "gee this thing looks like iTunes" shock and get used to a few small annoyances, Xcode is quite ok to work with. Keyboard shortcuts and source file navigation are completely different to anything else though, once you get used to it, it works well though. Where Xcode is better than Visual Studio for C/C++ dev (IMHO of course): - C++ compiling and linking is…

I find it interesting that most of your points in favor of Xcode are just because of the clang backend, while the points for Visual Studio are more about the IDE itself.

Would be interesting to hear your opinion again, once clang is fully supported through Visual Studio.

Re: Windows game developer about porting to and using OS X

#47
post #7
post #3

For me the most interesting part (and answer to it) why on OS X the game runs at 1FPS, whereas on windows machine with the same graphics card it runs just fine? What can make such considerable difference?

Drivers. On MacOS they tend to be a bit behind the Windows versions, also MacOS itself is reasonably GPU-heavy. Add to that Apple's tendency to lag behind the latest (as in from the last five years) OpenGL standards and you've got a recipe for slow OpenGL. Though interesting that it's an Iris Pro, MacOS used to have the best Intel drivers as Apple pulled them in-house. ATI and NVidia have always treated MacOS as a se…

>also MacOS itself is reasonably GPU-heavy

OS X's window manager is optimized for fullscreen windows on top of everything else (including menu bar and the "Dock"): https://developer.apple.com/library/mac/documentation/Graphi...

I also found that even with a GPU-heavy fullscreen application, having another (smaller) window on top doesn't noticibly degrade rendering performance. It seems the window manager is doing some clever things there in regards to compositing.

Re: Windows game developer about porting to and using OS X

#48
post #34
post #12

>unix-like Not just unix-like, OS X is certified UNIX.

What does this atually mean (when compared to Linux, which is a UNIX clone)? That they have paid someone for a certificate? Is it more than that?

It means you can be sure that the APIs described here exist, with at least the set of specified arguments and behaviors.

http://www.opengroup.org/standards/unix

For example, http://pubs.opengroup.org/onlinepubs/9699919799/

However, just like C, any certified implementation is free to add extra behaviors and there are certain parts that are actually implementation specific, like how signal handlers behave in certain situations.

Re: Windows game developer about porting to and using OS X

#49

Earlier quoted context omitted.

I use both VS and Xcode daily. Once you get over the initial "gee this thing looks like iTunes" shock and get used to a few small annoyances, Xcode is quite ok to work with. Keyboard shortcuts and source file navigation are completely different to anything else though, once you get used to it, it works well though. Where Xcode is better than Visual Studio for C/C++ dev (IMHO of course): - C++ compiling and linking is…

I find it interesting that most of your points in favor of Xcode are just because of the clang backend, while the points for Visual Studio are more about the IDE itself. Would be interesting to hear your opinion again, once clang is fully supported through Visual Studio.

Yes, I noticed this too while writing the points down. It really comes down to the clang back-end. I'm really looking forward to the clang integration in VS, and also really love the work MS is doing to fix Android native development.

One strange thing I see with clang running on Windows (in the form of the emscripten fastcomp backend) is, that clang runs a lot slower on Windows than OSX or Unix. So may be it is some underlying IO problem? I'm not sure but hope this can be fixed.

Re: Windows game developer about porting to and using OS X

#50

The comment about C++ templates is baffling and I wish the author would elaborate. The behavior he describes that clang doesn't support is... how templates are specified to work. They're near-useless without that property. Most of these had to do with templates that expected the code inside them not to be compiled until they were instantiated. The Microsoft compiler has that behavior, while clang does not.

Microsoft's C++ compiler treats templates more like macros: http://blogs.msdn.com/b/vcblog/archive/2015/09/25/rejuvenati...
Post reply on HN