mirror of
https://github.com/AssetRipper/AssetRipper.git
synced 2025-12-11 20:15:29 +01:00
65 lines
2.1 KiB
C#
65 lines
2.1 KiB
C#
using AssetRipper.SourceGenerated.Enums;
|
|
using AssetRipper.SourceGenerated.Subclasses.LineParameters;
|
|
|
|
namespace AssetRipper.SourceGenerated.Extensions
|
|
{
|
|
public static class LineParametersExtensions
|
|
{
|
|
public static void Initialize(this ILineParameters lineParameters, UnityVersion version)
|
|
{
|
|
lineParameters.WidthMultiplier = 1.0f;
|
|
if (lineParameters.Has_WidthCurve())
|
|
{
|
|
lineParameters.WidthCurve.SetDefaultRotationOrderAndCurveLoopType();
|
|
lineParameters.WidthCurve.Curve.AddNew().SetValues(version, 0.0f, 1.0f, KeyframeExtensions.DefaultFloatWeight);
|
|
}
|
|
else
|
|
{
|
|
lineParameters.StartWidth = 1f;
|
|
lineParameters.EndWidth = 1f;
|
|
//Just guessing. I did not verify these values anywhere.
|
|
}
|
|
if (lineParameters.Has_ColorGradient())
|
|
{
|
|
lineParameters.ColorGradient.Ctime0 = 0;
|
|
lineParameters.ColorGradient.Atime0 = 0;
|
|
lineParameters.ColorGradient.Ctime1 = ushort.MaxValue;
|
|
lineParameters.ColorGradient.Atime1 = ushort.MaxValue;
|
|
lineParameters.ColorGradient.NumColorKeys = 2;
|
|
lineParameters.ColorGradient.NumAlphaKeys = 2;
|
|
if (lineParameters.ColorGradient.Has_Key0_ColorRGBA32())
|
|
{
|
|
lineParameters.ColorGradient.Key0_ColorRGBA32.SetAsWhite();
|
|
lineParameters.ColorGradient.Key1_ColorRGBA32.SetAsWhite();
|
|
}
|
|
else
|
|
{
|
|
lineParameters.ColorGradient.Key0_ColorRGBAf.SetAsWhite();
|
|
lineParameters.ColorGradient.Key1_ColorRGBAf.SetAsWhite();
|
|
}
|
|
}
|
|
else if (lineParameters.Has_EndColor() && lineParameters.Has_StartColor())
|
|
{
|
|
lineParameters.StartColor.SetAsWhite();
|
|
lineParameters.EndColor.SetAsWhite();
|
|
}
|
|
lineParameters.NumCornerVertices = 0;
|
|
lineParameters.NumCapVertices = 0;
|
|
lineParameters.Alignment = (int)LineAlignment.View;
|
|
lineParameters.TextureMode = (int)LineTextureMode.Stretch;
|
|
lineParameters.ShadowBias = 0.5f;
|
|
lineParameters.GenerateLightingData = false;
|
|
}
|
|
|
|
public static LineAlignment GetAlignment(this ILineParameters parameters)
|
|
{
|
|
return (LineAlignment)parameters.Alignment;
|
|
}
|
|
|
|
public static LineTextureMode GetTextureMode(this ILineParameters parameters)
|
|
{
|
|
return (LineTextureMode)parameters.TextureMode;
|
|
}
|
|
}
|
|
}
|