#blueprint
402296 messages Β· Page 819 of 403
My particles refuse to die, so they'll just stick around π
If you were to capture the current velocity aswell you could have it atleast appear to be moving like the player to some degree ^^
Not sure about that but.. its something π
well it'll make everything alot easier for me,,,,,, so that's a benefit,,,, thank you so much
oh yes, this worked out. thank you!
apologies, but I'm still stuck on this problem #blueprint message
i would greatly appreciate any input, but it is late
Hello guys , why Vector Normalization works wierd . Here is my code . I got 2 (A , B) cubes on the map . and i want to get a normilzed vector from A to B . but normalize function giving me normalized vector from World Origin to B . Why ?
I bet the variable is null
not initialized
or set to the other object
and if not,
the normalized vector is still of length 1, so if you print its "location" it'll be at some 0 vector with lenght of 1
If you want the normalized vector relative to the A location you need A.Location + NormalizedVector(BLoc - ALoc) i believe
oookey i tried out and it worked . Thanks very much !!!!!
np
Hi guys I am new to unreal i am making a mobile game but I don't know how to make a button which can trigger an attack animation of the character. If you know please help me.
That's like 4 questions in one. Start with the first step. Add a button to the screen and have it do literally anything when pressed. Google UMG Button for a starting point.
You choose but the engine calls Z up so I'd go with it.
i am having trouble reseting my level, whenever it resets i lose control over my player and my ui does not reset . i have used the set input gamemode node after resting but i still cant control my player.
you need to add functionality to your actors OnReset event if you're using Reset Level, have you tried using Restart Game instead?
how do i add the functionality for the reset level node and i am not able to find restart game node in ue5 i can only find restart player node
well... I'm not sure about ue5 but in 4.27 you can do this
and if that's not available in ue5, on your controller class you can override the Event OnReset function
alright thanks man , i will try it out and let you know
Hello
I did create a Camera in a sequencer with some transformation/rotation
when I hit play, I would like to play my sequence from the camera
how can I easely do that ?
The project is some sequence I would like to play hitting keys
Hello,
I have a problem with launch velocity that seems to not work properly and I don't know what I'm missing.
Thing is that i have a char which bounces more or less based on Z axis. And I'm using the force on Z axis as Launch Velocity, but as you can see in this video ) https://streamable.com/wzmuee ) it doesn't work properly
Any suggestions?
Thank you very much β€οΈ
Hello, general question about tick really, how do you avoid it in situations where you need perpetual motion? Say a speed boat that you want to go forward based on of a lever that goes from 0 - 10 and the player sets it to 7 so there's no continual event from the play like there would be in a driving game where forward means go
you dont avoid it in that case
That's the conclusion I came to but I wanted to check and see if there were any other thoughts / ideas
What needs to be done on tick needs to be done on tick
not much one can do about it
Axis input is still tick etc etc
Cheers @gentle urchin
Hi all, sorry for the dumb question:
I'd like to attach the highlighted component to 2 different flying pawn BP. If I add the component to both of them this creates some conflicts and the error Accessed None occurs. If I directly add the component to only one BP everything works properly. So my question is: is there the possibility to remove the component via BP node? For instance if I spawn one drone then remove the component from the other one. Thank you in advance
how would i break a data table to give me all the value I have inputted in it
Get data table row names node
I already called it
Then what's the problem
Oh break
Then call for each loop and get data table row @stray moat
Get all row names -> foreachloop -> get data table row
Good Day, I'm making a meditation system, but I'm not sure how I can make it so that when the player is meditating he can not move, all solutions I found simply disables the whole keyboard, and this is not something I want, after all I just want him not to be able to walk
Yes that's what I do
If you're using the standard character you probably just want to set the CharacterMovementComponent Movement Mode to custom. There's no predefined behaviour for that so the character will lock up. When you are done meditating you can set movement mode back to walk
Actually there is, I just found out, reading in a forum
anyone know how can i play audio when my character moves? (footstep sounds)
comming back with the issue still present, why does those vectors are "same" though they are world, not local
Wha?
i'm picking up world location for an arrow thats in a bow
and it spawns new arrow on it
not the best visibility, but you can see 3 arrows spawned in the character having wrong z axis. as they should change x, not z
Is this arrow, part of your character blueprint?
Looks like you are just getting the wrong component location really
probably shouldn't be root components
Character => Bow => Arrow
or your BowArrowTest Root Component is offset compared to the Arrow Root Component
should be just Arrow > GetWorldLocation then
probably that is the issue, in character bp, unreal sets those by default for no reason (i assume)
it's not for no reason
those are relative to the parent
but yes it's way easier if you have those all at 0
i've checked all offsets yesterday, there's none π¦
It's not going to spawn in a wrong position if there's no offset π
having any of these values not at 0 (scale 1) basically means you have offsets
i've tried to adjust offsets yesterday, so this is what i get having 0 on every
I suppose your arrow is attached to something on the bow?
Maybe you can just get the position/rotation of what it is attached to
yep, thats socket/component in bow
yeah so try using the socket position
still the same result actually
bow socket = 0 0 0
hand socket = 0 0 0
its like character have wrong x rotation offset
Hey, im making this game and it has avatars, banners and avatar frames. How would i go about saving and loading the assets when the player login's so that i dont have to call the server to get the asset?
Can you show the viewport of the arrow BP @twilit gull
I have a suspicion
But it might be wrong
And have the arrow mesh selected for the details panel please
the original arrow moves along the axis on the bow
and when i take its world location - it is on the other vector
Can you show the "arrow" reference? What is it? Is it some socket ?
If not, wouldnt it make sense to have it as a socket ?
arrow is just an actor created from arrowbp on screenshot above
Im trying to reload the splines in the world. i changed them to behave a little different. is there a way to do this without recreating them?
o.O
never mind fixed by pressing random things
show me the character hierarchy and viewport...
fun fact:
- socket 0 0 0
- socket 90 0 0
is there a version of this that works with projectile movment component that has max speed set?
Deselecting an actor will update the spline in my experience
arrow
The issue was that i had a variable set to public. so the code worked as it should've but the way it was placed the spline was there it just didn't allow for the correct object to spawn.
bow
yeah, i'll do that once this arrow issue is fixed π
Lastly, the Character viewport π
/setup
I see you have an arrowsocket
I'd suggest that is used for the location of the spawned arrow
same location π¦
I cant see the "Arrow" component
named Arrow..
unless
its the arrow component (arrow) ? xD
You want them to spawn at the same location each time, correct?
yep
so if its spawned, whats up with the new spawn?
Or is this just ment as a visual... helper ?
Confusing setup, I'll admit.
The Bow is attatched to char. Bow has arrow attatched. But a new arrow is spawned from bow in the place of the attatched arrow?
initialy i wanted to detach that original arrow and use is as a projectile
but detach gives the same issue
the issue of the wrong location?
yes
If you print the location of the bow socket does it ever change?
it not the location where arrow was in the bow, its somewhere else
Sounds correct
thats x-axis
relative forward axis , yes
Hi guys, i've a problem and i cannot figure it out why it doesnt pass the second check of ==, any tips or better method to do this stuff?
sure you dont want "And" ?
i will try it again but it didnt work aswell
nop also with and it doesnt work
not sure about the checks either
is overlapping actor,
compared to socket2free?
confusing check
red arrow, blue arrow socket
green is arrow attached to bow
yellow is in the world
released in the same place
ugh Multiplayer
It just checking two bools are both true then checking that was true against a third bool. Id print the results of each bool in the chain to make sure they are all true
they sort of couldnt be all true, otherwise it would succeed x)
but yes, its a good starting place.
figure out which one is false.
I have an outline material and want to add a fresnel effect to it. How can I solve this error ```[SM5] (Node Multiply) Arithmetic between types float4 and float3 are undefined
dont multiply float4 and float3
ok i was just dumb, socket 2 was set on false
either mask out or append if you know what's going on and its intentional
Tried vector append but it's all black then
float3 already has 3 numbers,
Still just a beginner and only know partially what I'm doing π
Append a one to the vec3
Just reading FResnel is way out of my skillscope with materials π
Ben cloward has great beginning series for how materials work btw
Heh, same here π
Is there a merge for uasset like there's diff in Unreal?
how would you merge a binary file?
like diff but I'd bring selective changes in current version
The error is a giveaway tho! It doesnt know how to handle float3 (0.f, 0.f, 0.f) multiplied by float4 (0.f, 0.f, 0.f, 0.f)
so you'd pick out individual 1s and 0s to replace?
Not really, there's diff for blueprints, I'm talking about that
ok, rephrase, merge for blueprints
might not be possible
I added the attack button it was working but other animations weren't working when I was pressing the buttons.
@viscid python where is the error at. Im on my phone and it's not immediately apparent by looking at it
Oh yes, sorry, the error is here:
I did, couldn't find anything in that line, I can diff b/w two versions, or even two uassets, but not merge. I copy/paste from one window where possible
At the multiply
That worked, but
then... that's probably the functionality available?
the whole scene gets dark now π
then appending is the way to go
^
I need to rethink how I'm adding the fresnel to this outline material, I thing π€ It's working with the whole scene I guess.
And how do I do that?
"Append"
just append to the fresnel output
not sure if you need to append it pre or post the float3
try it out i guess ?
Well I was hoping if there's some kind of plugin or something that'd give merge facility
append a 1, so you dont change anything π
^
plugins aren't going to be proprietary though. so you'll have to look on your own
Well it compiled but the whole scene is in the fresnel colour now π I may have to rethink this whole material.
xD sounds like it yes
Maybe come back to it when you have a better understanding of the fundamentals. It doesn't look too far off the mark for an outline material
in 4.2X, is there anything one must do to activate automatic instancing of meshes? Say for a foliage actor for example..
didnt seem to have the same performance as an ISM ..
Anyone know why this (or at least I think it's this) isn't working?
When I crouch, the animation doesn't play
But when I enable is crouching on the preview
It plays
In my characters c++ file
I set the variable to be available everywhere, including anim bps
so after I compiled the code, the variable was just there in anim bp
Like this?
That event looks wrong
Well this is contained in my state machine
Ah
This is my whole anim bp event graph
Any values you want to use in your state machine or animgraph, you should be setting the value here for.... So that boolean you have for "Is Crouching", you want to populate it with the "Is Crouching" variable from your MainCharacter.
If you directly access the value from the character in the state machine or animgraph, then the animation ends up being on the game thread which kinda bungs up performance.
How could I do that?
You have a reference to your character there already I believe? Drag off from it and type "get iscrouching" - that's your reference - then you'd create a "set is crouching" node for the variable that exists on your animBP - then just feed in the IsCrouching from the Character into That.
Yeah
Such as this?
Ah okay
So, how could I reference my c++ variable in the anim bp?
Your BP character should be inherinting from your C++ class or you should be casting to the C++ class directly.
Then off the animBP update event you need to get the character's iscrouching bool and set the local animBP iscrouching bool to match it.
Then in the state machine you just use the local iscrouching to determine if you should transition
Yeah my character bp has the variable
it's not in my anim bp tho
You gotta make one
Yeah it does^
Hi all,
I'm experiencing some very odd behaviour between two functions and I can't for the life of me see what's going wrong...
In the first function, I generate a Vector based on a point selected at random within a volume. The only thing I alter here is the Z axis value, setting it to the top of the spawn volume.
The value returned from this function goes directly into a second function (e.g. its the very next node that uses it), the value that comes in is always different to the value that left the first function. But never by very much, X and Y values seem to be vary between about 5 and 50 units, but it does seem to be entirely random. But I have nothing that alters these values between their uses. I do a PRINT just before it leaves the first function, and PRINT again when it comes into the second - the values are different?!
I appreciate how ridiculous this sounds/reads, surely there's something that must be changing it, but I cannot see anything for the life of me doing so.. anyone have any thoughts?
I should add, I'm printing the value of the transform before the object is spawned, so I don't think its related to any of the collision override options for the spawning actor etc..
Update....
Oh gawwwdd..... its because the PRINT node has an execution pin isn't it... I think I've experienced this before... e.g. the PRINT nodes calls all the nodes link to it and generates a random position... and then the RETURN node doe sthe same... the two positions are different...
Anyone wanna confirm my madness so I can stop sticking pins in my eyes..
Sight unseen. Probably..
Easy to check tho..
Promote the output from the first function to a variable. Then print the variable and use the variable to feed into the second function
Next problem... which was the source of the first problem!
I have a volume (spawn volume) as a component in my blueprint... but it doesn't rotate when I rotate the main actor... imagine a 3D rectangular shape, then rotate it 90 degress - its look ok in the scene view, but when I run the game, the enemies spawn based on the volumes original position, not the rotate one?!
I have properties which the designer can adjust for the height, width, length, using the construction script to set thr box extents etc.
If the BP actor is rotated though, the spawn volume "appears" to rotate with it, but if I turn on the debug lines for rayrracing when spawning, you can see them all appearing in the original, non rotate shape etc.
I have tried setting relative rotation, setting salute rotation, none of that seemed to make a difference?
Im doing the same, but succesfully rotating the box traces
Ooooh... would you share your wizardry? :)
c++ wizardy , does that matter?
Damn... a little bit, I'm not overly familiar with c++ and haven't used it a lot with Unreal at all...
...are there no BP nodes I can use?
Im basicly just rotating the vector limits so to speak
Hmmm.. I'm not good with math either! π«
I don't understand why it "looks" correct in the scene though, that's kinda weird..
Something along the lines of this
i agree, that does sound a bit weird
but done in construction script you say ?
tried doing it on beginplay instead?
Yeah...
Think I didn't it in the construction script so they would see the volume size change as they altered the variables for the height, length, width etc.. e.g. redrawn on the fly..
Either that rotate node, would I then just feed in the rotation of the default scene component etc?
I'll give it a try when I get back in, currently sat in a parked car on my mobile.. thank you for the pointers, may well be back in an hour or so...
Thank you, that's very kind.
if you want me to look further into it , that is
Thank you, I probably will!
Why is the garbage collector not freeing up memory from a material instance that is set to null and dereferenced? Here I remove the material, set it to null and force collect garbage but no memory is being freed up.
This is how I initially load the MI
Hey there! Recently switched from Unity to Unreal. Fairly new to everything coding based etc.
I'm trying to make a simple, yet effective combat system. I've been following a few guides and tutorials on youtube, however it doesnt seem to work.
Does anyone have a good guide/tutorial, or time to teach a rookie?
Best regards,
rookie
What kind of combat? hack and slash?
can i get someone's help with compiling a plugin for ue5, or is this the wrong channel?
Unless someone told you, each "pin" from the random function will generate a new number. Always plug random numbers directly into variables and then access them that way
Basically. Lights, Heavy attack. Eventually a few spells.
Thanks - this was definitely that issue... this is the second time I've done this since using Unreal, a couple of years apart too! Was only when I was writing out the problem to someone else I was like - hold on a moment, this is familiar... and then it struck me... thanks again π
Yeah it's a lot harder to catch it in visual scripting compared to normal coding
Its been one of the biggest challenges I've faced to be honest... not a big fan of "nodes"... came from a .net background, so more familiar with just writing code, but at the same time not familiar enough (or at least dont feel I am) with C++, and especially the decorators Unreal uses for everything to go "pure" yet π
You shouldn't go pure C++ anyway, and breakpoints/print strings will always find issues in BP pretty quickly
Breakpoints and print string exist in C++ too you know
Yeah
The pure nodes running multiple times is definitely a bit of a BP gotcha
especially with randoms :P
I use C++
But once you know that behavior then you remember to look for it if you have erratic behavior somewhere
If you are already familiar with programming I don't think it would take too long, I've basically learnt C++ using unreal. I had extremely limited knowledge when I started out. All things math related will be so much cleaner in C++
It's just a rule you gotta remember
metahuman is working great , but unlike default 3rd person char , it can't look up or down, does that require additional adjustments or did I use wrong settings somewhere
So i have two things that need to run off the βEvent BeginPlayβ node. How do i run a wire down there?
Someone that can help with how to properly unload textures from memory? I'm spawning a child BP that loads a texture from a soft object reference array, and setting it to a mesh, then at one point I destroy the child and even set the reference to the child to null and call collect garbage but texture still remains in memory
or move the create widget after the Set var
I'm spawning an actor, printing the display name and then destroying the actor. This is done on command and each time the display name number increases every time. The actor being spawned is for the purpose of detecting corners to grab onto which could potentially happen a lot so I'm concerned that this number could get too large. Is there any way to clear references made to destroyed actors? I am not storing an array and printing from that, this is just the display name print of each actor as it is spawned.
I am probably better off spawning the actors and just moving them to where they need to be, but just curious about making spawning work efficiently.
Thanks iβll try that.
that happens afaik, you should not use displayName to reliably store data about actors though
I don't actually need a reference to the display name for what I'm doing, I just quickly rigged it together and had a debug print to make sure it was spawning correctly.
So if I don't print the name of the spawned actor, there isn't a reference being saved each time?
(Or if I don't store the display name in a variable or anything)
i dont believe so, Unreal just increments the number so nothing matches in name - maybe it will go back to 0 or 1 or whatever when no others exist in play or gc, have never tested the idea
heyo. I have a trap blueprint that causes a good old fashioned rockfall - is there a best practice for falling rock damage?
Well I just stuck a flip flop in front of the print node and made sure no two actors were spawned at the same time and the increments were still the same - so it does seem to be storing a record of the spawned actor even when there is no print or check for the display name in any way
when you spawn something, it gets a name, which is usually it's class name and a number - if there is more than one in play it gives it a number based on the last one of the same class and number. So you could have MyClass07 and it makes MyClass08 or possibly MyClass01 if the previous spawned actors 01-06 have been wiped. I'm not sure what you're confused about here.
this happens regardless of printing anything - you'll see the spawned actors in the outliner
I did one through a fairly length course for C++ recently, and I was pleasantly surprised at how similar it is to C#, once you get used to all the -> and <- stuff... personally preferred the kinda dot notation but you cant have everything. The only downside with the course was that it was related to Unreal Engine, so thats the next gap to plug, working out all the decorators necessary to make it actually work. Have only done a couple of minor things really, extended a UMG text box and stuff like that.. not a full on project... that would probably best for me to learn from.
So if I don't print the name of the spawned actor, there isn't a reference being saved each time?
i dont believe so
I think this is where the confusion came from. But yeah that was my original question, so just to be sure - a name will always be assigned to a spawned actor? That was my assumption, is there any way to clear these references? It is incrementing with each spawn regardless if the previously spawned actor has been destroyed or not.
right - everything in a computer needs a unique name in case in needs to be referenced (they also have UUIDs but those are harder to work with for obvious reasons) - duplicates would only cause confusion for us and the computer
the object gets named when created procedurally or placed in level. I suppose there is a way to clear the references or whatever we are calling this spawned actor. But for the purposes of not having a name with a bunch of numbers at the end isn't that big a deal.
why when i change something in the animation, like rotate, it doesn't update in the game?
more info needed - also #animation
ok
has anyone here worked with drag and drop. what I am trying to figure out is how this Item value is set.
well its set if item quality is not 0
ok, so what you mean is when I drag it out of 1 inventory. It will know what item it's draging
ye try that π
π
anyone have any ideas on how to make a light in an actor blueprint fade in and out?.
Almost like a flickering light but not so off and on, one that also has smooth transition to both.
timeline
How can I force a destructable mesh to fracture in blueprints?
today I heard that one MUST make an empty class with vars, dispatches, etc. and then inherit from that to override and implement the logic (we were talking about weapons implementation). Or else GC will p00p and whatever other nonsense
Doom 3, for example, has idWeapon as base class, which has all the generic functionality for all weapons and then children classed that implement specific weapons, inherit from the base class
so, is it nonsense, to have base class empty in UE4 ?
Well - it depends.
Personally, I probably wouldn't.
Having a base weapon class that has functionality that all weapons will share is one of the most common use cases of inheritance and OOP.
right
and that's why I am puzzled why would anyone make base class empty, then make sub-base class with generic functionality and then make specific child classed to inherit from that sub-base class
If they don't have any variables or functions to override that base class - yeah, kind of pointless.
even if they do, why not to make it proper base class with all generic functionality ?
why have vars in an empty base class and the logic in the child class AND then have child class of the child class for specifics ?
You can cast to the empty class to avoid loading the specific class
If there are vars in the base class, the base class is not empty.
it has no logic, so I call it empty π
what's the benefit ?
And this is why people interpret important distinctions differently, causing a break in communication.
alright, but still, what's the benefit ?
If you cast to a class, you will load the whole blueprint
In BPs, when you cast to a class, it has to load that entire class.
So if you have any meshes for example, it will load all meshes
The heavier the BP, the worse it is.
Even if the cast would fail for example
So if you have a collision box and check if an overlapped actor is of that weapon class, it will load all meshes in that class every time an actor overlaps that collision box
If you have an empty parent class
you can just cast to that class for basically no cost
what if there are no meshes, just pure BP code in the parent class ?
If the class is always loaded, it doesnt really matter though
I believe there is still some cost, but not as much
You are still loading it into memory
I made a macro that is basically a Float for loop with a delay. When I'm using the delay i've got the input node for "delay seconds", set to 0.005.
This is an unbelievably short amount of time, is this inefficient / hurtful to performance by doing a for loop delay like this?
ok, didn't know that, (still pretty new), thanks for the heads up
"relative" being a key word
if this is a loop you run occasionally, and its not particularly big it's probably no problem
anyone wanna get into a chat with me, noob needed help with blueprints..
Just ask your question and if someone can/has the time to answer it, they most likely will. Going into a private talk is typically not something people care to do.
I don't think your Item value has anything to do with Drag and Drop. All a Drag and Drop is, is a simple UObject created and sent to another widget in the Dropped call. I personally don't even bother making my own DragDrop Operation, I just pass my Widget as the payload, and use values from it directly.
Same
After i figured out what payload was,
its perfect as it is π
atleast for my uses
Yeah. I'm sure there'll be a use for a custom operation sometime, but for now it works fine. π Come to think of it.. Kinda want to make a new inventory system to mess around with that niagara plugin. Sparkly screen space emitters leaving streaks on screen while moving an object between inventories.
Sounds pretty fancy!
How can i get the intersection point of 2 vectors (each vector get from vector - vector (coordinates of points) )?
intersection point ?
Yes. The intersection of AD and CB vectors is the I point.
@maiden wadi Thank you for the info, it's just this video I was watching to get a inventory setup was 1 I watched months ago. I never could understand it. So I took what I had and did what I could. Your idea sounds good. That's nothing that I have done before.
Yep, i know the math behind it and i already started to write it down, but i hoped there is some node in UE, so i dont need to solve equations on paper with variables and after that making it in the UE
So this is suppose to be an elevator that starts when you get on it, then keeps going up and down until you jump off. When you jump of it is suppose to get back to the starting position. It kinda works, but the speed that it is going back is to fast and I dont really know how or where to change it.. anyone got any hints?
Change the length of your timeline that you use to move it back to the starting position.
oh shit, how simple.. thanks
3rd day with unreal.. feeling more and more stupid haha
other than that, does the blueprints make sense?
i think instead of 2 timeline u can use only 1 and from the end overlap simply connect to the Reverse of the first. Not tested tho, but its should work.
Other advice. At overlaps from the Other actor outputs should cast to player to always react only for the player. In the simple fps/tps template there are no other actors, but when u create a lot of other actors, ai-s, u want to to work only with the character.
like cast to firsp person character you mean?
yes
I just get nervous that a number is ticking up without constraints! When I implement it - to start with anyway - it will be on tick with 4 of these actors spawning, raycasting and instantly destroying themselves. So the numbers will get pretty massive pretty quickly!
I assume when loading a new map the engine just dumps these references anyway so there must be a way to clear them at runtime. But it's probably better I have the actors spawned and moved into place when needed (or just take it all off tick).
Then again I'm probably worrying too much.
The top half should be wherever you're handling your ability.
The bottom half should probably be in your set percent - but that function needs to be run continually (like a UI binding, or running on tick)
Also, in its current state of my example, the value would go from 0 to 1. If you want the inverse so it goes from 1 to 0, you do 1 minus the output
That's output - 1. You want 1 - output.
Quick question:
Say there is a door that the user can interact with by pressing βEβ, why do we need to enable input for Player controller when he gets in proximity of the door? I didnβt quite get what that does
You dont?
Is that in the blueprint for the door?
Yes
That's a hacky way to get around using a trace and an interface
In that case the enable input is because you are not directly possessing the door as a player character or pawn
Wut
In order for that blueprint to read any input from the player controller, you have to enable it.
Its better to create an interface for interacting
So basically only player characters can receive input?
That way you can interact from the player BP and different objects can respond differently
If instead you had the door bp communicate back to the player, a bool or something to say the door can be opened, then you would not have to enable input
Interface? Like a public method?
Not like that's a good way of doing it, but just as an example
Blueprint interface
Possessed pawns also receive input without needing to enable it first
Watch this https://youtu.be/EM_HYqQdToE
Announce Post: https://forums.unrealengine.com/showthread.php?101051
This Training Stream takes a look at Blueprint Communication. We find that Unreal Developers of all levels can sometimes struggle through the concepts behind moving data between objects. So in this video we'll take a look at the different ways to make Blueprints talk to one an...
Thank you
that ones a classic
Np
not sure this is the right area for question, but anyway, play from here isn't working, even though I have no player start anywhere, where do I fix that ? ;0-0
4.26
When you press E, the game checks whether or not Is Overlapping is true and if it is, it spawns an ai. For some reason if e is pressed once, is overlapping is set to false. Any idea why?
Ah that happens to be just the next chapter in the tutorial Iβm following
Didnβt notice it
Don't run the code that starts the timer unless you want the timer to start.
where is the code that runs when E is pressed.
Correct.
You have a boolean set up already for if it is on cooldown. If it's on cooldown, don't start the timer again.
Branch
In your string encoder map, the first key is "a" not "aaa"
you are looking for "aaa"
oh thanks for pointing me for right direction
Whether you press the button or release it, you end up proceeding down the execution path
Your solution is a bit overkill also.
it does not need to be a map
it could simply be an array.
@trim matrix I did this like half a year ago, I actually made functions that deal with that
and I literally forgot how find key works since then, and expected it to behave like my custom function I used
I see
You correct your logic flow. I don't know what you're trying to do here, or what your intentions are. You have a branch for the "pressed" execution flow, but then when you release the button, you are still proceeding with the logic.
Is there only one actor that derives from the "spawn" class in your world.
Is there two Spawns in your world?
Like points where the ai would spawn?
yes
if so no
Is the found spawn actor valid?
How do I check that?
GetActorOfClass -> ReturnValue -> IsValid -> PrintString
If it was invalid, there would also be a play error when you press E
Oh, theres no error
What would make it invalid?
Then if there is only one spawn actor in your world, and the found spawn actor is valid, the IsOverlapping value is set to false on the Spawn actor.
It would be invalid if the spawn actor was not placed down.
So the issue is not that the IsOverlapping value is being set to false when you press E
the issue is that the IsOverlapping value is just false anyways.
There could be a couple reasons why.
First, this game isnt multiplayer correct?
Just want to clarify that the spawn actor is not the same as the overlapping actor
Nope single player
yea. Not the same.
What actor presses E btw?
not super important but I am interested.
Player's actor
Yes
so I was following along with a video to try and make my door become a wall when the player goes through it and activates the box collision. here the link to see the code at the end.
but the issue is when i go through it and trigger the collision the wall snaps to the door instead so unless the door is closed itβs not going to snap to the wall. Anyone know whatβs the problem?
Hey guys, in today's video, I'm going to be showing you how to create a door which will turn into a wall behind you after walking through it. So the door will disappear after you walk through. This is a common horror game mechanic, especially utilised in Layers Of Fear.
SFX: https://freesound.org/people/tollbooth/sounds/324410/
#Ue4 #UnrealEng...
I would check that you are not generating multiple collisions.
oh and yes
Why did it take me so long to realise
yes you are most definitly generating multiple collisions.
How do you figure?
Well you are not checking if the overlaping actor is a player or not.
And I doubt you changed the collision settings to overlap with pawn only
Good points
Even if you do both of these tho, there is still a possiblilty for multiple collision.
Printing actor/component display name may help out in such scenario
so, I have a question regarding gamestate and such. I understand gamestate is for like a multiplayer thing that holds across the client and all. The thing I want to know is that if I were to put a camera for a player BP but I wanted it to be shared across the clients would I take that same BP and just transfer it over just tweaking it a bit for MP?
Why UObject's does not replicate?
The player BP is also a actor that holds across all clients
Im not sure how this relates to gamestate.
hmmmm
Simple math question because I haven't worked with rotators in awhile.
How do I rotate an object in the direction a player is facing?
UObjects are supposed to be the most stripped down and basic thing available in BP.
Even if i create a uobject and save it into a replicated variable it won't work?
I need to reform my question to make myself less stupid
UObjects have zero replication functionality.
You need to use an actor/componet to replicate something.
And can i send it in a RPC variable?
No.
Or it doesn't work that way
I need help! Ue4 editor do not use %100 cpu and gpu and my fps is around 35. How can I make it use cpu and gpu more?
You can network a UObject fairly easily with some minor C++ overrides. But yeah. C++
Yep, just not in BP.
Do u know where to find step by step of that?
I think Jambax has a blog writeup on that.
Oh, that's what i'm actually doing
ok, I think I can reword it lol
ok, Imma be real right here lol. Is there anything specifically different you would have to do when working in the gamestate BP? like is it handled differently than a player BP?
I understand the differences with the two and when to use
because I feel like when I go in there and try to work with it that it's an entirely different understanding
Im still not sure what the confusion is.
Do you know if it works the same with components? Cause i have an inventory component and my objects are attached to it
hmmmm
are you making a multiplayer game?
words are not my strong suit lol
yes
Well I suspect the misunderstanding might be a more fundamental missunderstanding of how multiplayer works in general.
cause programing in the gamestate isnt any different from programing in any other BP
but there are certain steps to take because it is a MP BP right?
yes plenty, if you want anything to work in multiplayer properly, there is a lot of special steps and considerations you need to take.
ok
i get that
uhm...one more thing
@trim matrix
@minor pagoda I'm unsure. I haven't read the article fully. But it does work with Actorcomponents. I've personally done it at work. Just override ReplicateSubobjects in the Actorcomponent, and IsSupportedForNetworking in the UObject if memory serves.
it's shared info across everyone
I do get that
the thing I want to understand is
let's say I have some things in a player BP that needs to be shared across everyone. Now can I just copy and paste and touch it up to fit MP?
or is it entirely different
Uh
words
Nice, i'll give it a try, thanks β€οΈ
What do you mean by "shared across everyone"
ain't it info shared to all players?
Yes but any replicated variable inside a replicated actor is shared
hmmmm
lol
If you want a peice of data to be replicated yes, all you have todo is tick the check box.
ok ok ok
I uhihh
dang I had it
lol
give me a sec
The way you use that data may be different from client to client though.
the way to work in a gamestate BP is no different than anything else correct?
I mean its fundimently the same
putting nodes together and such
yes
GameState is just an actor meant to hold data about the State of the Game
yes I get that
Then what do you not get?
multiplayer 101 lol
lmao
it's hard to explain
i'm sorry
I don't have good words
I can use an example I think
so, I want something like a shared camera. the camera way I learned from a video did it in the level which seemed to work fine. now I was told that it's better for gamestate if it's MP. now, since the way I saw looked fine and worked fine can I just copy and paste that?
does it work the same in that way?
can I just copy from one BP to that one or do I have to work it differently
I know I need to add extra stuff for MP
Idk why you would put a camera on the gamestate.
GetAllActorsOfTag it at beginplay for the controller.
hold up
I wanna apologize for wasting your times that's one thing lol
but
it's not putting a camera actor in there
And it can be worth putting in the GameState if the camera changes. Keeping a replicated pointer to the camera that players are meant to look through can be kept there.
Stop following along with videos and start trying to do something on your own
gotcha
I am not good with words
Yes a pointer there would work
ok
uhm
what's a pointer?
Reference
that's what I thought lol
thank you
Is this a macro you made? Because if so, I think % (modulo) does the same hehe
But maybe im reading it wrong
yes its a macro i made
hello again π
how can i get short vector out of long vector?
to pick up those start and end and form new, short one
What is a short vector?
You can get a 1.0 length vector by normalizing it. Though if you have two points like Start and End, you can get a UnitVector out of them.
is there a way to iterate through a map?
i mean. how can i somehow cut the blueone
GetKeys
Er. May just be called Keys in Blueprint.
I am trying to make a character generator I have started on the face and the logic for it, but when I press r or compile the blueprint , I can see no generation there is nothing , here's the whole logic for the face, i have filled in the face arrays with different skeletalmeshes
when you press Q once, both of those fire
Just use a flipFlop node instead
get rid of the branchs and the variable
then code the flip flop yourself
or just use the not node with a select
doesn't even need select, just Var Not then Set
yea thats even simpler
you should do this the way Morgana is suggesting. If you need the StandVisible variable, set it based on the visibility you just set
@trim matrix
Q input Set stand visible = NOT stand visible -> set visibility
No branchz no flipflop
Except it'll break if stand visible is ever set anywhere else
Because that is not the Boolean that is inside the flip-flop, you have two booleans right now
pls help , its something with the visibility on the destroy or change visibility , if I remove it its just the first face in the array and pressing r doesn't generate different faces.
does anyone know the difference?
What hes saying is todo that
that's true
Sorry its just that im not in the mood to piece together messy code.
so I was following along with a video to try and make my door become a wall when the player goes through it and activates the box collision. here the link to see the code at the end.
but the issue is when i go through it and trigger the collision the wall snaps to the door instead so unless the door is closed itβs not going to snap to the wall. Anyone know whatβs the problem?
Hey guys, in today's video, I'm going to be showing you how to create a door which will turn into a wall behind you after walking through it. So the door will disappear after you walk through. This is a common horror game mechanic, especially utilised in Layers Of Fear.
SFX: https://freesound.org/people/tollbooth/sounds/324410/
#Ue4 #UnrealEng...
Your setting visibility based on another bool being false. Seems like an unnecessarily confusing way to do it
Just try and write code that goes in straight lines and is sequentially ordered.
When you are Releasing your E key, you have the execution path going into where the timer starts. So even though you have a branch on the Pressed portion that should prevent the skill from firing again and starting the timer again, you have code on the Release that leads to where the timer is stating.
Int32 Range contains two integers, with additional enumerators for bound settings.
Input Range contains two floats.
thanks
pls help π
That code is a mess, in plain english, what are you trying to have it do?
I'm trying to randomly generate character parts]
define "generate", randomly select from a list of possibilities?
or are you actually creating mesh data at runtime here
yes randomly select meshes form my body parts array
Have you confirmed that your struct representing the combination of parts is being randomly generated correctly?
It's basically a 2 part problem right?
- Generate Struct
- Read Struct and swap around skeletal meshes
And in the future you could
- Load Saved Struct
- Read Struct and swap around skeletal meshes
I take it?
nothing is in the struct I call the struct in my character bp than create a face variable than fill it with the meshes I want than I use that variable for the generation
You don't call a struct but anyway, do you mean generate the struct? Show this struct class.
This is for a basic character customization system right?
i am trying to randomly generate characters for the player to recruit and raid dungeons with ,
Just the meshes or items/gear/inventory/abilities too?
just the meshes for now , i will add the abilities and gear later
OK then I would recommend backing up and starting with the data.
Make a struct that defines the entire look of a character. Something like
Struct MyCharacterStuff
{
Skelmesh HeadMesh
Skelmesh BodyMesh
Skelmesh LegMesh
}```
basically make sure you have all the info in that struct that you'd need to set up the character
Then make a function that takes that struct as an input and sets up all the meshes.
Then all you gotta do is make another function to return a randomized struct and you're all set.
how would i do that
i have this done already and this will include materials or the materials in a diffrent struct
yes exactly
although if you're going that big you might want to make that an array or Map
maybe a map of EnumSkelMeshSlot to Skelmesh
Then the struct would look like
Face, Face2
Hair, LongHair
Helmet, SteelHelmet
etc
can someone please help me with something
Not if you don't say what the problem is
so I was following along with a video to try and make my door become a wall when the player goes through it and activates the box collision. here the link to see the code at the end.
but the issue is when i go through it and trigger the collision the wall snaps to the door instead so unless the door is closed itβs not going to snap to the wall. Anyone know whatβs the problem?
Hey guys, in today's video, I'm going to be showing you how to create a door which will turn into a wall behind you after walking through it. So the door will disappear after you walk through. This is a common horror game mechanic, especially utilised in Layers Of Fear.
SFX: https://freesound.org/people/tollbooth/sounds/324410/
#Ue4 #UnrealEng...
Show it in action
gimme just one moment
I created a data table with my materials , meshes and unit class, but I was confused on how to uses data tables so I scrapped it anyway to just use the row of datable to do the generation
Sounds like you're using the door's transform as the wall placement.
Sorry its my computer loading unreal right now
To check a collision of an arrow is better to use the complex collision of the mesh or a collider?
arrows aren't really meant for collision, what do you mean?
or arrow as in bow and arrow
not arrow as in the red arrow component
This one
Like if i have an arrow colliding with a shield
@eager plank If the wall spawns correctly when the door is closed, but not when opening, then it's either a collision issue, or you're using the door's transform. If you're not using the door's transform, I'd start with setting collision disabled on the door.
But how do you make the collider not to be out the mesh bounds
Carefully
it'll never 100% match up but you can get it close enough
or just go with complex, depends on what you're doing tho
Use simple collision for hit detection, then trace against complex collision to set the arrow's landing point. Better performance and still looks good.
i have this xD
well that's a bad collider for a shield lol
the autogenerated convex hull would be better lol
or even a real fast blender cylinder
Oh i don't know about that
Why doesn't PhysX have a cylinder primitive, wouldn't it be super useful?
Like Hit Event?
does anyone here know how i could get an uobject in bps
Fr tho, im so used to making custom collisions I forget the engine can do simple ones automatically lmao
A million ways, what object and how are you trying to get it?
i need to get an uobject that its outer is ulocalplayer
Either. It doesn't matter if you're using EventHit or Traces. Hit will use a collision primitive if the static mesh has one generated. And all Complex on trace does is allows it to check against the more complicated mesh instead of the collision primitives. Stick with simple collisions as much as possible until you absolutely don't need to.
It's slightly less of a concern for more polygonal or simpler art styles, but in more visually appealing games where objects can have many thousands of polygons, colliders can lower the cost of traces and sweeps by up to 85% or more. Pretty significant in a busy game.
What do you mean when using door transform
Show the wall's spawning code.
Sorry iβm new to unreal where can i find that
Show the part of the bp where the door turns into a wall
I'm having trouble understanding this cause i don't have much background on meshes and collision, but correct me if i'm wrong, so i check my arrow collision through hit event, then i stuck the arrow at wherever location it has to be whit a trace.
@eager plankShow your components list in the top left.
@eager plankShow the BP component list yeah that thing authaer said
Ah
move it up so its not attached to the part thats rotating
Ok
when you rotate the door, you're also rotating the things attached under it
or rather, they come along for the ride
so i can then use a function inside that uobject
Thanks for the help, It worked!
That would be my first choice if your arrow is a projectile component. The hit allows you to do simple easy hit detection. But there's a chance that the arrow might not quite stick into the shield visually if it hits a piece of the collision primitive. So that's where you would use a complex trace to set the arrow into the non primitive collision.
Ok, that makes sense
It's all same frame, so nothing will move and it should look pretty natural.
Thanks β€οΈ
@maiden wadi Can i ask u one more question of performance?
If i have my items like weapons and armors to run code like freeze or catch fire, it would be better to have my character with one child actor per slot or to have one skeletal mesh for each one with a component that run's all that logic?
How would one store the number of times a function has been called?
Add a call to update a global variable somewhere at the start of the function.
Oh thats a good idea
Increment an integer at the start of the function
Are you talking like for VFX stuff? Like lighting a whole character and all of their attachments on fire, etc?
Yeah or to spark something like that
Hey all, is it possible to use the thumbnail generated by UE4 (shown in content browser) in a widget bp? e.g. for item icons in an RPG inventory
I have had success already using one of the various off-the-shelf tools for generating icons before packaging but it's a significant time sync.
how do you apply the effect? in the materials?
That's one way, but u can spawn particles too
Gameplay ability system may be a good way to handle that.
the question is how you are doing it, because that may affect the answer
if you do it on the materials you could drive a materialparameter collection which they all use
so you only have to update the value once
I'm not doing it, i would like to know which of these would be a better choice
I'm not seeing anything for the shield. For the Axe, that's likely just a material mask on part of the axe to offset vertexes and do a frozen look as well as a niagara emitter for the trailing.
an item could grant the "freeze" ability, characters can know how to make their items interact e.g. applying freeze to another item, and the items themselves could know how to respond to that freeze effect (e.g. as Ben outlined above via materials)
As for how to do it. That's more or less just a material swap and a niagara emitter enable/disable in the weapon itself based on whether the frozen flame buff is active.
what's the mathematical thing that rounds floats to an int
floor?
If given 0.75
Floor will return 0
Ceil will return 1
Round will return 1
So to enable the niagara emitter i don't have to have a whole actor, just the mesh itself?
I think of the weapon like an actor and i don't know if that's 100% ok lol
It would likely be it's own Actor, yeah.
So the answer to this question would be to have a child actor for each slot of the body i want to modify?
I personally don't use Child Actor Components for anything.
Whatever maintains your inventory can spawn the weapon. Character can own it.
Yeah, let's imagine that my inv. component spawn a weapon that has its own mesh and functions to handle catching fire and so, how would i attach the mesh to the character? Or just I parent the actor to the base mesh in a socket?
As far as i'm concerned when you attach a mesh to another actor it loses the previous reference to my weapon
AttachActorToActor
or AttachActorToComponent (which can be on a different actor, as you will most likely want to attach to a specific socket on your SkeletalMeshComponent)
Mmm
How you set this up largely just depends on your personal preferences. In my case, I have two inventory classes. I have a basic inventory that has transfer and holding code. Used in containers and such. And then I have an extension of that for characters. Has equip slots and quickbar logic, etc. The one meant for character is what all characters have, and it handles spawning and attaching actors like weapons to it's Owner.
Hey I am new to this site and I am wondering where I can go to find unreal gaming programmers that might be interested in working on an adult oriented metaverse project. We are looking to purchase existing multiplayer game environments and enhance and customize with our own provocative adult oriented characters. We are looking for a few good unreal engine developers, preferably someone that understands blueprint for the game play mechanics.
There's a JOB BOARD section too #instructions
apparently not for everyone
That's nice
If i use this function and attach my weapon actor to my character with a slot name "Right Hand", will the engine found that i have a hands armor actor attached with a skeletal mesh that has "Right Hand" slot on it or i will have to attach it to the hands actor?
Holly, i have a lot to learn lol
depends on your mesh
if it is just the weapon mesh, you will have to use sockets on your character mesh
Ok, that's a lot to test hahaha
Thank u @maiden wadi @spark steppe
Don't u feel nervous writing code that u might have to change in the future cause it does not work as u spected? xD
i think you should just start, it's probably impossible to get this planned out and started from scratch as a newbie
That's right
you can assume that you have to rewrite all of it at some point π
but that's part of the learning process
You're probably looking at a lot of conditional stuff if you're going that deep. But really most times this is just ignored. Gloves don't usually change space a lot so there's no reason to use a different socket to attach a weapon to.
And frankly, I just assume that everything I write will get changed eventually. Needs change. New stuff gets added, stuff needs altered to work with it. Doesn't matter. Make it work now for what you need now.
That's a good XP principle xD
I used to avoid writing stuff for the same reason you mentioned. Kept looking for the "best" way. Then I started working on a professional project. π
But you're going to reach a point where you'd have to write your code as if someone else is going to work with it
Key word: as if
So, i better start coding hahaha
I'm already seeing progress in my inventory system, but there's so much i have to learn day by day and my head starts to became a completely mess
See u later guy, thanks for the help
Do it til you can't. Put it down. Do something else and come back to it.
And by later i mean 15 minutes xD
I learned my mistakes from maintaining small open source Unreal projects.
https://blueprintue.com/blueprint/920xy8xd/
hey so I'm trying to animate an npc character that follows you, but for some reason it doesn't react to the y axis changing at all? (Also this website didn't connect the get velocity's with the break vector nodes, but they are connected in the actual blueprint
@midnight otter
Id start here
https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/ArtificialIntelligence/BehaviorTrees/BehaviorTreeQuickStart/
Wait is this a paper 2d?
Oh, ok.
So two things I notice.
First you're comparing > or < each other rather than against 0 and the left and right checks is just returning the opposite of the forward backwards checks
how do i get mesh to play animation when i use set skeletal mesh because its not animating
I tried against 0, but it still does the same thing
It only switches between the flipbooks used to switch between the x axis
but not the y
unreal engine 4.27.2 keeps crashing and it has major bugs, if take a regular cube mesh and add a capsule collision to it, the player gets stuck on the cube https://streamable.com/g43bd6
anyone can replicate this bug, how do I submit a bug request fix?
this can turn into a nightmare if you have trees that use some kind of capsule collision, is there any kind of blueprint code that can make it not get stuck?
@midnight otter
Ok new answer is State Machine
https://docs.unrealengine.com/4.27/en-US/AnimatingObjects/Paper2D/HowTo/Animation/
Took a minute to find though. Was thinking it'd be a 2D blendspace but same difference
?
I'll definitely use this in the future, but I forgot to say that it's top down like zelda, or earthbound
sorry
how expensive is the rotating movement component compared to a timeline?
so i want to use the animation starter pack in my game but i've already done a bunch within the third person blueprints. is there any easy way of doing this or am i going to have to redo everything?
animations are just animations, they dont replace your code or levels or anything like that, just import the animations into your project
i tried that however it was stuck on a t-pose
i'm hopping off my pc rn so i wont have access to the project but i'll talk on my phone
i guess we can continue this when you are back on your pc to solve the issue because you are doing something wrong, bring the animations in will work just fine (if you know what you're doing)
Both are cheap enough. Depends on what you're trying to do.
Movement Components have some nice functionality like writing to Velocity and doing collision handling.
If you just set rotation per frame I don't think Velocity actually gets written, but may be wrong.
its just gonna be maybe 50 or so holographic things spinning with no collision
nothing too fancy
Either/Or, doesn't metter
it'll be like 0.001ms either way
prolly faster with the rotation movement component
Sounds like a perfect material candidate
Hey everyone,
I'm building a configurator and I want to click on my staticmesh which has several material elements and get the material element under the curser.
Sadly βHit Result Element Indexβ always returns 0. I could not find any other way to get the material via trace/channel. Hope someone can help!
btw I am getting the correct object and location back it just never changes any index. Also not getting the correct face index.
wasnt there some setting to return material on hit ..
tried this?
@turbid thicket
jep. trying this returns -1
the face index is also not changing. it stays on -1
I tried it with different staticmeshes btw. some nanite, some none nanite. I also tried it with another linetrace approach. face and element index never return something useful.
ouf
just returns false. makes sense since there is no material -1. I'm very confused. You would need something like this for different sounds or effects based on what kind of material was hit so I guess it should be used rather often?
wouldnt that be physical material?
Thats true. But as far as I know you cant have several physical materials on the same object?
pretty sure thats the use for it , atleast some
i think you can
btw the mesh
nvm
probably doesnt matter what the mesh setting is in regards to collision, as long as the trace is set to trace complex
Seem to confirm multiple physical materials per mesh
Yep you are right! Thanks π Hm now that still kind of sucks. That would mean for every material variation in my configurator I have to set up a matching physical material. Kind of screws up my idea.
That's how you would do it though. We have a data table with physical material matching to various interaction effects. Bullet ricochet & player step sounds, various VFX, etc...
Will try that. Thanks! But this also means that in theory there is the possibility to get the nonphys material from hit. Seems like this is a bug then.
I mean. These do exist. There would be no point in them being there for just returning 0 and -1
Okay. Now I assigned two different physmats to the materials. But hit result phys mat also returns false/none.
In my case we have for example 10 different speakers + variations. The player should be able to click on a part, and get the name of the material. So I really need the name of this specific material
of course we could have every tiny part as a seperate object or create masks but this would add a lot of steps for setting up a new product. https://www.youtube.com/watch?v=RkJT9nRv3IE (proof that its possible. but still dont know how)
Just a proof it can be done. :)
Does the Simple Move to Location node rotate the player normally? My character faces the same rotation no matter which way i move
In the movement component there is an option to rotate the character to the movement. You can adjust the rotation rate as well. If you check that checkbox it should work. It's called "orient 'something' to movement" in the details panel.
ahh yeah I see it
The only issue is that it rotates the camera too instead of just the player mesh
Yeah. If you have attached the camera via one of those spring arm components you can stop inheriting the rotation
okay. I'll try that. Thanks
hey does anyone know how to log button inputs, like a way to save when a button was pressed and how long for?
Does anyone know if there is a way to find closest point to the edge of a collider when the player is inside the collider? The GetClosestPointOnCollision node only worked from the outside.
Im trying to delete a spline mesh component but can't seem to do it any one know how?
@turbid thicketdoes your cube mesh have UseComplexAsSimple set on it? Or does it use a primitive cube as collider?
Hey Marco! This is not my video, its just an example of what I am trying to do. I tried using complex as simple and the normal setup. It did not change anything.
@turbid thicketwhen using ComplexAsSimple, did you make sure your mesh doesn't have any collision primitive around it?
@midnight otter doesn't matter. The more sprite animations you wanna include the more necessary the state machine becomes. Im assuming at some point you're also gonna add roll/dodge, attacks, block, etc..
That gets very messy pretty quickly in a regular BP
I am reimporting a new test mesh. Gonna make sure there is no collision primitive and build the blueprint from scratch.
use a reverse loop
the mesh. two materials assigned. collision deleted. after deleting use complex collision as simple. Blueprint returns -1 for the face index and 0 for the element index no matter where I click.
Not heard of a reverse loop I'll give it ago
@turbid thicketUE5 EA2?
Yes!
@turbid thicketwould need to test it on 5.0. EA2 codebase is quite old and may contain bugs.
@remote meteor Doesn't seem to have worked the array is populated so no idea why its not deleting
I am actually waiting impatiently for a new EA build. I heard that the current branch comes with a lot of improvements. Just cant use it cause the team is stuck with EA2 for now.
Does it work for you in your version?
@turbid thicketI have a build of 5.0 running but I cannot test it right now
Thats fine. I'm downloading 4.27, testing it there. Thanks for your efforts!
is there a way to see decal bounds in game?
what do you mean decal bounds?
I always forget but isn't there a check mark you can check and uncheck. When you look in the items editing or Bp>? it should be on the right hand side usually if you have it set to default viewports? forgive my english its bad i know
Hidden in game
but thats not the case for the decal
you need to add a fake collision volume to visualize it
There's also a show collision cvar that will work for that as well, and I'm pretty sure there's a show collision in the viewport shading models too
Oh the scenic route
hello i want to do i csgo type game, and i would like to move the body so the gun and the arm are in place like in csgo
can someone help me ?
but for the momment i have that
all the body moves with the camera and not only the top part
this works better
bind it to a debug dispatcher in the playercontroller or smth and we're good to go! π
@gentle urchin are you a helper ?
ping your problem
@covert grove
the thing is that i can pick up guns and then atach it or behind the character or in the hand
and then drop it if i take an other one
umm wait i need to see csgo and get how it works
yes i thing i know but is to complicated for me
you mean attach the gun to the hand?
there is two models , one with only the hands and an other for the other players and then you switch camera
i think its so
because now i try to move the body with the look at node
and it doesn't work
oh so, you wanna move the body with respect to what?
i mean the gun and the camera right?
so it feels like a smooth movement
?
to the camera because now all the body move in one block
like in cs go
you see the arm and the gun is always in the perfect spot and like "attached to the camera"
Cause it is attached to the camera.
yeah, like the body movement is based on the camera, why dont you remove the body and just keep the hands and attach them with the camera?
Look at the first person template example.
and attach the gun to the hand maybe...
because then she shadow is only the hands
yeah that's what i said, it dosent have any body
you want a shadow of the player?
yes?
well in that case attach the body with the camera
Doesn't matter. That's how you set up the first person view.
If you want a more encapsulating scope, download and look through the ShooterGame content example.
well we set camera to head ig
The character will have two skeletal meshes on it. Third Person and First Person. Third Person is set to OwnerNoSee, first person arms are set to OnlyOwnerSee
ok i see but because i am a beginner i have no idea how to do it π¦
Theres a ton to learn before trying a multiplayer shooter like cs go
I'd never suggest such a project for any beginners
yeah actually, first try to learn from some fps series, undercover yt channel has one detailed
yes i have done that but it didn't work
i already watch a tutorial
Support the channel through donations. Crypto accepted!
PayPal: https://paypal.me/reidschannel?locale.x=en_US
Patreon: https://www.patreon.com/reidschannel
Bitcoin: 1JFwWHr4X6uAeoZadukzqKjzFBj3Qjy7Sk
Ethereum: 0x2B2Bc108F1Cc0fF899959dEF3226637787d8C3dE
Dogecoin: DNQ33YnhpWoTBokBNVkZP5ub8KTLkpyjpv
Join our community discord!
Discord: https://dis...
preaty good
I would recommend checking out the ShooterGame example, they have it set up pretty decently.
@maiden wadi this one ?
No. In the Learn tab.
You can still open the character and look at how it's set up.
Do you think this may help https://www.youtube.com/watch?v=Fdp5k1lxUAI ??
In the first part of this short series, learn how to create a functional and game-ready First-Person player pawn, starting with setting up the pawn and weapon blueprint and creating an animation blueprint from scratch. Topics covered: Asset handling, material creation, skeletal meshes, animation blueprints, player pawn blueprints, child actors. ...
the final result is preaty bad i have already tried this tutorial but it isn't good
But that is also a fair point. If you want to make a CS:GO like game, you're not doing it with only blueprints. Not effectively.
oh, ok sad in that case
so yes idk what to do ...
yeah true
ig you should learn c++ and start learning more detailed stuff
i mean like learn what are the different things in fps
and how everything works
etc
people that o know have made very good games in blueprint so i don't want to go with c++
ok i will see
well did anyone of them make game like cs:go?
ig no, blueprint is powerful but it too has limitations
anyways, guys any solution for this one? #ue4-general message
i am really struggling with this since 3 hours now
Yes. You can make a fully fledged game in Blueprint alone. It is possible. But you will lose a lot of tools. You don't have as much access to engine settings. You lose over 85% of the networking tools available to you, and most importantly, you lose access to simple overrides in core engine framework which means you end up rebuilding all of that yourself.
Also. C++ is incredibly easy to learn when working with Unreal and free. There's just no reason not to use it if you're serious about making a game.
I have this issue where, this node returns false, whenever i click on a widget, if I click anything else it works perfectly fine
Where are you using it in the Widget?
yes
Where are you using it in the Widget?
Yes.
I FKN KEE U
hehehe
my bad I misread what you meant,
im using it on tick.
When I unhover my widget, i set IsDraggingActor to true
Hmm. Sounds like something is handling Input Touch somewhere else. Either one of your UserWidgets or something like a UButton.
Widgets get first dibs on any input. So if they "handle" it, Player controller never registers it.
Oh I see, that makes sense now. Is there any way around it?
I need to trace from under the finger by channel, after I unhover the widget.
The trace won't work because controller doesn't register player clicked/tapped his finger.
Good question. Left mouse should work the same way, lemme look.
Is this for like dragging out of an inventory of sorts to drop something in a specific place in world?
Hmm.. Doesnt InterpTo run at a targeted speed, framerate independent ?
yes, exactly this
It should if you feed it DeltaTime
I tried setting that specific widget as NotFocusable, but it didn't seem to help
Ah ofc. Im just being dumb here π I only interp the springarms length
Ah. Funny you bring that up. I was planning something similar. π I was going to have my InventoryComponent actually have a tick function. In my thought process, I was going to have InventorySlotWidgets call the inventory from OnDragDetected and start the preview. OnDrop would call the inventory and handle placement. I was actually hoping that I could get away with doing it like this fairly easily for visual replication of item placement as well for multiplayer
Is there any docs on what blueprint function needs to run on server RPC or multicast. If not how can you tell? We know about sound and animations need to run on Multicast. But things like line trace, setting Attach to Actor, setting collision, enable/disable input, setting animation mode, setting movement mode, etc.
Is there a way to easily detach camera from top-down character and move it independently?
How to handle this problem: I want to change Trail colour based on my hero selected skill. Trail is added as Timed Niagara Event via Animation Montage. Is there a way to access this trail via blueprints in unit class? Or it should to be done differently?
@native summit how do you mean? Isn't it already point and click?
Hello, I have a very very stupid question, but I was sure it existed.... I'm trying to apply the changes on the blueprint I've done in a scene...
I was sure it was something like "Apply on blueprint"
but I can't find the option in UE5
Am-I just imagining that function existed one day, or i'm to blind to find it π
No, I want to move character but not camera above him
@native summit easiest way would be to have the player pawn just be the camera, and have the character be a separate BP that you tell to "move to" the spot you clicked.
I think the point and click logic is already in the controller so you can just set an event dispatcher from there, unless you're doing an rts or something where you can select different active actors to move around
Your thinking is off here. You don't run certain specific functions from certain RPCs. It's not quite like that. You should instead consider it as using RPCs to accomplish your goals. A multicast runs on server and all clients. Useful for one time broadcast of something, chat messages are a good example of this. For a lot of things though you rely on replication and the replicated state plays particles or starts sounds. Player usable Voicelines would be a multicast. A flamethrower's sound would be driven from replication of whether the weapon is firing. Server RPCs on the other hand allow clients to communicate with the server, so this is where clients would send their text message which can then be multicasted, or send their selected voice line so that it can be used.
does anyone knows if On cursor hover and Click events work on the arrow component? It does appear to have everything needed... (everything works with a regular actor)
You set a global time dilation
it will affect pretty much everything that has an update
How do I do this without infinite enums? Seems like im not doing it right if I have to change the same code 100 times
From my limited experience with time dilation:
You either use custom time dilation on all actors that need to be affected
Or you set custom time dilation on actors that don't need to be affected to cancel out
However, you can use a RealTimeSeconds instead of DeltaSeconds / WorldDeltaSeconds
Or use a timeline for the cooldowns and tick ignore time dilation
Yep that would be the same as RealTimeSeconds node in the Tick event π
A little more context would be nice
Mixamo has character animations, weapon animations would be depending on your weapon skeleton so these you probable have to make or download in a set together with the models
cant i put an other model on it ?
on the weapon skeletons? sure but you would have to redo the rigging
if you're talking about mixamo, that's what it's made for π
yea idk what that is but ok