Compare commits

..

No commits in common. "69c96ab471b04fc0594e0691280390d1a3c08f7e" and "e7babe0dd6b3d5c63fb88d53c86e2605e741737b" have entirely different histories.

11 changed files with 86 additions and 48 deletions

View File

@ -18,7 +18,7 @@ jobs:
- os: windows
unityVersion: 2019.4
build-target: Android
- os: macOS
- os: macos
unityVersion: 2019.4
build-target: iOS
- os: windows
@ -30,7 +30,7 @@ jobs:
- os: windows
unityVersion: 2020.3
build-target: Android
- os: macOS
- os: macos
unityVersion: 2020.3
build-target: iOS
- os: windows
@ -42,7 +42,7 @@ jobs:
- os: windows
unityVersion: 2021.3
build-target: Android
- os: macOS
- os: macos
unityVersion: 2021.3
build-target: iOS
- os: windows
@ -54,7 +54,7 @@ jobs:
- os: windows
unityVersion: 2022.2
build-target: Android
- os: macOS
- os: macos
unityVersion: 2022.2
build-target: iOS
- os: windows
@ -101,12 +101,12 @@ jobs:
}
elseif ( $global:PSVersionTable.OS.Contains("Darwin") )
{
$hubPath = "/Applications/Unity Hub.app/Contents/macOS/Unity Hub"
$hubPath = "/Applications/Unity Hub.app/Contents/MacOS/Unity Hub"
$editorRootPath = "/Applications/Unity/Hub/Editor/"
$editorFileEx = "/Unity.app/Contents/macOS/Unity"
$editorFileEx = "/Unity.app/Contents/MacOS/Unity"
$directorySeparatorChar = "/"
# /Applications/Unity\ Hub.app/Contents/macOS/Unity\ Hub -- --headless help
# /Applications/Unity\ Hub.app/Contents/MacOS/Unity\ Hub -- --headless help
function unity-hub
{
& $hubPath -- --headless $args.Split(" ") | Out-String -NoNewline
@ -218,7 +218,7 @@ jobs:
}
elseif ( $global:PSVersionTable.OS.Contains("Darwin") ) {
echo 'Building using Mac'
$editorFileEx = "/Unity.app/Contents/macOS/Unity"
$editorFileEx = "/Unity.app/Contents/MacOS/Unity"
$editorrunpath = Join-Path $editorRootPath $unityVersion $editorFileEx
function unity-editor {

View File

@ -19,7 +19,7 @@ jobs:
strategy:
matrix:
include:
- os: macOS
- os: macos
build-target: iOS
- os: windows
build-target: Android

View File

@ -4,7 +4,7 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/).
## Release 2.3 - Reanimation - 2023/02/07
## Release 2.3 - Reanimation - 2022/02/07
It has been a tough time for all since the last update, but things have been moving steadily along. In the past few months there has been a concerted effort to revamp and update the project ready for Unity 2022, as well as migrating the source repository over to GitHub and refreshing all the things.
We hope the new release is better for everyone and we have paid close attention to the editor menus and places to find all the controls for this release.

View File

@ -209,8 +209,6 @@ There are almost 70+ extension controls / effect and other utilities in the proj
|NicerOutline|RaycastMask|UIFlippable|UIImageCrop|SoftAlphaMask|
|CylinderText|UIParticleSystem|CurlyUI|Shine Effect|Shader Effects|
> Text Effects are not supported with TextMeshPro due to its architecture, try using the native TextMeshPro effects instead.
[Additional Components](https://unity-ui-extensions.github.io/Controls.html#additional-components)
|ReturnKeyTrigger|TabNavigation|uGUITools|ScrollRectTweener|ScrollRectLinker|

View File

@ -1,10 +1,13 @@
/// Credit Breyer
/// Sourced from - http://forum.unity3d.com/threads/scripts-useful-4-6-scripts-collection.264161/#post-1777407
#if !UNITY_2022_1_OR_NEWER
namespace UnityEngine.UI.Extensions
{
#if UNITY_2022_1_OR_NEWER
[RequireComponent(typeof(TMPro.TMP_Text))]
#else
[RequireComponent(typeof(Text))]
#endif
[RequireComponent(typeof(RectTransform))]
[AddComponentMenu("UI/Effects/Extensions/Curved Text")]
public class CurvedText : BaseMeshEffect
@ -84,4 +87,3 @@ namespace UnityEngine.UI.Extensions
}
}
}
#endif

View File

@ -1,11 +1,14 @@
/// adaption for cylindrical bending by herbst
/// Credit Breyer
/// Sourced from - http://forum.unity3d.com/threads/scripts-useful-4-6-scripts-collection.264161/#post-1777407
#if UNITY_2022_1_OR_NEWER
namespace UnityEngine.UI.Extensions
{
#if UNITY_2022_1_OR_NEWER
[RequireComponent(typeof(TMPro.TMP_Text))]
#else
[RequireComponent(typeof(Text))]
#endif
[RequireComponent(typeof(RectTransform))]
[AddComponentMenu("UI/Effects/Extensions/Cylinder Text")]
public class CylinderText : BaseMeshEffect
@ -54,4 +57,3 @@ namespace UnityEngine.UI.Extensions
}
}
}
#endif

