public static Vector3 GetOffset(Vector3 atPosition, Transform cameraTransform) { HB hb = HB.Instance; if (hb == null) { return(new Vector3(0.0f, 0.0f, 0.0f)); } Vector3 offset; HBSettings settings = GetSettings(); #if UNITY_EDITOR if (settings.AttachToCameraInEditor) { offset = HBUtils.GetOffset(atPosition, settings, cameraTransform); } else { offset = HBUtils.GetOffset(atPosition, settings); } #else offset = HBUtils.GetOffset(atPosition, settings, cameraTransform); #endif return(offset); }
public static void FixMesh(MeshFilter meshFilter, float fixBoundsRadius) { HB hb = HB.Instance; if (hb == null) { return; } Vector3 hbOffset = HBUtils.GetOffset(GetSettings(), fixBoundsRadius); meshFilter.sharedMesh = HBUtils.FixMesh(meshFilter.sharedMesh, meshFilter.transform, hbOffset); }
public static void FixSkinned(SkinnedMeshRenderer skinned, float fixBoundsRadius) { HB hb = HB.Instance; if (hb == null) { return; } Vector3 hbOffset = HBUtils.GetOffset(GetSettings(), fixBoundsRadius); HBUtils.FixSkinned(skinned, skinned.localBounds, skinned.transform, hbOffset); }
public Vector3 HBOffset() { HBSettings settings = new HBSettings(BendingMode, Curvature * HB.CURVATURE_FACTOR, Flatten, HorizonXOffset, HorizonYOffset, HorizonZOffset, false); return(HBUtils.GetOffset(settings, FixBoundsRadius)); }
public static Vector3 GetOffset(HBSettings settings, float radius) { Vector3 atPoint = Vector3.Scale(new Vector3(settings.HorizonXOffset, settings.HorizonYOffset, settings.HorizonZOffset), settings.Mask) + settings.Gradient * radius; return(HBUtils.GetOffset(atPoint, settings, null)); }