添加了更多的材质函数,部分与引擎新特性重合,这是为了能够脱离引擎在多个版本中更具可移植性。
添加了多种对程序流程控制与保全的脚本,而且现在可以更快速的构建一个具有线性关系的协程了。 添加了一个支持多种模式的单维梯度控制器,类似unity的颜色梯度类型。 添加了一个用于看向某个物体的旋转控制器。 添加了一个加载宏。 完善了批处理脚本流程。
This commit is contained in:
@@ -14,7 +14,72 @@ namespace XericLibrary.Runtime.MacroLibrary
|
||||
public static partial class MacroMath
|
||||
{
|
||||
#region <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD><D8B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ľ<EFBFBD><C4BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
/// <param name="vec"></param>
|
||||
/// <returns></returns>
|
||||
public static Matrix4x4 RandomMatrix4(float range)
|
||||
{
|
||||
return new Matrix4x4(
|
||||
RandomVector4(range),
|
||||
RandomVector4(range),
|
||||
RandomVector4(range),
|
||||
RandomVector4(range));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>귶Χ<EAB7B6>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8>(<28><><EFBFBD>η<EFBFBD>Χ)
|
||||
/// </summary>
|
||||
/// <param name="vec"></param>
|
||||
/// <returns></returns>
|
||||
public static Vector4 RandomVector4(float range)
|
||||
{
|
||||
var rand = new System.Random();
|
||||
range *= 100;
|
||||
Func<float> GetNextRand = () =>
|
||||
{
|
||||
return rand.Next((int)-range, (int)range) * 0.01f;
|
||||
};
|
||||
|
||||
return new Vector4(GetNextRand(), GetNextRand(), GetNextRand(), GetNextRand());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>귶Χ<EAB7B6>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8>(<28><><EFBFBD>η<EFBFBD>Χ)
|
||||
/// </summary>
|
||||
/// <param name="vec"></param>
|
||||
/// <returns></returns>
|
||||
public static Vector3 RandomVector3(float range)
|
||||
{
|
||||
var rand = new System.Random();
|
||||
range *= 100;
|
||||
Func<float> GetNextRand = () =>
|
||||
{
|
||||
return rand.Next((int)-range, (int)range) * 0.01f;
|
||||
};
|
||||
|
||||
return new Vector3(GetNextRand(), GetNextRand(), GetNextRand());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡһ<C8A1><D2BB><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>귶Χ<EAB7B6>ڵ<EFBFBD><DAB5><EFBFBD><EFBFBD><EFBFBD>ʸ<EFBFBD><CAB8>(<28><><EFBFBD>η<EFBFBD>Χ)
|
||||
/// </summary>
|
||||
/// <param name="vec"></param>
|
||||
/// <returns></returns>
|
||||
public static Vector2 RandomVector2(float range)
|
||||
{
|
||||
var rand = new System.Random();
|
||||
range *= 100;
|
||||
Func<float> GetNextRand = () =>
|
||||
{
|
||||
return rand.Next((int)-range, (int)range) * 0.01f;
|
||||
};
|
||||
|
||||
return new Vector2(GetNextRand(), GetNextRand());
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
@@ -85,11 +150,22 @@ namespace XericLibrary.Runtime.MacroLibrary
|
||||
return z;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>Сֵ<D0A1><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
/// <param name="a"></param>
|
||||
/// <param name="b"></param>
|
||||
/// <returns></returns>
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static float MinPositive(float a, float b)
|
||||
=> Math.Min(Math.Max(0, a), Math.Max(0, b));
|
||||
|
||||
/// <summary>
|
||||
/// <20><>ȡ<EFBFBD><C8A1><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD>Сֵ<D0A1><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
/// </summary>
|
||||
/// <param name="a"></param>
|
||||
/// <param name="b"></param>
|
||||
/// <returns></returns>
|
||||
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
||||
public static int MinPositive(int a, int b)
|
||||
=> Math.Min(Math.Max(0, a), Math.Max(0, b));
|
||||
@@ -162,7 +238,5 @@ namespace XericLibrary.Runtime.MacroLibrary
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user