UE4 Editor Terminology: We need your feedback!

I’m not sure it’s necessary to rename stuff… it either has been called like that for ages or the names follow some sort of “epic pattern”. Every software has it’s unique terminology, so I’m not sure it’s necessary for UE to name stuff to match some other software (which often won’t match another software).
I’m one of those who actually appreciates fancy names like Niagara or Blueprint. It’s not like you will be constantly confusing them… usually the names are quite logical (e.g. niagara = waterfall = particles). I find it sort of “cozy” compared with too technological names like “particle editor”… that’s so cold and soulless :slight_smile:

Having different names for the same thing can be frustrating when I’m constantly switching between C++ and blueprints. Array length vs TArray.Num comes to mind.

OK, just to ping lot back at you:

Actor - If its anything that plays a role in my map, why does it sound like a character? Surely “gameobject” is as simple and doesn’t elicit any ideas of character?
PlayerController - why doesn’t it control a player rather than a pawn? It says PLAYER controller. Yet it controls a pawn. Shouldn’t that then be PawnController?
Pawn: doesn’t really mean anything if you are new to the engine. It sounds like something from a chess board. Or a misspelling of a sexy word :slight_smile:

I understand is all historical and nobody really wants to change any of it. But it doesn’t make sense to people who aren’t used to UDK and the like.

The term has always been fine for me, since I took the term “Player” to mean the person playing the game (ie external to the game).
So it made sense to me that the PlayerController was named as such, since it’s an interface between the Player (as in the person) and the game. And similarly an AIController is interface between the AI player and the game.

I also thought that pawn was a good name, it helped me understand the whole structure a lot better. It makes sense because when I’m playing chess, I understand that a pawn is an agent under my (the player’s) direct control, but it’s not actually me. In the video game, my protagonist/vehicle/etc has the same role. It’s my means of interacting in the game world, just as the chess pawn is my means of interacting with the chess table. The metaphor makes sense to me.

Also, since in chess each player has several pawns under their control, the term also suggests the possibility of multiple controllable agents, which is good because it’s subtly telling me that there’s a one-to-many relationship going on between pawns and PlayerControllers. Through hearing that term, I can make a guess that it’s possible to setup a situation in which one player is controlling several pawns.

I dig it. :cool:

I could possibly be swayed by your reasoning on Actor though. Coming from Unity, it did seem like a strange term for what I knew as a GameObject. I agree that it could be possibly confused with a Character. It also implies to me that it has a physical presence on the level, though that’s not always the case.

Thanks for all the excellent feedback, everyone! Remember, if you haven’t filled out the survey in the original post, we’d really appreciate it! :cool:

I need to go against the grain here for a second - I like Persona, Cascade etc. but I’m a sucker for fancy marketing names. In my opinion it makes the engine sound more sophisticated. I understand its a buzzword, but there is really no room for confusion as the moment you open it the tutorial pops up telling you what it is. And if you are looking for the animation editor without knowing what it is, a 5s google search will tell you what it is.

My issues aren’t related to terminology, but rather to some undefined conventions - stuff like what goes in the GameMode and what goes in the GameInstance, placing input in the PlayerController vs putting it on the Character etc.

A few anecdotal terminology problems I ran into though - when I first started with the engine, I got really confused by CameraBoom vs SpringArmComponent, not realizing the former is just the latter renamed. In any sort of trace, if you split the hit result pin, you end up with 2 booleans whose names elude me right now. They sound very similar but are very but do very different things. Last but not least, the Log Text blueprint pin doesn’t make it clear that only appears in the Log Visualizer. Namely, I got confused because the Message Window has a “Blueprint Log” entry, the default name for the Log Text channel (I originally thought would appear in the Message Window).

Best regards,
Damir H.

My biggest terminology is that “pawn” spoken aloud can be taken veeeerry differently in English/Australian type accents, and that’s not a misunderstanding you want to be having

I’ll tell you the ones that consistently confuse the heck out of me:

