Vector3 Spherical Interpolation
4742 Views
-
using { /UnrealEngine.com/Temporary/SpatialMath } VSlerp(V1:vector3,V2:vector3,Interpolation:float):vector3= ClampedInterpolation := Clamp(Interpolation, 0.0, 1.0) Dot := DotProduct(V1,V2) ThetaRad := ArcCos(Dot) SinTheta := Sin(ThetaRad) if(SinTheta = 0.0): return Lerp(V1,V2,Interpolation) V3 := Sin((1.0- ClampedInterpolation) * ThetaRad) / SinTheta * V1 V4 := Sin(ClampedInterpolation * ThetaRad) / SinTheta * V2 Result :vector3 = V3 + V4 return Resultusing { /UnrealEngine.com/Temporary/SpatialMath } VSlerp(V1:vector3,V2:vector3,Interpolation:float):vector3= ClampedInterpolation := Clamp(Interpolation, 0.0, 1.0) Dot := DotProduct(V1,V2) ThetaRad := ArcCos(Dot) SinTheta := Sin(ThetaRad) if(SinTheta = 0.0): return Lerp(V1,V2,Interpolation) V3 := Sin((1.0- ClampedInterpolation) * ThetaRad) / SinTheta * V1 V4 := Sin(ClampedInterpolation * ThetaRad) / SinTheta * V2 Result :vector3 = V3 + V4 return Result
You're reading a preview
The full reference is free for BrainDeadGuild Discord members — sign in to read it all, or open the original at the source.
Sign in with your BrainDead.TV / BrainDeadGuild Discord account for full access.