Discover and read the best of Twitter Threads about #UnrealEngine

Most recents (24)

As Promised, 10 More Tips for using the Gameplay Ability System in #UnrealEngine!

Thanks to all the folks that Followed, but especially who suggested their own tips. The previous thread is linked Below!
1. Fix Sluggish Anims in Montage not GAS

Chop up Anims and adjust play rates, start/end times to fix timing. So long as the segments are contiguous, you can adjust their play rates. This looks significantly better than just increasing the Anim Play Rate in PlayMontage.
Read 14 tweets
It's my Birthday, so I'll post a little knowledge sharing with regards to how I've been using the excellent Gameplay Ability System in #UnrealEngine for the past two years.

Here's 24 Tips about using GAS. I tried for 34 (My age), but New Twitter Sucks. Image
1. Wrap the core classes in a C++ Wrapper inside your own codebase.

Even if they're just stubs, having the base C++ class you use for your blueprints later within your own code will speed up the process significantly and reduce your refactoring burden later.
2. Create a Base Blueprint Archetype for all Abilities.

This is where you'll build the first pass for common logic within your Abilities. At some point, you will need to migrate this to C++, and having it one place will save you a headache later.
Read 25 tweets
Error messages are like the unsung heroes of game development, but did you know that a good one can save your player's experience? 💾

🧵 Let's explore the dos and don'ts in this thread 👇👇

#unrealEngine #gameDev #indieDev #unity3D Image
As a developer you are probably writing lots of error messages while developing your game. But do you pay attention to crafting them in a way so they are really helpful to players?

Let's start by talking about what makes a bad error message actually bad: Image
- [ Too Generic ] -

It's generally a bad idea to just add a generic title to all your error messages. "Something went wrong" is telling your player exactly nothing about what happened.
And that's particularly bad as it increases frustration and confusion.
Read 15 tweets
Want to know a secret to making your game development process run smoothly? 🔥

Let's talk about versioning 🧵👇

#gameDev #indieDev #indieGameDev #coding #unrealEngine #unity3D
First of all I want to point out the importance of clear and consistent versioning of your game builds. Keeping track of changes and updates is essential for ensuring that your game is stable, efficient, and easy to understand for both the development team and the players.
Typically a game version is made up of 3 to 4 elements, like 1.0.14 or 1.3.74.8.

You can basically break them down as follows: [Major].[Minor].[Patch].[Build]
Read 25 tweets
#UnrealEngine #UE4 #UE5 #UETips
Here's one WPO trick I used to create this night sky.

The challenge was to create subtle per-star lens flares that would always face the camera and remain straight, exactly like billboards. 🧵⬇️
To create star billboards, each star would need to rotate around their own pivot point to face the camera but pivots are all lost once exported to a single mesh... :(
... I could bake pivots in UVs but that'd actually be overkill here! I don't actually care about the precise XYZ position of each star... 🧐
Read 14 tweets
Area shadows from 2d shapes using ray - grid intersection. Breakdown images in the thread.

#UnrealEngine
The intersection function is a simplified, 2d version of the box intersection function found in the engine. When you want to do this in a loop, its a good practive to precompute the inverse ray direction. Image
This is the actual material. The intersection function is called in a loop, to advance the ray through the grid (pixels of the texture). Image
Read 3 tweets
Been using the #UnrealEngine material editor for 3+ years, and only just realized PreSkinnedPosition works with static meshes + instances.

- That's pretty key if you need a local space gradient. (that doesn't require a bunch of transform math)

