wip: Ray effect
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
void Facing_float(float3 ObjectPos, float3 Origin, float3 InUp, uint Orthographic, out float3 FacingWorldPos, out float3 FacingObjectPos, out float3 Right, out float3 Up, out float3 Forward)
|
||||
{
|
||||
float3 origin = TransformObjectToWorld(float3(0, 0, 0));
|
||||
float3 view = lerp(normalize(origin - _WorldSpaceCameraPos.xyz), GetViewForwardDir(), Orthographic);
|
||||
|
||||
Up = normalize(InUp);
|
||||
Right = normalize(cross(Up, view));
|
||||
Forward = cross(Right, Up);
|
||||
|
||||
FacingWorldPos = Origin;
|
||||
FacingWorldPos += ObjectPos.x * length(TransformObjectToWorld(float3(1, 0, 0)) - origin) * Right;
|
||||
FacingWorldPos += ObjectPos.y * length(TransformObjectToWorld(float3(0, 1, 0)) - origin) * Up;
|
||||
FacingWorldPos += ObjectPos.z * length(TransformObjectToWorld(float3(0, 0, 1)) - origin) * Forward;
|
||||
|
||||
FacingObjectPos = TransformWorldToObject(FacingWorldPos);
|
||||
}
|
||||
Reference in New Issue
Block a user