>Game Mode / Game State / Game Rules / Game Instance

I’m USING these and I simply cannot keep straight what the distinction is supposed to be. I guess for a multiplayer FPS they make sense but for any single player game they make no sense whatsoever. Those 4 interconnected things have really similar and ill-distinguished names.

>Distribution
Why is a constant value in a particle system called a “distribution”? Why not just have particle values be fed by a “constant, curve, particle param, uniform distribution, and curve distribution”? Why call a parameter a distribution? It seems like a really odd naming convention for any value which doesn’t ACTUALLY represent a distribution of values.

And in the same breath…
>In val / Out val
Do you know how long I went before realizing that these were actually “Time” and “Value”? “In Val” sounds like something used to determine a curve tangent, not a time.

>Branch Point
That sounds like what you would call a “segment” (though segment is already a better name). Honestly, just call them “Anim Notify” and “Sync Notify” or something, to distinguish that the only thing separating them is frame synchronicity.

I can deal with “branded” naming conventions for major features/windows; coming from the world of audio editing you become unfazed by the idea of associating “autotune” with “pitch corrector” and the like, so thinking of “cascade” as “particle system editor” is a breeze for me. But when the inner labels given to specific values, parameters or variables are confusing or unclear it really trips me up.

Not familiar with Game Rules off the top of my head.

Game Mode:

  • is the ruleset for your game.
  • Most games will probably have more than one of these, possibly a hierarchy of them in fact.
  • Sometimes these are clearly visible and selectable by the player.
  • Generally tracks what players are allowed to do and what the win conditions are.
  • Common in Multiplayer games:
  1. Free for All

  2. Team Deathmatch

  3. Capture the Flag

  4. Conquest

  • Common in Single Player/Coop games:
  1. Campaign

  2. Tutorial

  3. Sandbox

  4. Time Trial

  • You can even use these in games where there’s not a selection, just to track what the player is supposed to do in a given area.

Game State:

  • Generally tied to Game Mode.
  • Holds information about the game world and progress toward win conditions.

Game Instance:

  • Persists through map loads, server connections, etc…
  • Used for any logic that needs to persist even if the player gets on another server or loads a different map.
  • Think authentication information, in game chat, anything not tied to the game world itself.

Hey guys i find it really not like confusing, but bad in general that you call Shader - Material, and Material instance - Material.
Because that confuses a lot, if you work with root material, it should be called a SHADER thats what it is basically you use nodes,
to compile that into a shader, and AFTER you crate a material from that shader which is called Material Instance in UE.

More than that - if you look at a folder filled with materials(shaders) and material instances(materials) there is not way to distinguish those

://i.imgur/SUTDvQa.png

so they clearly need a special icon that shows they are different.
Like rly, shader is shader, and material is basically a wrapper for that shader dictating it which textures etc to use,
like that’s my advice - change that.

More than that - if you look at a folder filled with materials(shaders) and material instances(materials) there is not way to distinguish those
[/QUOTE]

If you look reeaally closely you can see that Materials have a Lime Green bar at the bottom, and Material Instances have a darker green color. It’s only slightly different and kind of hard to see, but it is there.

Easiest way for me to avoid any confusion is to use a naming convention. All my materials start with “M_” Material Instances “MI_”, and Material Functions “MF_”. Same goes for Blueprints “BP_” Textures “T_” and every other type of asset. It makes looking for a type of file MUCH easier. I can search for only materials from a list of materials, instances and functions just by typing “m_” for example. :slight_smile:

EDIT: I use the Shader/Material to mean the same thing as well all the time, but to me an actual Shader is HLSL code, not a material. Just the way I look at it personally.

Haha lol yeah didn’t notice that color variation.
Naming convention is good, ill use yours for future.
Im still not conviced that is how things should be :slight_smile:
I do believe an overlayed icon is a must, and
names should more clearly distinguish the purpose.
Yes im annoying :slight_smile:

As for materials. It would be cool if in one of thumbnail corener were some letter (icon ?) indicating type of material. MI - Material Instance M- Material.

You’re not annoying at all! :slight_smile: It’s good feedback for Epic and I agree some kind of overlay on the icon would be great!

I have a new pet peev. Inside a Material BP if I want to add a constant, there is a Const node. Fair enough. If in a normal blueprint, searching for const is a bust. You have to use nodes with “Literal” in their name. I don’t see a good reason for naming them differently.

ps. you can add “Pain Causing Volume” to the list. Why use Pain here when it’s Damage everywhere else in the engine?

Hi guys !
I’m glad there is a treat like and I hope my feedback will be noticed.

I’m a well experienced (over 12years) 3d-artist. In my workflows I use cinema4d, 3dcoat, unity, vray, octane, vue, carbonscatter, navie, syntheyes, hdrlightstudio, plantfactory, rhinocerus, poserPro, pixplant, polytrans, moi, PS, AE …and many more.
I’m on a very high level, so that I’m teaching at universities, hold speeches at various conventions and work as consulter for bigger companies like Rewe…
As partner of an local cg-shop, and beta-tester I’m always on the front and have access to newest tools.

I just started working with realtime engine a view month ago and I did my first steps in unity. After a very short time, I created web applications, 3dviewers, rt-aniamtions, archviz and a nice junglegame with more than 1000 plants in a single scene including foliage-collision, AI (Rain-AI)… but the renderer of unity is not what I’m looking for. I need photorealistic images.
So I decided to switch to a better looking engine. My choice, as you can see was UE4.
Now after 2 weeks I have to tell you what my impression is.
Positive:

  • You definitely created one of the most effective and beautiful render-engines available at time.
  • The AA is perfect
  • shaders look great
  • nice post FX
  • CPU/GPU usage is very low

Negative:

  • Your editor is extreme buggy and causes crashes more than every other software I use…I think I sent more than 10 reports in 2 weeks (I’m pretty sure, is not depending on my system)
  • No texture comes with fbx witch has tex included, only material (it cost lot of time to re-add you textures again, especially for archviz and makes work non-economic !!)
  • you use many notations that are not common
  • the management of objects and materials is simply ineffective and also cost a lot of time (for example, when organizing gameobjects using folders, UE is not able to open up the folders automaticaly when searching for object)
  • I could not find solution for creating prefabs like in unity or CE… (maybe you also chose to find another name for the same thing like in all other software)
  • never saw something like material instances, witch you need to use to access the shader public functions… is simply strange (anywhere else you design a shader and add it to a material; why you break the norm?)
  • object import is slow, also saving project needs extreme long time
  • naming projects does not support underline or any special character
  • NO 3DMOUSE SUPPORT witch is standart these days !!
  • mesh collision simply not working for me (bug ?!)
  • strange behavior-management unlike other tools
  • packaged program size is huge (for a simple one room archviz scene that need 300MB in unity UE needs over 3GB)
  • y is up in all 3d-software. Only CAD has z-up

Summery:
As a 3D-Artist I don’t feel welcome in UE4. Editor is simply not economic. I cannot accept the material/texture-import-problem.
I have the feeling you are to deep into your own product and you lose sight of the wood for the trees. Take a look at other common 3d-software

I’m a UE-nube and haven’t figured out everything by now, but I read a lot in forums, and I see lot of frustration.
I would prefer to pay more, but for a solution that has a more common and workflow-friendly editor. Time is money for us !!!

I hope feedback is useful for you. I have big respect for your engine, but I cannot use UE for my work as long as the Editor is that kind of off-the-norm.

Best reguards,
Schindelar3D

Hi there, welcome to the forums! :slight_smile: I will try and address a few of the negatives you mentioned.

Was it something in particular you were doing or was completely random? Also which version are you using? obviously shouldn’t happen, but some more info on what you were doing at the time would help us track down the cause.

The texture/material will carry over to Unreal, double check all of the Import options (make sure to click the small down arrow ‘v’ at the bottom to expand additional options) to make sure you have import textures/materials turned on. They should import just fine so long as they are in a format the engine accepts, such as a TGA or PNG texture (JPEG is not supported) - EDIT: is incorrect, as noted below by .

If you click on the “View Options” button in the lower right corner of the Content Browser, you can turn off “Show Folders”, all of the assets in that folder & any sub-folders will be visible on the right side. You can also click on the “Filters” button right beside the search box to show only a certain type of asset. Searching from the Content Browser will select the asset. If you search from another window, once you have selected the asset, click on the small magnifying glass icon right beside it to instantly select the item in the content browser.

Prefabs can be created using Blueprints currently, with further support for prefabs coming soon. You can use blueprints to create a single actor made up of many other meshes, or create a procedural generating script to spawn multiple meshes based on certain parameters easily with blueprints.

UE4 makes heavy use of Material Instances, it is the preferred way of handling multiple similar materials. To create an instance simply right click on the material and select “Create Material Instance”. For more information please see the documentation here.

Large meshes and high res images will take a bit more time, a mesh with millions of tri’s can take quite a while. While you can use high poly meshes, it is best to create as low-poly of an object as possible to increase performance while running in game.

A request has been made for adding in support for 3dconnexion and other 3d mice, should be added in an upcoming release of the engine.

How are you setting up the collision? If you are creating it in a 3d editor, it needs to be named a certain way for the engine to recognize the mesh as a collision mesh. More info on that can be found in the FBX Import Pipeline documentation found here, and the Artist Quick Start Guide here. If you are adding it in the editor then guide should help you out.

Can you explain more on ? I’m not sure what you mean.

That is very odd and should not be happening. The final size will be determined by the amount of content used, and should not be that big of a difference. Are there a lot of textures/material/sounds/meshes that are not being used in the scene but are in the content browser? Also did you include the starter content in your project? That alone is around 500mb in size, if you don’t need any of that content it would be best to remove it.

I hope I addressed some of your concerns. It is possible to do nearly everything you listed in UE4 out of the box, it just takes some time to learn how it all works, but that happens with all programs you are unfamiliar of. We would be happy to help you out with any issues you run into them while working on a project, all you need to do is make a post either here on the forums or over on AnswerHub and we’ll do our best to help out. :slight_smile:

I just want to throw in based on what I saw in the original post:

Please for the love of all that is holy, do not switch to a Y-Up axis.

@ : Just so you’re aware you’re a rock star! :slight_smile:

I wanted to make sure the threads that are discussing are linked here.

AnswerHub Post: https://answers.unrealengine/questions/14140/why-isnt-3dconnexion-supported.html

Forums Post: https://forums.unrealengine/showthread.php?380-Support-for-Space-Navigator-3D-Mouse

Support for is coming. started work on the plugin a few weeks back as during one of the Epic Friday’s. There were a few snags that will require a little more additional work than thought, but is still working on it. He’s updating on these two posts occasionally with his progress.

I’m definitely excited to try out my space navigator once is integrated! :smiley:

Just for clarity sake, one actually is supported. Personally not a fan of it, but it gets some love too. :smiley:

.unrealengine/latest/INT/Engine/Content/Types/Textures/Importing/index.html

page will cover all the textures types that are supported.

The following Texture formats are supported:

.bmp
.float
.pcx
.png
.psd
.tga
.jpg
.dds - Cubemap Texture (32bits/Channel, 8.8.8.8 ARGB 32 bpp, unsigned) See Cubemap Tools for more information.
.hdr - Cubemap Texture (LongLat unwrap)

:o Thanks ! Just trying to help you guys out whenever I can.

Hmmmm that’s very strange, every JPEG based image I try to import gives me an error. Most likely it need to be a certain compression amount and/ or bit level… what I’m trying to say is that it was likely my mistake! :smiley: