Merge branch 'Chikinsupu-Visject-ConnectionCurvatureOption'
This commit is contained in:
@@ -312,6 +312,13 @@ namespace FlaxEditor.Options
|
|||||||
[EditorDisplay("Cook & Run"), EditorOrder(500)]
|
[EditorDisplay("Cook & Run"), EditorOrder(500)]
|
||||||
public int NumberOfGameClientsToLaunch = 1;
|
public int NumberOfGameClientsToLaunch = 1;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets the visject connection curvature.
|
||||||
|
/// </summary>
|
||||||
|
[DefaultValue(1.0f), Range(0.0f, 2.0f)]
|
||||||
|
[EditorDisplay("Visject"), EditorOrder(550)]
|
||||||
|
public float ConnectionCurvature { get; set; } = 1.0f;
|
||||||
|
|
||||||
private static FontAsset DefaultFont => FlaxEngine.Content.LoadAsyncInternal<FontAsset>(EditorAssets.PrimaryFont);
|
private static FontAsset DefaultFont => FlaxEngine.Content.LoadAsyncInternal<FontAsset>(EditorAssets.PrimaryFont);
|
||||||
private static FontAsset ConsoleFont => FlaxEngine.Content.LoadAsyncInternal<FontAsset>(EditorAssets.InconsolataRegularFont);
|
private static FontAsset ConsoleFont => FlaxEngine.Content.LoadAsyncInternal<FontAsset>(EditorAssets.InconsolataRegularFont);
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
using FlaxEngine;
|
using FlaxEngine;
|
||||||
using FlaxEngine.GUI;
|
using FlaxEngine.GUI;
|
||||||
using System;
|
using System;
|
||||||
|
using FlaxEditor.Options;
|
||||||
|
|
||||||
namespace FlaxEditor.Surface.Elements
|
namespace FlaxEditor.Surface.Elements
|
||||||
{
|
{
|
||||||
@@ -57,8 +58,8 @@ namespace FlaxEditor.Surface.Elements
|
|||||||
private static void CalculateBezierControlPoints(Float2 start, Float2 end, out Float2 control1, out Float2 control2)
|
private static void CalculateBezierControlPoints(Float2 start, Float2 end, out Float2 control1, out Float2 control2)
|
||||||
{
|
{
|
||||||
// Control points parameters
|
// Control points parameters
|
||||||
const float minControlLength = 100f;
|
const float minControlLength = 50f;
|
||||||
const float maxControlLength = 150f;
|
const float maxControlLength = 120f;
|
||||||
var dst = (end - start).Length;
|
var dst = (end - start).Length;
|
||||||
var yDst = Mathf.Abs(start.Y - end.Y);
|
var yDst = Mathf.Abs(start.Y - end.Y);
|
||||||
|
|
||||||
@@ -66,6 +67,7 @@ namespace FlaxEditor.Surface.Elements
|
|||||||
var minControlDst = dst * 0.5f;
|
var minControlDst = dst * 0.5f;
|
||||||
var maxControlDst = Mathf.Max(Mathf.Min(maxControlLength, dst), minControlLength);
|
var maxControlDst = Mathf.Max(Mathf.Min(maxControlLength, dst), minControlLength);
|
||||||
var controlDst = Mathf.Lerp(minControlDst, maxControlDst, Mathf.Clamp(yDst / minControlLength, 0f, 1f));
|
var controlDst = Mathf.Lerp(minControlDst, maxControlDst, Mathf.Clamp(yDst / minControlLength, 0f, 1f));
|
||||||
|
controlDst *= Editor.Instance.Options.Options.Interface.ConnectionCurvature;
|
||||||
|
|
||||||
control1 = new Float2(start.X + controlDst, start.Y);
|
control1 = new Float2(start.X + controlDst, start.Y);
|
||||||
control2 = new Float2(end.X - controlDst, end.Y);
|
control2 = new Float2(end.X - controlDst, end.Y);
|
||||||
|
|||||||
Reference in New Issue
Block a user