Profile avatar
quodsoler.com
Lead Gameplay Programmer for Lords of the Fallen at Hexworks • I will teach you Unreal Engine • Gameplay Ability System expert, opinions are my own
115 posts 241 followers 35 following
Prolific Poster

Even if Lumen is awesome, if your game does not use it you can disable it to gain additional performance. It's actually important to take some time to understand Unreal default values so that you can tweak them for your particular game.

Why is Cacaolat so delicious? It's like a magical drink which recipe is a mysterious mystery.

Motion Blur can look really good if it's used "per-object" like in Sekiro. The way those animations get smoothed out and extra blur is applied on parries makes them look so good.

The "Break" pin in a Blueprint "For Loop with Break" node will allow you to exit earlier from the loop. Like if you are trying to find if an enemy is touching the player, once you found an enemy, you can break the loop to stop iterating through all of them.

Did you know that you can edit hundreds of assets at a time in Unreal? Simply select them, right click -> Asset Actions -> Bulk Edit in Property Matrix. Not only will you be able to edit tons of assets at the same time, but you will also be able to see values in table format.

If you have trouble understanding where an asset is used you can use the Reference Viewer to get that info. Simply go to an asset and Right Click -> Show References and you will get a neat graph taht will show you all of its usages. Useful as well to find cyclic dependencies.

Ctrl + Shift + F This will allow you to search in all the Blueprints of your game for whatever you want. If you are a coder this might be common knowledge, but small things like this can speed up your workflow when working with Blueprints as well.

Don't be afraid to copy paste nodes when you use Blueprint. Sometimes it can be much faster to copy paste nodes than actually searching for them.

Remember that you can have up to 4 content browsers open in Unreal Engine. I tend to have some of them in tabs to keep myself organized. An important thing to take into account is that the "go to asset" button will usually go to the last content browser you focused.

Currently playing Ever Oasis. I think its Japanese level is exactly what I have right now, so it has been really awesome to finally find a game that I can play comfortably. Wanted to try Dragon Quest XI, but it's Japanese level seems to still be a tad higher for me.

If you try to combine animations using montages, they will snap from one to the other. Instead, use a Level Sequence to combine them with blending options and bake them into a new animation. The transition will look much nicer.

If you use UPROPERTY Object Pointers in Unreal remember to either manage the ownership yourself or check with IsValid() the validity of the object. It's not enough to check for null, as the pointer will only become null on Gargabe Collection. Alternatively use TWeakObjectPtr

@UnrealEngine I see that you are researching which would be the best way to edit Verse code visually. Is the plan to use that in UEFN instead of Blueprints? If so, do you think we will get Visual Verse in UE6 as well?

There are so many talented people on the games industry you never hear of. They are there, doing incredibly awesome work. So to all of you in the industry, to all those that make it truly move forward. Keep being as incredible as you are.

Do you think Unreal Engine 5.6 will release during the next Unreal Fest? What features are you hoping to get improved in this release?

I know this might be common sense, but if you use Unreal Engine please use an SSD and enough RAM. I know things might be expensive, but Unreal unfortunately takes a lot to run, and it can be a painful experience otherwise. Of course, budget can be an issue, to use what you can.

If you are debugging network movement desyncs enable p.NetShowCorrections 1 to visually see when the server corrects the client position. Useful to understand when that happens.

If you want to set attributing GAS, it's a simple as creating a Gameplay Effect with instant duration and then setting the value of the Attribute you want in its modifiers.

Hold the Ctrl key while dragging a Blueprint Variable into the graph to automatically use its getter. Hold the Alt key while dragging to directly use its setter. Really convenient and saves a little time.

I find it interesting how in Perforce it is a given that you will use UGS to handle binaries. But the moment you use other source control systems, there is not a defined way to handle binary artifacts in Unreal.

Have you ever modified Actor.h by mistake when debugging? Now you are going to recompile your whole engine! The best way to avoid this is to set your source files to read-only. This will also allow you to use Adaptive Unity Mode, which has other helpful features.

Unreal Garbage Collector! Can we trust it? I would say YES. But you need to be careful. Understand how UPROPERTY allows pointers to be seen by it, and understand that objects are only truly destroyed when a GC pass happens. Until then, the objects are only marked as garbage.

One big culprit of traversal hitches is having components with "Overlap Events" enabled when they don't need to. Chaos can be slow when adding those components, so renember to use only what you need. And if something does not need collision at all, then disable it fully.

I did not know you can disable "Tick Animation on Init", and this is important as that initial update seems to happen fully on Game Thread. Epics recomends disabling mesh visibiliy forvone frame when disabling it to prevent showing meshes on ref pose.

I see many designers asking me for Blueprint tutorials. Which kind of concepts do you think are "a given" and are not worth going over as they are easy to understand?

Multiplayer Games programming is easier for session-based games. Things get complicated when you have your own open world and suddenly you join someone else but you still want to progress in "your world". Managing what gets saved and what not can become a difficult choice.

Adding a search to the collision profiles dropdown seems to be a popular useful Unreal Engine mod. Maybe someone might integrate it into the engine soon?

How frequently do you cut your hair or trim your beard? For me it ses to always be when reaching a certain "messuness" threshold. Like an AI Utility curve that suddenly urges me telling me it should be time to do it already.

I think more companies should treat Gameplay Programmers as potential Technical Designers. I have seem so many cool features come from programmer's prototypes. I also love then seeing Designers expand on them and take the features even further.

Regarding Unreal lightmaps, with GPU lighmass previwing them is much faster than in the past. Of course, it,s not realtime like Lumen, but it's a good compromise. I hope Epic keeps lightmaps in Unreal 6.

Don,t forget that static Lightmaps still exist in Unreal. Lumen is really handy, but it cones at a big performance cost. If you don't need dynamic lighting ligtmaps are still a really good option. And performance is great.

Virtual Shadow Maps look so good, and they make casting shadows from point lights seem like magic. The downside is the overhead they have, so they are not as useful on low spec devices.

If you want to extend Behavior Trees you can inherit from BTComposite Nodes to create new ways to traverse the trees. You are not limited only to Sequences and Selectors.

How many newsletters are you subscribed to?

I personally always enable "Save on Compile" on my Blueprints. No idea if other people always do this as one of the first things when configuring an Unreal project?

Plastic SCM has improved a lot over the years but it still feels like it has ways to go. Specially on how slow it can be undoing changes compared to Perforce or Git.

Remember that Unreal has its own Localization Dashboard. If you are translating your game there is no need to create custom code to handle localization. Unreal already has a whole system built for it. It even has buttons to import String Tables from CSV to make your life easy.

Why is it that Behavior Trees still are so appealing even when State Trees exist. I can't find exactly what it is, but I still prefer editing AI in Unreal BTs even if State Trees seem to be more powerful. Maybe its simply that I'm used to it?

I hope we see more use in physics in games in the future. Half-Life 2 in 2004 already showcased what could be done at the time, and I feel only Zelda TotK managed to recapture that feeling on a grand scale. We should move the search from graphics to interaction.

Playing Prey 2017 made me remember why immersive sims are so fun. Being able to have so many options to solve gameplay situations is simply entertaining. And piecing together what happens in the world through the side effects of other peoples live is really fun.

I'm starting to think ImGui should come pre-integrated in Unreal. It seems to be the default standard for AAA debugging tools nowadays. @TimSweeneyEpic any possibility for this to happen 👀

I really think that Unreal Blueprints are a fantastic way to learn programming. It's so easy to see the variable types all in there. And having such powerful context-sensitive autocomplete on the node editor makes creating gameplay so easy. If you are a Designer, try it out!