Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Those are both built with Unity though, right? Where the game is basically C#. Are the actual physics even done vectorized?


No part of a Unity game runs in a .NET VM or any other VM. They chose C# as the scripting language because C# is one of the most popular programming languages, it's extremely popular in the non-game dev development community, and it's probably the only non-Web language that most code academies teach for traditional development maybe other than Java.

It's syntax is also pretty close to C and C++ which means developers with game dev background will feel at home as most game development is done in C++.

Unreal Engine uses Unreal Script which is now pretty much C++ but it is also not compiled directly (although with Unreal Engine 4 and onwards it's much closer to direct compile than any other scripting language).

Unity engine has it's own interpreter which then builds highly optimized C++ code and compiles it when you build the game.

Unity Engine is a pretty decent engine with kickass performance when optimized, without fine optimization any general purpose engine including Unreal 4 acts like utter crap. I'm alpha/beta testing a few UE4 games atm and you can see just how bad performance can get even on a solid defacto industry standard like UE4 like when dynamic shadows tank a GTX Titan X (Maxwell) SLI setup to below 20 fps any time there are light sources that are not properly fenced and culled - e.g. explosions.


Your last paragraph ticks me off so much about the current non-sequetor "industry standard". Most recent example I can give is that doesn't really care is EDF 4.1. It takes carpet bombing an entire city to make its FPS dip with hundreds if not thousands of gaint incest gibs (and four players) being flung across the map.

Do they really need a bazillion shaders and dynamic shadows on everything?


Unreal Engine is an industry standard when it comes to commercial general purpose engines.

There are more unreal engine titles for any given version than any other engine on the market on PC's and consoles.

On mobile unity is probably bigger atm.


You sure? I was playing with Unity back in 2009 and you scripted both game and IDE atop mono. The .NET flavour of JS was being pushed, with code examples additionally in C# and Boo (!). I preferred to use F#.


Unity scripting is in C#, but the engine itself isn't necessarily written in C#. The physics are based on physx (which I assume vectorises things).

http://blogs.unity3d.com/2014/07/08/high-performance-physics...


C# is just a glue language, physics is run inside the engine as optimized C++, it is vectorized where possible.


I'm surprised by how many people think Unity games are "basically C#". That's like saying Unreal Engine games are coded in Lua. Like Lua, C# is nothing but the scripting language. The Unity game engine that does all of the heavy lifting is coded in C++.




Consider applying for YC's Winter 2026 batch! Applications are open till Nov 10

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: