Download

What to improve in Unreal Engine 4 from a Unity Developer's point of view?

I had a short conversation with Chance from UE4 Staff here:

https://forums.unrealengine.com/showthread.php?61122-Help-to-improve-our-Unreal-Engine-4-For-Unity-Developers-document&p=269673#post269673

and I decided to write a separate thread because I think it’s an important topic not only for the Epic Staff.

I have no long experience with UE4, but I have been using Unity for over 5 years, so I can help to improve UE4. The first impression seems the most important :), so I noticed a few things to improve in Unreal Engine:

1/ The famous gizmo in the viewport of Unity that a user can change X, Y, Z, perspective and orthographic views quickly. It’s very useful, not only for Unity developers.

2/ The graphic elements of UE4 GUI should be smaller (icons, tabs, bars, etc.) because laptops are more and more popular among developers, so it would be very good to see something like a laptop mode in UE4. No need to use such big graphics elements. The GUI of Unity 3D is a very good example to follow.

3/ More file formats supported by UE4, especially sounds (not only a .wave).

4/ Skeleton retargeting should be easier, without manually choosing bones - the bones from other skeletons should be detected automatically (only manually improvements).

5/ As much as possible Unity assets should be imported easily to UE4 (a lot of us possess such assets that can be used in UE4).

6/ Making quick prefabs by dragging an object (actor) from the scene (Viewport) and droping it on the other object in the Content Browser. The Unity-style making prefabs is very good because it is very fast and I think can exists together with your Blueprint System.

EDIT:

7/ I"ve noticed there is no an empty object (empty actor) that can be a parent for non-empty objects (actors) like in Unity 3D. I know UE4 uses a folder to group objects (actors), but I can’t manipulate the whole group using the folder. It’s only a folder. Can you make a possibility to add an empty objects (actors) in the World Outliner for parenting?

These are not big things I think but important and they should be considered by the Epic Staff.

Hello Tomza,

I was looking over your post and I thought that some of your suggestions were good and so I have taken the following actions:

  1. I have written up a feature request (UE-13869) to add a similar viewport widget with a similar functionality.
  2. There is an options that currently exists for smaller icons. It can be found in your editor preferences under the appearance section. I hope this helps.
  3. I have written up a feature request ( UE-13870) to incorporate more sound files.
  4. I have written up a feature request ( UE-13872)
  5. There is already a feature request (UE-13132) in place that has been sent to the developers for further consideration.
  6. From the description give is sounds like you would like to manipulate multiple actors in a scene using a signal actor. This can be done by selecting the actors you would like to be controlled in the world outliner and dropping them onto the actor that you would like for them to be controlled by (in the world outliner). This would

Make it a great day

Hello Rudy,

Thank you for your post. I love the way you communicate with UE4 users. I’m grateful for taking my propositions into your consideration. It will be really useful both for us, Unity Developers, and for other people who have never touched Unity. UE4 is much better engine with great features, but Unity is popular because in general is easy. Even kids can make their own small projects with Unity. UE4 is a professional tool with awesome graphics, complex but beautiful.

Regarding the topic what to improve in UE4, I’m glad because of the feature requests, but I wish to write more about the 2. and 7. points as well as other things.

  1. Yes, there’s an option for smaller icons, but only for the Main Toolbar and Modes. It’s very useful, but it would be great to have all elements of the GUI smaller. I completely don’t understand why the tabs, bars and other icons are so large. They aren’t used too often. Should for example World Outliner, Content Browser, Mode, World Settings, and other inscriptions be so big? It can be good for big monitors, but not for laptops. I think you should have a Laptop Mode that can reduce all graphics elements to minimum.

UE4-GUIArrows.jpg

2330ae7d45bbbef5b8f26bca1be88c1e451d6a3d.jpeg

The GUI of Unity has smaller elements and seems elegant and compact.

I know many people use laptops for game developing, not only me. Not all have a possibility to connect to a big monitor. We are fighting to get more space in the Viewport, so the Laptop Mode would be a really helpful. Of course, this is only my suggestion.

  1. Yes, it’s true! It works. Thank you! However, there are empty objects in many 3D programs (Unity, Blender, etc.), so maybe it will be useful to have one in UE4.

  2. I’m thinking of the New Game UI system in Unity that was introduced in Unity 4.6. It’s really great feature where we can treat the GUI elements like a true 3D objects (actors) in game. I don’t know if there’s something like that in UE4. Maybe, it would be useful to make such a system that can exist together with the traditional one.

  3. Another very good feature in Unity is that the programming stuff is very friendly for beginners. No matter what version we are using, the file templates are the same (the Start and Update functions), while in UE4 a lot of things are changing from version to version. It makes older C++ tutorials useless for learning for newer UE4 versions (just read the comment on YouTube - people are lost watching your tutorials). The changes in Unity are done in API (adding new classes, functions, properties, etc.), not in the file templates. I know there’s Blueprint System, but many of us are coders and like using true coding. I think you should not change so often the C++ file templates. For example, you can change the file templates from main versions like from UE4 to UE5, not from UE 4.7 to UE 4.8, etc.

I don’t think anyone being serious about game development uses a laptop. You may know some people doing this because you come from Unity where many people just create 2D games, but for being able to use UE4 comfortable (with 3D stuff) you need quite a powerful PC and laptops are either not powerful or horribly overpriced. And additionally, I don’t think there is anyone really making games without a multi monitor setup. One single screen is just not enough.

The UE4 UI looks a lot… smoother, cleaner, modern than the Unity one. I really like the UE4 UI. Of course I would not be against a seperate option which makes everything smaller, but I just think it’s not worth the expenditure for Epic since there will be nearly no users :wink:

You can create a 3D UI with UMG, or are you calling UMG the “traditional one”?

I think Epic said in the near future there will not be any UE5, they will just continue UE4 with 4.9, 4.10, 4.11, … 4.20 and so on.

But I agree, they should make the programming more easy. The official c++ tutorials on Youtube are really not good, while the official blueprint tutorials are really good.

I’m in favor of a smaller GUI, if not but for a larger viewport space to work in while maintaining a decently sized “content” area. As far as Unity assets → UE4 goes, I believe that Unity assets are licensed for use in Unity only, if I am not mistaken. As far as creating prefabs are concerned, I highly agree with this, and have been asking for it for quite some time now. I should be able to create a prefab (.upack) file that is saved in “…\Documents\Unreal Engine\User Content”. Another move would be to relocate the Unreal Projects folder into “…\Documents\Unreal Engine\Projects”. The Vault section in the Launcher should monitor the User Content folder like it does the VaultCache folder as well.

Well… from the post title, I expected to find a bunch of stuff to disagree with here, but it’s a fairly reasonable.

As a former Unity prog who’s approaching his one year anniversary using UE4, I wholeheartedly agree with 1,3 and 4.

#6 I need to think about. Part of me thinks it’s a good idea, part of me thinks it might be fighting the Unreal Way™, so I withhold opinion until I’ve thought about it more. :slight_smile:

#2 I don’t agree with. I launched Unity 5 today to look at a legacy project tjat I manage and I really found the interface to be just horrid and too small. Some of that is, admittedly, just that I’m now used to UE4. Same probably goes for you and other recent Unity switchers: You’re used to the Unity way, and the Unreal way feels “wrong”. Honestly, if you’re using UE4 (as many do) on multiple 27" or larger monitors, the existing size is really just right and much better than Unity’s default interface.

That being said, I’d be all in favor of an optional “compact mode” you can turn on when working on a laptop without an external monitor. Realistically, I suspect that it would be a non-trivial task, and I’m not sure I want this prioritized higher than other items on my want list.

#5 is more complex. I can absolutely see the benefit for switchers, but long-term, it’s a dead end and probably not a good use of Epic engineering resources. At some point in the not-so-distant future, the platform populations will stabilize and switchers will be less frequent. On this issue, I think you should place the blame with Unity for choosing a proprietary format with no option to export to standard formats. Epic will let you export most asset types to platform-independent data files (animations and models to FBX, sounds to WAV, etc.). Unity is the one locking you in with their proprietary format, and (for numerous reasons) Epic shouldn’t be spending their time reverse engineering Unity’s file formats.

#7 is just wrong. A non-subclassed [FONT=Courier New]AActor is essentially an empty actor. A [FONT=Courier New]USceneComponent or a [FONT=Courier New]FVector designated as [FONT=Courier New]meta=MakeEditWidget or a [FONT=Courier New]UActorComponent will function as a child empty with its own transform relative to the parent. 99.9% of the time, one of these will provide what you need when you would’ve used an empty or null in another engine. That being said, you can easily subclass [FONT=Courier New]AActor if you need some additional functionality.

Yes, John, UE4 is a very complex and professional tool and I’m still learning to use it correctly. Those points are just my suggestions, all what I noticed when I came from the Unity world. Not all can be taken into consideration of course. I don’t want to force the Unreal Staff to do this or that. It’s just my modest feedback what to do to attract more people from Unity.

Laptops now aren’t so bad now; far from it - they are really powerful that’s why they are becoming very popular among developers. I think it is possible to work on a laptop with UE4. It’s not so comfortable as with a PC with a few monitors used, but possible. The problem is that I travel much, so I can’t use the hardware you are probably using. I will have a very good and expensive laptop for my project and it would be great to have such a Laptop Mode. The icons for the Main Toolbar and Modes can be done smaller, so why can’t other GUI elements be made smaller too? And all can be included in the single Laptop Mode. One click can toggle between the Laptop Mode and PC Mode. I think it is not difficult to do and maybe it will be useful for PC users with smaller monitors - I don’t know. But it’s no harm in my idea.

As to UMG, I need to learn more. However, I wish to say that the New UI of Unity is very good. It exists together with the older GUI system. Is there something like that in UE4? I was able to make a simple GUI for my small project in UE4, but it seems like the old GUI of Unity. My question is if I can use 2D elements only for making the UMG (with textures, etc.) or also 3D elements that can be placed on a scene like other actors (just like the New UI in Unity). I hope you understand what I mean.

I didn’t know that It won’t be UE5 in the nearest feature. Good to know :). Thank you! But it’s not essential for my suggestion. I think Epic should make C++ stuff more friendly for beginners. I will be forced to make deep coding in my future project, so probably the Blueprint System won’t be enough. I can be wrong of course. It’s important to me to learn to code in C++ with Unreal. Besides, for people that changing Unity to Unreal it would be easier to use C++ than C# because these languages are similar. The Blueprint System is much easier to learn but at the same time it’s something new for Unity Developers.

yep there are problem with buttons on panels like create new, save all, etc, they disappear completely instead of text description

Very good explained! Now, I know more what can be done and what can’t and what expect. Thank you! I hope my feedback will be useful for improving UE4.

  1. I don’t want to fight the Unreal Way; I only think what to do to use UE4 more comfortable.

  2. Making the Laptop Mode and the PC Mode would be really great. You want or not, laptops will be more and more popular. I work with UE4 on my laptop and is OK, only smalle GUI elements to get more space in the Viewport.

  3. I noticed that Unity Technologies became less friendly :). It’s one of the reasons I started to use UE4. I don’t want you spending your time on revers engineering because it makes no sense. I meant just that a lot of Unity Developers possess many Unity assets (bought by money) and I think it would be great to use them in UE4, as much as possible. So what can I use from Unity in UE4?

  • Static Meshes
  • Skeletal Meshes
  • Animations? (Mecanim? or only Legacy animations?)
  • Textures

I really want use my animations in UE4 but I’m not sure it is compatible with Persona.

7/ Ok, I understand.

I agree. I’m glad other users share my thoughts, so I’m not completely wrong.

Yes, you are right. I didn’t notice that earlier.

Are there any specific audio formats you are looking for?

mp3 if you can, ogg because of its small size please :slight_smile:
also streaming these formats from an external source would be awesome
thanks

Wow, Epic Staff, you are really awesome! All has started to be interested in that what I have written on the forum. Really amazing, so different from the Unity Team. I will write an article on my website of you and your software and more people from Unity will come to the Epic World. I am well-known among Unity Developers.

As to the audio formats, I think it would be great to use compressed formats, especially so popular MP3. I have a lot of sounds in my Unity Assets, so I would like to use them in Unreal Projects. And MP4, but it is probably for movies. I don’t know which movie formats you are supporting but it would be good to use the movie formats like those of Unity. In my future project I will be using many movie files.

I thought of ogg too, but more important seems mp3 because of its popularity. There are many websites with such sounds. And we need to convert them to .wave. Thank you for supporting my idea.

