42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using FishNet.Documenting;
 | |
| using UnityEngine;
 | |
| 
 | |
| namespace FishNet.Utility.Extension
 | |
| {
 | |
|     [APIExclude]
 | |
|     public static class TransformFN
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// Sets the offset values of target from a transform.
 | |
|         /// </summary>
 | |
|         /// <param name="pos">Position offset result.</param>
 | |
|         /// <param name="rot">Rotation offset result.</param>
 | |
|         public static void SetTransformOffsets(this Transform t, Transform target, ref Vector3 pos, ref Quaternion rot)
 | |
|         {
 | |
|             if (target == null)
 | |
|                 return;
 | |
|             pos = (t.position - target.position);
 | |
|             rot = (t.rotation * Quaternion.Inverse(target.rotation));
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// Sets local position and rotation for a transform.
 | |
|         /// </summary>
 | |
|         public static void SetLocalPositionAndRotation(this Transform t, Vector3 pos, Quaternion rot)
 | |
|         {
 | |
|             t.localPosition = pos;
 | |
|             t.localRotation = rot;
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// Sets local position, rotation, and scale for a transform.
 | |
|         /// </summary>
 | |
|         public static void SetLocalPositionRotationAndScale(this Transform t, Vector3 pos, Quaternion rot, Vector3 scale)
 | |
|         {
 | |
|             t.localPosition = pos;
 | |
|             t.localRotation = rot;
 | |
|             t.localScale = scale;
 | |
|         }
 | |
| 
 | |
|     }
 | |
| 
 | |
| } |