#ue4-general
1 messages ยท Page 374 of 1
they have it as "fixed" in 4.19 after I did some reports on it
I suspect Epic can't reproduce it because they have everyone on a fixed hardware config
whereas us users in the real world have a variety of different display configs
the more monitors you have, the worse the dpi issues get
yup
boi.gif
my personal project has been on hiatus since 4.18 ๐ฆ
because it needs world to widget space transformations to work
and they don't, because DPI scaling ๐ฆ
for cascade im still on 4.16 for most things, because anything after that is just..
and I get it, lots of stuff being thrown around to make niagara work but.. meh
same with animation timelines. sometimes you cant drag a notify to the end because .. reasons
and no horizontal scrollbar in cascade because.. dpi scaling?
so I cant access most emitters unless I literally span it over 4 monitors
some texturing question:
are there any benefits regarding textures, when using a texture of dimensions like:
2048 x 1024
or:
2000 x 1000
?
textures must be power of two if you want mip maps
if you don't know what they are, you probably want to do some reading
i do just now
along the lines of mip-mapping, bilinear / trilinear filtering etc
pretty important stuff to know if you're going to be doing texture work in 3d rendering, hehe
alright from what i read in that short amount of time, i do want mipmaps xD
probably
?
though there will also be times when you don't - so understanding what they are and what they're used for is kinda important
i could not imagine where i dont want anti-aliasing (i am pretty new in texturing)
does ue4 has any north in it's coordinates?
what?
Hey, hi @plush yew
As far as I know there is no North coordinate set on the engine. However, in the 4.21 with all the accurate sun positioning MAYBE now there is. I know a few developers using the +X or -Y for their custom coordinates. I guess is for a map, or a copmass thingy maybe ?
Ah... you can rotate that as you want, so.
do it your way.
this may be worth for you to check : https://docs.unrealengine.com/en-us/Engine/Rendering/LightingAndShadows/SunPositioner
since it's basically an accurate way to represent the sun.
Hey is it me or unreal FPS character is more clunky then in unity ?
I am not sure how to make it more specific it is to some extent subjective heh
@violet goblet UI stuff probably does not want mip maps for example
do you mean the FPS Sample FPS character or the Standard Assets FPS character or the Learn examples FPS character or? UE4 generally has 1 fps character in the template while Unity has no "templated" FPS character.
@grim ore of course ๐ (as an character artist this is something i never thought of, but always good to know!) thanks!
yep yep. I think another normal texture one might be like the sky sphere. Would be weird to see it mip map out as you move around the world lol
๐
Why does the engine need to connect to the internet in order to build lighting?
swarm?
no
the ue4 process
I just tested it
for a very long time I've been unable to build anything
it just hangs forever
today I figured I hsould try letting it connect to where it wants to as it always nags on startup
building immediately worked
this is very strange
How do you use delta time and delta seconds in an Event tick, when the tick is setting an event by timer with a looping delay? I imagine you have to adjust your calculations to account for the change in time difference?
Why would you use delta seconds with any timer to begin with?
"How do you use delta time and delta seconds in an Event tick, when the tick is setting an event by timer with a looping delay?"
This sounds like madness?
also timers operate on tick anyway?
Let's make this visual so we can reveal the problems with my understanding
hehe
@shrewd steppe it appears it might be due to the engine trying to connect to the local lightmass process on localhost/127.0.0.1 and if you have it not allowed to use the network it would fail. This seemed to be the issue in older version while the newer one might be sending diagnostic data which causes the issue as well.
So, I'm calculating various elements of an actor and I need to be monitoring those, but I don't need it to perform on event tick
So it needs to update maybe .1 a second
100B/s while its connected
so what's wrong with just having looping timers?
I'm using 4.21 btw
help me map this out - and why is discord fluctuating, this window looks like it's buffering?
looping timers are no less accurate than tick
timers operate using tick
I need something to remove a certain amount every second, because the value is in Gallons per minute
how are you going to prevent them then from going faster at higher rates
eh?
that's what I mean
144 fps and the timer ends after 30 seconds
instead of straight up blocking everything I suppose I should allow it only localhost
removing a numerical value is easy enough
and why is discord fluctuating like i am on a remote video feet
30 and the timer takes 2 minutes
normalize it
you can get game time during a loop
do you want me todo that on every timer?
every single timer ever
with an extra time check
if you want to do something using time it doesn't seem like a radical problem to read existing time variables....
why would they ever be exact?
one loop of the game thread takes a specific amount of time
bc of game speed
you can never ever go faster than that
that was a recent issue with fo4
dw skyrim got away with it
@static viper You're not making any sense. Timers are... time-based. Your frame rate doesn't change that.
^
to my knowledge they were accurate
The only thing that is true is that a very low framerate may cause you to end up overshooting the desired time by a larger margin. Possibly. Depends on ratios.
@light thunder - you want to calculate your own 'delta seconds' between timer intervals
either use one of the global time variables, or I think the Timer Handle has one too
And why is this blurry in discord, (i've restarted discord and it's not in any other application)
the thing i fear is just that i dont want my games to work faster on higher fps
not blurry on my screen
that's why you have delta time / delta seconds...
@static viper Your fears are misplaced, it's 2019, this is a solved problem.
@wary wave So what is the way to calculate it?
but using a timer, it's going to be more accurate if it's running faster, so
I mean, you literally just work out how much time has passed?
@light thunder ?
Time This Loop - Time That Loop?
Timer Handle may even have that built in
seems like something it might have
@static viper Timers are "safe". Although, to be honest, I don't know what you mean by safe. Timers are based on time, not ticks, so I don't know what you ever thought was going to go wrong with them.
Timers are based on tick
each tick, each timer gets updated
unless something has changed
and a tick is a frame
Yes, based on in a different sense.
a tick is not a frame
My point is you set a timer based on a time, not on a number of ticks.
game thread != rendering thread
its not a frame anymore
So If I need to get a value on a per minute basis, how do I adjust for this (basically I need to convert minutes into seconds) ....
ah i think i remember
the return value is a timer handle, use it
wut
Calling timers tick based when someone is worried about tick rate making timers run faster/slower is only feeding their confusion and concern. Yes, they are implemented via tick.
it doesnt make this better really XD
@light thunder - if the timer handle doesn't have time variables that are useful, use a global time variable instead
i will just cap all my games at 60 fps.
and be done with it XD
if it runs well at 60 all is fine
respect ma 120hz screen ree
@static viper Why are you trying to break stuff that's not a problem? What aren't you understanding?
i am trying to make this right!
why are you not understanding XD
you need education
wait
thanks @grim ore you were right. adding an exception to localhost solved it
Game feels about ~20-30% faster at 144FPS, and well over double-speed at ~250FPS. Is this some kind of sick joke, Bethesda?
here.
tell me
just skyrim things
Yeah. I'll tell you that's not UE4.
And that's not working on a timer.
So what's your point?
well everything was speed up
Yeah. Because someone did their job wrong.
@shrewd steppe yay ๐
yea but thats a different engine
Which has nothing to do with UE4 or timers.
id like to not make it wrong
How about you guys educate me on my understanding of timers and their implementation in Unreal instead of arguing ๐
@wary wave is trying !
It's not an engine bug.
lol
It's someone literally deciding to do something based on ticks instead of time.
Time, like a timer does.
im not sure, but bethesda keeps repeating this thing every game
well that is my point
Fallout is buggy like that because they still haven't solved trivial problems that were solved in the early 90s
ยฏ_(ใ)_/ยฏ
No, YOU have to do it right. And if you use timers, it will be right, because timers count elapsed time, not elapsed ticks!
then i am doing it right :3
which means dont depend on amount of ticks, depend on time
a timer triggers when the total elapsed time > the set time
i love this
but because 'total elapsed time' is derived from ticks, it will be an indeterminate amount of time greater than the set time period
750/60 = 12.5
so the next time that break fires, it should be 505- 12.5, or 493
yes I do, it's being directly set by tick I'm not sure what to do with it
if it's the delta time directly from event tick, it is not the delta time for your timer
Your graph there looks right to me, assuming Delta Time is the time elapsed since the last tick.
it's wrong because it's inside a timer
Huh.
Then yeah, I guess have a variable for the last time this was ticked, get the current time when the timer goes off, compare the two to get a delta time, and update the last-tick-time.
this should be correct, I believe
also I need a new keyboard where the 'e' key works properly xD
I mean, it should reset
the time taken to complete one loop of the timer will be slightly different each time
I think you're better off doing the timestamp method I mentioned, entirely based on global time.
it's close enough but what do I do to adjust for that?
and global time will continue to rise, I just need to turn a live PER Minute amount into a Per Second amount
global timestamp should give you the same numbers
I revise my statement upon further consideration, I think your Elapsed Time by Handle approach is better. ๐
(I misunderstood something about it for a second)
Much simpler and concise. Better than having a global variable you need to keep updating.
It's not working, how did I not implement this correctly? 281, the next time around it should be minus 12.5
yes but I'm getting a bit off
That's the whole point of this, to find out what it is per second
this function isn't fired by event tick
12.5 * delta time (from the timer) = amount changed since last timer loop
here, from the top
Hold on for a second.
Tick is a general term. For some passing of time, regular or irregularly.
Every time your looping timer fires off, you could call it a "tick" of your timer function/event.
it should have been 12.5
Why would it be 12.5... if the elapsed time wasn't 1 second?
every iteration or loop?
how do I make it one second when I need the loop to run faster to update more frequently
You can make your timer loop on a shorter amount of time and it'll loop more frequently.
But that won't make it change by 12.5 every time it goes off.
Nothing will ever make it do that. You don't want that.
okay, I am calculating the amount of pressure and friction loss in a hose, which ultimately determine the gallons per second that come out of it
for sake of brevity, assume that is actually event based, like increasing pressure or opening a valve more
but the check can be event timer based as well
ultimately the GPM that comes out is the number we are concerned with
and I need to take that GPM and remove it from the tank in a consistent manner
well, you're not working with seconds or minutes, so let's extrapolate backwards
yes, i should have mentioned that
GPD :p
in any given gameplay tick, X quantity is lost based on some other rate
the rate lost per second in that gameplay tick is 1 / delta seconds * amount lost
How do I deal with that?
deal with it, in what respect?
that calculating is inside the timer
use the timer elapsed time instead of tick delta time
honestly, I don't know what you're aiming to achieve but it sounds like you're grossly overcomplicating it in your head or something
like this ?
you say a tick has different speed
That looks right to me.
is that a global thing or is every pc different?
a quick glance says that will deduct the correct amount, each timer interval, yes
it's not just every PC, it's every tick
@static viper Neither. Your tick rate is entirely variable (generally). It's effectively your frame rate (more or less).
you can never guarantee how long a tick will take
^This^
yes and it's not accurate here
so its completly hardware driven at first
how is it not accurate?
and then it drives sofware
@light thunder Let's take a completely different situation and see where our understanding diverges.
if you're deducting 12.5 each second, then after each loop of the timer, the amount lost should be approximately 1.25, give or take a bit
Why do you say it's off?
Yes
(at least it's consistent)
okay, how can I make some of the logic run every second
you can't
what about a delay node here then?
By setting a timer for 1 second, at which point your timer will fire off every >1 second.
Nothing in the universe will make it fire off at exactly 1 second.
then why is this value consistent?
it shouldn't be consistent
you're doing something somewhere else that makes it so, I suspect
something funky like integer math
Probably because you're hitting these breakpoints, causing the tick time to end up consistent. ๐
Because there's a max time that a tick is allowed to update, generally.
If you sit long enough, you'll end up making the real time between ticks long enough that it hits a max.
what about some function that gets the elapsed game time and when it changes by one second, it fires this event ?
So it'll be come consistent if only because it's consistently getting capped.
@light thunder That's what a timer of 1 second would do.
Except it will generally be some fraction of a second late.
The higher your frame rate, the smaller that fraction will be, generally
do I need to adjust for the timer if I put it inside the timer, meaning, the beginning timer is looped every .1 seconds but at the end, it sets a timer to fire every second? I feel like I need more caffeine now
the screenshot above looked like it should work to me
Ditto
I think you're overcomplicating things.
You have a timer updating something at some rate (well, approximately that rate).
You have calculated your gallons per second.
You then calculate how much should be removed for the elapsed time and remove it.
If you make the timer go off every 1 second, you'll just have a choppier looking experience.
And it'll still generally have inconsistent values per-timer-going-off, because it'll almost never be exactly 1 second.
even if my breaks are going off, what if I start a timer for a minute (in real life) and see how close it is, but you are saying this should be good enough (which is fine, in real world we just have 4 lights that come on for the various ranges of the tank's water level
oops wrong pin
This feels reversed.
nice catch
okay, here's the thing, it drains the tank in 16 seconds, instead of a minute
so it is going to fast
I've recreated it above, and the numbers are pretty much exactly what I'd expect to see
If you have 600 gallons and you drain it at 12.5 gallons per second, it would drain in 48 seconds.
(As in, set the timer?)
yup
begin play
and nowhere else?
After I import a Mixamo character into UE4, when I run I see the teeth or eyes not syncing as I move. Also skull shows up through hair when I move or do a sudden move. I previously fixed this issue, but currently I forgot how I did that. Do you know? Could it be an option when I import?
you ran out of memory
impossible since I got 32gb
Looks like whatever you're importing is corrupted.
Maybe
It's trying to allocate a very large number of bytes all in one go.
crap, maybe this is getting called twice
it's only 3 meg, but it does say it's run out of memory
@wary wave I move it over here where the first timer is, and just did it on a second and this appears to work fine
what does task manager say?
I want it to update faster, so I can change the time to something smaller and just divide by a larger number
um, you're setting the wrong timer handle
@plush yew - yeah, how much memory does task manager say you're using when that error pops up?
I'm not even using it
oh I never checked it, I can import it again and look for it
if I know it is ticked at every .1 of a second, then I need to multiply by 10 the amount I want to take out per second
so instead of doing the divide by 60, I need to divide by 600
I mean how far off we are getting at here?
using 2.3 gb max atm
Enough for error
well, if you look at my screenshot from earlier, you can see it's enough to be significant
how so? I had trouble understand how much time elapsed there< seems very small

time elapsed is just how long its been ticking for.
pretty sure its the actual time, too
unlike relying on the hardware to tick you every .1s
SO how would I put use that exactly? in terms of setting up a boolean or function to fire based on that?
you do exactly what I did in my screenshot above
well I'm glad it took this long because I caught a big bug (it was running more than once so when I put a integer to take that, I realized it was running as part of a loop instead of at the end of it
explains why your solution wasn't working either
hehe
so, you are saying that while this may work now, it's not as good as the method you described/pictured above?
In a system like this , what would be a typical way of simulating the fluids ?
Um, it is working?
Having some mesh with Z scale based on fill amount in the pipes and tank sounds.. awkward but might be right ?
@graceful sky What is the use case? most of that stuff can be cosmetic unless you are trying to recreate lab conditions
I'm pretty sure it's not working - you're removing a fixed number X each time the loop runs
It would just be a visual simulator really
i'm watching it count down and it damn near seems like it
I was thinking about trying to replicate some automation sensors and make it output values via modbus tcp..
I can guarantee you it's wrong
but at the same time, it's been over an hour of trying to explain it, so I'm kinda burnt out on it
just look at this then, as a way to test it
so if I have the tank start at 300 gallons full, draining 600 a minute, it should take 30 seconds, agreed?
something like that
is your point that it will not be on the decimal pt accurate, or will be .000x number off? this is very crude use case
ugh, let me make the example and find out how inaccurate it is
but at the same time, I can't even guarantee how inaccurate it will be
because tick time is not exact
one one machine it may take three times as long as another
but I'm not using tick? or are you saying that timer by event is still tick based?
meh at this point just do good enough Blake
story of my development life
Any event is on some level depending on delta time were my impression
@light thunder This is how timer works.
When you set a timer, it's adding some info to a list.
The engine has one main loop buried in it somewhere. That is the "tick loop".
Well, stop reading it for a second, because you're confused about some really fundamental stuff, so let's clear that up first. ๐
Yeah this'll be a more targeted explanation of what's really going on.
So I could accomplish the same thing but instead make an Event tick, with a delay, that performs the similar function but may behave more accurately?
No.
Lets just listen for a sec :)
The tick loop tracks what the time was last time it looped, compares it to the current time, and uses that to calculate how much time has passed since last time.
No it wouldn't be any more accurate. Delays are just timers internally.
I see
So I'd have to make some logic that would maybe fire off between a change in the delta time of certain range
Somewhere buried in this tick loop, it loops over all of these timers and says "This timer has X seconds left on it and it's been Y seconds since we last ran the main tick loop, so the remaining time is X - Y."
like a interval delta float that, when it's 1.0 seconds greater than the previous one, fires the event, then sets itself to current delta time, and eessentially resets every single)
No, just listen for a minute, please.
Thats the logic amber showed you. Taking delta time into consideration.
๐
If we keep interrupting it'll be harder to parse the entire sequence.
So, the main tick loop is tracking how much time since the last time it ran. It loops through all these timers and deducts that elapsed time from the remaining time on each timer.
If that timer's remaining time, after that deduction, is 0, it will call the function/event associated with that timer.
The main tick loop runs as fast as it can. How long it takes to run varies. Be it because your processor was busy with Chrome for a bit longer or because something in the game world literally exploded and it spent extra time calculating collisions and trajectories.
cool, so I've built both versions and run them side by side
the difference is bigger than I'm expecting, so I need to double check this xD
Delay and Timer both work the same way internally. It's just a "X seconds left" piece of info and then, during the tick, a loop that deducts from them and then fires them off if they've reached 0. That's all.
actually no, this is correct
the difference is huge because I tabbed into Discord and UE4 lost focus, reducing the framerate
so this is actually a great example
๐ ๐
Even event Tick is just the main tick loop of the engine looping through every tickable object and calling their Tick event and passing along that elapsed time.
but in this example, the 'right' implementation finished around the same time the 'wrong' one was still half-full
which is huge
Excellent explanation Sion ! We're on track, after all ๐
Delay and Timer can't perfectly run at the time specified, because you can't possibly know the time has elapsed until the main tick loop gets to that timer/delay and deducts the elapsed time - at which point, inherently, it is catching up to the amount of time that has already passed since the last time the main tick loop ran.
Literally everything in any kind of game or simulation is always happening slightly late. The simulation is always a matter of "How much time has passed? Okay, now let's calculate everything as it would be now that said time has passed."
</Explanation>
Funnily enough, if you think about it you yourself are always living in the past also.
...and here is the output log:
https://pastebin.com/PCWwDbL8
You gotta take time to perceive things and process them
One of my favourite scenes from Spaceballs the movie
you can see one slightly races ahead of the other - until the framerate tanked in UE4 because it lost focus
at which point the delta time version remains accurate, but the 'wrong' version starts to become wildly different
when the frame rate is low, delta time is high, so the 'correct' version is subtracting multiple liters/gallons/whatever on each loop, but the 'wrong' version keeps doing 0.1 ๐
regardless of how much time actually passed
@light thunder - make sense now?
yes but what I don't get is why the timer handle method isn't working for me, even when I have fixed the loop
elapsed time isn't delta time
I said before - you're using the wrong timer handle
and maybe the wrong handle
conceptually I understand, this is more of a syntax issue
you have two timers and your handle is for the other one....
ah, and it didn't work before because if the loop problem but I never tried hooking it ack
When you showed us this, your timer handle is for this OTHER event. Not for "RemoveWaterFromTank".
Yes, originally i made that second timer because I wanted to check if there was a problem with my loop because it's a long event chain, there was but I forgot to remove that part
So its working now?:)
um, not exactly
let me figure out what I'm doing wrong blueprint wise
now that I understand the concept
There's also like a dozen reasons numbers won't be perfect that you probably don't want me to get into right now.
it's too early (shouuld be 30 seconds)
I only care if it is off by a whole number or so
That's too large a margin. Something is wrong.
yep, I'm looking at it now
Can you share the whole set of blueprint logic, all the way through from when you set the timer?
well, we know the time isactually working -
We keep trying to diagnose from only a limited set of the logic, so it's possible there's some other thing we're all overlooking because we're trusting everything else is perfectly right.
the interger is set on the number of times the loop has been executed 246 in this time, or ten times a second (baseed on this timer event)
Unless you are starting this process on the first frame of the game, GetGameTimeInSeconds isn't going to be right.
Also, you can pretty much guarantee that at 0.1s, the timer will run 9 times a second generally, since it's extremely unlikely that you'll get that 10th execution perfectly at 1.0 seconds elapsed time.
actually it is off literally by the .1 delta of the lop
first pass through
handle by timer
again, we are getting a bit stuck in the weeds as I don't care of it is only .1 (which is still huge) off
Hold on, BeginValveFrictionCalcs.
That's a function on another class, how are you getting the elapsed time there?
that loops through a series of valve actors and yes, I understand that that will increase tick times, however, all I know is when i didn't use event timer but used a set number, it worked, (it shouldn't but it does)
I don't see you providing the timer handle to them.
because that function updates values on THIS bluepritn
and when that loop is finished, it executes the function that checks based on the updated values
So the valve BPs have a reference to this BP?
basically, it says, "hey valves, give me your outgoing GPM's" , then when loop is done it goes, "let's add up GPM's and see how much to remove from tank"
Anyone tried Paragon Sample Map? I have problem with collisions - Player Start has "BADsize" icon on it and when i spawn a character it falls down to infinity
yes, created when they are spawned, pass through the spawn event
Uh... I guess if that's working, alright, but this is a very bizarre architecture to have. Not sure why you're not providing only the necessary information as arguments and then getting the desired information as output from the function.
What do you mean, the valve's have their own parameters that drive the different values resulting in their each GPM output
It's fine, I don't want to over complicate this with a different discussion of a different subject.
Fair enough
So, that 0.4 vs ~0.41, interesting.
I would very much expect decimals in any value of time
well, if the timer started at 0, but didn't finish till .4, , it would be off by the duration of the loop?
it would be 0.4XXX, yeah
get game time in seconds runs when all elements are loaded correct?
after begin play on the game mode, I think
but more or less
possibly an internal state change on the game mode, actually
but that's irrelevant
Just in case, try logging the game time just before you set the timer.
And log it when you empty the tank.
Compare those two.
With the timer disconnected, you'll get different results simply by doing something like losing focus of the window. Try it out for kicks - leave it without the elapsed timer thing and test how long it takes while the window has focus versus while the window doesn't have focus. You'll get dramatically different results.
big delay I guess
let me make sure the spawn valve's event is'nt being fired that first time
or shoudl I just check the 2nd iteration through?
Remove all your break points.
Just copy the log output and do the math between the first time it prints and the last time it prints.
I have a meeting shortly.
0.0 and 4.18
err 0.418
weird stuff
looks like it runs 4 times in a row
the time doesn't change even when the loop goes through 4 times? the tank amount is obviously set then, that explains why something is off with the timer event ....
what would cause this, the game time in seconds doesn't change, even with multiple passes of the loop
i can't even move my character left and right :(, trying from two days, don't know what i am doing wrong
searching net like mad , but cannot make it work, anyone who can help me
@bronze cedar what input events are you using? make a Print string and bind an event key to make sure your controller (or wherever those key binds are on the blueprint) and make sure you are able do ANYTHING from there with your keys
movement component is just a tool to make it easier to do things for what you are doing but not necessary, first try to have a print event that fires from your character with a keypress
i am making a paddle and ball game and want to move my paddle left and right, this is really simple i know, but as a noob for me it's like a higher maths haha
i was doing that with input axis, for now i just closed that project because my mind is getting too hot ๐ฆ
haha because i cannot do that , that's why , i have been trying from the past two hours, almost
and from two days
ok i will do that, thanks for the help my friend ๐ @light thunder
good luck
I've disconnected most of the functionality from my blueprint and it's functions and am testing my Timer Handle - when I change the time on the Set Timer by Event node, when it is at 1 second, it is accurate in its calculates...however, when I change it to .1, it is very much off, even though I'm doing two or three extremely simple math operations (divide, multiply, then subtract) .....why is the time getting thrown off?
is the epic launcher freeze issue known?
i get random full pc freezes that sometimes lead to a frozen bluescreen
no memory dumps nothing
but only when the launcher is installed
whats the angle of directional light to be midnight?
Straight up?
I have tried 90 and 180 both seems to be how it is in the summer at 21.30 pm
Is there a way to make it so one physics object can't affect a certain one
Well I don't want it going through
I want them to stop each other
But to not influence the velocity of one
I want them to alter each other's velocity
But I don't want them to alter each other's velocity
๐ค
I think he wants to preserve the velocity value when if stops. Kinda like pausing it in a way
Because if I have a physic puzzle thing in a sense of it allowing a door to open that you pick up
and throw something, it'll push it away
locking the player in
so I need to find a way to have the thrown object not affect the door locking physics mechanic, but allow it to move on platforms continually
Basically yes
Seems like a pain to get working
Basically you wanna filter the OnHit for particular actors (OnHit being on the door) and only apply an impulse then.
Run an bp interface I suppose. Would rather be brute forced though
I'm trying to print all the tags of a line trace hit actor, any idea how I go about connecting the nodes?
You can have one item which blocks everything and has a large dampening, with another item that is used to track physics and doesn't itself collide with all things.
When the block everything item is hit, apply the impulse conditionally to the "fake" item
then adjust the loc/rot of the "real" item to the "fake" item
That'd be one way, the quickest hackiest way I can think of.
Hmmm actually I think I can just check if the object hits that certain actor, set its velocity to 0 so it no longer pushes it and will just fall to the floor
So yeah I guess you can zero vel, but it'd still slow the door.
@light thunder this is what i am doing and it's not printing
guys am i doing something wrong, my character paddle is not moving
I'll try it out
Its a bit of a kludge so if you got a lot of these you'll want something not as dumb.
Yup just zeroing the velocity of both at the same time of impact and making it delay after one second
No longer pushes it and still moves with the platform
@bronze cedar disable the movement node for now. See if it prints when you hit the button
ya adding safety checks to make sure its moving fast avoids any other issues like placing it on top of it
so only checks when its something fast
thanks a lot tho
@abstract relic i did with event tick , print after every one second and it's doing the job, but now with this one
Check your project settings. Make sure you have your game mode set, default pawn, all that good stuff
Probs stupid to add but Left should be A shouldnt it? Same with right to be D? Unless this is for something else other than a keyboard
oh ok , i don't have game mode,
my directional light is 90 degrees, it is practically looking up, and I still get this purple
omg , i am so noob , i want to cry if this is the problem haha, after watching 100's of tutorials i am at a zero position
๐
@abstract relic thanks my friend, i will be doing that , thanks so much
what about my problem ๐
did you hit refresh material
well you set sun height to -1
look at the override settings
or is that what you want
no, I want a black sky
remove the clouds then
did you bake the lighting
if by bake you mean that build button, I did it right now
nothing
found the issue
damn it
it was the atmospheric fog
I'm having an issue with my Get Timer by Elapsed Handle not being accurate - it this another way to make my own delta, and instead of using an event by timer, just fire the event when this is true?
can you give me some context? It might help
obviously it's not gonna be very accurate at low framerates
also, I don't really see the issue using timers?
are we still on this 0_o?
but yeah, you can never be more accurate than DeltaSeconds
(so timers are fine)
nooope ๐ฆ
in unreal engine 4 can u speed up the animations u put like this?
Difficulty : very strong 1 on 4 match Gogeta custom-with master roshi training and attack +2: ME Gt villains normal: CPU
I guess I need to expose it
can u speed up the animations in unreal engine 4?
rate param?
@dry moon you may use physics constraint component...if you will succeed exposing it, please write it down here, i've read that there are issues setting it dynamically
in unreal engine 4 can you speed up the animations?
@plush yew play rate
Fun fact, it's against the rules to spam the same question over and over.
Also, people answered you. It is possible. They even told you how.
wow, I creatued a ThirdPerson template project and did some tidying up of the folders (they're all over the place) Certain folders can't be deleted from the editor so when I delete them manually from the harddrive and load the project again it's completely blank.
so this lead me to discovering about redirectors, and how things can get really messy if you simply rename something or move it around to a different folder. Fix up redirectors doesn't seem to work properly.. What a mess
do not ever mess with the content folder from outside the editor
Fix up redirectors works if you don't delete the folders they're in...
so why couldn't I delete an empty folder?
it wasn't empty
because a redirector was in it
^
I ticked the show redirectors filter in the content browser and there was nothing in it
this was AFTER running a fix up redirectors on the folders
you should never see truly empty folders in the content browser
if they appear empty they usually contain at least one redirector
I ticked on EVERY single item in the content browser filter..
and there was NOTHING in the folder
at least visually from within the content browser
if Unreal is hiding files then wtf?
and here I was thinking Unity meta files were a bit shaky
Unreal seems a bit of a mess under the hood
every engine is a mess under the hood
Every engine is internally crying
That makes me externally cry
Itโs a sacred relationship as old as time
True that. I remember tearing my hair out over this when we moved over to Unreal at Lionhead
That was at the beginning of Legends. I would've thought they'd fixed this shit by now
you can show redirectors???
With the power of imagination yes
Weirdly there are two separate filters for redirectors.
oh...jss really
i have one
] @abstract relic will have the answer I'm sure ๐คฃ
Itโs redacted unfortunately
teehee
anybody willing to help a noob out?
Ask. For we donโt have answers to unspoken questions
I'm trying to make a vehicle from scratch. made and rigged the mesh in blender. imported it and set up the basics in UE, gas and steering. but on play, the car tilts forward, back wheels in the air, fronts intersecting the ground
no search or tutorial video has helped me fix it
@graceful edge one is only showing them, and the other is showing them along other files like textures.
Sounds like a collision issue
"redirectors" only shows them for easy fixing a lot of em, "show redir" is so you can spot them when moving one file.
basically
Youโve set up its physic asset yes?
yes
so 'show redir' only shows the redirector. That I can understand, but what of the one in the Misc folder?
What is it's purpose?
and when i simulate the physics asset it sits fine
Youโre input are physic based I assume?
@graceful edge opposite.
"redirectors" only shows those, no other files unless you enable multiple filters. this is handy when you select the main content folder and want to see them all in one glance.
"show redirectors" shows them along any other files, but doesnt show them when you click on ie the main content folder.
ah gotcha
both have different usecase, though a bit confusing for sure
thanks for the explanation Luos
im not sure.
i just set inputs for wasd, and set up a bluprint with throttle and steering
now I just have to get my head around why the redirectors weren't showing up after moving files around
maybe I should have just left the ThirdPerson folders alone
if there is no link to other files like textures > materials, or any file > blueprint they should not appear.
if they dont when they should appear, thats a bug (one I had today in 4.21)
I hate a messy project though
Screenshots mate. Show us your pride and broken joy
is it possible that your front wheel collisions are going through the ground plane very slightly?
try dragging it up a couple of centimetres
well it starts slightly above the ground and falls
ah ok.. just checking
i feel like somwhere i messed up something with the wheels
but i cant pinpoint it.
are you following a tutorial? maybe you missed a step
sometimes going back over with a fine tooth comb is a great way to learn
i checked multiple and double checked what i did, i see nothing different in mine than the mesh
and the collision settings are identical?
btw I'm also a noob so this is probably not the most helpful advice
as far as i know yea.
does your car have suspension or anything fancy like that?
if i place a mesh with no thing else it falls and sits fine
The lovies in #legacy-physics may have the answer
maybe the sa.Tnav node is broken
Hey all, I'm working on a spline mesh and building out a race track. Whenever I hit "F" to Focus Selected it zooms out really far and it's been hard to edit it effectively. Any tips for solving that?
@verbal radish show the screenshot after using f
@verbal radish what the output log says when you press F ?
@next badger Cmd: CAMERA ALIGN ACTIVEVIEWPORTONLY
@verbal radish and this issue happens only with spline mesh?
yup
landscape is ok?
yeah, landscape works as expected
@verbal radish spline track is a custom actor right?
Yeah
@verbal radish but the track is just spline mesh?
ah sorry about that, I wasn't familiar with the difference
@verbal radish have you tried to close and open the engine?
yeah
i'm trying to replicate the issue here, but so far everything works as expected
weird, this was a project I purchased on the store that I'm modifying. Are there any settings in the blueprint I can look for to try and debug?
@verbal radish is there any particular reason why it's not using Landscape Splines?
@next badger I'm not sure, the track uses spline points and procedurally adds meshes, checkpoints, boostpads, etc along the spline. Is that possible with landscape splines?
The focus selected key doesn't seem to work on landscape splines either.
@verbal radish yeah, the hotkey is not available in edit mode
I can send over the .uasset if you'd like to look at it
@verbal radish ok, pm me
Does the Migrate button overwrite an asset already in the target directory?
I suppose I could test real quick
It prompts
Never mind
Any suggestions how I can make this list of strings (overlapping tags) display in game? I can already use set text to replace on line dynamically no probs, however I want a multiline list (pretty much an in game version print string)
With actually using UMG or Slate. Debug texts like that won't show up ingame.
@wet berry no, it asks every time
@merry gazelle as Zero said, you need an UMG/Slate widget that will be rendered as part of GUI, there are many of tutorials on YT how to render text in ue4
@merry gazelle https://www.youtube.com/watch?v=af-xfV-B2rY
In this video we will learn how to create a UMG widget that functions like a Journal/Log/History when objects have been "picked up" in the map. After an Acto...
Sorry if this is the wrong place, but I'm experiencing some... very unusual shadows when I load up VR preview, and it persists with the viewport until I've restarted UE4. Never happened before. https://i.imgur.com/F1WQZU9.png
@strong python try to disable instancing rendering
How do I do that @next badger? Fairly new here, wanted to take a look at how the VR template worked though.
instanced stereo rendering?
lol
that's a vr optimization feature but may produce a lot of glitches, i haven't seen the one you experiencing however, you may also ask on #virtual-reality
Nope, same issue
@strong python you restarted the engine?
@strong python what are the scalability settings?
Cinematic. Still happens on epic
hmm
it seems that at high, its fixed, but epic-cinematic causes these issues
Specifically, if I go to 95% res, its fine. If its 100% res, it dies.
@strong python what if you lower all the settings of scalability but leave the resolution to 100?
is there any way to get a reference of where this event is being called from?
or do I need to make the object constructor into a widget constructor and bind a custom event
Not sure where to ask this
I have a really weird bug
After trying everything I could think of, I just deleted LeftLeg bp
AND IT STILL hangs on this
whats worse, is the function that is hanging, has absolutely NO REASON to be even coming close to referencing this
I even tried calling the event will blank variables
This used to work
Here you can see that, there is no trace of Leftleg bp
I'm not sure what is referencing this imaginary bp
Restart your session.
Also, have you been using hot reload (clicking compile in UE4 or recompiling from VS while UE4 is running)?
No, I only opened VS to debug.
editor and game just hangs forever, no crash or assert
This only happens if I use the "use dedicated server" option
some google search says that REINST is a dependency loop issue. But I totally removed anything that even is called leftleg without issue, and the game STILL referencing it
ProcessRemoteFunctionForChannel is the function that is looping forever
here you can see why its looping:
The next value is always itself (leftleg)
I'm confused by the .Tags part.
I just tried deleting my intermediate/binary/vs files, recompiled
same issue
Hey, would anyone be willing to help my friend and I with his project in a call or DMs? We can't get attack collisions working properly with his blueprints and unfortunately we need to have this problem fixed by tonight
Ah okay, thanks!
@livid haven I dont understand why, but all I did was manually recreate the event itself, and it no longer references the ghost blueprint.....
๐คท REINST isn't a bug. It's just not something you should be exposed to in the editor. It is something you may see while debugging.
Has to do with blueprint compilation.
could one of you help me?
tessellation isn't working on my texture, im on mac and i dont know how to get it to work
ok thanks!
Maybe #visual-fx
About my bug?
I have bothered you enough
And I wasn't even sure what the issue was
And the answer was even weirder
Yeah that's something else.
Anyway now you know deleting BP nodes is a possible solution to bugs =D
dude, i lost 2 days of time because of this
Like, if I could figure out who is responsible, i'd pay them a home visit ๐
Seriously though, how the hell would anyone have figured it out based on where the loop was stuck
The only reason I even re-created the event, was because I was going to add the variables back in one by one, until it got stuck again
and to my surprise it just worked
"It just works" (tm)
Could be anything in that entire exec chain
anyone have any idea regarding my question?
It may have just been that you made a significant control flow change.
No I mean after it cropped up, to fix it.
Yeah.
And by doing that.
You made a huge change to the control flow.
Its an entirely different entry point.
@dim arch I see you're trying to do procedurally populated control UI
Wrap all the basic UWidgets you want (eg, Checkbox, Button) in a custom user widget.
That's the best way to do this
Internally your WBP_Checkbox binds CheckStateChanged and it calls its own OnCustomCheckStateChanged which also passes a pointer.
So OnCustomCheckStateChanged(Self, IsChecked)
Bonus points: you can now easily change the style of ALL your checkboxes.
@zenith flower OutParm?
?
responding to your question
I dont understand it
it was part of the stuck loop
but the function was from the inetdriver
some sort of replication thing
I don't know if it was the sending or receiving part that was getting stuck
here is the SS for the whole thing
Well.
I'm not super familiar with that part of replication.
But I'm pretty familiar with how OutParm stuff works
The NextOutParam would always be LeftLeg bp, hence the loop
Right.
but I deleted leftleg bp
Doesn't matter.
I deleted the intermediate and binaries
restarted ect
HOW did it have a reference to leftleg bp?
(I had no issues deleting the bp in editor)
(no references)
Its part of a function's output somewhere.
Its package would have been deleted though so its kinda interesting how it didn't break
but the only part of the event that used it, was a dynamic array
Anyway, if you get a tight loop like that then something went wrong trying to link the OutParms
So its not too surprising that having a change to the graph (read the event exec wire) fixed it.
Maybe, it was using an old generated link, and somehow was not re-creating the link?
I'd have to re-reference the compiler but that's possible.
On a side note, how comes using the color wheel inside of a material generates hundreds to thousands of shaders to compile?
Complicated mat?
Pre-computed permutations
(discarded on dirty)
I tried to find the perfect shade of purple, and ended up with 3000 shaders to compile
I think there'd be a setting to disable that
Anyway, solution to that: Make a mat inst
sure, just bitching about workflow
I should be able to fine tune a color without compiling thousands of shaders for it
3000 shaders takes me 10 minutes
I have to write down the color values, restart the editor
type in the values, and it will only compile 10 or so
anyways, im getting off my soap box
enough crying
Time to get back to work tomorrow, now that work has actual meaning again xD
Hey
guys
how do I
do the looking-for-talent thing
I'm tryna hire
nvm I know now
hey is anyone up for voice chat i have questions
Also, for my talent post thing, contact me through dm's
@plush yew You're more likely to get answers through text here - ask your questions with details about your problem, and people might help ๐
Hi everyone
Someone here use World Creator 2 with Unreal Engine 4 ? I need help for something
If someone see my message...
No answer can be given to an unasked question
Youโd be surprised how many think we can read minds ๐
I use World Creator 2 to generate terrains, I want to export my terrains in UE4 for add details ( grass, rocks, trees... ) I know how to export the terrain in the UE4 with the heightmaps but I have problem with the texture exportation, I don't know how to do that correctly and I can't the videos tutorials, is too " indirect " for me ( and I'm french so is more complicated lol ) so if someone here know how to do that... ๐
So my question is : How to do that ? ๐
I can't use*
Trying to clean up a redirector of a renamed widget
Not quite sure why this would happen. Didn't do anything special with the widget.
It still opens properly etc.
The checkf is hit for the break
Which would mean it tries to unlink while the object needs loading.
Thought it would load the packages when trying to fix up redirectors anyway?
Ah well, lemme see if opening the widgets that use this one would solve this...
WELL, it's the other widget that causes it. Nvm I guess.
So, no idea why but some child-widgets just broke. Weren't using them anymore so I removed them via explorer.
Couldn't open or delete them anymore. No idea if the renaming caused it (never had that before) or if they were broken to begin with
Hi Guys ,
Looking For reference material to setting a in Game Currency system
if any one can help would be awesome i was told this is the place for awesome information
Maya -> Unreal:
"Export a scene to Unreal Engine" via "Send To Unreal"
When choosing the unreal project, do i have to choose the main folder where the unreal project is, or do i have to select the "Mesh" folder?
do any of you know how to give a animated ocean collision? so you can bob up and daown with the waves?
does unreal have a native way to connect to sessions using ip/ports, rather than using steam
Nobody can help me ?
I use World Creator 2 to generate terrains, I want to export my terrains in UE4 for add details ( grass, rocks, trees... ) I know how to export the terrain in the UE4 with the heightmaps but I have problem with the texture exportation, I don't know how to do that correctly and I can't use the videos tutorials, is too " indirect " for me ( and I'm french so is more complicated lol ) so if someone here know how to do that... ๐
@torpid compass - maths. Lots of maths.
you probably don't want to "give it collision"
for some reason when i move my game mode blueprint to a different folder and then fix up the redirctors it wont run the game mode properly
hey guys, My game keeps crashing. The end of the log file looks like this
[2019.01.16-20.14.07:934][486]LogOutputDevice: Warning:
Script Stack (1 frames):
BP_MonsterBase_C.ReceiveTick
[2019.01.16-20.14.07:934][486]LogWindows: Windows GetLastError: The operation completed successfully. (0)
the logs should tell more errors
Looks like missing information - please post the whole last few bits of the log
(Pastebin.com is usually a good place to do so)
@wary wave
ta, will look in a minute