Don't sleep on it! #UE5 #gamedev Image
Also known as PreSkinnedLocalPosition 😂
Heads up. Don't bother with the last bit of logic (the vertex interpolator stuff) if you're plugging this math into material WorldPositionOffset.
Read 3 tweets
#UnrealEngine #UETips #UE5
You can use a Procedural Mesh Component or Geometry Scripting to iteratively slice a given mesh, render the generated cap and composite the result into an atlas texture to generate a distance field/volume texture ⬇️
I was lazy and used the good old procedural mesh component because it's what I know and it's easy. Do a loop and slice a mesh a little bit further each time (based on the object's bounding box and amount of slices to generate). Capture the cap using a scene capture component... Image
...and composite the captured texture into the atlas render target using an additive material that renders that texture at a specific XY tile. Image
Read 4 tweets
Particle occlusion using scene depth from a cubemap. This is basically the same idea as how you would do shadows for a point light. Breakdown in the thread. 👇

#UnrealEngine #UE4 #UE5
Material setup: Image
A scene capture cube can be used to capture a depth map at the time of spawning the particle. Then the cubemap depth can be used to mask particles out per pixel or per sprite.
Read 7 tweets
All 3 of my Marketplace items are currently discounted for the @UnrealEngine Black Friday sale! be sure to check them out in this thread! #UnrealEngine #UE5 #UnrealEngine5 #BlackFriday #GameDev #Cinematic
MultiPass Renderer

MultiPass is a simple Editor Utility Widget that uses the Movie Render Queue subsystem to render and queue up different types of passes for compositing externally to give more control over your renders.

unrealengine.com/marketplace/en…
Anamorphic Depth of Field for Cinematics

(kind of been super seeded in UE 5.1 but good for UE4 and 5.0)

Anamorphic Cine Camera Blueprint emulating the Depth of Field of an Anamorphic Lens.

unrealengine.com/marketplace/en…
Read 4 tweets
1/n I made a list of the 13 most mind-bending Stable Diffusion uses I’ve seen so far. 🌈
See🧵for details.

#stablediffusion
2/n Architectural Sketches
@rostenbach created incredible architectural renderings which made me think of future architecture generated by ai
artstation.com/blogs/rostenba…
3/n Search Engine
@sharifshameem scrapped millions of SD-generated images and turned them into a @LexicaArt search engine for creative assets
Read 20 tweets
TiL: You can use the Chaos Physics Fields for Custom Gravity Simulation and it does indeed put objects to sleep.

Blue = Awake
Red = Sleeping

#UnrealEngine #physics #ue5
You will need to disable "Enable Gravity" though on your Primitives, otherwise it will obviously apply Z=-980 Gravity and fall down also.
Apparently in 5.1, if Objects Sleep, they stay Sleeping no matter what.

Move an Object through it? no problem lol.

#UnrealEngine #physics #ue5
Read 3 tweets
I've written a post on Triplanar Mapping, and a few alternative ways to set it up in #UnrealEngine to make it more efficient.

It is great for blending different objects together, learn how to use TAA or biplanar mapping to make it cheaper!

ryandowlingsoka.com/Triplanar-Dith…

1/7
I break down the material functions and more in the post, but I am also sharing the project files outright, so you can get a head start implementing these different techniques in your projects.

ryandowlingsoka.com/Triplanar-Dith…

2/7
I'm not the first to setup triplanar mapping there is a lot on the subject, I'm shouting out my references here:

@TheRealMPalko : martinpalko.com/triplanar-mapp…

@bgolus : bgolus.medium.com/normal-mapping…

@iquilezles : iquilezles.org/articles/bipla…

@Atrix256 : blog.demofox.org/2022/01/01/int…

3/7
Read 8 tweets
#UE5 #UnrealEngine

When working with editor utilities sometimes you need an object type that isn't a "BlueprintType". This makes your life hard, because you can't cast to it.

Don't fear: Create an ExecutePythonScript node with an input and an output and link em. Image
In the above example, UFactory is not a blueprint type, so we can only construct it as a UObject. Then we can't cast it regularly, so we use the ExecutePythonScript to skip past that issue and plug it into CreateAsset which wants a factory directly.
Just to make sure it's clear. You only have access to the ExecutePythonScript in EditorUtilityWidgets and EditorUtilityObjects, it won't work at runtime, and you shouldn't want it to.
Read 5 tweets
Working on some landscape things today, thinkin about forest floor debris that change throughout the seasons. This is what I came up with in the first test! #gamedev #unrealengine #gameart
I'm really pleased with how much some leaf meshes on the ground add so much depth! Using foliage meshes, per instance random to control some colour offsets. Colors are a gradient texture, that is biased towards specific colours during specific times of year.
Opacity works the same way, cliping away some of the foliage during early spring, and "spawning them in" during fall, and then will also remove them after snowfall too. That way I can just paint the foliage in at "max density" and remove it during not autumn
Read 4 tweets
For those who use 3d modelling softwares, below are top 8 sites you can download 3d models and textures from.
A popular destination for 3d artists,Archviz artists and others.
Download 3dmodels, get printable models and done VR/AR services.
▪︎ Cgtrader.com
One of the best 3d models sites ever. Not only do you get to see the models better, you can also rotate around like you would in your native 3d software.
▪︎ sketchfab.com
Read 10 tweets
A breakdown thread of how to make a simple sky-occlusion system. I'm using this to block snow/rain from showing up on surfaces inside caves, under trees, in houses. Also can be used to mask particles! #gamedev #unrealengine #gameart
Starting from the third person template. Just moved up some of the geometry so we have something to stand under and act as a sky blocker. The heavy lifting of this effect is done by a SceneCapture2D, so lets add one of those too Image
The SceneCapture (going to shorten it to SC from now on) needs to have a rotation of (0, -90, -90), and also lets place it at (2000,2000,2000), which is approximately the center of our scene. Lets also set the capture source to "Final Color (LDR) in RGB" Image
Read 29 tweets
I know @EpicGames isnt talking about it, but I want to make a 🧵about Horde.

TO BE CLEAR! Horde is NOT production ready. I am NOT encouraging you to switch to Horde now.

It is awesome though and requires BuildGraph. I do want to encourage you to use BG so youre ready for Horde.
What is Horde: It's a build system specifically built to use BuildGraph. It's mainly built for #UnrealEngine, but it can build anything really. BuildGraph can do whatever.

Horde can distribute jobs across agents, scale VMs, alert Slack, detect and assign issues, and more.
Out of the gate Horde helps us with CI and visibility into CL status.

We can clearly see what steps are good (green), has warnings (yellow), or has errors (red).

We can see how long steps take over time

If there are warnings/errors they are clearly highlighted and easy to find
Read 13 tweets
#UnrealEngine #UE4 #UE5
Cute simplistic trees are available as a Tier 2 reward on my Patreon :) Have a look at the thread below to see how they were made ⬇️
0/22 First of all, some technical stats: Each tree is ~3K tris for LOD0. 2 draw calls per tree (one material for the leaves, one for the trunk). 2*1K textures (one normal map, one mask). ~160 pixels instructions for the foliage material.
1/22 It all begins with the leaf texture creation. There's many ways to do this, I tend to model a single leaf in 3D then group a bunch of them together like so. Image
Read 24 tweets
#UnrealEngine #UE4 #UE5
Dunno why I love to prototype random stuff in BP so much. It's 5am, what am I doing🤪I guess this could be used to generate random positions with random radius and no overlaps. Blueprint graphs below ⬇️
Tick event to see the simulation progressing. Clear & Generate Circles are two functions callable in-editor. Image
Spawn logic Image
Read 6 tweets
Decal with triplanar projection which respects the actor position, scale and rotation
Is wrapped in a Blueprint as Decal materials can't access object position in materials #UE5 #gamedev #indiedev
Decals.. I've seen a few (⓿_⓿)
✅Volume based spawning with collision detection
✅Type Graffiti decals in editor
✅WorldUV, Triplanar UV, Spherical UV, Angle based masks
You name it, I've tried it in @UnrealEngine
💡Some links graph solutions below 👇
WorldUV, Triplanar UV and angle based fading material graphs to copy paste into your project
ronanmahon-art.gitbook.io/decal-designer…
Read 4 tweets
💧 Stylized Water in UE5 Breakdown 💦

