#blueprint

1 messages · Page 322 of 1

lofty rapids
#

although you can pass references

surreal peak
#

It becomes a pain to move some of this to C++ later as you usually have a lot of references across your game to a lot of stuff. E.g. a struct being used in several places. If that struct was created in the Content Browser instead of C++, you can't use it in C++. If you later want to recreate this Struct you'd need to replace it in the Blueprints.

#

Same goes for Enums and fwiw Blueprint Classes themselves

#

If you are just toying around, this doesn't matter too much.

#

But if you are planning on shipping that project and you later want to move stuff to C++, you might be better off starting with that initially.

surreal peak
#

Function Library functions remain static and don't store anything. The thing you are passing by ref is storing the data.

#

And if your object/actor/widget/component/etc. classes, Enums, Structs, etc. are all in Blueprints, what exactly are you passing to that C++ function?

#

The C++ function can't declare any of those types.

#

It's a domino effect if you start requiring some of your stuff in C++ suddenly.

lofty rapids
#

makes sense, i would do it just for performance tbh

surreal peak
#

That's one of the main arguments, yes.

#

The other one is that, given Blueprints are a subset of C++, there are a lot of functions, classes and properties in C++ available that Blueprints don't have access to.

#

That is especially painful when doing multiplayer stuff.

unique bronze
#

I think when I learned enough of how a specific system works, like Enums, Structs, Interfaces, EventDispatchers, and so on... then I would be ready to try at C++ a bit, right now its just too much, and I need to repeat some stuff which confuses me, in another context, until my chicken brain gets it 😄

#

Thanks 👍

surreal peak
#

Yeah, I would suggest sticking to Blueprints if you are learning, as long as you are fine to redo your stuff later to learn C++.

#

Or stick with BP forever and miss out on the wonderful world of C++ :D

lofty rapids
#

ive heard of games from full bp project so it could happen

surreal peak
#

Yeah, it depends on the game.

lofty rapids
#

i was working on large data so i had to make a BFL for a few functions to gain a boost

surreal peak
#

Big and complex games, games that steer away from the standard UE formula, or Multiplayer games often require C++ and hit the limits of Blueprints quicker.

#

There is also an argument for C++ when working in a team.

#

As Blueprint assets can't be merged.

unique bronze
#

the more Im confident with BP the more likely I start C++, simple as that xD
Right now still struggling with Functions, Interfaces, EventDispatchers and getting a general blueprint communication "visual mindmap when 3 BP's are involved in the whole shebang. Im still often looking where a part of a function was in which blueprint. No C++ for me

sand shore
#

Yeah I think that’s the right call - as long as you’re not intending to start a big project right now

surreal peak
#

Yeah all good. Just trying to ensure you understand the bigger picture.

sand shore
#

I would caution against expecting a clean conversion to C++ months/years into a previously BP-only project. (Although defining enums and structs in C++ from the start does help with that)

surreal peak
#

Yeah I said that already, I believe.

sand shore
#

(i realize some variation of what I just said has already been said)

unique bronze
#

There is progress every day, so Im okay with this. My project has few goals, and Im okay if it gets stuck, I cant expect my first real project to be a hit on steam lmao

lofty rapids
#

that would be nice

#

but the second time around it's usually better when your learning

#

because your thinking that much more ahead

unique bronze
#

And I will get stuck, thats for sure.
Yeah I do get it, the more I sit down on the same project, with the same goals, the project doesnt get easier, it gets much harder because the realization kicks in on how much actual work there is to do a simple thing sometimes. It all feels hard in the head, but in reality once I start doing it, there is much more to it. I think this is why we tend to overscope too.

#

yeah I already have a few interesting ideas lined up to try after this one!

slender dagger
# unique bronze And I will get stuck, thats for sure. Yeah I do get it, the more I sit down on ...

it doesn't get easier in the short term, but it does get way easier in the long term. Having to refactor systems that you didn't plan appropriately is something that often can take even longer than your initial system setup so it's a benefit that you know what you're planning for because the alternative is having to rewrite it all later and trying to fit it on top of a system that already exists

unique bronze
#

I can imagine. I think to avoid such pain, project iteration is key. I guess doing "little mechanics" instead of trying full games is better sometimes. No goal but a clear "something fun to do"
Its not my first attempts, but definitely a clear idea where for some reason was able to start after years of procrastinating.

#

But I can see all the mess slowly creeping in already

sand shore
#

You can get a lot of mileage out of trying a thing in isolation, then trying it together with other things.

Like making an inventory system on its own, a weapon system on its own, then building a project that contains both

#

Sounds like your expectations are exactly in the right place

unique bronze
#

Would you recommend reusing one of the systems, or just make from scratch? My head tells me always from scratch because it always gets better

sand shore
#

It would be a good exercise to try to reuse it, at least once. It’s ok to walk away from a reuse attempt, but regardless of whether it works when you’re done you can learn something

#

Maybe it’s just one thing you wish you set up differently

unique bronze
#

I guess the more painful something was to make, the more it should be tried again, unless it cant get better haha.
But yeah, its fun when it works, and fun to solve the problems up to a certain pain threshold

maiden wadi
jolly delta
#

I am trying to implement an Ai, using pawnsensing which when sees a the playing character having a specific tag ("Stealing") it starts chasing it using AIMoveTo and then it only stops chasing it, when it moves out of its sight. This seemingly simple to implement code has me stuck for a couple of days...
Heres the entire logic:

On See Pawn: Sequence 0: if seen Actor has tag "stealing" -> set IsChasing = true and store SeenActor
Sequence 1: if (IsChasing) -> AIMoveTo the character, then set its On Fail to set JustStartedPatrolling = true
Sequence 2: If SeenActor is not the playerpawn0 (in single player game it has to be) then set IsChasing to false
Sequence 3: if(JustStartedPatrolling) -> Retriggerable Delay of 1 sec, and then start Patrolling. and then set JustStartedPatrolling to false.

wheres the mistake? What happens is that it starts chasing, but never stops. It should stop when it loses sight.

jade junco
#

Hey yall, I swear I have tried to google this so much, but I cant seem to find the Async Load Asset Node off of an Actor Soft Class Reference. I can only find the blocking version. Is there some kind of method level declaration i need to toggle to enable async nodes?

sand shore
jade junco
#

yea a function in a player controller

jade junco
#

so its showing up intthe contextual menu in the event graph, but not in the function

jade junco
granite nacelle
#

Can someone explain to me why is it that whenever I move the mesh that is connected to my players camera in the blueprint viewport it doesn't gets updated in game play, if I move the mesh up or down it doesn't change.

sand shore
jade junco
#

tyty

#

I am trying to convert my old building placement system over to use soft references, this part just wasnt 1-1

sand shore
jade junco
#

thanks! here's hoping

jade junco
#

these used to be selectable and they arent now, but basic building placement is now async-ified

willow gate
#

Hey my dudes/dudettes... So I'm trying to make a very simple dismemberment system that is dynamic and doesn't require me to split a skeletal mesh into static mesh parts to be spawned during dismemberment. The way I'm doing this is by calling "Hide Bone By Name" on the selected appendage (which also hides that bone's children) and then spawning a copy of the skeletal mesh, calling "Hide Bone By Name" in a foreach loop of all the mesh's bones, and then calling "UnHide Bone By Name" on the chain of bones, which I am finding by creating a local array of names from the bones found with "Bone Is Child Of" for the bone that was hidden to start with. The UnHide portion is not working however, probably because I hid the root and bones that are parents of the appendage bones. Is there any way to hide parents but unhide children? Like, all the spine, pelvis and clavicle bones need to remain hidden but I need to be able to unhide upperarm_l and below, etc. Thanks ahead of time.

willow gate
dark drum
dark drum
willow gate
dark drum
willow gate
#

This testing is being done on the UE4 Mannequin btw. So I'm not sure how that's skinned

maiden wadi
dark drum
dull crest
#

What does the "transform space" enum do in this case? The official docs are utterly useless here 😒

mental trellis
#

It'll be the transform that the tranforrm is relative to.

dull crest
#

does this feature work properly? i'm getting wonky results and i'm trying to figure out if i'm expecting too much or have busted maths

mental trellis
#

Define wonky.

dull crest
#

oh just I've got some idea of a linear algebra transform I want to make and I'm seeing results that are... not that

mental trellis
#

Also you're retrieving the transform of a socket using a bone name. They aren't the same thing.

dull crest
#

presumably due to mismatch of coordinates between different bones and assets and whatnot

mental trellis
#

Ah okay.

#

What are you actually trying to do?

dull crest
#

in short:

I've got a character skelly mesh with this hierarchy:

mental trellis
#

Right.

dull crest
#

what i'm trying to achieve is to procedurally animate the "Bn_Hand_R" bone such that it, well swings a weapon

#

