Comparing two equal transform return me false 90% of time true 10% of time

What sort of magic is this? I thought it was my tired eyes (i posted help for my comparetransform function in bluescript scripting) but it seem that in debug information my both transform are equal and my function return me they are not

here is an example:

Function CompareTransform:

Debug information:

Epic magic ). I am also not sure that they are equal from your example.

Hi ,

Can you show me what values are being plugged into your transforms? Thank you!

here is an example of plugged value that return me false 90% of time, and sometime true o_o

result of print screen:

in my transform array i put transform value of this actor received from the server

i use the 4.4.3 update from the launcher

in my opinion the “set actor transform” dont really set the actor to the exact transform i give it, but sometime it does

because my function return me sometime true _

is that possible that set actor transform can set the actor with an error of 0.000001 somewhere?

Hi ,

I haven’t been able to reproduce this on my end. What values are you feeding into your transform array? Additionally, what version of the editor are you using?

with the comparing length of location between t1 and t2 it return me the same result (many time false, sometime true)

sometime the rotation dont match like here (not always the Y axis):

btw sometime rotation match perfectly but i got false, so the location vector seem to not match too but cant see it with printstring, but i can watch it with debug break

I can simply reproduce this bug with a blank project:

-Create blank blueprint project

-open level blueprint

-do like this blueprint

-be sure to set the static mesh chair to movable

Look result when launching game: it return many time false :frowning:

Try comparing the length of the locations and see if that fixes the error.
Note: What I am trying to see is if the error is tied to the location, rotation, or if something else may be causing the problem.

Hi ,

I was able to reproduce this on my end and can confirm that it is specifically reproduced when checking between the locations on the transform, the rotation works as intended. I have entered a bug report, TTP#346988 to be assessed by the development staff. Thank you!

Thanks for your time i was going , is there a way to follow your bug report ?

and are you sure about rotation ? because in my real project i had some strange result like this one


the rotation dont match on YAW and ROLL

and the blueprint was this:

how can the yaw and roll be different in this case even i force the actor transform to be the same as my transform in array?

about the blueprint reproduction did you use the same value as me in the transform? 1.123456

when i do this (with only rotation test) i have false return too

with location test only i get false too ofc

if you mean this test

it return me false

Hi ,

I don’t believe these two issues are directly related. Please make a second post about the rotation bug so we can track it. What I did to check and see if the bool returned true was to plug the == rotation directly into the print string of the blueprint repro you provided above. This returned true every time.

if you set 0 0 0 on rotation then it return true

if you set 0 0.2 0 on rotation then it return false

if you set 0 0.1 0 on rotation it return true

i am sure there many random value that will return different boolean on comparaison

the problem seem to be on the set actor transform function ?

here is to reproduce a FALSE return with rotation compare

Hi ,

I will add this information to the report. Thank you!