After I posted my latest scene, there were a few people who reached out to me about the water! While I'm working to finalize the complete project breakdown, here's a 🧵on the material:

#UnrealEngine #gameart #VFX
Firstly, the water is based on the SingleLayerWater material type in Unreal. This colors the scene below the water mesh and allows for transparency without having to code that logic in the graph. I introduce slight color variation by using a curve to define the AbsorptionColor. ImageImageImage
The sparkly effect on top is what completes the water's signature look. It is made with fairly uncomplicated logic based on techniques used by Nintendo on Mario Galaxy. @JasperRLZ provides a thorough breakdown here that helped me a ton:
Read 12 tweets
✨🌊WATER BREAKDOWN💦✨

A lot of people have been asking about how I've set up the water I showed in my last tweet, so here comes a breakdown of the materials in Unreal Engine 4, a 🧵

#indiegame #indiedev #gamedev #UnrealEngine #VFX
~WATER BASE~
First off the base water, for lakes and oceans etc, that the river and waterfall are based on.
Here’s an overview of the material. It’s an opaque material and I’ve turned on tessellation for displacement of the waves. Image
Here’s a closeup of the first foam part of the graph. This is for the animated small lines moving away from the shore, and uses techniques shown by Johannes Bjurström in this video: Image
Read 25 tweets
As you can imagine I spend A LOT of time in UE, focused mostly on worldbuilding tools like Landscape and World Partition. Today, I want to share my process for creating alpha brushes using real world height data for sculpting Landscapes that have a very natural look. Image
Alpha brushes are b & w images that are used as brushes in sculpting programs and represent specific patterns. The closer to white a pixel is, the greater pull it has on the surface at that point. These were two basic brushes I created in Krita that created a mountain-like result ImageImage
Brushes like this can be a great shortcut to sculpting a natural looking Landscape or adding additional mountains to a terrain created using a generator like World Machine or Gaea. Image
Read 10 tweets

Related hashtags

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!