Skip to content

Commit 02f8e8c

Browse files
author
Unity Technologies
committed
Unity 2018.2.0a1 C# reference source code
1 parent d0c56c7 commit 02f8e8c

827 files changed

Lines changed: 43950 additions & 47656 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Editor/Mono/2D/Common/ScriptBindings/SpriteEditorExtension.bindings.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,14 @@ public static GUID GetSpriteID(this Sprite sprite)
1616
return new GUID(GetSpriteIDScripting(sprite));
1717
}
1818

19+
public static void SetSpriteID(this Sprite sprite, GUID guid)
20+
{
21+
SetSpriteIDScripting(sprite, guid.ToString());
22+
}
23+
1924
[FreeFunction("SpriteEditorExtension::GetSpriteIDScripting")]
20-
private static extern string GetSpriteIDScripting(Sprite sprite);
25+
private static extern string GetSpriteIDScripting([NotNull] Sprite sprite);
26+
[FreeFunction("SpriteEditorExtension::SetSpriteIDScripting")]
27+
private static extern void SetSpriteIDScripting([NotNull] Sprite sprite, string spriteID);
2128
}
2229
}

Editor/Mono/2D/Common/TexturePlatformSettingsController.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,7 @@ public bool HandlePlatformSettings(BuildTarget buildTarget, List<TextureImporter
134134
bool showAsEnum =
135135
buildTarget == BuildTarget.iOS ||
136136
buildTarget == BuildTarget.tvOS ||
137-
buildTarget == BuildTarget.Android ||
138-
buildTarget == BuildTarget.Tizen
137+
buildTarget == BuildTarget.Android
139138
;
140139

141140
if (showAsEnum)

Editor/Mono/2D/SpriteAtlas/SpriteAtlasInspector.cs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -643,16 +643,12 @@ public override void OnPreviewGUI(Rect r, GUIStyle background)
643643
{
644644
Texture2D t = m_PreviewTextures[m_PreviewPage];
645645

646-
float oldBias = t.mipMapBias;
647646
float bias = m_MipLevel - (float)(System.Math.Log(t.width / r.width) / System.Math.Log(2));
648-
TextureUtil.SetMipMapBiasNoDirty(t, bias);
649647

650648
if (m_ShowAlpha)
651-
EditorGUI.DrawTextureAlpha(r, t, ScaleMode.ScaleToFit);
649+
EditorGUI.DrawTextureAlpha(r, t, ScaleMode.ScaleToFit, 0, bias);
652650
else
653-
EditorGUI.DrawTextureTransparent(r, t, ScaleMode.ScaleToFit);
654-
655-
TextureUtil.SetMipMapBiasNoDirty(t, oldBias);
651+
EditorGUI.DrawTextureTransparent(r, t, ScaleMode.ScaleToFit, 0, bias);
656652
}
657653
}
658654

Editor/Mono/2D/SpriteEditorModule/SpriteEditorData.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,9 @@ internal class SpriteDataExt : SpriteRect
1616
{
1717
public List<SpriteBone> spriteBone;
1818
public float tessellationDetail = 0;
19+
20+
// The following lists are to be left un-initialized.
21+
// If they never loaded or assign explicitly, we avoid writing empty list to metadata.
1922
public List<Vector2[]> spriteOutline;
2023
public List<Vertex2DMetaData> vertices;
2124
public List<int> indices;
@@ -36,9 +39,6 @@ internal SpriteDataExt(SpriteRect sr)
3639
spriteID = sr.spriteID;
3740
alignment = sr.alignment;
3841
pivot = sr.pivot;
39-
spriteOutline = new List<Vector2[]>();
40-
spritePhysicsOutline = new List<Vector2[]>();
41-
spriteBone = new List<SpriteBone>();
4242
}
4343

4444
public void Apply(SerializedObject so)

Editor/Mono/2D/SpriteEditorModule/SpriteFrameModule/SpriteFrameModule.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -134,10 +134,10 @@ private void AddSprite(Rect frame, int alignment, Vector2 pivot, AutoSlicingMeth
134134
}
135135
}
136136
else
137-
AddSpriteWithUniqueName(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, index++);
137+
AddSpriteWithUniqueName(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, index++, Vector4.zero);
138138
}
139139
else
140-
AddSprite(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, GetSpriteNamePrefix() + "_" + index++);
140+
AddSprite(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, GetSpriteNamePrefix() + "_" + index++, Vector4.zero);
141141
}
142142