View File

@ -40,7 +40,7 @@ use HTML-like tags in your text. Try it out, you'll see what I mean. It doesn't
break down entirely, but it doesn't really do what you'd want either.
*/
#if !UNITY_2022_1_OR_NEWER
using System.Collections.Generic;
namespace UnityEngine.UI.Extensions
@ -74,11 +74,6 @@ namespace UnityEngine.UI.Extensions
}
}
protected override void Awake()
{
Debug.Log($"Awake, [{m_spacing}]");
}
public override void ModifyMesh(VertexHelper vh)
{
if (! IsActive()) return;
@ -86,8 +81,11 @@ namespace UnityEngine.UI.Extensions
List<UIVertex> verts = new List<UIVertex>();
vh.GetUIVertexStream(verts);
#if UNITY_2022_1_OR_NEWER
var text = GetComponent<TMPro.TMP_Text>();
#else
var text = GetComponent<Text>();
#endif
if (text == null)
{
Debug.LogWarning("LetterSpacing: Missing Text component");
@ -100,6 +98,28 @@ namespace UnityEngine.UI.Extensions
float alignmentFactor = 0;
int glyphIdx = 0;
#if UNITY_2022_1_OR_NEWER
switch (text.alignment)
{
case TMPro.TextAlignmentOptions.BottomLeft:
case TMPro.TextAlignmentOptions.MidlineLeft:
case TMPro.TextAlignmentOptions.TopLeft:
alignmentFactor = 0f;
break;
case TMPro.TextAlignmentOptions.BottomJustified:
case TMPro.TextAlignmentOptions.MidlineJustified:
case TMPro.TextAlignmentOptions.TopJustified:
alignmentFactor = 0.5f;
break;
case TMPro.TextAlignmentOptions.BottomRight:
case TMPro.TextAlignmentOptions.MidlineRight:
case TMPro.TextAlignmentOptions.TopRight:
alignmentFactor = 1f;
break;
}
#else
switch (text.alignment)
{
case TextAnchor.LowerLeft:
@ -120,7 +140,8 @@ namespace UnityEngine.UI.Extensions
alignmentFactor = 1f;
break;
}
#endif
for (int lineIdx=0; lineIdx < lines.Length; lineIdx++)
{
string line = lines[lineIdx];
@ -172,4 +193,3 @@ namespace UnityEngine.UI.Extensions
}
}
}
#endif

View File

@ -40,14 +40,17 @@ use HTML-like tags in your text. Try it out, you'll see what I mean. It doesn't
break down entirely, but it doesn't really do what you'd want either.
*/
#if !UNITY_2022_1_OR_NEWER
using System.Collections.Generic;
namespace UnityEngine.UI.Extensions
{
[AddComponentMenu("UI/Effects/Extensions/Mono Spacing")]
#if UNITY_2022_1_OR_NEWER
[RequireComponent(typeof(TMPro.TMP_Text))]
#else
[RequireComponent(typeof(Text))]
#endif
[RequireComponent(typeof(RectTransform))]
///Summary
/// Note, Vertex Count has changed in 5.2.1+, is now 6 (two tris) instead of 4 (tri strip).
@ -59,15 +62,21 @@ namespace UnityEngine.UI.Extensions
public bool UseHalfCharWidth = false;
private RectTransform rectTransform;
#if UNITY_2022_1_OR_NEWER
private TMPro.TMP_Text text;
#else
private Text text;
#endif
protected MonoSpacing() { }
protected override void Awake()
{
#if UNITY_2022_1_OR_NEWER
text = GetComponent<TMPro.TMP_Text>();
#else
text = GetComponent<Text>();
#endif
if (text == null)
{
Debug.LogWarning("MonoSpacing: Missing Text component");
@ -108,6 +117,28 @@ namespace UnityEngine.UI.Extensions
float alignmentFactor = 0;
int glyphIdx = 0;
#if UNITY_2022_1_OR_NEWER
switch (text.alignment)
{
case TMPro.TextAlignmentOptions.BottomLeft:
case TMPro.TextAlignmentOptions.MidlineLeft:
case TMPro.TextAlignmentOptions.TopLeft:
alignmentFactor = 0f;
break;
case TMPro.TextAlignmentOptions.BottomJustified:
case TMPro.TextAlignmentOptions.MidlineJustified:
case TMPro.TextAlignmentOptions.TopJustified:
alignmentFactor = 0.5f;
break;
case TMPro.TextAlignmentOptions.BottomRight:
case TMPro.TextAlignmentOptions.MidlineRight:
case TMPro.TextAlignmentOptions.TopRight:
alignmentFactor = 1f;
break;
}
#else
switch (text.alignment)
{
case TextAnchor.LowerLeft:
@ -128,7 +159,7 @@ namespace UnityEngine.UI.Extensions
alignmentFactor = 1f;
break;
}
#endif
for (int lineIdx=0; lineIdx < lines.Length; lineIdx++)
{
string line = lines[lineIdx];
@ -190,5 +221,4 @@ namespace UnityEngine.UI.Extensions
vh.AddUIVertexTriangleStream(verts);
}
}
}
#endif
}

View File

@ -134,7 +134,7 @@ namespace UnityEngine.UI.Extensions
start += ApplyText(m_Verts, vh, start);
}
private int ApplyOutlineNoGC(List<UIVertex> verts, Color32 color, float x, float y, VertexHelper vh, int startIndex)
private int ApplyOutlineNoGC(List<UIVertex> verts, Color color, float x, float y, VertexHelper vh, int startIndex)
{
int length = verts.Count;
for (int i = 0; i < length; ++i)

View File

@ -296,6 +296,8 @@ namespace UnityEngine.UI.Extensions
PopulateMesh (vh, pointsToDraw);
}
}
}
private UIVertex[] CreateLineCap(Vector2 start, Vector2 end, SegmentType type)
@ -499,10 +501,6 @@ namespace UnityEngine.UI.Extensions
{
m_points = new Vector2[1];
}
if (transform.GetComponent<RectTransform>().position != Vector3.zero)
{
Debug.LogWarning("A Line Renderer component should be on a RectTransform positioned at (0,0,0), do not use in child Objects.\nFor best results, create separate RectTransforms as children of the canvas positioned at (0,0) for a UILineRenderer and do not move.");
}
}
}
}

View File

@ -40,10 +40,6 @@ namespace UnityEngine.UI.Extensions
bool updateLine = false;
for (int i = 0; i < transforms.Length; i++)
{
if (transforms[i] == null)
{
continue;
}
if (!updateLine && previousPositions[i] != transforms[i].position)
{
updateLine = true;
@ -64,10 +60,6 @@ namespace UnityEngine.UI.Extensions
// First, convert the pivot to worldspace
for (int i = 0; i < transforms.Length; i++)
{
if (transforms[i] == null)
{
continue;
}
worldSpaces[i] = transforms[i].TransformPoint(thisPivot);
}
@ -91,10 +83,6 @@ namespace UnityEngine.UI.Extensions
previousPositions = new Vector3[transforms.Length];
for (int i = 0; i < transforms.Length; i++)
{
if (transforms[i] == null)
{
continue;
}
previousPositions[i] = transforms[i].position;
}
}