Unreal Engine 4 is open source (sort of) for $19 per month

The only way to learn the truth is to actually try using all these engines :slight_smile:

Btw, that article sounds like a fanboy write up.

Well it seems the issue here is not that he’s a fanboy (because he’s well aware that Unity has some serious shortfalls and has considered jumping ship), though it seems by now the issue (and one shared by the majority of people here) is because he doesn’t share the Motorsep approved view of various game engines (thou shalt always see the Unreal Engine and Doom3 Engine as absolute perfection, no critique allowed) :wink:

Let me chime in as someone who has been using Unity since the 2.x and someone who knows the forum and their members quite good, as well as someone who sells models in Unity’s AssetStore.

First ShadowK’s sight is quite biased. I wouldn’t say he’s a fanboy, but the whole thread sounds like a attempt to justify to stick with Unity. Which is quite understandable, if you already invested lots of money into Unity. The whole purpose of this thread seems, to seek for some people who agree with him to stay motivated to use Unity.

What he wrote is true in most case. But you have to see the big picture.
First. He partly compares Unity5 with UE4.
But Unity5 isn’t even out yet. Unity Tech is really sketchy about a release date, as well as about the feature details. You have to know that UT is notorious for promising a lot, or tease people with stuff that eventually ships years later (e.g GUI), or is broken (e.g Umbra).
When Unity5 eventually gets released, UE4 has probably ironed out a lot of their current issues and got new features as well. UDK has a track record for fast updates and bug fixes. Sometimes Epic updated UDK bi-monthly. I’m sure this will be the same for UE4.
I looked in their forums and answerhub and the devs respond really fast to issues. UT on the other hand is slow as hell when it comes to bug fixing. They just got recently a bug tracker after years of begging for such feature. And still you have bugs in Unity that are persistent for years.
Unity uses a really ancient version of Mono and their garbage collection is a hot mess. Not to mention that native code is way faster if you execute it in a game. UE4 is also way more optimized for high end games. Of course, not everyone needs that.

And while I applaud Unity for their integration of Enlighten, and PowerVR, I see a lot features that Unity still lacks compared to UE4. Take Unity’s terrain for a start. It’s absolutely outdated. Not even comparable with UE4’s. Also particle rendering with correct lit particles, particle shadowing, emitting particles, are as much important in current gen games, as realtime GI. And that is what Unity also lacks. Same goes for volumetrics and ray-traced realtime reflections.

Another point is, that you have to buy a whole lot of third-party plug-ins for Unity, to get it on par with other engines. You want IBL lighting? Buy Skyshop!. You want a visual scripting solution? Buy Playmaker! You want a node based material editor? Buy Shaderforge! Etc. etc. Stuff that ships in UE4 out of the box.
Needless to say that all these third-party plug-ins are from different developers, which means you get a non-unified and sometimes cluttered workflow and different third-party plug-ins often don’t work well together.
Not to mention, that some plug-ins you might rely on, get abandoned in some cases. Maybe because of lack of motivation, or the developer has personal problems such as health issues etc. I saw that quite often.

UT is also full of nepotism. You get that when you actually sell stuff in their store, or have a look at their blog. Something I personally really dislike.

That said Unity is still a viable option for a lot people. It has a fast workflow and a solid asset pipeline. And not everyone want to learn a new engine when you’re already used to Unity. Also, not everyone want’s to make a game with high end graphics.

Personally, I bought the UE4 subscription two days ago. And I really like it so far. The official video tutorials are top notch. As well as the sample projects. Something I can’t say about Unity unfortunately.
The engine itself is a breeze so far. You get all the shininess out of the box. If you want top notch graphics in Unity, be prepared for some head-ache. Unity’s skinned cloth for example are so buggy and outdated, it isn’t even funny anymore.

And while I have to admit that UE4 is still rough around the edges, I’m pretty sure this will change in a couple of months. Unlike Unity where it takes years…

So long story short. I’m pretty happy with UE4 so far. And I will keep it.

Yeah, it’s exactly what Blender should be though, one of the only 3dcc you could integrate with an game engine at source code level with C/C++. No abstraction layers, or a python addon. Just as BGE has it’s own GUI UE4 could have, and I wonder if you could make UE4 run in the 3d viewport when you hit “P” key,

just as luxrender, vray and others can send render progress,result to viewport when rendering.

I`m pretty sure there are licencing problems that do not allow to reach that utopia. A better exporter, now that is still possible and very needed.

I am and have been a big fan of Epic and the unreal engine… been using it off and on for years and used to purchase unreal tournament just for the level editor it shipped with…

That said I think some are being fanboys for the Unreal engine, rather their bias is showing a bit too strongly. The fact is, there really is no ideal engine or business model available at the moment, so much of it is looking at the pros and cons and comparing it to the goal of the artist/designer/developer. Let’s make sure we are not over hyping, over praising, Unreal Engine 4.

Right now, as it stands Unity is still a better platform for developing indie games, yes you often need some third party plug-ins, but thats also part of its strength. None of this will be cheap because if its not a money investment, its a time investment. If someone is going to toss out some environment art, or even some level design, sure Unreal Engine seems like a great option, but if the goal is to produce an actual game, faster and with more flexibility that doesnt involve jumping into source code… then Unity is still leading in this arena. Its why you will see a lot more positive comments towards unity…its not that they are “fanboys” but they are focusing on actual game development. I would love to see the Unreal Engine catch up in that regard, but lets be honest. Its not even close to being there yet, especially for the smaller indie team.

The landscape for game development and interactive media will be changing a lot over the next few years, we see a lot of shifting going on especially with business models and technology. The oculus rift and sony’s project morpheus are pushing VR focused design considerations as well as simulations, new texturing methods are forming based around the growing use of real time Physically Based Rendering (PBR), a greater focus on visual scripting and generic scripting languages is taking place as well as the distribution platforms available. Nothing is really set in stone, Uneal can either sink, swim or not really go anywhere. More options will be forthcoming from other groups, other means for content creation and consumption are in development, so the moral of all this is to not lump your eggs in one basket just yet. Its ok to praise what you see in Unreal so far, but lets not put it on a pedestal just yet or attack the alternatives because of that engine loyalty. Its just not smart.

SaintHaven pretty much nailed it. That’s exactly why I don’t get the “this is the end of Unity” comments. UE4 may be cheaper but for actual game development (that is not your general first-person shooter) Unity is far ahead of both Unreal and Cryengine.

I really do hope that both Unity and Cryengine follow suit and go open-source but I wouldn’t count on it. Mainly because they don’t need to.

Coded this in an hour, and i didnt even know the parts to touch to edit movement. Also created a complete sword melee system in something beetween an hour and 2, using animations to handle movements, and then getting the hit using collision with the sword itself. Able to combo attacks and everything is configurable in editor.
I know unity, and i havent found that much increase in speed. In fact, due to blueprints, you can easily be faster to code something in unreal 4 than in unity. And ive been a betatester since october, and while we were in the private “top secret” beta, we didnt have source code. Never found a problem with it. In fact, you dont need to touch the source unless you really want to modify the way graphics work or things like that, source is more useful for reading it and understand the flow and the default gameplay classes. Made a zombie game, 3rd person shooter, top down hack and slash, space game, and this jetpack, not a single case that i ever needed to touch sourcecode. For now im looking at the changes the new version brought, and im planning on start writing some game frameworks to sell in the store.

That might not be Unity’s end since UE4 is not ideal for every project. Also not everyone is willing to learn a new engine, or share their income with Epic.
I’ve been using Unity since their Mac only days. And I always liked the easy workflow and the asset pipeline.

But Unity has also a lot issues, people moan about. And with UE4 around the corner it isn’t going easier.

I also disagree with the sentiment that UE4 isn’t viable for actual game development, other than FPS games. This isn’t UDK anymore. UE4 has massively evolved and took a big step in Unity’s direction.

BluePrint alone enables you to rapidly prototype games, like there is no tomorrow. See the post from vblanco. It’s way more advanced than Playmaker (Which I own btw.) It enables people to make small indie games and yet you’re be able to scale to massive projects thanks to the native c++ support and available source code.

You should grab a tea and watch this quick overview video. Alone the modeling tools (realtime booleans, mesh editing etc.) give Unity a run for it’s money. This is a huge timesaver.

UE4 has still to fix some things though. But it’s on the right way.

I’m neither a Unity evangelist, nor a UE4 zealot. But Unity was too long the king of hill. And they started to make some bad moves because of that. Maybe this will bring them down to earth. At least I hope so. Apparently my Asset Store sales are already declining, since Epic’s announcement…

@ SaintHaven

I was quite skeptical about UE4, especially after seeing UT’s Unity 5 announcement. Actually I was quite impressed with Unity 5. But this something you always have to take with a grain of salt. They talk a lot. But when and what they actually deliver is another story.

After playing with UE4 the last days, I can say I’m seriously impressed. And I never had UE4 on my radar, nor did I use UDK before. But for 19 bucks I had to give it a try. And I’m now at a point where I seriously consider UE4 for smaller projects.

That said. I can not share every of your points. But some of them are true. For example that there is no ideal engine, business model available.

Im a c++ coder, everything i do is mostly in C++. I showed that thing above for the people who is like “ZOMG C++ is crap for coding games” Wich is NOT. You have complete access to the whole engine in C++, and all the painful things like memory management, multiplayer, and dynamic arrays is handled using some engine classes, wich make it painless. Also, you can recompile the game while in the editor, as long as you havent changed the header file. So what i do most the time, is to add the header with some function definitions, leave the functions without implementation or just empty, and then iterate in the editor as i add stuff. For example, in the walljump, i added a StartWalljump function to the character, left it with just a log to screen, and then i just called that function from blueprint if the player is in the air and tries to jump again. Then i continued adding some debug lines for the raytracing i do there, and then go addthing logic in an incremental way. Each time i do changes to the Cpp file, in about 10 seconds im playing those in the editor, not even need to pause the game. So its in fact faster than using a script lenguage in some cases. Important thing, is that i set up some properties for the compilation, so it only compiles incrementally, instead of recompiling whole game like it does by default. That means i get compile times of 5 to 10 seconds while compiling inside the editor, instead of the 60 secs it takes to recompile the game in visual studio.

From a simplistic perspective, could Unreal 4 act as a rendering engine for blender meshes? To where Blender objects/characters, or even animations could be imported into a scene, (not from a FPS perspective) and rendered? Is there an out of the box advantage here

Well, if what you want is some kind of render engine, Cryengine can do a better job, or just use Marmoset. Cryengine has better graphics and fancy light effects from the start, but im not sure how the exporting from blender works.

Thanks for the reply.

Here is a quote from the UE forums:

Question:

Are the models of the Blender software supported in Unreal Engine 4?

Answer:

Yes. Anything that support FBX should work. You might have issues with skeletal meshes from blender in FBX. Though I’m not sure. Someone who is using blender should answer this. All I can say it should work. More or less.

Like it was mentioned before, they are going to optimize UE4 in the next 6 months.

I concur on the use of Marmoset if you are just looking to render, no sub and affordable. I was talking to a dev from Rockstar awhile back and he would use Unity + custom shaders, to render assets to match existing games as well. One of the perks with the Cryengine as well is that you dont have to bake lighting information… but yeah, Marmoset should be your first go to app for real time renders.

Example:

deleted*

Shocking news really. Releasing the source it’s something i wouldn’t really thought to happen from such big and established company.

Anyone who is enough experienced would mind to share what could be done with it, in terms of Blender integration/linking, usable code from it etc etc? For example their realtime rendering tech could be reused in some forms? Or perhaps the BGE could be forked/rewritten by a dedicated team, released under BSD or Apache (such as Cycles no longer GPL), and then Unreal seamlessly used with B3D?

These are the terms i found about license:

SOURCE CODE

  • What modifications can I make to the source code?

You can extend it, modify it, fork it, or integrate it with other software or libraries, with one exception: You can’t combine the Unreal Engine code with code covered by a “Copyleft” license agreement which would directly or indirectly require the Unreal Engine to be governed by terms other than the EULA. For example:
[LIST]

  • Software licensed under the GNU General Public License (GPL), Lesser GPL (LGPL) (unless you are merely dynamically linking a shared library), or Creative Commons Attribution-ShareAlike License is Copyleft Code.
  • Software licensed under the BSD License, MIT License, Microsoft Public License, or Apache License is not Copyleft Code.

[/LIST]

  • Can I share the Unreal Engine source code or tools with others?

You can share the source code or tools, along with any modifications you’ve made, with anyone who is an Unreal Engine licensee who is authorized to access the same version of the engine as yours, e.g. the 4.x.x version number of your installed build.

  • Can I copy and paste the Unreal Engine code into my own project or engine?

If you use any Unreal Engine code in your product (even just a little), then your entire product is governed by the EULA, and royalties are due.

  • Can I study and learn from the Unreal Engine code, and then utilize that knowledge in writing my own game or competing engine?

Yes, as long as you don’t copy any of the code. Code is copyrighted, but knowledge is free!

  • The Unreal Engine ships with a lot of content, and more is available in the Marketplace. Can I use this freely in my products?

Yes, you can ship our content in your products using the Unreal Engine. However, you can’t sell or sublicense our content to other developers for use in their products, e.g. via web site or e-commerce mechanism built into a 3D development tool.

I think that UE4 has more potentional in the long term due to the fact that its feature rich by itself while Unity lacks some basic game engine features that are heavily substituded with 3rd party created content. While the concept is really great (which is why UE4 is also adapting it), it has its shortcomings like breaking from one engine update to another or the dev behind the framework/plugin/whatnot can disappear to never return.

Theres also a lot of incosistency like with the UniRPG visual scripting framework. The dev one day decides he will remake the framework from scratch in a fundamentally different way without finishing the first version. So now its called Plygame and people have no possibilities to upgrade from UniRPG at all. That`s just one example, there are a lot more.

Because the UE4 package is self sustained you should be less dependent on 3rd party plugin providers that might stop development at any time. Also basing your project on UE4 rather than a lot of thinly stiched together 3rd party plugins will ease the updating process.

Lastly, making the source code public is really great for fixing bugs, getting new features in faster.

I believe one of the reasons for going this direction is that the big publishers have invested lots of money into their own propietary engines at this point… this means these licensed game engines are less likely to be licensed from the larger first party studios… so its in their best interest to target the smaller 3rd party ones and indie development. I’m thinking that with EA, Ubisoft and Activision using their own engines isnt necessarily a good thing, reminds me too much of the past when the publishers were at their worst, not their best.