Epic Staff, you see there’s a simple solution to make your software more popular - just make it more universal and comfortable. Users like that.

Nice post as I currently trying to switch from Unity to UE 4. Unity just drives me crazy from some time now :smiley:
Here are my points:

  • I agree in making the editor UI a little smaller (smaller frames, smaller tab spaces, etc) to give more space for the scene view
  • I agree to more support for import assets bought from Unity Asset Store. Yes that is allowed for assets that are not extensions (textures, sounds, meshes are ok), read the license on the usage of assets from the store.
  • I have imported static models with no problem.
  • I have imported skinned models, followed the retargeting process, the animations worked but I got twisted arms. I tried the retargeting process 5-6 times with the same results and finally gave up on that for now.
  • I do not understand how the replicate the LOD blend factors from Unity in Unreal Engine 4.
  • I find it difficult to set collison to meshes in UE4. There is no list of all the added collision object to ones mesh and also no transform gizmo for the currently selected collision object.

Oh, I see it will be a trend in leaving Unity and joining Unreal. It makes no sense stick to Unity any longer when we have such a wonderful software like UE4.

Yes, no problems with static meshes, but when I tried to import skeletal meshes (avatars, characters), the process of importing was frozen at 75%. I think it is the problem with skeleton incompatibility. The manual retargeting process is really daunting.

I know nothing about LOD and setting collisions for meshes.

There’s a golden rule when it comes to Audio Formats. If it’s small, it’s compressed, and it doesn’t sound as good. However, I accept that most people can’t tell the difference between MP3-320 and WAV @ 44.1Khz, 16-Bit.

I’d like to see support for 24-bit audio, both for import and playback. That would give *some * significant quality improvement and more headroom to play with, so people could get more dynamic range from their sound. Some platforms might not support 24-bit audio playback though (hell, most PC’s still use 16-bit by default), so that might not be possible.


In regards to the OP,

1 - Could be really annoying if you’re lining up a shot in Matinee and you accidentally move the view-port because you clicked on the Gizmo. I have no experience with Unity, but it sounds like the ViewCube in 3DS Max. I think Viewport Navigation is intuitive enough already to be honest, it’s all on the mouse and you can click anywhere on-screen, rather than move the mouse, rotate, move the mouse back etc.

2 - That’s nit-picking really. They’re not bigger than firefox icons or anything like that. I use the Small Icons because I like my viewport to be as big as possible and I don’t need the text underneath them, make them much smaller though and User-Experience will suffer because you’ll be pixel-hunting for icons all the time. The tabs for windows are as big as they need to be IMO, there’s very little wasted real-estate.

5 - Has been discussed before, and it’s difficult to achieve both technically and legally. Unity probably has it’s own asset file type (.UnityAsset or something maybe), and that file type is unique to Unity. I bet you’d need Unity source code to figure out how to correctly import that file type into UE4, and it would require some of Unity’s code for that, which is probably illegal. Plus of course, Unity source code isn’t public. Whenever Unity changed anything in regards to the .UnityAsset code, Epic would have to change it too to keep up-to-date.

Frankly, It would also mean people would buy assets from Unity store, try to import them into UE4 and then complain when they don’t work. You can say you wouldn’t, but a huge proportion of people would - it’s inevitable. It’s not Epics job to manage both Unity assets and their own. Epic maintains a much stricter submission process for it’s Marketplace which will prevent it becoming the cluster of **** that Unity’s store has become, and supporting Unity assets would basically be working against that in the long run. If people want to try and cross-manage assets, they should do it themselves.

6 + 7 - Both already possible.


In regards to katoun9;

A lot of the issues raised above just sound like unfamiliarity with the engine, something you can often rectify in a matter of minutes or hours with a quick google search through the docs or experimenting a bit.

I know but there should be just a possibility to choose. In other words, a developer should make a decision to use a compressed format or not and what exactly format. I am sure many people will be using MP3 in their projects.

Agreed, I .MP3 support would likely be useful for a lot of folks. I probably wouldn’t use it in a build.

A better idea would be to convert the .mp3 to .wav on import, so there’s no cross-platform compatibility issues or anything. There’s a lot of open-source converters out there too, so the code wouldn’t be difficult to find.