i've managed this just fine for a "slashing" kind of attack but I'm struggling with a "stab" attack (for a reason I'll explain in a sec)

#

the way i'm doing this right now is I'm animating the Bn_IKTarget_R bone using FK at runtime and have the anim rig set up so that BN_Hand_R (or its socket, cant recall) try to reach the "target" bone using IK

#

(for the record this nonsense actually works in principle)

#

anyway as part of my stab attacks I'm trying to get the position of the head relative to the bn_torso bone

#

so I can set the target bone (child of torso) to the head position

#

(eventually im going to draw a line from it to determine stab positions, just how I want to approach the actual animation)

dull crest
#

you can see here that the target bone is... not going where I would think it would go (the target goes from the torso base to the right hand end)

#

to get this transform - torso to head - i've written this node:

I'm just trying to figure out what i've borked here

#

particularly annoying is that.. i've kind of done this before, and I just don't remember how, and can't find it in blueprints (i really gotta learn C++ at this point, im finding BPs really hard to maintain)

spark steppe
#

unreal doesn't have bone ends/bone length

dull crest
#

yeah I've had to manually calculate that very recently

spark steppe
#

you probably want the target relative to the parent bone, and then aim your bone at the target?!

dull crest
#

yup

#

target relative to parent bone

this is the part that isnt working for me

#

i'm trying to get the head location relative to the target's parent bone

#

but there's like a chain of bones involved (neck bone)

#

trying to figure out the least dumb and annoying way to do this

spark steppe
#

also, what really helps when calculating things like that are the MakeAbsolute and MakeRelative nodes

#

which bundle up the whole space transform for you

dull crest
#

oh that is kind of nice

#

i cant find make absolute 😦

#

i'm on 5.3 fwiw

spark steppe
#

it doesn't exist sorry

#

recalled it wrong

dull crest
#

fair enough

spark steppe
#

it's just compose after all

#

so is the make relative (with an inversed value), so i thought both exist

dull crest
#

anyway im like severely sick atm so will have to call it for now, thanks for the help all, I appreciate it. I'll just have to check my old blueprints to figure out how I solved this in the past

#

one last this

#

thing

#

is there a way to see blueprint definitions

#

cause "goto definition" doesnt do anything for mme when i click on default nodes

#

this combined with the frankly embarrassing docco is being a real PITA

spark steppe
#

i think you need to setup an source accessor plugin in your editor/project settings

#

so that it can open your IDE, and maybe even needs a source engine build 🤔

dark drum
# dull crest 😦

I'm pretty sure RTS Actor gives the transform in actor space (the actor the owns the scene component). If you wanted world space, you should just need to transpose with the actors world transform.

spark steppe
#

the node has RTS World, too

dull crest
dull crest
#

i'll look into this later

#

just wanted to sanity check that its possible

#

figured it was, but you know... learning UE has been, to put it frankly, miserable

#

again, i really appreciate your help 🙂 thank you

spark steppe
#

i think all that Transform stuff just requires practice

dark drum
spark steppe
#

at some point it gets easier to grasp (at least that was my experience)

#

you dont? You take the bone transform in world space and the parent bone transform in worldspace and subtract them and take the vector length

dull crest
#

but blueprints are becoming... less and less fun the more I use them

spark steppe
#

i would do the calculation in world or actor space and ignore bone scale

#

just take the locations => delta => vector length

#

and i got sidetracked from my refactor... 😄

dull crest
#

i think i'll experiment with that tbh

dark drum
dull crest
#

oh i am not struggling with that

#

i'm struggling with getting particular bone positions relative to other bones

#

getting bone lengths was AIDS too but y'know (your idea with world space is way better ngl)

spark steppe
#

also you are not getting the reference transform there

#

there's afaik no node for that

dull crest
#

reference transform? sorry, i don't understand what you mean, which ref transform?

spark steppe
#

unless you mean something else by reference

#

reference transform is usually also what the reference pose has

#

maybe i just misunderstood your BP

dull crest
#

oh i meant the transform of the input "reference bone" i.e. the bone to get the target transform's relative to

#

i guess i've accidentally used a term i shouldnt have

#

apologies if this is unclear i am legitimately feverish atm

spark steppe
#

also really looks like a job for control rig

#

rather than old school animation 😄

dull crest
#

I think I'm using that but will investigate

#

sorry i think I wrote this like an actual year ago part time

#

the animation system itself I mean

dark drum
spark steppe
#

which btw. has bone chain length node 😛

lost hemlock
#

problem: when I use my grappling hook the rope always straightens itself somewhere straight on the right side really far out of the map

#

what I want is obviously to have it attach straight to the thing its supposed to attach, which is where the crosshair is pointing

#

3rd person & 1st person modes are both available

#

This is a function I have on the other blueprint

#

my character blueprint contains this "Grapple" function

#

& this is the function

#

the camera mode isn't the problem, im able to navigate towards my target, the only problem is the preview of the rope

#

the only problem is creating the illusion that this movement is actually real and not just floating around

#

I've had such a hard time trying to simulate this effect more realistic, but I couldnt with just one cable, so i've added another one cable component into my character bp

#

so one cable is owned by my character (which should be there enabled & visible only when I need to explain the player that his cable is attached to a target & then invisible again when not used), and one is owned by this blueprint called " BP_shooting_web_item_inv" <--- this particular one just swings around like a realistic physics body cable, its function is to just wave around with simulated physics of a real rope

#

so the 2nd one is always attached to player's hand when he needs it & my idea was to always have one or the other become visible, but NOT both.

#

I know this is not the best way of doing things, it's just an idea that I came up with after 2 days of trying to figure how this thing works & couldn't

ruby sapphire
#

How do I remove the cursor from the widgets if I'm using the gamepad? this dont work

jade junco
# dark drum Soft actor references can only be meaningfully async loaded when async loading a...

Thank you for checking me on this! I will say that I am definitely still early in learning and mostly am just basing myself off some random tutorial so I have no expectation that I am right.

As I have it now, my player controller has two soft references one to a placeable actor and one to a type of placeable actor. I have it now such that on toggling build mode, it async loads the asset, then calls the function which tries to spawn that actor off screen which on explaining I now realize it loads it whether or not I am enabling or disabling build mode so I will probably adjust that.

Conceptually though, not always having the building actor loaded into my player controller makes some sense to me, but I might not have the full picture yet.

I can't say that this will be the biggest performance increase I could do and in all actuality this system is still in prototyping as I haven't worked out building selection yet. I was planning on having maybe some kind of event which was like building selected which may also be a good spot to async load the building, I am not sure. At the end of the day I am just kind of blindly applying some best practice I saw which was to try and deal with soft references as much as possible to make things modular and (in some far flung future) moddable.

I would also mention that I have not built anything to save these new buildings into the game state ( I think?) so I still have a long way to go, the only but I'm really claiming to have tried to make async is the initial placement

dark drum
# jade junco Thank you for checking me on this! I will say that I am definitely still early i...

Using soft references is generally a good thing particularly for larger assets that might not always be used at a given time. For actors you would spawn dynamically at runtime, you would normally use a soft class reference instead of the soft object. You can then use the async loaded class to spawn the desired actor.

For clarity, for a soft actor reference to be functional, an actor must first exist in a level/map. When adding/spawning them dynamically at runtime, they'll never be saved with the map so on restart or level switch the soft ref would no longer function. Adding to this, if the actor was destroyed, the soft ref would show it as not being loaded and any attempts to load it wouldn't do anything. You would have to spawn in a new version.

In regards to a building system, the part that I would probably async load would be the static meshes. Of course this can depend on how you've chosen to approach the building system.

plush ledge
#

hi, im new to sonctruction script, i waswonderingig anyone can help me figure out the following:

i want to change the width of a spline mesh. i thought this would be dead simple but i see when i adjust the relative transfrom it changes completely everything about the shape.
anyone that is savvy in construction sript that can help me with this issue? i swear it should not be too complicated but here i am

jade junco
# dark drum Using soft references is generally a good thing particularly for larger assets t...

As far as I can tell I am using a soft class reference. I do need to rework this section as it will do this every time i receive a toggle build mode event. I think it is ok for my build modes soft reference to no longer function on restart or level switch because it should only live so long as you are in build mode (and eventually only with a building selected) and switching maps should likely move me out of build mode anyways. I hope I am making some sense, am i missing what you are trying to impart?

#

this set placement mode is for the actor which follows the cursor projected onto the ground, as like a ghost of the building, I have another chunk which listens for a left click while in build mode to actually turn the ghost into a dynamically spawned actor which sits at the ghosts current transform

#

I think I see what you mean about the static meshes, as right now the thing that follows my cursor is effectively a fully functional building that I keep repositioning, rather than just the mesh for identifiying placement

#

Ty for your help btw

#

From memory I think I am using the soft object reference only inside one of those two ( I have to head into work now so I can't check)

dark drum
jade junco
trim matrix
#

I have a node which samples multiple points along a spline, and I'm trying to feed the output of that node into a Loop node, to loop over the points and apply a subgraph to each point.

This is not what happens. Instead, the loop receives a list of points.

The pipes are the main splines, the rainbow cubes are the points sampled on the splines, and the lesser splines are there for debugging.

The goal is to execute a subgraph for each point marked by a rainbow cube, which projects 4 splines outward in N, E, S, and W.

But what happens is the subgraph creates a spline with all points that should have been individually looped and individually fed into the subgraph.

#

Here I am putting in more input points to make the behavior more obvious. It's creating one spline out of all the points fed in to the loop, rather than executing the subgraph in a loop

#

What is the correct way to take the output of a list (here a list of points sampled from a pipe spline), and execute a subgraph for each?

paper jasper
#

Hi I am trying to make my own movement system as I believe that the character movement component is too cluttered with things I don't need so far I have got WASD to work. However, my gravity isn't great. I am also trying to make a line trace system that will detect if it is on the ground or not but I want it to have 4 line. 1 line from the front left and right and for the back left and right to help me see if the player is on the ground. My jump is also not great as once you jumped it snaps you instantly to the ground.

dark drum
obsidian crown
#

just found out you can mutate stuff inside a pure function

#

horrifying

charred girder
#

i want this change to be smooth but i cant find the node where i can connect the timeline to it, any1 know a node that has seperate connecetions for xyz

#

nvm i think its "vector set"

brisk briar
#

How may I add an object reference to the float I created on the right side so that it connects like what is shown on the left?

Trying to make a rotation function with my own float. Tried to reverse engineer the first one (that I did not write myself) but cannot find out how to add the connection node.

lofty rapids
#

then when you click on that, it should have them connected

brisk briar
lofty rapids
#

you could use a variable for the amount of rotation to apply

#

but ya that target arm length is for something like zoom not rotation

brisk briar
#

yeah i am trying to demystify why one of the floats can read information from a target node and the other one can't in this case

lofty rapids
#

i'm not sure what your asking ?

lofty rapids
brisk briar
#

yes why can it not interface with an input node, it appears to have the same characteristics as the float that I created myself

lofty rapids
#

because your float is local to self

#

you don't use target

#

you could probably use self

#

and get a target

#

basically the target is self without it

#

but you can get self, pull from that and get your variable

#

and it will look like the one from the spring arm, it just has a taget because it's comming from another source

#

you can basically assume without it that target is self, but local variables don't explicitly say that

brisk briar
#

Thank you, that's very helpful. Only in this mess (other than being a complete idiot) because I spent like 2 hours trying to export the rotational variable already inherent to the spring arm before I tried to create my own var

lofty rapids
#

i still don't see why your using target arm length for rotation thats incorrect

#

but maybe you just was wondering and that aside from the point ?

brisk briar
#

this is fundamentally helpful still

lofty rapids
#

ya your local variables don't have a target

#

if you were in a differen bp, and got the ref to that bp, then drag out, then it would have target connected

lofty rapids
plush ledge
#

hi everyone. where can i find the: set start and end scale node for a spline component?

#

i cannot find it and i have no idea how i can make objects thicker along a spline mesh

paper jasper
brisk briar
#

all i am getting right now is some arbitrary camera tilt. it "looks" like it makes sense to me

lofty rapids
lofty rapids
fading sentinel
#

Hey everyone, I’m having trouble exporting my Blender armature (named “Rain”) into UE5.5 and preserving root motion correctly—any help would be awesome. Here’s the full situation:

I started with a Mixamo rig in Blender and edited/stitched together multiple Mixamo animations to create new clips. In Blender, I renamed the Mixamo hip bone (which is the true root in the Mixamo rig) to “Root” and made sure all other bones are children of it. However, when I export to FBX and import into Unreal, the Armature object “Rain” still appears above “Root” in the Skeleton Tree, so Unreal treats “Rain” as the top‐level bone. I’ve tried setting the Armature FBXNode Type to both “Null” and “Node” and toggling “Only Deform Bones” on/“Add Leaf Bones” off, but “Rain” remains as a fake root.

Because root motion wasn’t translating on my own rig, I retargeted my stitched-together animations from Rain to Unreal’s default mannequin. The retargeting itself works fine, but when I enable root motion and set the root to zero, the translation still doesn’t apply (whereas native Unreal rig animations behave correctly). It turns out the animation curves themselves reference “Rain” for translation, so simply renaming or retargeting hasn’t fixed it.

fading sentinel
# fading sentinel Hey everyone, I’m having trouble exporting my Blender armature (named “Rain”) in...

I also tried two additional approaches in Blender, but neither solved the issue:

Renaming the Mixamo hip bone directly to “Root” (so the original hip is now called “Root”), then exporting/importing/retargeting again.

Creating a brand-new bone named “Root,” parenting the original Mixamo hip to that new “Root,” and transferring all location X/Y/Z data from the hip to the new bone, then exporting/importing/retargeting once more.

In both cases, Unreal still shows “Rain” as the top-level bone, and root motion remains broken because the animation data still drives translation on the “Rain” node. Has anyone else run into this exact issue—or found a reliable way to strip out the “Rain” node so that “Root” is the actual top-level bone without breaking the animation curves? Or is there another workflow that preserves root motion correctly when using a Mixamo-derived Blender rig? Thanks

brisk briar
lofty rapids
#

and set world rotation

#

but what your doing might work

#

do you see the set world rotation that you put in there ?

#

notice the rotation is set to 0,0 0,0 0,0

brisk briar
#

yep. my logic i am working with is Get Rotation (x,y,z) -> Break rotator (Z) -> add/sub -> Set World Rotation (updates in node to + or - the amount as button is pressed) but do i have to insert data into the XYZ node do u think? and if so i can't find a suitable component

lofty rapids
#

set the target arm rotation variable, then do this

lofty rapids
#

thats how i got x,y,z

lofty rapids
# lofty rapids

here we just get the world rotation, add to z (pass a negative number to reverse), and keep x and y as the same

#

classic simple rotation with a variable

lofty rapids
brisk briar
#

okay i will try to replicate. changed my blueprint around and broke my brain with these node splits

#

but that is very helpful

lofty rapids
#

ya split the pins is a very useful thing, especially for something like this where you want to alter just one value

brisk briar
#

totally.

paper jasper
lofty rapids
#

it defaults to 8000

paper jasper
# dark drum Show how you've set it up.

Basically the exact same what I said

so where it says 425 would that change to 981 then multiple it by delta and plug it into Z?

I do think the issue is the FloatingPawnMovement however, I don't want to use the character movement

paper jasper
lofty rapids
#

try to set it to a really low number, see if that changes just as a test

#

lower then the amount your pushing down

#

you might as well turn friction down as well

#

since you'll be customizing this ?

paper jasper
dark drum
verbal parrot
#

I have a function to grab and move physics objects (think Deus Ex, Prey, etc) and I want to prevent the player grabbing them while they are standing on top, because it allows you to surf those objects into the sky. I had this solved in 5.4 by checking the player collision sphere relative to the object (negative normal to the grabbed object means you are standing on top, so it drops), but for some reason this does not want to work in my new 5.5 project. Does anyone here maybe have an idea why?

#

Open to entirely other solutions as well, because this approach prevents players grabbing anything below them, even if they are not standing directly on top of the object...

dark drum
# verbal parrot I have a function to grab and move physics objects (think Deus Ex, Prey, etc) an...

That end trace location is most likely the issue. World location * 10. 👀

I would assume you just want to set the end location 10 lower on the Z instead of multiplying it.

As an alternative approach though, you could just get the look at rotation from the player to the grabbed object and if the pitch is below a threshold it drops. Or even skip the look at rotation all together and just use the camera rotation if its more of a first person game.

paper jasper
dark drum
brisk briar
# lofty rapids

thank you so much buddy I made a lot of progress today because of your guidance.
will try to work on it more but I think I have the knowledge to move forward on my own.

lofty rapids
verbal parrot
lofty rapids
#

check the trace is hitting the object you are on top off

#

and possibly add a dot product to the normal with the up vector of the world

crude dew
#

Could someone please explain why neither of these objects detect an overlap on them , Both Static Mesh have Collision primitives added to the actual mesh but neither of them trigger an overlap?

paper jasper
# lofty rapids try the add input vector node

Yep it works to an extent. This is because it now snaps which is good (having tested jumping with it) but now when it does snap and I press WASD then it only goes in that direction I tried changing the decceleration to fix this isssue but it work

crude dew
#

They are set to overlap with their object types (World Static and World Dynamic) both have Generate Overlap Events ticked, So im kinda out of idea's atm xD

lofty rapids
lofty rapids
#

i'm assuming your print stringing the name but no print string ?

paper jasper
crude dew
paper jasper
crude dew
#

this is odd even if i set the enemy to block all it doesnt even block Im sure i missed something small but cant think what atm

#

nvm im dumb i forgot i was setting to No Collision upon spawning of the Actor... doh!

brisk briar
#

Not quite understanding, the function "Rotate Camera Left" works just fine, passing a continuous positive value to my world rotation.

"Rotate Camera Right", which is completely identical, but with another mapped key, passing a continuous negative value is completely broken. Why could this be?

brisk briar
#

Breaks the other function if the add and subtract are switched as well, so something with the subtraction of the value seems to kill it entirely

#

it's setting itself to the negative of itself. that is unexpected. can i reverse the addition value instead? thinkCat

lofty rapids
#

possible solution

#

"The order affects the sign"

#

addition doesn't matter how you order it

#

"The key difference is that addition is both commutative (order doesn't matter) and associative (grouping doesn't matter), while subtraction is neither."

lofty rapids
brisk briar
#

ok that worked perfectly

#

i would not have figured out that the order of those unnamed connections had any meaning

lofty rapids
#

because maths

brisk briar
#

thanks a million once again, have an amazing day FlowerCatJam

lofty rapids
#

interestingly if one value is negative, the addition still applies and order doesn't matter

maiden zealot
#

Ok so... I know how nuts this sounds, but bear with me...

I'm making a card game with the option to create deep copies of cards. I created a lot of boilerplate code to deal with the copying, but it came with some... 'liberal' use of cast nodes, primarily to cast from an 'AbstractCard' class to one of many other derivatives. The thing is... this only amounts to like 5 different types of cards (e.g. Creature Card, Spell Card, etc.) with unique ways to handle their copying. I know that Cast nodes are atrocious for performance because of hard references, but I'm curious if the effect is that bad if it's always referencing the exact same 5 or so classes whenever it's called?

lofty rapids
#

are you casting to the parent ?

#

or your casting down to get the unique ones ?

maiden zealot
#

The tree might look as follows:

AbstractCard -> Creature -> LOTS of creatures
             -> Spell
             -> +3 types      
    ^  Cast to these ^
#

So my question is if a lot of casts are done but only to 5 classes, is it that bad

#

These are only objects if that matters

lofty rapids
#

it's only bad if its hurting performance

maiden zealot
#

Ok sure, but I was hoping to avoid getting to that point and was just asking for some guidance

lofty rapids
#

theres nothing inherently horrible about casting, it matters what your casting too and how long it is in memory, for instance if it's already in memory the cast is basically free

maiden zealot
#

Ok here's a more detailed example:

Abstract Card
      ||
      \/
Creature Card
  ||      ||
  \/      \/
 Cr_A    Cr_B

Suppose an object of Cr_A casts an object - that was original Cr_B, but is only referenced as Abstract Card - to Creature Card. Does it permanently load Cr_B, or only Creature Card?

#

If it's the former, I have a problem

maiden wadi
#

Casting itself has no real runtime cost. It's all memory management.

maiden zealot
#

Yes, but I heard these persist indefinitely until the game stops?

dreamy kindle
maiden wadi
maiden zealot
#

Suppose A is secretly C which is a subclass of B - would casting to B also load C, or just B?

maiden wadi
maiden zealot
#

Effectively I'm in a situation where I might need to copy hundreds of card objects. But the casts they all do are only to their base classes, so I'm curious if that's a performance nightmare in the making or if it's fine.

maiden wadi
#

You should take a look at your sizemaps for a start. They'll help you understand if there's even an issue to consider.

#

If your core classes have small sizemaps, cast to them all you like, it won't cause issues.

maiden zealot
#

It seems that the sizemap displays the size of all its references as well, is there a way to determine just the raw data size?

maiden wadi
maiden zealot
#

In the sizemap, it's displaying not just the class but also things like references to widgets that don't exist yet in the context - bloating the memory size

maiden wadi
#

They do exist though. You're linked to them.

#

Either through some class or pointer property, or casting.

maiden zealot
#

Just as an example, I have a widget that just relays the card information. This is not referenced in the card itself anywhere.

#

Yet is part of the sizemap for some reason

maiden wadi
#

It is somewhere or it wouldn't be in the sizemap. Is the widget directly under the class you're viewing or is it linked under something else?

maiden zealot
#

The widget references the card - not the other way

#

I double checked, no reference

maiden wadi
#

Can you show the sizemap?

maiden zealot
#

Wait, a question - I do have a class reference inside of the object, to make sure that a manager can get the correct widget for the card. Does that cause the entire widget to be loaded?

maiden wadi
#

That counts as a linker. Class or Pointer references that are not Soft and of a parent type count as linkers. This is why casting does as well because the output of a cast node is a pointer of the type.

maiden zealot
#

But if I were to spawn two of the same object, it would share those references?

#

I'm trying to just get a number that says 'Spawning one of this object will make the memory increase by N'

maiden wadi
#

Instances don't count for this. Linkers are for CDOs. CDO being Class Default Object. CDOs are templates to which you create instances out of. The sizemap is a web of all of the linked CDOs required for said class to function. If you create an instance from any of these it does expand memory as a new instance of something needs it's own data, but it has nothing to do with the sizemap.

maiden zealot
#

Oh.

#

Is there any place I can look for a sizeof()?

#

Since all my cards are interlinked with a lot of other stuff, the sizemap just makes me panic

maiden wadi
#

That I don't know if there is something to look at easily without your own function for it in C++. What class are your cards made from?

maiden zealot
#

Just UObject, albeit a blueprint version

#

Anything that visualizes it becomes an actor, but everything else is the bare minimum class

#

Is UObject alone quite big?

maiden wadi
#

Depends on who you ask. Not really though. You're looking at dozens of thousands even on a bad platform like Switch before you need to be worried. PC supports millions.

#

Like uhh.. Sec

maiden zealot
#

I'm gonna ballpark around 30 UObject-variant objects go on each card, so I feel like I'm safe then. Thank you!

maiden wadi
# maiden zealot I'm gonna ballpark around 30 UObject-variant objects go on each card, so I feel ...

An empty blueprint UObject class seems to be about 48 bytes. A single integer added moves it to 56. Another one doesn't add anything, I assume this is from byte alignment because it allocated enough to hold two 32bit integers with the first one. A third integer pushes it to 64 bytes. two more takes it to 72.

Either way. These are bytes. So something like 14k of these with 5 integers can fit in a megabyte I think.

#

There's very little you can do as a programmer, that your artist who needs an 8k texture for a monster's toenails will not outdo you on.

maiden zealot
#

Yup, just covering my tracks. Thanks for checking!

astral flame
#

any idea how to get my players velocity so it wont consume stamina when not moving

astral flame
#

If the player isnt moving or running I dont want it to consume stamina

maiden zealot
#

If you want it to be when running, I think it becomes simple - just check 'IsRunning' as well as the input from the character controller, to see if the player is doing an input.

#

What's the problem currently?

astral flame
#

so when the player isnt moving and i hold shift it still drains the stamina

maiden zealot
#

Yeah, just check the input from the character controller then. It's a vector of X and Y (I think?), so if it's greater than 0 then your player is moving.

astral flame
#

where would I add that?

#

sorry im still pretty new

maiden zealot
#

No worries! Is this just a third person/first person controller?

astral flame
#

Third person, I renamed my BP_ThirdpersonChar to BP_Player

maiden zealot
#

Ok, I believe if you look inside of the character controller you'll see an event along the lines of Movement

astral flame
#

yes I see the character controller

maiden zealot
#

Just find out where it's getting player input, and save that to a public variable. Then you can access it in the player as needed.

astral flame
#

ok

#

yea it still didnt work.

maiden zealot
#

Can I see what you did?

astral flame
#

this is my entire code...

raven reef
astral flame
#

Okay so I swapped it to ongoing only...

paper jasper
ruby sapphire
#

How can I know which gamepad I have connected so I can change the widgets to fit the gamepad that’s connected? Xbox, PlayStation, etc.

dark drum
# ruby sapphire How can I know which gamepad I have connected so I can change the widgets to fit...

Check out CommonUI, they have action widgets which update based on the recent inputs detected.

This article goes over it but if you want true gamepad type detection you'll need to use C++.

https://somndus-studio.com/blog/ue5-game-input/

In this post, I will guide you through a solution to detect your console controllers (using PS5 as an example) in your Unreal Engine project. We'll achieve this with the help of Unreal Engine's GameInput plugin and its integration with Common Input. I'll clarify how mapping and detection work, even beyond the GameInput plugin.

dark drum
raven reef
dark drum
raven reef
#

I have input data sets for each input type kbm xsx ps4 ps5 switch and xbox1

#

Have considered making it a little template to post on fab as it probably be helpful to people

dark drum
raven reef
#

You are acting like this is some impossibility xD ill upload the system and send it to ya so you can see gotta have json plugin and common ui for it to work as a heads up

dark drum
raven reef
# dark drum I never said it was impossible. I said you need C++ for true support as there's ...

Like i said custom stuff i should have been more clear that I am using c++ classes. Again happy to share the system with you this does something very similar with its system for input handling https://www.fab.com/listings/899d8fd6-ce40-4c4e-aa82-3fce041fe3ce

Fab.com

🎥 VideosFeature OverviewQuick Start GuideIntegration into Player Controller, Character, GameMode & Game Instance🕹️ DemoExample Demo - Try it out before you buy! 🛒📚 Documentation & GuidesLatest UE 5.3+ Common UI (MSP 2.2.0+) | Legacy Documentations💬 Support Discord | marketplace@moonville.dev🔗 Works with Easy Multi ...

#

Ill isolate the feature and throw it in a blank project for ya might help some people out!

dark drum
# raven reef Like i said custom stuff i should have been more clear that I am using c++ class...

The stuff for the most part is already setup and accessible in UE. 🤷

CommonUI and CommonInput, you just need to configure it. The below article from epic shares some of the hardware ID used by some of the common gamepads.

https://dev.epicgames.com/community/learning/tutorials/EpZ4/unreal-engine-game-input-for-windows-experimental-release-notes

Epic Games Developer

These are the release notes for the experimental plugin "Game Input for Windows" that launches with Unreal Engine 5.4.

raven reef
#

Oh didnt even know lol that might be less work then my current set up for others for sure will have to play around with it and see if it acheives the same affect I have now.

#

Also I have to ask is there a reason you've been so condescending or is it just the way you type cause its very off putting and makes you come off not so nicely lol

#

@dark drum

dark drum
raven reef
# dark drum Most likely a combination of things, but from my perspective you weren't actuall...

Wasn't pushing it was just sharing an example of a system similar to how I did it based off their documentation which uses a similar set up! You are still being condescending and to say "well I am british" is saying that's a normal thing in your country and that is just plainly wrong I doubt most British people are going agree that being British makes you condescending as you are implying. Gonna drop it here as you aren't really worth engaging with when this is your attitude. I wish you all the success in the world but for sure work on that.

timber girder
#

Hey anybody got an tutorial or a solution for motion matching and jumping? I migrated the animations form the sample game, made a PSS with default values, created Databases for Jump, Walk, Run, Crouch & Idle, I use a chooser set to "interrupt when DB change" and the Default trajectory now I got the problem that jumping isn't really working, sometimes I walk in air sometimes I lean forward while jumping and don't rly have a land animation either, any solutions? Or at least a valid tutotial because it seems so barely documented

#

Also I'm not sure if this is the right channel after all, was looking for an animation channel and couldn't find it , so this made the most sense here because of AnimBPs

ruby sapphire
#

How to make the mouse disappear when the controller is active in widgets? this dont work

tired gyro
#

/portfolio freelance

copper lion
#

i've come up with a stamina and sprint system, is this good practice?

wild coral
#

Heyguys. I want to launch an enemy of class character up in the air. But neither LaunchCharacter nor AddImpulse do anything on neither of the 3 axis. why could that be?

sand shore
frosty heron
frosty heron
wild coral
frosty heron
#

You will get choppy result

frosty heron
wild coral
last peak
dawn gazelle
#

<@&213101288538374145>

last peak
#

<@&213101288538374145>

last peak
copper lion
dawn gazelle
copper lion
#

i wanted to add a heavy breathing sound when the player reaches under 25 stamina, but this seems to not work out, any ideeas? i cant find anything online

copper lion
last peak
copper lion
last peak
dawn gazelle
copper lion
dawn gazelle
#

During your "Stamina Deplete" event, you should put in a call to "Check Energy" as well, but you'll need some additional logic to prevent the logic from continually spawning sounds. You can use Spawn Sound Attached which gives you a reference and check if it's playing or not to then call to play it again (or something like this).

last peak
# copper lion when should i call it?

Just add the check after ongoing .....
Sprint-ongoing-checkstamina-if<25 play sound at location,2d or attached whatever you need ....
Save the sound as variable "active sound" and before you play the sound you check if that variable is valid, if not play sound if valid do nothing

winged totem
#

Hello, I'm trying to make a game with Water plugin from Epic to use a Ship and I'm figure out how to make the water body go up and down to fill rooms and navigate throw it. Any tip or someone can share experience about this please?

forest tangle
#

Hey there, working with UE 4.26.2 to mod a game. The way modding works is you have a mod folder outside of the game's folder where you make your blueprints. Is there somehow a valid way to transfer assets from one mod's folder into another without having a lot of reference errors? I mean, the migrate option is supposed to do exactly that but I still get a bunch of reference errors, DataTables not being editable, etc. Maybe it has something to do with the fact that the blueprints are also referencing assets from the main game's folder? Any suggestions?

last peak
# copper lion

Because your not setting your sound variable it will always be invalid

#

and you should play the sound when its invalid not when its valid

copper lion
#

oh yes

#

and i forgot to add the location..

slender dagger
copper lion
#

it still doesnt work.. i cant understand this

#

it seems like the "ongoing" section isnt working for me, i put a print string when stam is under 25 and it doesnt show anything

lunar sleet
last peak
lunar sleet
#

On a down/no trigger OnGoing will not do what you think it does. Use Triggered if you want something to happen on tick while the input is actuated

snow halo
#

I have a question, why is the default animation blueprint graph doing all these on tick? ⏰

#

couldn't these values be received here through some other more optimized way? 📩

#

Also I've added these to the tick, but it just looks so bad

dawn gazelle
snow halo
dawn gazelle
snow halo
dawn gazelle
snow halo
dawn gazelle
#

If something is removed then there woudln't be a redirector.

snow halo
dawn gazelle
#

You could try fixing up redirectors in folders rather than the entire project. I believe you could even sort the content browser to show redirectors, and maybe do them in small batches?

#

I usually like to fix redirectors as soon as I've messed around with reorganizing for just such a reason.

snow halo
snow halo
#

this error goes away if I rename an image there

#

I had a similar problem like this when I tried to put a breakpoint on a specific part of code that wasn't executing

#

and errors like this would go away if I was sometimes keeping a blueprint open

#

etc.

#

but this specific issue idk why it is happening

dawn gazelle
#

possibly because you have too many redirectors

#

if there are name overlaps it could be mucking things up.

snow halo
# dawn gazelle if there are name overlaps it could be mucking things up.

I dont think there are name overlaps. I've had chatgpt write me specific keywords for each image name so that I can look up & search data table elements via searching related keywords & speed up my search workflow too, i made my search kinda work like google where writing related words helps you find what you look for, so no name overlaps

compact remnant
#

Weird problem, I'm trying to do a line trace downwards from in front of the player, tracing simple on visibility channel, but it's just refusing to grab the right hit location.

Same setup with a horizontal trace in front of the player properly does the hit. IDK what could be the issue here.

#

Oops I was doing it in the wrong direction KEKW

surreal peak
#

Was just about to say, your trace is green, so the whole distance is a hit.

#

Usually means you started tracing inside geometry.

compact remnant
#

I was investigating spiritual cults on stream today, I guess it brainrotted me a bit

native ocean
#

Hello, quick question : I made a helicopter I replicated everything and it almost work. The only thing that dont work is the up and down of my Helicopter when ONLY the client drive it.

Here the UP and Down is SHift to go up dans Ctrl to go down

#

If anyone know why I mean I got a idea why but dont know how to do it like making a Event for the up dans down

copper lion
# last peak So your input isnt set up properly

eventually i figured it out. I created 2 new functions , check stamina and checkstamina2, one is for the deplete stamina function to check when is under 25 stamina to play the sound, and the other for the regen stamina function to check when is above 25 to stop the sound.

native ocean
#

or maybe I should do a fonction

dawn gazelle
native ocean
#

Ok i go google how to do that

dawn gazelle
slim pecan
#

hey yall, how do i get the owning player controller from a widget blueprint?

#

this node doesnt seem to work

spark steppe
#

i'm pretty sure it does, as long as you provide an owner when spawning the widget

slim pecan
#

ohh i see

#

ty

last peak
slim pecan
slim pecan
last peak
# slim pecan hmmm it still seems to print nothing

If you cant get it to work otherwise you can create a actor variable on your widget make it exposed on spawn now when you spawn that widget in the player you can just pass a reference to self into it

hardy forge
#

Does anyone know how I can make it so that when the player looks through the Red side, certain numbers show up or others disappear, and when the player goes to the Blue side other numbers again, either show up, or are removed?

stone field
#

Alternatively you could do some tricky math with the line of sights to determine things ( might just be a matter of raycasts, maybe not super tricky )

#

many ways to skin a cat

hardy forge
#

I thought this would be an easy effect to make lol The "portal" makes sense, but deff a lot more work than I wanted to do. Im testing out custom depth stencils to see how that would look. If not, looks like your idea is the best way. Thank you for the reply

stone field
#

But the portals might be more flexible if you want to take the puzzle further... depends on if it's a one-trick pony or a core mechanic

hardy forge
#

Actually, rethinking that, yeah, i agree. raycasting would be easy to set up. Its only for this one event, so not core mechanic, thats why I was looking for a relatively quick way to do this. Raycasting will do this effectively

storm orbit
#

You could use a custom depth with a stencil buffer in a material to assign a single channel for the extra alphas for each number set. I dont have the articles or tutorials linked, but just look up stencil buffer and custom depth materials to get an idea

hardy forge
signal bane
#

This is a compromised account (which is now deleted)

#

I've seen it in a few other discords

#

Thanks mods

storm orbit
# hardy forge This was what I was starting with, but I dont want the player to be able to see ...

You want to use overlapping custom depths (each lens woudl use a different depth, you would use the lense overlaps with the text to determine which set to show)

https://medium.com/unreal-engine-technical-blog/overlapping-custom-depth-stencils-a084aa763f10

Medium

In this post I’ll assume that you are already familiar with UE4 editor basics, material basics, scene depth and post process materials. If…

leaden raven
#

would anyone be able to recommend any courses for programming? whether its paid or free idm. I'm trying to do things in my game revolving around game and player states but ive got no idea where to start, and because its specific for my game it makes it harder to work out what i need to find

lofty rapids
last peak
copper lion
wild pumice
#

Hi, any Camera Gurus here? Has anyone been able to possess a pawn without having that quick cut of the camera you see in every tutorial? Instantly switching the camera pov to the new pawn can be jarring. I'm trying to achieve something smoother like this. I have some ideas to solutions but I'm curious if anyone has run into this issue and solved it before.

valid vector
#

Ooh actually I think you can just posses the pawn directly with the camera lag

wild pumice
#

Is there a way to add camera lag to the possession? My current solution I am thinking of is:
Pause game.
Set view target with blend to pawn.
Once it reaches do possess and hope no stutter or quick cut on possess. But this might cause camera rotation problems.

flat coral
#

BP doesn't have any version of a Final operator does it?

dull hare
#

Hi, is there any node that allows changing the Physics Constraint Angular Rotation Offset during runtime? I know there is one for limits, but I haven't found anything about the offset

dreamy kindle
#

I got it sorted out for FP blending with lower body thanks think I need a simpler FP blendspace rn its 8 directions and seems to shift I thinkhttps://gyazo.com/2b1463646f75bbee37ff3aa2ac86d74d

odd compass
#

I used the two bone IK but my variables that I set in my player character(sandbox character) aren't affecting the anim blueprint, idk how to fix this bc the reference to the player character is valid, any clue?

sage lagoon
#

Can anyone point me to a reliable tutorial for, say, creating a shop widget with BP for transactions, as well as adding and subtracting items from the inventory? I've made separate structs for types of items, as well as tables. But I'm not sure how to set the shop to function properly. So far, the widget looks like this:

last peak
# sage lagoon

Mate.... no one knows how youve set up your inventory, no tutorial will fit exactly your setup

sage lagoon
opal apex
#

anyone know how to detect the bone hit when doing a line trace? ive been at it for hours and cant figure it out, it always returns "none" when i make a line trace from the enemy directly to the player's head bone

surreal peak
#

Iirc you'd need to assign collision to specific bones if you want that to work.

#

But I'm a bit rusty on that part.

#

And you'd need to make sure that the Capsule isn't the thing that blocks the trace initiall I guess, as that might return a single hit with that as the result instead of the SkeletalMesh.

violet dirge
steady night
#

hi what woudl hallf size be if i want it to spawn at random location in box ?

dark drum
dark drum
steady night
#

can i get the half size from thee box extent node ?

#

or do i need to calculate it myself ?

#

or wait

#

just divide by 2...-.-

dark drum
# steady night just divide by 2...-.-

That would do it. Don't forget to use the boxes location as the center if you're using it as a visual representation of the area you want the point to be inside.

steady night
#

hm so + actors world location also ?

#

or no that wont work

dark drum
#

Also, it might be worth multiplying the box extent (after your division) by the world scale of the box as well.

steady night
#

ive learned the hard way to never scale boxes xD

#

just make it expose on spawn and u change it the same way as scale so way easier

violet dirge
dark drum
# steady night

Yea it can complicate things when you throw scale into the mix. 😅 If you're not using it, there shouldn't be any need to multiply it then.

dark drum
dark drum
violet dirge
dark drum
tight pollen
#

is there a way to use Control rig to create a Level Sequence but for spawned actors?

#

I don't want to have, for example, 20 different Level Sequences in which I have, for example, 10 actors who are completely unnecessary during the game, only for cutscenes

#

it's about optimization

#

e.g. I have 20 metahumans, why should they be on the map if the sequence is not active

lofty rapids
#

"Instead of directly modifying pitch, yaw, and roll values (which can cause gimbal lock), create quaternions for each rotation axis and multiply them together. This gives you the mathematical benefits of quaternions while avoiding the singularities that plague Euler angles."

#

i only know about it because i tried to build my own engine a few times, and needed to use matrix mathematics

dark drum
#

@lofty rapids do you have any BP examples of using Quats?

lofty rapids
dark drum
spark steppe
#

there's a slerp method which uses the shortest distance to lerp (at least in cpp)

covert stirrup
#

Casting question
I have a line trace that comes from the player to see whats in front, does the cast of the hit object store all instances of that object in memory (i.e if the level had x1000 BPM_InteractionV2) or just the single one iteration that is hit and stored as a reference?

spark steppe
#

another workaround which may work is to use 2 transforms and blend/lerp them, as transforms use that method by default

frail zephyr
#

Question regarding the Construction Script

I have an** ActorToIgnore** array that I can select in level (Instance Editable) and I have another array that acts like an actor cache of the original ActorsToIgnore called ActorsToIgnoreCache, which is automatically updated through the construction script.

Problem I'm having is that I have to have ActorsToIgnoreCache variable set to instance editable to actually be updated. Is that basically by design, that construction script cannot update non-instance editable variables?

lofty rapids
#

it will just load what you hit not all of them

#

it's a reference to a single thing, if i understand it correctly what your asking

covert stirrup
#

Yea thank you that helps a lot

#

I was 50% sure that's how it worked xD

#

I am not too fussed on a hard reference to one item but was worried if the level grew it would be exponentially bad

lofty rapids
#

i think like i mentioned since the thing is loaded on screen it's probably a free cast

#

but i'm still learning

covert stirrup
#

yea I am pretty sure thats how it goes, from what I read there is still overhead but its significantly less if its a loaded asset already

dark drum
# covert stirrup yea I am pretty sure thats how it goes, from what I read there is still overhead...

A cast forces the the CDO (Class Default Object) to be loaded. This is used when creating an object of a given class of which includes anything it also references. Beyond that, the cast is just a check to see if an object is of a specific type and returns an updated reference type.

If you're concerned about what is or isn't loaded, you should look at soft references, class hierarchy and function only base classes. This is only actually a problem for larger games as for smaller games most things are used in the level from the get go. There are of course exceptions for things, such as bosses, VFX and audio but this can be mitigated using soft references and good class hierarchy.

Hopefully this helps. 🙂

covert stirrup
# dark drum A cast forces the the CDO (Class Default Object) to be loaded. This is used when...

yea that does help thanks, I have been toying with using intefaces but I honestly don't know how to make it work for my condition

Current System
Player LineTraces > Hits Object > Gets Ref

Inteface System
Player LineTraces > Hits Object w/ Implemented Inteface > ???

I struggle to see the link on how I would get valuable information sent or recieved, so clearly I am missing something important! 😄

lofty rapids
#

an interface is basically a set of function signatures

covert stirrup
#

yea I know what they are, used them in the past, but cant make it work in my head with this current setup specifically

lofty rapids
#

you don't really have to check for the interface, i think it's good to do on a trace to find the specific one

covert stirrup
#

I have no idea how to relate to the specific actor being looked at for example

dark drum
lofty rapids
#

and you implement the functions of the interface on that bp

#

and then just call the functions

covert stirrup
dark drum
lofty rapids
#

well you could also use hit actor

#

without casting

#

but ya like mentioned it's not meant to avoid casting

covert stirrup
#

oh ok so thats good then I am doing it the way its meant to be done! 😄

#

Intefaces are usually touted as an alternative to casting

#

think thats what was getting me confused

lofty rapids
#

but you can just use the hit actor

#

in this case you don't need to cast i'm fairly sure of that

covert stirrup
lofty rapids
#

interesting

covert stirrup
#

I wouldnt be able to get the Object Information Struct for example

#

that information is exposed after the hit actor from the cast to the class

lofty rapids
#

of an interface

#

i'm like 95% sure of that

dark drum
# covert stirrup Intefaces are usually touted as an alternative to casting

Yea there's a lot of misinformation surround casting and interfaces. People use interfaces as a lazy mans memory management. 🥲 Interfaces in my opinion should be the last opinion when nothing else is suitable (such as hierarchy or components)

You can get yourself into a right mess over using interfaces and actually end up loading everything you were trying to use them to not load. 😅

covert stirrup
#

I believe you are right yea, but I already have the cast saved as a reference, so I can directly access what I need when I need it (basically its a linetrace that updates 0.05 timer to see whats infront for picking up ect)

covert stirrup
lofty rapids
#

it's a common confusion

dark drum
lofty rapids
#

if you are using the interface to interact, just hit actor, run function, and implement the interface in each one makes the code fairly simple

covert stirrup
merry mirage
#

The component approach is very nice, because suddenly you can have an actor which is normally not interactable suddenly be interactable

covert stirrup
#

could you explain what you mean by a component approach instead? not sure I am following!

merry mirage
#

Instead of using an interface for communication you can make an actor component which you can look for instead

covert stirrup
#

oh I see what you mean! like an actor as a container for world info that kind of thing?

merry mirage
#

I guess you could call a component an extension of an actor without a world position? I (personally) find it much better to compartmentalize large functionality within multiple components so you do not end up with one huge actor harboring all the logic

dark drum
merry mirage
#

Even when not reusing logic it can be effective to put things into components so you can switch out pieces of your code without having to touch other parts of it

covert stirrup
covert stirrup
#

thanks for your help @dark drum @lofty rapids @merry mirage figured out what my alternatives are for the given situation! ❤️ 😄

dark drum
covert stirrup
merry mirage
#

it do be like that

agile mural
#

Hi, new here ! I'm starting an asymmetrical VR simulation tool with a simple control panel on the computer and the interactive simulation in VR, I'm struggling finding resources on how to set up asymmetrical controls, has anyone have some experience with this ?

snow halo
#

Animation blueprint programming question : In which of these state machines would my swimming system skeleton chereography go into?

junior prairie
#

I'm trying to set up some basic combat for a hack and slash type game using an animation pack, haven't set up hit registry yet just the animations, but I wanted the player to move with the animations so I toggled root motion on. Seems like the root motion very aggresively shoves other actors around, what's the best way to fix this? Should I modify collision while attacking? Ditch root motion and move the player using code (not sure how to do this with the animation timing)?
https://streamable.com/75cvzg

Watch "Root Motion Shoving Enemy Actors" on Streamable.

▶ Play video
opal apex
hazy sequoia
#

Hi, Can anyone tell me how to write a name in the jersey of a player using material?

sick sky
#

open the physical asset of the manny/quinn/yours and see if all the bodies have collision setup

copper lion
#

Just a question: is it better to use animations to simulate rotation on objects or moving etc than timelines?

maiden wadi
#

Not likely to be much difference between the two besides how you feel like they feel to control. You're still paying for scene component transform updates and whatnot.

Only real way to get a good performance boost on rotations is if you can WPO them in a shader. But you lose collisions and the like. But it's vastly faster for things like a pickup hovering up and down and rotating.

dark drum
maiden wadi
#

Some, but depending on the case you'll pay less for the animations because they're done in C++ and sometimes threaded.

#

More of an implementation sort of thing though. Chests are an example. It's easier to animate a chest opening from 0-1 and be able to use that fluidly with movie tracks and such too, or even make multiple pop open animations and randomize them. Where as with a timeline you kind of have to code that stuff in yourself manually in a not so user friendly way. But performance between the two likely won't be anything to consider unless you're planning on opening 100,000 chests at once.

dark drum
maiden wadi
#

IMO I can't come up with a good reason to use timeline animation over a normal animation in cases where they would actually be interchangable.

torpid acorn
#

Hello am a novice currently having trouble my lock on feature is toggle only im trying to change it to be hold down the r1 shoulder button for lock on but its instead turning its self of an on rapidly as its being held instead

Edit: just noticed this didn't have an end to the question I wanted to ask how would I How would i fix the issue I could provide blueprint details and a video if need

torpid acorn
last peak
#

This is like asking
My car makes weird sound how to fix?
And then leaving your car at home

dark drum
dark drum
torpid acorn
dark drum
# torpid acorn

As a quick skim, i think you just need to enable 'Is One Shot' on the hold trigger. This should mean the triggered pin on the event node will only fire once instead of every tick while held.

last peak
torpid acorn
#

in the event graph

last peak
torpid acorn
last peak
#

Well what is happening ?
You hold shift and it fires every .1 seconds it calls your toggle lock on checks if your locked on and then enables and disables it every .1 seconds

last peak
#

Hook your completed up to your toggle lock on as well and it should work

torpid acorn
vapid crown
#

Is this where I ask for help for Unreal Engine?

mental trellis
#

Every channel on here is a UE help channel, almost.

vapid crown
#

Oh, alright sweet

#

So I'm following along with this tutorial but testing my blueprint doesn't seem to have the same outcome it's supposed to (determining the closest object and drawing a debug sphere around said object). The first method seems to work fine, but the second one doesn't and gives me errors when I stop the playback. I'm gathering photos and a recording to show this right now.

#

so this is the first method that AskADev used in the video before the one above, which works just fine.

#

And here's my second method where all the distances are put into an array first, and then the minimum is found.

#

Then, here's my the event graph back in the Third Person BP

#

(the functions are also in the 3rd person BP)

#

So what I'm expecting is for 2 debug spheres to be drawn around the closest object and for it to update when there is a new closest object.

#

Instead this is what happens.

#

What am I doing wrong??

lofty rapids
vapid crown
lofty rapids
vapid crown
ashen night
#

If the Distances array is not a local function variable you need to clear it first

vapid crown
#

Ohh let me try that

formal vault
#

Hi! I need some help with creating my 0G character. I am experiencing a few issues when it comes to camera jitter and gimbal lock. I am using the UE5.6 First Person Template (Variant Arena Shooter)

  1. The gimbal lock happens when I don't have a weapon (can't look up and down) or if I do have a weapon and I am rolled aroundanywhere from 45 - 135 degrees left or right.
  2. When I move or fire a weapon, I experience jarring camera shaking
lusty delta
#

not sure, where to post this. my UE 5.5.3 is crashing pretty frequently when I testplay, giving me this error:
"LoginId:591f6aa44bfb388adbb8b3aa14910d29
EpicAccountId:8696becb758646aab206c3485781b11b

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000000000000a0

UnrealEditor_Engine
UnrealEditor_Renderer
UnrealEditor_RenderCore
UnrealEditor_Core
kernel32
ntdll"

It's really getting on my nerves. Any suggestions? I can also provide the log.

lofty rapids
formal vault
#

Idk quaternions

#

Can you do them in Blueprints

lofty rapids
#

"Quaternions use a 4-dimensional mathematical object to represent 3D orientation. The additional component ensures that each possible orientation is uniquely represented, and avoids the gimbal lock problem."

lofty rapids
lusty delta
lofty rapids
#

ya that should be fine with ram

#

are your drivers up to date ?

maiden wadi
#

And if they are, un-uptodate them by a few months. There's been some mentions that the latest drivers cause some fucky stuff with 5.5

#

I'm still on 572.83 NVidia. Was about to update when some people at work started having odd crashes in playtests we couldn't explain. And some people in other studios have mentioned the same, that there were some issues with the drivers at the time, this was ~2 weeks ago.

snow gust
#

Maybe you are trying to access array element that does not exist?

lusty delta
snow gust
#

I had the same problem

lusty delta
maiden wadi
snow gust
#

uh sorry, but you could have an null variable

lusty delta
#

here's a log, if someone wants to take a loog. the engine crashes with about every other playtest. 😐

#

there were a lot of warnings in there earlier that I'm using nanite on meshes with materials that are not nanite suitable, but it didn't help disabling it.

lusty delta
snow gust
#

add IsValid node

#

Or validated gets

maiden wadi
#

You did look at their post, right?

#

Like you see the callstack there, why are you telling them to go put an IsValid in engine code?

lofty rapids
#

thats an editor crash i bet it pops up and everything goes away

#

i don't think it has to do with the code, but the editor itself ?

maiden wadi
maiden wadi
#

UnrealEditor_Engine
UnrealEditor_Renderer
UnrealEditor_RenderCore
UnrealEditor_Core
kernel32
ntdll"```
lofty rapids
#

thats a fatality

lusty delta
#

"LoginId:591f6aa44bfb388adbb8b3aa14910d29
EpicAccountId:8696becb758646aab206c3485781b11b

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION 0x00000acc96880000

UnrealEditor_Renderer
UnrealEditor_Renderer
UnrealEditor_Renderer
UnrealEditor_RenderCore
UnrealEditor_RenderCore
UnrealEditor_RenderCore
UnrealEditor_RenderCore
UnrealEditor_Core
UnrealEditor_Core
UnrealEditor_Core
UnrealEditor_Core
UnrealEditor_Core
UnrealEditor_Core
UnrealEditor_Core
kernel32
ntdll"

maiden wadi
#

Off the wall question. Do you have any upscalers in the project? NVidia DLSS or AMD FSR for instance?

lusty delta
lusty delta
#

oh, btw, in rare cases I get this message: Fatal error:
Pure virtual function being called
0x00007ffdbd5859e4 VCRUNTIME140.dll!UnknownFunction []
0x00007ffd4b49e281 UnrealEditor-Renderer.dll!UnknownFunction []
0x00007ffd4b47da5c UnrealEditor-Renderer.dll!UnknownFunction []
0x00007ffd4b495ff2 UnrealEditor-Renderer.dll!UnknownFunction []
0x00007ffd88558fab UnrealEditor-RenderCore.dll!UnknownFunction []
0x00007ffd8853218c UnrealEditor-RenderCore.dll!UnknownFunction []
0x00007ffd884ee4a0 UnrealEditor-RenderCore.dll!UnknownFunction []
0x00007ffd8846c554 UnrealEditor-RenderCore.dll!UnknownFunction []
0x00007ffd6c43ee35 UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6c43eb6f UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6c4661ad UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6c42b0d6 UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6c637e23 UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6ca8c0bd UnrealEditor-Core.dll!UnknownFunction []
0x00007ffd6ca835df UnrealEditor-Core.dll!UnknownFunction []
0x00007ffdd60e7374 KERNEL32.DLL!UnknownFunction []

Crash in runnable thread Background Worker #3

maiden wadi
#

I was just about to suggest that it might be an async thing crashing. 😄

#

Your log cuts off with no errors or even shutdown code. Have only ever seen that when another thread crashes.

#

So.. Yeah. Lower rendering settings, try older drivers, turn off some other rendering settings.

lusty delta
willow gate
#

Good afternoon fellow devs. I'm developing a very simple dismemberment system but I'm having a weird collision issue. When my melee weapon overlaps the enemy skeletal mesh, it registers a collision (both the weapon mesh and the enemy meshes are ticked to overlap in the same channel) but the hit result on the overlap always returns "none" for Hit Bone Name.

lofty rapids
#

did you try the hit events instead of overlap ?

#

"Hit events, give information about the hit, including the bone name if a skeletal mesh was hit. "

willow gate
#

I'm a dumbass. I know why it's not working. I'm looking at the skeletal mesh overlap event not the weapon mesh overlap so of course there's no bone

lusty delta
#

something else I get a lot is these messages. but I guess this wont cause crashes?

vapid crown
#

I'm also not sure what clearing means

ashen night
#

By clearing I meant emptying the array of any elements.
If the variable is local it's initialized to default value when you call the function (ie. you get an empy array)

lofty rapids
#

if you cleared it before you looped and added, then it would start over

woven pond
#

Can any one help or point me in the direction of troubleshooting setting a var on an actor on the server via an input action.
Im casting to the actor in my player controller and using that reference to call an event on the actor.
Image
Im pretty sure I want to keep the actor owned by the server but ideally id like to set a reference to the player controller that clicked on it in it so it can be used for something else asking here as well as i have had responses here and not in the multiplayerr channel

vapid crown
lofty rapids
#

you can find out more by looking up scope and Garbage Collection

#

the variable is scoped to that function

#

if it's not local and your using from the actual actor inside the function thats an outer scope that stays the same, so if you change it after the function happens it's still different and accessible

#

i believe it's called a "side effect"

vapid crown
maiden wadi
# lusty delta something else I get a lot is these messages. but I guess this wont cause crashe...

It's impossible to say without a decent crash log or at least a callstack with symbols to see what line in which function it crashed on to have an idea what it was. All we know is you hit a nullpointer access somewhere in rendering code, which can happen for a lot of reasons. Drivers, faulty hardware, out of memory, could even be engine code based on what your map is rendering out. But there's no way to know for sure without more data.

lofty rapids
#

and even with more data these problems are notorious for being hard to figure out

tiny tundra
#

Collision issues revisited: Here, I have a sprite (billboard) with a collision sphere on it. This is so I can catch raycasts on the sprite in my game. The items these are attached to spawn in a small cloud - sadly, they are bouncing into one another with these collision settings and their movement is getting all fouled up. I can't ifnd any other settings that will be receptive to my raycasts however. Am I missing something, such that I can make these items ignore collision with each other and only react to my raycast?

worthy peak
#

so I'm trying to make a magic system for a vr game where by putting your hand in certain positions it does magic but I can't think of how I would implement this. All the contents in the unreal VR Template are all squished together so I can't just put a hitbox in there (at least with what I've tried that didn't work)

proud magnet
#

Can anyone give me some feedback on this issue? https://forums.unrealengine.com/t/checkpoint-name-not-carrying-over-through-saves/2550660
Basically, I want to have a CurrentCheckpoint variable in my save/load game functions so that I can switch on the checkpoint to load/unload specific things. When I spawn in I get 2 ticks where the CurrentCheckpoint isn't set, which I've heard is because I'm loading the level in my UsePlayerSave function (attached photo) which is destroying all the data, and then its teleporting me and setting the checkpoint. How can I load the level first, AND THEN load all the data associated with the level?

dawn gazelle
#

If you want to do something once the level loads, like moving the player to a specific checkpoint, then you need to store that somewhere like your save game, or in the game instance and on begin play read the data that you want and perform the actions needed.

maiden wadi
#

I would personally love to know how async loading could ever resolve this issue. But yeah there's a lot of misconceptions here on setting up the map post load.

formal vault
#

Hey... is there anyone that can please help me create a quaternion IA_MouseLook system? Any help will be appreciated. Thanks!

maiden wadi
formal vault
proud magnet
formal vault
maiden wadi
#

Not particularly.

dawn gazelle
# proud magnet Well thats exactly what I am doing. The screenshot shows a function inside of my...

It's not exactly what you're doing. You're opening a level, which causes everything to unload and any executions that are after "Open Level" won't execute - basically that whole function stops working the moment "Open Level" is called.

To do this appropriately, you'd still call "Open Level" at some point, but you have to use some other begin play, like on your game state or game mode, or even your level blueprint to then ask the game instance or save game for the data it needs to proceed with setting up whatever other details. These other begin plays happen after the level is loaded. You may even need to use the game mode's "Find player start location" function to read the data from the game instance so it can put the player in the appropriate spot etc.

formal vault
proud magnet
#

Trying to simplify this down, I need to load the level, then request the CurrentCheckpoint, then set things based on that.

dawn gazelle
# proud magnet Okay, that makes much more sense thank you. It was my understanding that Event I...

Init does happen before everything else, and if you are using that to execute this function, then it won't work as your player controller and pawn likely would not be spawned by the time the Init event is called.

There is an order to things, and that includes when you move into a new level, the game mode needs to load again, then it spawns a player controller again, and then a pawn for that player controller, etc.

proud magnet
#

this is the method im using in the GameInstance

dawn gazelle
#

It can, but it also depends on what happens first which can vary. Begin Play of the level blueprint may be too soon even. That's why I was starting to say you may need to override the "Find Player Start" in GameMode.

proud magnet
#

What would Find Player Start get me?

#

Would that not just, well, find the player start?

dawn gazelle
#

It allows you to use some logic to tell the game mode where to spawn the player.

#

By default it just picks a random player start location that is placed in the level.

#

You can override it to tell it to read your save game and use "Checkpoint 2" or whatever actor.

#

and if not, then use the first playerstart it finds.

proud magnet
#

So would it be smarter to transition this system to one that uses PlayerStarts instead of just tracking the vector when the collision happens?

dawn gazelle
#

You don't have to specifically use playerstarts, but it's one of the built in ways of handling player spawning. You should be overriding the built in logic so it fits to what you need rather than it doing its thing, and then you doing something else somewhere else at a point in time where it may not be appropriate.

valid juniper
#

I have an array of Json Object Structures. I'm adding item to the array one by one. When I look at the array preview, it look like each items are the same (whereas I do make seaprate struct ). But in reality if I check what's inside, the content is the right one.... Any idea what could go wrong ?
The problem is that when i try to serialize my array to json (API Communication), I got a json with all value repeated.. not expected.

dawn gazelle
# proud magnet So would it be smarter to transition this system to one that uses PlayerStarts i...

GameMode is what typically handles players joining into a game and restarting them. It has several overridable functions that allow you to customize how the GameMode should handle these scenarios. So here as an example, overriding "ChoosePlayerStart" would allow you to have the GameMode pick where a player should be spawned at - and you just feed it an actor reference. You don't have to use this, but the flow goes for a joining player...

PostLogin(PlayerController) -> HandleStartingNewPlayer(PlayerController) -> RestartPlayer(PlayerController) -> { RestartPlayerAtPlayerStart(Player, FindPlayerStart(Player)) } which then gets the default pawn class and spawns it, and makes the player controller control it.

#

There's some more functions that work in here too... Like FindPlayerStart which you may want to use to actually locate the actor in the level you want to use.

#

Which could be your checkpoint actor if there was one.

maiden wadi
#

Lol, this engine. I got bored and decided to check out that pitch gimbal lock. Neat shit. You can fix an issue that plagues people and causes them to go make quaternion systems for their camera stuff by commenting out some shit code in the camera manager. Love presumptuous ideas in coding.

dawn gazelle
#

Looks to be a good idea to use this since you can use tags with playerstarts apparently... So if you subclassed a PlayerStart for your checkpoint, it could simplify things.

proud magnet
dawn gazelle
#

Yes

proud magnet
# dawn gazelle Yes

Okay so I've set up something of a system, but I'm still facing the problem of the open level destroying all the data. How can I load the level based on what the SaveGame says without destroying the data?

dawn gazelle
worthy peak
#

trying to make a gesture based magic system for a VR game and I have a collision box parented to the camera with some basic logic (just trying to make the trigger currently) but it only fires when it fails (e.g. something that is not the player's hand touches it)

surreal peak
worthy peak
#

should be, but either way I've tested it with all three of the references that are seen there in the first screenshot

surreal peak
#

You might want to print the name of what your are overlapping. That is usually quite eye opening

worthy peak
#

how do I get the name of something? I didn't know that was a possibility lol

surreal peak
#

Most things will auto cast if you drag them onto a string pin

#

But for objects it's probably get display name

#

Only meant for debugging btw. I have seen people use it for gameplay.

worthy peak
#

thank you very much, I'll get that test going and see how it goes

surreal peak
#

Might need to check the logs afterwards or while playing. The on-screen messages in VR tend to be hard to read

worthy peak
#

so I tested it and it seems that it just doesn't recognise the right hand at all

#

it prints out other objects fine (even when being held) but it's not printing anything when I put either hand in

surreal peak
#

Might be a problem of your collision setup. Would be good to ensure that your hand mesh has collision and that the collision profiles of both are overlapping each other's object types etc

worthy peak
#

oooh I didn't even realise I could change the collision settings, I'll have a look at that rq

#

I've tried fiddling with the settings a bit for the hand but the collision box still ignores it (screenshot 1 is the collision settings for the hand, 2 is for the collision box)

Is it something else like the collision box being part of the VRPawn blueprint that's messing with it?

surreal peak
#

It could be that it's due to being part of the VR Pawn. I think I usually had the controllers as separate actors, spawned runtime in. But let's try the checkbox first.

#

Gotta walk the doggo now. Will check the channel later again.

worthy peak
#

unfortunately I turned on generate overlap events but it still won't register the hand. I'll try seeing if I can fiddle around with it a bit more and let you know how that goes. Hope you have fun walkin' the dog!

#

came across this forum post where someone had a similar problem and it was solved but I can't seem to find an 'initialize physics' option anywhere in my VRPawn and the Simulate Physics tickbox is greyed out

https://forums.unrealengine.com/t/how-to-use-box-collision-with-vr-hands-on-ue5/1208454/4

Epic Developer Community Forums

Hi there, I’m also having this issue. I’ve tried adding collision capsules to the VR Hands and checked the collision presets in the Details panel, but haven’t gotten anything to work. Did you find a way to fix this?

surreal peak
#

I haven't done VR in a while, so not sure.

worthy peak
#

ooh apparently the vr hands don't have a physics asset blushed Could that be the reason that it's having a fit?

#

I just ask since I also can't find an InitializePhysics in the hand component in the VRPawn or in the asset itself

surreal peak
#

Your HandComponent seems to just be a SkeletalMeshComponent then. That will not have any custom HandProperties.

#

It#s also questionable if the screenshot with the InitPhysics is from something custom.

worthy peak
#

ah I see yeah I am not too sure, I'll follow a tutorial to add physics to the hand and see if that can help remedy the issue

surreal peak
#

Just keep plugging away at it and come back if you run into specific issues. Takes a while but you usually only walk that path once. Next time you know how it works.

worthy peak
#

yep! Either way this is for a school project all about learning while making a game to I think it fits perfectly! There's no fun just knowing everything without experimenting

worthy peak
#

got it working!!! GESTURE BASED MAGIC!!! IT'S SO COOL!!!

#

only problem left is that it checks if any part of the player is touching it, not just the right hand but I wasn't able to find a fix for that since getting a reference to the right hand didn't work due to it looking for 'VRPawn_C_0.HandRight' rather than just 'HandRight'

limpid flicker
#

Hi all, what are the pros / cons of using Actor On Click vs. a trace channel from the mouse to select something in an RTS/ARPG top-down game?

lusty delta
#

it ends with the fatal error.

short ivy
#

How can you pause the gameplay only without affecting delays and Set timer by event/function nodes in widgets?

#

I've tried:

  • Set game paused
  • "slomo 0" command
  • "Pause" command
  • Set global time dilation
#

All of them also affected the nodes described

dark drum
short ivy
hybrid hare
#

Hi, i have this simple BP to open a level after an introductory sequence. I'd like to know if it's possible to add some kind of fading effect after the delay before the level open so transition if not so harsh (I'm coming from a sef lit pure white material and goind to a pure black)

dark drum
maiden wadi
# lusty delta Ah, maybe this is more like it?

A bit. Can you install symbols? In the Epic Games Launcher, find your Engine install, go to Options and check the Editor symbols for debugging. Should give a lot more info in those callstacks after that.

copper lion
hybrid hare
#

In this video I will talk about how you can change levels in unreal engine 5 with a fading effect using blueprints and widgetblueprints .

🟥🟥🟥🟥
If you're passionate about creating stunning environments, be sure to check out my Udemy course on Unreal Engine 5 + Blender Environment Design for Beginners. Learn how to design a beautiful ...

▶ Play video
#

Thanks @copper lion and @dark drum pattyn

dark drum
#

Not sure if there's a better channel for this but does anyone have any ideas why reimporting a static mesh would fail? If I was to import the FBX as a new mesh it imports fine.

maiden wadi
#

Does your output log have any info in it when you try the failed import?

dark drum
lusty delta
#

holy, why is editor symbols 38 GB 😄

maiden wadi
#

Oh, that's nothing.

#

My launcher engine with symbols is 73gb. My source install is 335gb.

copper lion
#

Guys i have a question, i implemented the crouch system with animations and everything works fine, but when i put my character mesh hidden in game the crouch doesnt work anymore, i dont want my character to be seen in game(its first person) , i want it to crouch even if its hidden in game, the animation to still be played

maiden wadi
lusty delta
#

what's also weird is that I can't bake lighting, also makes the engine crash. maybe tis is somehow connected. as someone suggested earlier I will try to set graphics drivers to earlier state.

maiden wadi
#

Unsure, but it might be what causes it.

copper lion
#

i cant find it

dark drum
maiden wadi
copper lion
#

it works

#

the camera is clipping through walls like crazy when crouched

lusty delta
# maiden wadi A bit. Can you install symbols? In the Epic Games Launcher, find your Engine ins...

this is after installing symbols. I guess, this is more detailed?
I suspect the crash has something to do with my particle systems.
the log contains this a lot:
"[2025.06.13-11.39.52:324][ 68]LogNiagara: NiagaraStaticMeshDataInterface used by CPU emitter and does not allow CPU access. System: NiagaraSystem /Game/FFC/Partikel/Systeme/Feuer_Explosion/NE_Feuer1.NE_Feuer1, Mesh: StaticMesh /Engine/EditorMeshes/ArcadeEditorSphere.ArcadeEditorSphere"

it might have something to do with my NS having the options to set a staic mesh to spawn the particles on, yet mostly I don't set one.

tiny wing
#

Hi there!
I have a system where I run on / off splitscreen whenever needed. And just found out it's not very clear for me how to add Widget Components, to be visible for both players. I'd realy love to avoid spawning them twice, as in some cases - there will be just one player, or 2 players but splitscreen would be turned off etc.

Any tips? Tried to set Owning Player for the widget, but tbh. I'm having issues with setting that up with blueprints.

lusty delta
#

baking/building? in a different very simple map works. so this might have to do with the meshes I got in the more complex one.

snow halo
#

Has anyone had a similar issue where sounds aren't playing in editor?

#
Epic Developer Community Forums

My sound works in the packaged game but nothing plays in editor. Even when I try to preview a sound in the content browser, when I click the play button nothing happens. I am using version 4.21 on Windows and even when I check the Windows volume mixer Unreal Engine does not show up in the list with the other apps I have open. I have made sure ...

#

the sounds are playing on other people's unreal editor

rough seal
#

so, i have alot of projects stored on an hdd that i need to re* format. I was just wondering how i can backupp all of my projects to my SSD

surreal peak
#

By copying them fwiw.

#

I would have those on a cloud server in a version control setup, but if you can't have that then yeah, copy?

faint creek
#

Noob question:
If I use only Blueprint I have to install Visual Studio, maybe also to compile , or compule faster,and package the game project?🤓

dark drum
faint creek
lofty rapids
lofty rapids
#

"However, integrating it with your Visual Studio installation during the initial setup is the best approach"

#

but you could also just install the build tools i think, but i never did that

#

but the web says you can do that and nenver have to use visual studio

#

just the build tools

lofty rapids
trim matrix
#

Is editing structs not allowed inside a function even if that struct is passed by reference?

paper gate
#

so kinda broad question here. Im updating the camera system for my game. Is it typically better to have the camera be an object outside of the player for maximum control? Or am I handicaping myself by keeping it stuck on a boom inside the player?

Rn im trying to just keep it following the player but also give it some gentle sway through a mix of camera lag and "look at" rotators but idk if maybe im overcomplicating it

spark steppe
#

in my experience both has pro's and con's and it's really hard to give a general advice

paper gate
spark steppe
#

i won't give you advice, because i'm not convinced enough to see all the pitfalls and what not

paper gate
#

fair enough

spark steppe
#

but what i can tell you, which would have helped me make saner decisions, is that you can set an component to absolute world space, so that it doesn't follow the actor

#

and you can control that separate for location/rotation

maiden wadi
#

Sways sound like a camera shake. It's also worth noting that there's a whole new camera suite in the engine now that some people have taken a shine too. I haven't looked at it yet though.

paper gate
spark steppe
#

which can avoid a lot of issues, like jitter introduced through physics, etc.

paper gate
maiden wadi
#

I meant Gameplay Cameras

paper gate
paper gate
maiden wadi
#

I don't know what they do though. Just seen people mentioning them a lot lately. Almost seemed like a more official version of what Lyra's camera system was doing, at a glance.

paper gate
#

I'll give it a look then, thx for the tips both you guys 👍

lunar ginkgo
#

some tips to do a dialog system or someone that can help me ? in that case text me in priv

marble tusk
paper gate
trim matrix
spark steppe
marble tusk
paper gate
#

or does it have some special name

lofty rapids
#

how did you get a reference to the struct ?

spark steppe
#

i don't recall the exact name nvm, SetAbsolute is the exact name 😄

paper gate
#

so if I set those to true its the equivilant of manually setting it to world location?

#

cool cool thanks

gentle urchin
snow halo
#

hi, i have a question for cable systems, whats the non-controversial accepted way of doing cable grappling systems?

#

I found a youtube tutorial where the attachment is made using the end of the cable rather than the start

#

and he uses Set World Location node to attach the start of the cable to line trace hit points, and so it looks like a batman/spiderman gapple mechanic

#

but what I found when this youtuber was using attach end, to his hand, i found that it looked much better and the rope actually looked like it had more proper rope simulation physics

#

so this little hack made it look so much better

#

im talking about this video specifically

#

he didnt explicitly show you everything any good about how he did it, he made a really bad tutorial and left his patreon link in the description so that you will get to buy his poorly made patreon subcribption service

maiden wadi
spark steppe
#

wait

#

so we could set them all to absolute, make a baseclass which overrides GetTransform() and return a made up relative transform there? we can't

tiny wing
plain inlet
#

Hi together, since hours i try to implement an ingame axis tool like the editor one (see image).

Honestly my biggest problem atm is to see the axis tool always event if it inside a object. Any tips or useful links which helps me?

celest trench
#

I'm trying to make an array of structs that are all modifiable. I am having a hard time figuring out how to set this up because the struct for any given Rule is unique to that Rule. So for the struct setup it looks like the second image. But when I do this, the struct cannot be modified, it just shows the reference struct type. Does anyone know how I could make the RuleConfig in my data be modifiable even though it would be a different struct for any Rule?

plain inlet
# lofty rapids https://www.youtube.com/watch?v=MvncQFfWDeM

Already tried the custom depth but the stencil part is new to me maybe I can color the different axis with help of the stencil value.
Because I have no glue how to I implement the post process material that the elements are not have a color, more have a translucent effect.

dawn gazelle
celest trench
#

That's the problem, it's a struct but it could be various different structs for the RuleConfig depending on what the selected Rule is.

leaden raven
#

how do i delete local players in order to create more? im using a game state to transfer data between level change (next round on the same map) but as my players are local (because its a local game) it wont spawn them back in.

im using the array that the local player controllers are stored in to remove them, which it does in fact register it as doing, but it doesnt seem to want to create them afterward. even if i destroy the actors it still doesnt work. It's probably something extremely simple that im just too blind to see

proud magnet
# dawn gazelle The data either needs to be stored in the game instance or in a save game. Afte...

Hey man, sorry to bother you again! I've been working on this system for a bit and I'm stumped again and could use some help. I reworked the system entirely to use the ChoosePlayerStart. The issue I'm facing is that it seems like the CurrentPlayerStart isn't being saved when I hit the checkpoint. I've found that if I set the CurrentPlayerStart to C1 or C2, it properly spawns me at the PlayerStart of the same name, but even though the CurrentPlayerStart is being set when hitting the checkpoint (based on the PrintString) it's not saving. Why might this be?

dawn gazelle
#

You're also never 'loading' current player save from the save game.

#

or saving to it from what I can tell from your video

proud magnet
#

And I'm not getting the 2 none ticks anymore cause it's spawning me at a PlayerStart rather than in the collider

dawn gazelle
#

Right, but it's just good form. Don't do anything after Open Level. Leave that as the last thing you do in any function or event.

proud magnet
#

Got it.

kind estuary
#

A thing that often confuses me. Is why use an event dispatcher instead of a simple direct call function. I often even lose track of what binded what, and on debugging its hard to tell where its going sometimes.
At the moment i have a functionaility that glows my unit when its selected. My friend told me to use an Event dispatcher, and bind it to the SelectUnit function. So everytime its selected it OnSelectUnit() -> GlowUnit(). Though why not just a damn function call -> GlowUnit()
Edit: I guess its because you can decouple it 🔌, right. that makes sesne

proud magnet
dawn gazelle
proud magnet
#

So the CurrentPlayerStart gets tested from the GameMode on play by comparing all the PlayerStartTags to the CurrentPlayerStart. And I only have 3 variables in my structure, one of them being the CurrentPlayerStart name.

dawn gazelle
#

But where are you populating "Current Player Start" with the value from the save?

proud magnet
#

I'm sorry I'm not fully understanding the question. What do you mean by populating?

#

Like where is the CurrentPlayerStart getting loaded from when I play?

#

Would that not be loaded in the structure on Init when it loads the data?

dawn gazelle
#

You have a variable called "Current Player Start". You are loading your save game into a variable named "Saved Data". Where are you pulling out the tag from the "Saved Data" variable and calling a set of "Current Player Start" with that tag so your functions can use the saved value.

proud magnet
#

So sorry for being stupid here lol, I'm still fresh on this whole idea. If I'm understanding things correctly, wouldn't this be where the CurrentPlayerStart is being set? Inside the GameInstance?

faint creek
#

I'm using UE 5.3.2

proud magnet
#

Or would it be here in the first person character? Should I be using this part of the blueprint? I wasn't sure whether to put the UsePlayerSave function in the GI or the FPC.

fervent jolt
#

idk, #cpp might be able to help better

fervent jolt
#

i hope you find what you seek

proud magnet
#

I tried copying these blueprints into the GI but it ended up screwing with things.

dawn gazelle
proud magnet
#

How would I get the PlayerSave variable out and into the GI? Should I cast to the SaveGame where the PlayerSave variable is?

dawn gazelle
#

You have a reference to the save game here in your game instance already.

#

Immediately after both of these SETs of Saved Data, you should then get the PlayerSave structure out, get the tag for the checkpoint out of it, and store the value in "Current Player Start"

proud magnet
#

Doesn't seem to be doing anything... I feel like there's something wrong with it saving the variable rather than loading it.

dawn gazelle
#

You have to do if after both.

proud magnet
#

But then again, it's obviously setting the CurrentPlayerStart correctly, just not loading it.

#

I didn't think doing it for both mattered since I'm not doing any Async loading

dawn gazelle
#

You have to do things in order.

#

If you end up calling the bottom version it won't populate the variable with the value from the save game.

#

As it doesn't end up reading the save game to then populate the variable

proud magnet
#

Did this and it didn't change anything.

dawn gazelle
#

Connect both the execution paths at the end there to a print string node and print the Current PLayer Start value.

#

See what it says... If it says the tag as you expect it, then it's finally loading it... If not, then you're probably not saving it right

proud magnet
#

Yep, it's printing None when I load in.

#

So that tells me it's not saving right?

dawn gazelle
#

So now, how are you actually populating the save game object before saving it.

proud magnet
#

Well this is the save system. It requests SavePlayer when I collide with the checkpoint.

dawn gazelle
#

What calls "Save Player"?

#

I found it...

#

So what's in GetPlayerSave, and what here actually updates the save game data that you're then passing to "Save Player"?

#

the "New Player Start" only sets the "Current Player Start" variable in the Game Instance.

proud magnet
#

Oh my god I think I finally got it to work. The issue was that I was getting the player save AND THEN setting the CurrentPlayerStart

#

Thank you SO MUCH for all the help, I'm certainly putting you in my game if you're okay with that lol

dawn gazelle
#

Good stuff. And sure go right ahead XD

Also, I'd say save your sanity here - you have 3 functions that all are in the game instance. "New Player Start" should likely be the only one you want to call, and then have that "New Player Start" call to "GetPlayerSave" and then call "Save Player".

proud magnet
#

That makes perfect sense. God I can't thank you enough I've been struggling with this for DAYS lol. Tysm man

languid mantle
#

Do these not work in editor?
Starting the game the event is executed, but calling from the details panel in editor it's not.
the function runs fine

atomic hollow
#

Alert
Now i founded that unreal have bug since it was developed in 90’s in its own normalize node with tolerance for blueprint. The tolerance value we pass in blueprint does not affect anything. i think the node have its own tolerance to 0.01 and this is not good value according to unreal cm unit system. So if you change the tolerance it will not work.
And this is the node that is used every where in game dev.
So i think we will need to write our own small code for this in c++.

#

Or create this type of thing in blueprint function library

frail oar
atomic hollow
frail oar
#

this is the C++ called by that blueprint looks like the tolerance is used correctly. what test did you do that showed incorrect behavior?

atomic hollow
#

you can do this simple test as i wrote upper.

frail oar
mental trellis
#

I assume he's putting in a value of, say, 0.001 and using a tolerance even smaller, like 0.0001.

atomic hollow
mental trellis
#

And it's failing because, despite the given tolerance being 0.0001, the default is 0.01 and that's more than the given value of 0.001.

#

(not that I'm agreeing with the outcome)

frail oar
#

sorry i don't follow any of that. he's using .001 for the tolerance? or for the vector values

atomic hollow
mental trellis
atomic hollow
frail oar
#

if you think it should compare the length and not the square length then rather than cross posting on this discord you should open a bug or ticket with epic

mental trellis
#

It compares the length squared? I suppose that makes sense.

frail oar
#

yes, see my screenshot

atomic hollow
mental trellis
#

Isn't the point that it's not doing the sqrt of a zero-length vector?

#

Or near to.

#

Save some cycles.

frail oar
#

no not to avoid the square root but the division that comes after

#

and because they use FMath::InvSqrt for perf reasons the two are in one operation

#

so they compare the tolerance before they do that

atomic hollow