143143
private SpriteRect GetExistingOverlappingSprite(Rect rect)
@@ -165,7 +165,7 @@ private bool PixelHasAlpha(int x, int y, UnityTexture2D texture)
165165
return m_AlphaPixelCache[index];
166166
}
167167

168-
private SpriteRect AddSprite(Rect rect, int alignment, Vector2 pivot, int colliderAlphaCutoff, float colliderDetail, string name)
168+
private SpriteRect AddSprite(Rect rect, int alignment, Vector2 pivot, int colliderAlphaCutoff, float colliderDetail, string name, Vector4 border)
169169
{
170170
SpriteRect spriteRect = new SpriteRect();
171171

@@ -175,7 +175,7 @@ private SpriteRect AddSprite(Rect rect, int alignment, Vector2 pivot, int collid
175175

176176
spriteRect.name = name;
177177
spriteRect.originalName = spriteRect.name;
178-
spriteRect.border = Vector4.zero;
178+
spriteRect.border = border;
179179
spriteEditor.SetDataModified();
180180

181181
m_RectsCache.spriteRects.Add(spriteRect);
@@ -184,10 +184,10 @@ private SpriteRect AddSprite(Rect rect, int alignment, Vector2 pivot, int collid
184184
return spriteRect;
185185
}
186186

187-
public SpriteRect AddSpriteWithUniqueName(Rect rect, int alignment, Vector2 pivot, int colliderAlphaCutoff, float colliderDetail, int nameIndexingHint)
187+
public SpriteRect AddSpriteWithUniqueName(Rect rect, int alignment, Vector2 pivot, int colliderAlphaCutoff, float colliderDetail, int nameIndexingHint, Vector4 border)
188188
{
189189
string name = GetUniqueName(GetSpriteNamePrefix(), nameIndexingHint);
190-
return AddSprite(rect, alignment, pivot, colliderAlphaCutoff, colliderDetail, name);
190+
return AddSprite(rect, alignment, pivot, colliderAlphaCutoff, colliderDetail, name, border);
191191
}
192192

193193
private string GetSpriteNamePrefix()
@@ -225,7 +225,7 @@ public void DoGridSlicing(Vector2 size, Vector2 offset, Vector2 padding, int ali
225225
m_RectsCache.spriteRects.Clear();
226226

227227
foreach (Rect frame in frames)
228-
AddSprite(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, GetSpriteNamePrefix() + "_" + index++);
228+
AddSprite(frame, alignment, pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, GetSpriteNamePrefix() + "_" + index++, Vector4.zero);
229229

230230
selected = null;
231231
spriteEditor.SetDataModified();
@@ -296,15 +296,15 @@ public void DuplicateSprite()
296296
if (selected != null)
297297
{
298298
undoSystem.RegisterCompleteObjectUndo(m_RectsCache, "Duplicate sprite");
299-
selected = AddSpriteWithUniqueName(selected.rect, (int)selected.alignment, selected.pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, 0);
299+
selected = AddSpriteWithUniqueName(selected.rect, (int)selected.alignment, selected.pivot, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, 0, selected.border);
300300
}
301301
}
302302

303303
public void CreateSprite(Rect rect)
304304
{
305305
rect = ClampSpriteRect(rect, textureActualWidth, textureActualHeight);
306306
undoSystem.RegisterCompleteObjectUndo(m_RectsCache, "Create sprite");
307-
selected = AddSpriteWithUniqueName(rect, 0, Vector2.zero, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, 0);
307+
selected = AddSpriteWithUniqueName(rect, 0, Vector2.zero, kDefaultColliderAlphaCutoff, kDefaultColliderDetail, 0, Vector4.zero);
308308
}
309309

310310
public void DeleteSprite()

Editor/Mono/2D/SpriteEditorModule/SpriteFrameModule/SpriteFrameModuleBase.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@ public override void OnModuleActivate()
5050
textureActualHeight = height;
5151
m_RectsCache = ScriptableObject.CreateInstance<SpriteRectModel>();
5252
m_RectsCache.spriteRects = m_SpriteDataProvider.GetSpriteRects().ToList();
53+
spriteEditor.spriteRects = m_RectsCache.spriteRects;
5354
if (spriteEditor.selectedSpriteRect != null)
5455
spriteEditor.selectedSpriteRect = m_RectsCache.spriteRects.FirstOrDefault(x => x.spriteID == spriteEditor.selectedSpriteRect.spriteID);
5556
}

Editor/Mono/2D/SpriteEditorModule/SpriteOutlineModule.cs

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ internal class SpriteOutlineModule : SpriteEditorModuleBase
182182
{
183183
class Styles
184184
{
185-
public GUIContent generateOutlineLabel = EditorGUIUtility.TrTextContent("Update", "Update new outline based on mesh detail value.");
185+
public GUIContent generateOutlineLabel = EditorGUIUtility.TrTextContent("Generate", "Generate new outline based on mesh detail value.");
186186
public GUIContent outlineTolerance = EditorGUIUtility.TrTextContent("Outline Tolerance", "Sets how tight the outline should be from the sprite.");
187187
public GUIContent snapButtonLabel = EditorGUIUtility.TrTextContent("Snap", "Snap points to nearest pixel");
188188
public GUIContent generatingOutlineDialogTitle = EditorGUIUtility.TrTextContent("Outline");
@@ -227,7 +227,7 @@ public SpriteOutlineModule(ISpriteEditor sem, IEventSystem es, IUndoSystem us, I
227227

228228
public override string moduleName
229229
{
230-
get { return "Edit Outline"; }
230+
get { return "Custom Outline"; }
231231
}
232232

233233
public override bool ApplyRevert(bool apply)
@@ -614,7 +614,8 @@ public void SetupShapeEditor()
614614

615615
if (m_Selected != null)
616616
{
617-
SetupShapeEditorOutline(m_Selected);
617+
if (!HasShapeOutline(m_Selected))
618+
SetupShapeEditorOutline(m_Selected);
618619
m_ShapeEditors = new ShapeEditor[selectedShapeOutline.Count];
619620

620621
for (int i = 0; i < selectedShapeOutline.Count; ++i)
@@ -655,36 +656,33 @@ public void SetupShapeEditor()
655656
protected virtual bool HasShapeOutline(SpriteRect spriteRect)
656657
{
657658
var outline = m_Outline[spriteRect.spriteID]?.spriteOutlines;
658-
return outline != null && outline.Count > 0;
659+
return outline != null;
659660
}
660661

661662
protected virtual void SetupShapeEditorOutline(SpriteRect spriteRect)
662663
{
663664
var outline = m_Outline[spriteRect.spriteID];
664-
if (outline.spriteOutlines == null || outline.spriteOutlines.Count == 0)
665+
var outlines = GenerateSpriteRectOutline(spriteRect.rect,
666+
Math.Abs(outline.tessellationDetail - (-1f)) < Mathf.Epsilon ? 0 : outline.tessellationDetail,
667+
0, m_TextureDataProvider);
668+
if (outlines.Count == 0)
665669
{
666-
var outlines = GenerateSpriteRectOutline(spriteRect.rect,
667-
Math.Abs(outline.tessellationDetail - (-1f)) < Mathf.Epsilon ? 0 : outline.tessellationDetail,
668-
0, m_TextureDataProvider);
669-
if (outlines.Count == 0)
670+
Vector2 halfSize = spriteRect.rect.size * 0.5f;
671+
outlines = new List<SpriteOutline>()
670672
{
671-
Vector2 halfSize = spriteRect.rect.size * 0.5f;
672-
outlines = new List<SpriteOutline>()
673+
new SpriteOutline()
673674
{
674-
new SpriteOutline()
675+
m_Path = new List<Vector2>()
675676
{
676-
m_Path = new List<Vector2>()
677-
{
678-
new Vector2(-halfSize.x, -halfSize.y),
679-
new Vector2(-halfSize.x, halfSize.y),
680-
new Vector2(halfSize.x, halfSize.y),
681-
new Vector2(halfSize.x, -halfSize.y),
682-
}
677+
new Vector2(-halfSize.x, -halfSize.y),
678+
new Vector2(-halfSize.x, halfSize.y),
679+
new Vector2(halfSize.x, halfSize.y),
680+
new Vector2(halfSize.x, -halfSize.y),
683681
}
684-
};
685-
}
686-
m_Outline[spriteRect.spriteID].spriteOutlines = outlines;
682+
}
683+
};
687684
}
685+
m_Outline[spriteRect.spriteID].spriteOutlines = outlines;
688686
}
689687

690688
public Vector3 SnapPoint(Vector3 position)

Editor/Mono/2D/SpriteEditorModule/SpritePhysicsShapeModule.cs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public SpritePhysicsShapeModule(ISpriteEditor sem, IEventSystem ege, IUndoSystem
2626

2727
public override string moduleName
2828
{
29-
get { return "Edit Physics Shape"; }
29+
get { return "Custom Physics Shape"; }
3030
}
3131

3232
private ISpriteEditor spriteEditorWindow
@@ -71,14 +71,11 @@ protected override void LoadOutline()
7171
protected override void SetupShapeEditorOutline(SpriteRect spriteRect)
7272
{
7373
var physicsShape = m_Outline[spriteRect.spriteID];
74-
if (physicsShape.spriteOutlines == null || physicsShape.spriteOutlines.Count == 0)
75-
{
76-
var physicsShapes = GenerateSpriteRectOutline(spriteRect.rect,
77-
Math.Abs(physicsShape.tessellationDetail - (-1f)) < Mathf.Epsilon ? kDefaultPhysicsTessellationDetail : physicsShape.tessellationDetail,
78-
kDefaultPhysicsAlphaTolerance, m_TextureDataProvider);
79-
spriteEditorWindow.SetDataModified();
80-
m_Outline[spriteRect.spriteID].spriteOutlines = physicsShapes;
81-
}
74+
var physicsShapes = GenerateSpriteRectOutline(spriteRect.rect,
75+
Math.Abs(physicsShape.tessellationDetail - (-1f)) < Mathf.Epsilon ? kDefaultPhysicsTessellationDetail : physicsShape.tessellationDetail,
76+
kDefaultPhysicsAlphaTolerance, m_TextureDataProvider);
77+
m_Outline[spriteRect.spriteID].spriteOutlines = physicsShapes;
78+
spriteEditorWindow.SetDataModified();
8279
}
8380
}
8481
}

Editor/Mono/2D/SpriteEditorModule/TextureImporter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ SpriteRect[] ISpriteEditorDataProvider.GetSpriteRects()
3232

3333
void ISpriteEditorDataProvider.SetSpriteRects(SpriteRect[] spriteRects)
3434
{
35-
if (spriteImportMode == SpriteImportMode.Single && spriteRects.Length == 1)
35+
if (spriteImportMode != SpriteImportMode.Multiple && spriteImportMode != SpriteImportMode.None && spriteRects.Length == 1)
3636
{
3737
m_SpriteSingle.CopyFromSpriteRect(spriteRects[0]);
3838
}

Editor/Mono/Animation/AnimationWindow/AnimationWindowState.cs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -928,6 +928,16 @@ public void TransformSelectedKeys(Matrix4x4 matrix, bool flipX, bool flipY, bool
928928
{
929929
liveEditKey.key.inTangent = (liveEditKey.keySnapshot.outTangent != Mathf.Infinity) ? -liveEditKey.keySnapshot.outTangent : Mathf.Infinity;
930930
liveEditKey.key.outTangent = (liveEditKey.keySnapshot.inTangent != Mathf.Infinity) ? -liveEditKey.keySnapshot.inTangent : Mathf.Infinity;
931+
932+
if (liveEditKey.keySnapshot.weightedMode == WeightedMode.In)
933+
liveEditKey.key.weightedMode = WeightedMode.Out;
934+
else if (liveEditKey.keySnapshot.weightedMode == WeightedMode.Out)
935+
liveEditKey.key.weightedMode = WeightedMode.In;
936+
else
937+
liveEditKey.key.weightedMode = liveEditKey.keySnapshot.weightedMode;
938+
939+
liveEditKey.key.inWeight = liveEditKey.keySnapshot.outWeight;
940+
liveEditKey.key.outWeight = liveEditKey.keySnapshot.inWeight;
931941
}
932942

933943
if (!liveEditKey.key.isPPtrCurve)

0 commit comments

Comments
 (0)