Unity Engine Gets Big Update

rgMekanic

[H]ard|News
Joined
May 13, 2013
Messages
6,943
The Unity Engine is the world's most widely used real-time 3D development platform, and today Unity 2018.1 is now available. The unity engine has been used to make some incredible games, as well as some incredibly terrible asset-flips. DSOGaming has a list of highlights from the latest update, including Scriptable Render Pipelines, Entity Component System (ECS) and the C# Job System, as well as many new features.

“With Unity 2018.1 we are introducing one of the largest upgrades in the history of our company, and it’s centered around two major concepts – next-level rendering and performance by default. We have brought the world’s best talent together with the goal of making Unity 2018 the premier choice for all creators, from high-end studios to individuals experimenting with the boundaries of what’s possible and everything in between.”
 
giphy.gif
 
:unsure: I see a lot of features that have been available in unreal since Methuselah walked this earth. I do have to give credit to Unity for bringing some competition to Unreal though, especially in economic terms.
 
I can't wait for all those indie rogue-likes to look just a little better, but run a little worse since they didn't do the needed extra optimization.
 
I can't wait for all those indie rogue-likes to look just a little better, but run a little worse since they didn't do the needed extra optimization.

My biggest complaint with the new Battletech, with a Titan P, 8700k and an SSD the load times are just unacceptable.
 
My biggest complaint with the new Battletech, with a Titan P, 8700k and an SSD the load times are just unacceptable.

They aren't super fast with a 4.1Ghz 1600/VEGA 64/Samsung NVME drive for me either. That and the graphics set to the highest settings in 4K look like a 10+ year old game. The trees look sooo horrible and flat. I was eagerly awaiting this game since I am a huge BT fan..I have read nearly all 150+ BT novels and love the lore. This game is better then nothing but I still feel it could have looked A LOT better since you don't need it to run @ 100 FPS to have a good game play experience.
 
They aren't super fast with a 4.1Ghz 1600/VEGA 64/Samsung NVME drive for me either. That and the graphics set to the highest settings in 4K look like a 10+ year old game. The trees look sooo horrible and flat. I was eagerly awaiting this game since I am a huge BT fan..I have read nearly all 150+ BT novels and love the lore. This game is better then nothing but I still feel it could have looked A LOT better since you don't need it to run @ 100 FPS to have a good game play experience.

Well I wasn't expecting great graphics, I think they are mostly fine, its more the lack of animations that makes it suffer. The impact of blowing off part of a mech is too generic.
 
I showed my 1 year old son the promotional video. He approves. At least I think he does, he can't talk yet.
 
I didn't get a chance to dig into it, but does anyone know if the new Unity has full vulkan support now?
 
They didn't even link to the feature list at Unity's site... Shame on your DSOGaming!

That being said: https://unity3d.com/unity/whats-new/unity-2018.1.0

After doing a CTRL+F, I'm going to assume that Unity is still heavily single-threaded and is still going to result in any serious game performing like absolute shit. This was the only result for any sort of multi-threading search:
"Shaders: Surface Shaders with many multi_compile/shader_feature variants import several times faster now (internally, Unity now multi-threads that process)."

Shame that it's only certain processes they've deemed worthy of multithreading. Oh well. At least that means we can mine on 14 of the 16 cores, while playing a Unity powered game, and not worry about performance suffering!
So much for being in modern times with 16 cores available for cheap. Still, you'd think Unity would focus more on multithreading given that most smartphones seem to have no less than 4 cores. Maybe it's due to the 8 core chips only having a couple high-performance cores? Bleh, oh well.

EDIT: My bad, there IS this:
"Physics: 2D Physics can now use all the cores on a device to run its simulation. See Job Options (Experimental) in 2D Physics Settings."
 
You know what I like about Unity? That it has brought more games to Linux.

It frustrates me to no end that UE4 has native Linux support, yet Epic won't release any games for Linux (except the failed Unreal Tournament), and very few games on UE4 have come to linux too. Hell, UE3 took wayyyyyyy too long to come to Linux, even though they promised it the whole time. Sure, it came, but only when the engine was pretty much dead in popularity.

Unity, is certainly turning my head though. I'm liking what I see!

Oh, and that 2d animation thing is neat.
 
I use Unreal Engine in the classroom, love it. We had the best game at one of the student organizations state competition but dropped the ball on the documentation :(. In fact, I get to teach Video Game Design next year :), UE4 without a doubt.
 
They didn't even link to the feature list at Unity's site... Shame on your DSOGaming!

That being said: https://unity3d.com/unity/whats-new/unity-2018.1.0

After doing a CTRL+F, I'm going to assume that Unity is still heavily single-threaded and is still going to result in any serious game performing like absolute shit. This was the only result for any sort of multi-threading search:
"Shaders: Surface Shaders with many multi_compile/shader_feature variants import several times faster now (internally, Unity now multi-threads that process)."

Shame that it's only certain processes they've deemed worthy of multithreading. Oh well. At least that means we can mine on 14 of the 16 cores, while playing a Unity powered game, and not worry about performance suffering!
So much for being in modern times with 16 cores available for cheap. Still, you'd think Unity would focus more on multithreading given that most smartphones seem to have no less than 4 cores. Maybe it's due to the 8 core chips only having a couple high-performance cores? Bleh, oh well.

EDIT: My bad, there IS this:
"Physics: 2D Physics can now use all the cores on a device to run its simulation. See Job Options (Experimental) in 2D Physics Settings."

They added major multi-core support here
https://blogs.unity3d.com/2018/05/0...26.967734455.1525224341-1690553167.1485324597

"
The C# Job System & Entity Component System (ECS)

Combined with a new programming model (Entity Component System), the new runtime system enables you to take full advantage of multicore processors without the programming headache. You can use that extra horsepower, for example, to add more effects and complexity to your games or to add AI that makes your creations richer and more immersive."
 
Unity has increased it's perceived quality exponentially recently. three years ago Unity was perceived as a bargain-bin engine for hacks and asset-flips. Now it's improved its community and perception so much...

I'm an Unreal dude myself, but I have way more respect for unity recently.
 
Unity has increased it's perceived quality exponentially recently. three years ago Unity was perceived as a bargain-bin engine for hacks and asset-flips. Now it's improved its community and perception so much...

I'm an Unreal dude myself, but I have way more respect for unity recently.

Personally I miss Valve's Source Engine as a competitive engine. (I know, it has been a while)

From a power user perspective, I lived the easy it set things up, and the easy console command system.
 
They added major multi-core support here
https://blogs.unity3d.com/2018/05/0...26.967734455.1525224341-1690553167.1485324597

"
The C# Job System & Entity Component System (ECS)

Combined with a new programming model (Entity Component System), the new runtime system enables you to take full advantage of multicore processors without the programming headache. You can use that extra horsepower, for example, to add more effects and complexity to your games or to add AI that makes your creations richer and more immersive."

Is that part of the core engine? (I'm not a coder or game dev)

For example, Planet Nomads, on my Ryzen + R9 390, it arguably runs like shit and for no reason beyond the fact that the engine wasn't threaded well. I had posted about this and linked to some things that maybe they weren't familiar with, to try and help out a bit. Granted, as you'll see, they are (or were as of mid Feb) still using an old engine build, but he better explains what I'm wondering about. This was his initial comment to someone else about performance:
(keep in mind that English is a second language to him)
"Speaking about multithreading and optimizations - Whole Unity engine is single-threaded, we use a Thread-Ninja, which is kind of multithreaded asynchronous coroutines. But the amount of work, that could be done in background threads, is very limited as it could not use any functions from Unity API. We use it mainly for database writes, animal's terrain navigation, and few other things. The core of the Sandy terrain engine is written as a C++ plugin and this is mutlithreaded code [he's referring to their libSandyEngine.dll Unity plugin] . But synchronous between multi- and single- core as well as marshalling data between C++ plugin and C# scripts also takes some time.

Moving slow operations to background thread can save some lags, in expense of more complex code and necessity to synchronize things. But the main problem in low overall performance in the game is currently rendering, especially that part held on CPU side, physics computations and then few our Update scripts, the most annoying of them already moved to background threads."


Then I replied, with my links to things I figured may be of help, and his response to me was:

"We are using Unity 5.4 currently. I am not sure if Unity 2017 is any better now, but last time we switched to 2017 we expected free performance benefit, but instead it was overall approx. 10 FPS worse on our testing machines and was forced to revert our project back. Maybe switching should be conducted with some rework of our code to gain a better performance. But we did not have a time for this.

Using multithreading is possible in Unity/C#, but not with Unity API calls. as stated in articles you've mentioned. We use asynchronous accesses to database, but switching between main and background thread costs a frame, so sometimes it's better to do things in main thread instead of : getting values in main thread, waiting for background thread, computing something, waiting for main thread, using computed values in main thread.
Also using asynchronous functions in interactive code is a little problematic. For example you call function to dig into terrain and never know, if modified terrain gets back in next frame or 5 frames later.."

So upon re-reading what he initially wrote, it looks rather plausible that the 2018 engine may help the game out given the part I quoted, Physics, now being multithreaded. Whether or not the C# stuff he refers to will benefit from the C# Job System being able to " take full advantage of multicore processors", I don't know. I'll definitely mention it to him though. Don't know how it compares to the 2017 update he spoke of, but with both engine updates combined I'd say that the benefits will be worth any code that they'd need to rewrite or tweak...
 
I must have lost touch with the engine market. I hadn't even heard of Unity before.
I'd say... lol

But yea, Unity started as a mobile device game engine quite a number of years ago, and then was ported to other platforms. It supports pretty much every rendering API (DX9, 10, 11, 12, OGL, WebGL, OGL-ES, Vulkan, off the top of my head). Supports Linux, MacOS, Android, iOS, Windows. Basically, if there's a processor with a graphics chip, it can run on it lol

It's rather big in the indie scene due to, from my understanding, being rather modular by way of plugins (no doubt monetized to some degree). So you start with a barebones engine and then snap in just the features you need. I believe there is also a rather large assets market you can utilize, both free and paid.

There are tons of games on Steam that use it, a lot of them are GreenLight ones. Those that I own: Planet Nomads, Slime Rancher (shush, the girlfriend likes it lmao), Besieged, and Simple Planes.

For a casual game it does just fine. The only one in that list that I consider to have ambitions of being more than a casual game would be Planet Nomads, which as I mentioned in my previous post, performs far worse than it should given the hardware it's running on. So with any luck this 2018 build will be able to improve on that quite a bit....
 
Back
Top