Hacker News new | ask | show | jobs
by mminer 2735 days ago
Unreal Engine and C++. I've long worked with Unity, but as part of a new job I'm tasked with developing our Unreal plugin. Previously I only touched C++ on occasion, so I had a lot to learn — and have a lot to learn yet — of best practices, new features available in C++11, dealing with exceptions (Unreal disables them by default), and so forth. Likewise for Unreal. Like C++ itself, it's wonderfully powerful but sometimes painfully complex.

I also continued to deepen my understanding of databases and distributed systems. My favourite read this year was Designing Data-Intensive Applications which made me more familiar with the pros and cons of the various datastores and provided a better sense of the tradeoffs that each makes. It also gave me an appreciation for the guarantees that the battle-tested relational databases provide. One of my goals for 2019 is to improve my SQL knowledge — thus far any extra effort to understand it better has payed dividends.

1 comments

On the verge of choosing Unity for a project with middling performance requirements. Can you tell me which platform you'd choose if you had the luxury?
Almost without question I'd choose Unity for most projects. Its rich ecosystem, large community, and decent documentation make it a solid choice. Many of its warts like only supporting an ancient version of C# have been remedied in recent releases (as of Unity 2018.3 you can write C# 7.3, which is a nice language indeed). Unreal's Blueprints are slick for gameplay scripting, but I'd choose C# over C++ for game code any day.

In the end they're both excellent engines, and I suspect a AAA game would be better served by Unreal, but I find Unity far more flexible for arbitrary game designs whereas with Unreal you sometimes feel like you're fighting its roots as an FPS engine (though if you're making an FPS, UE4 might be just what you need).