Merge pull request 'master' (#85) from Alienjack/AxibugEmuOnline:master into master
Reviewed-on: #85
This commit is contained in:
commit
31da819ad0
@ -2,20 +2,24 @@
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &2100000
|
||||
Material:
|
||||
serializedVersion: 6
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: UI-Effect-Shiny
|
||||
m_Shader: {fileID: 4800000, guid: 20ffe76c2439c403aabdd25bd94bf011, type: 3}
|
||||
m_ShaderKeywords:
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 1
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
@ -27,6 +31,7 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
- _Stencil: 0
|
||||
@ -38,3 +43,4 @@ Material:
|
||||
m_Colors:
|
||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_BuildTextureStacks: []
|
||||
m_AllowLocking: 1
|
||||
|
@ -275,7 +275,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- FILL
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -616,7 +618,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- NEGA
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -632,6 +636,10 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParamTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
@ -3572,7 +3580,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- SEPIA
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -3588,6 +3598,10 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParamTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
@ -4062,7 +4076,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- SUBTRACT
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -4078,6 +4094,10 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParamTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
@ -4182,7 +4202,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- ADD
|
||||
- DETAILBLUR
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -4270,7 +4292,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- GRAYSCALE
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -4286,6 +4310,10 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParamTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
@ -4850,7 +4878,9 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- DETAILBLUR
|
||||
- PIXEL
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
@ -4866,6 +4896,10 @@ Material:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _ParamTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _ColorMask: 15
|
||||
@ -5585,7 +5619,8 @@ Material:
|
||||
m_Shader: {fileID: 4800000, guid: b868e81d0156245e08c8646b4fb68d7a, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_ValidKeywords:
|
||||
- MEDIUMBLUR
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 5
|
||||
m_EnableInstancingVariants: 0
|
||||
|
@ -190,7 +190,7 @@ namespace Coffee.UIExtensions
|
||||
/// <summary>
|
||||
/// Blur effect mode(readonly).
|
||||
/// </summary>
|
||||
public BlurMode blurMode { get { return m_BlurMode; } }
|
||||
public BlurMode blurMode { get { return m_BlurMode; }set { m_BlurMode = value; } }
|
||||
|
||||
/// <summary>
|
||||
/// Color for the color effect.
|
||||
|
@ -139,6 +139,123 @@ MonoBehaviour:
|
||||
SubMenus: []
|
||||
HoriRollSpd: 1500
|
||||
InitSelect: 1
|
||||
--- !u!1 &1551260616775499633
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 8030738230415871255}
|
||||
- component: {fileID: 1749614979705703043}
|
||||
- component: {fileID: 2831564238218273703}
|
||||
- component: {fileID: 6913951815547872457}
|
||||
- component: {fileID: 968819366492627815}
|
||||
m_Layer: 5
|
||||
m_Name: RomPreview
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 0
|
||||
--- !u!224 &8030738230415871255
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1551260616775499633}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1639091784002085428}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0.00012207031, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &1749614979705703043
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1551260616775499633}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &2831564238218273703
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1551260616775499633}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 0}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!225 &6913951815547872457
|
||||
CanvasGroup:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1551260616775499633}
|
||||
m_Enabled: 1
|
||||
m_Alpha: 1
|
||||
m_Interactable: 1
|
||||
m_BlocksRaycasts: 1
|
||||
m_IgnoreParentGroups: 0
|
||||
--- !u!114 &968819366492627815
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1551260616775499633}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f8b2ed11d675446c5a49da1ea296d490, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Version: 300
|
||||
m_EffectMaterial: {fileID: 21563344409783084, guid: aee96bc531e6eba468ec405e536f515f, type: 2}
|
||||
m_EffectFactor: 1
|
||||
m_ColorFactor: 1
|
||||
m_BlurFactor: 1
|
||||
m_EffectMode: 0
|
||||
m_ColorMode: 0
|
||||
m_BlurMode: 1
|
||||
m_AdvancedBlur: 0
|
||||
m_ShadowBlur: 1
|
||||
m_ShadowStyle: 0
|
||||
m_ShadowColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
m_EffectDistance: {x: 1, y: -1}
|
||||
m_UseGraphicAlpha: 1
|
||||
m_EffectColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_AdditionalShadows: []
|
||||
--- !u!1 &1639091783724093882
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -153,7 +270,7 @@ GameObject:
|
||||
- component: {fileID: 3473513813641582791}
|
||||
- component: {fileID: 3025550092845034426}
|
||||
m_Layer: 5
|
||||
m_Name: bg
|
||||
m_Name: XMBBackground
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@ -171,12 +288,12 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1639091784002085428}
|
||||
m_Father: {fileID: 3978167929173065121}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0.00012207031, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &1639091783724093861
|
||||
CanvasRenderer:
|
||||
@ -270,7 +387,8 @@ RectTransform:
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1639091783724093883}
|
||||
- {fileID: 3978167929173065121}
|
||||
- {fileID: 8030738230415871255}
|
||||
- {fileID: 1924338507}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -293,7 +411,9 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
MainMenuRoot: {fileID: 1924338507}
|
||||
MainMenu: {fileID: 4533431376032812611}
|
||||
BG: {fileID: 1639091783724093860}
|
||||
XMBBackground: {fileID: 1639091783724093860}
|
||||
RomPreviewBigPic: {fileID: 2831564238218273703}
|
||||
XMBCG_For_RomPreviewBigPic: {fileID: 1747598380906379634}
|
||||
m_detailLayoutPosition_x: 55
|
||||
m_LayoutChangeSpeed: 1000
|
||||
--- !u!1 &3732356966700017678
|
||||
@ -376,6 +496,55 @@ MonoBehaviour:
|
||||
m_EditorClassIdentifier:
|
||||
m_HorizontalFit: 2
|
||||
m_VerticalFit: 2
|
||||
--- !u!1 &5147744065509886959
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 3978167929173065121}
|
||||
- component: {fileID: 1747598380906379634}
|
||||
m_Layer: 5
|
||||
m_Name: romPreviewOpp
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &3978167929173065121
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5147744065509886959}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1639091783724093883}
|
||||
m_Father: {fileID: 1639091784002085428}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!225 &1747598380906379634
|
||||
CanvasGroup:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 5147744065509886959}
|
||||
m_Enabled: 1
|
||||
m_Alpha: 1
|
||||
m_Interactable: 1
|
||||
m_BlocksRaycasts: 1
|
||||
m_IgnoreParentGroups: 0
|
||||
--- !u!1001 &799626603263598074
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -1935,7 +2104,7 @@ PrefabInstance:
|
||||
- target: {fileID: 2619187604372594158, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||
propertyPath: m_Sprite
|
||||
value:
|
||||
objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
|
||||
objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
|
||||
- target: {fileID: 3189920797946144379, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: "\u753B\u9762\u6BD4\u4F8B"
|
||||
@ -2003,7 +2172,7 @@ PrefabInstance:
|
||||
- target: {fileID: 6771349210554360888, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||
propertyPath: m_Sprite
|
||||
value:
|
||||
objectReference: {fileID: 21300000, guid: 8b2d1bdf739173c40bb205540b308d02, type: 3}
|
||||
objectReference: {fileID: 8228730565043098574, guid: d518d00d4940e854bbe45d9ef891401a, type: 3}
|
||||
- target: {fileID: 8126322204359135913, guid: 98ac562d730eabc42b9a3b12c715d114, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
|
@ -353,7 +353,7 @@ GameObject:
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
m_IsActive: 0
|
||||
--- !u!224 &88397014911048519
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -595,7 +595,7 @@ RectTransform:
|
||||
m_Father: {fileID: 4825215963562112837}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 10, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
@ -673,6 +673,81 @@ RectTransform:
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: -10, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &2970190240800710577
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1123244137077354552}
|
||||
- component: {fileID: 196912998120336165}
|
||||
- component: {fileID: 2537658034304089639}
|
||||
m_Layer: 5
|
||||
m_Name: Star
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1123244137077354552
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2970190240800710577}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: -2}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 8105925540140519754}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 1}
|
||||
m_AnchorMax: {x: 0, y: 1}
|
||||
m_AnchoredPosition: {x: 8.2, y: -10.1}
|
||||
m_SizeDelta: {x: 48.319504, y: 40.7695}
|
||||
m_Pivot: {x: 0, y: 1}
|
||||
--- !u!222 &196912998120336165
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2970190240800710577}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &2537658034304089639
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2970190240800710577}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 0, b: 0, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 7637870703528583553, guid: a8e14774cb9b81d4799116466bc09437, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!1 &3095305487988041719
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -813,6 +888,8 @@ MonoBehaviour:
|
||||
DownloadingFlag: {fileID: 1252956242765037133}
|
||||
DownProgress: {fileID: 1484915906009859069}
|
||||
FileReadyFlag: {fileID: 6316945668089981796}
|
||||
DownloadComplete: {fileID: 6633045760783967661}
|
||||
Star: {fileID: 0}
|
||||
--- !u!114 &5700455559359757662
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -998,6 +1075,7 @@ GameObject:
|
||||
- component: {fileID: 8105925540140519754}
|
||||
- component: {fileID: 1377401926964550360}
|
||||
- component: {fileID: 67125096702760250}
|
||||
- component: {fileID: 6633045760783967661}
|
||||
m_Layer: 5
|
||||
m_Name: RomImage
|
||||
m_TagString: Untagged
|
||||
@ -1019,6 +1097,7 @@ RectTransform:
|
||||
m_Children:
|
||||
- {fileID: 6087025893861054323}
|
||||
- {fileID: 1361359478345282377}
|
||||
- {fileID: 1123244137077354552}
|
||||
- {fileID: 88397014911048519}
|
||||
m_Father: {fileID: 8754483333502849411}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
@ -1065,6 +1144,39 @@ MonoBehaviour:
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!114 &6633045760783967661
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4643603390456494410}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f19b7e2285c104f6ca47d583f3e5444f, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Version: 300
|
||||
m_EffectMaterial: {fileID: 2100000, guid: 9dc7e810a87b444ab96919f3215c2fe5, type: 2}
|
||||
m_EffectFactor: 0
|
||||
m_Width: 0.25
|
||||
m_Rotation: -41
|
||||
m_Softness: 1
|
||||
m_Brightness: 1
|
||||
m_Gloss: 1
|
||||
m_EffectArea: 0
|
||||
m_Player:
|
||||
play: 0
|
||||
initialPlayDelay: 0
|
||||
duration: 0.5
|
||||
loop: 0
|
||||
loopDelay: 1
|
||||
updateMode: 0
|
||||
m_Play: 0
|
||||
m_Loop: 0
|
||||
m_Duration: 1
|
||||
m_LoopDelay: 1
|
||||
m_UpdateMode: 0
|
||||
--- !u!1 &5340761592919397836
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
@ -79,6 +79,16 @@
|
||||
/// 当本机手柄渴望插入时触发
|
||||
/// <para>参数: <see cref="int"/> 本地手柄序号[0,3]</para>
|
||||
/// </summary>
|
||||
OnLocalJoyDesireInvert
|
||||
OnLocalJoyDesireInvert,
|
||||
/// <summary>
|
||||
/// 当Rom文件下载完毕时触发
|
||||
/// <para><see cref="int"/>RomID</para>
|
||||
/// </summary>
|
||||
OnRomFileDownloaded,
|
||||
/// <summary>
|
||||
/// 当Rom收藏状态变化时触发
|
||||
/// <para><see cref="int"/>RomID</para>
|
||||
/// </summary>
|
||||
OnRomStarStateChanged, //TODO 实现这个事件
|
||||
}
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ namespace AxibugEmuOnline.Client
|
||||
switch (platform)
|
||||
{
|
||||
case RomPlatformType.Nes: return new Vector2Int(256, 240);
|
||||
default: return new Vector2Int(256, 240);
|
||||
default: throw new System.NotImplementedException($"未实现的平台:{platform}");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -184,6 +184,7 @@ namespace AxibugEmuOnline.Client
|
||||
public string imgUrl;
|
||||
public string hash;
|
||||
public int stars;
|
||||
public int isStar;//TODO 实现收藏标记
|
||||
}
|
||||
[Serializable]
|
||||
public class Resp_CheckStandInfo
|
||||
|
@ -1,4 +1,5 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.Event;
|
||||
using AxibugProtobuf;
|
||||
using ICSharpCode.SharpZipLib.Zip;
|
||||
using System;
|
||||
@ -54,8 +55,18 @@ namespace AxibugEmuOnline.Client
|
||||
public int Index { get; private set; }
|
||||
/// <summary> 在查询结果中的所在页 </summary>
|
||||
public int Page { get; private set; }
|
||||
public string Hash => webData != null ? webData.hash : string.Empty;
|
||||
|
||||
public string Hash => webData != null ? webData.hash : string.Empty;
|
||||
/// <summary> 标记是否收藏 </summary>
|
||||
public bool Star
|
||||
{
|
||||
get { return webData != null ? webData.isStar > 0 : false; }
|
||||
set
|
||||
{
|
||||
if (webData == null) return;
|
||||
webData.isStar = value ? 1 : 0;
|
||||
}
|
||||
}
|
||||
|
||||
public event Action<RomFile> OnDownloadOver;
|
||||
public event Action OnInfoFilled;
|
||||
|
||||
@ -79,6 +90,8 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
File.WriteAllBytes(LocalFilePath, bytes);
|
||||
hasLocalFile = true;
|
||||
|
||||
Eventer.Instance.PostEvent(EEvent.OnRomFileDownloaded, ID);
|
||||
}
|
||||
OnDownloadOver?.Invoke(this);
|
||||
}));
|
||||
|
@ -1,9 +1,11 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.Common;
|
||||
using AxibugEmuOnline.Client.Event;
|
||||
using AxibugProtobuf;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using static AxibugEmuOnline.Client.HttpAPI;
|
||||
|
||||
namespace AxibugEmuOnline.Client
|
||||
@ -33,6 +35,16 @@ namespace AxibugEmuOnline.Client
|
||||
m_romSearchFunc = App.httpAPI.SearchNesRomList;
|
||||
break;
|
||||
}
|
||||
|
||||
Eventer.Instance.RegisterEvent<int, bool>(EEvent.OnRomStarStateChanged, OnRomStarStateChanged);
|
||||
}
|
||||
|
||||
private void OnRomStarStateChanged(int romID, bool star)
|
||||
{
|
||||
var targetRom = nesRomFetchList.FirstOrDefault(rom => rom.ID == romID);
|
||||
if (targetRom == null) return;
|
||||
|
||||
targetRom.Star = star;
|
||||
}
|
||||
|
||||
public RomFile GetRomFile(string romFileName)
|
||||
@ -42,8 +54,6 @@ namespace AxibugEmuOnline.Client
|
||||
return romFile;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/// <summary> 清除所有下载的Rom文件 </summary>
|
||||
public void ClearRomFile()
|
||||
{
|
||||
|
@ -1,4 +1,4 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.UI;
|
||||
using DG.Tweening;
|
||||
using DG.Tweening.Core;
|
||||
@ -9,7 +9,7 @@ using UnityEngine;
|
||||
namespace AxibugEmuOnline.Client
|
||||
{
|
||||
/// <summary>
|
||||
/// ąłž°ŃŐÉŤÉčÖĂUI
|
||||
/// 背景颜色设置UI
|
||||
/// </summary>
|
||||
public class UI_BgSettingItem_Color : MenuItem, IVirtualItem
|
||||
{
|
||||
@ -34,7 +34,7 @@ namespace AxibugEmuOnline.Client
|
||||
var color = Datacontext.CurrentColor;
|
||||
Icon.GetMaterial().SetColor("_Color1", color.color1);
|
||||
Icon.GetMaterial().SetColor("_Color2", color.color2);
|
||||
SetBaseInfo("Ö÷ĚâÉŤ", "ÉčÖĂÖ÷ĚâÉŤ", color.Name);
|
||||
SetBaseInfo("主题色", "设置主题色", color.Name);
|
||||
}
|
||||
|
||||
public void SetDependencyProperty(object data)
|
||||
@ -58,8 +58,9 @@ namespace AxibugEmuOnline.Client
|
||||
public class ColorOption : ExecuteMenu
|
||||
{
|
||||
public XMBColor Color;
|
||||
public override string Name => Color.Name;
|
||||
|
||||
public ColorOption(XMBColor color) : base(color.Name)
|
||||
public ColorOption(XMBColor color)
|
||||
{
|
||||
Color = color;
|
||||
}
|
||||
|
@ -70,7 +70,9 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
private Filter m_filter;
|
||||
|
||||
public Opt_CreatePreset(Filter filter) : base("创建滤镜预设", Resources.LoadAll<Sprite>("Icons/XMB-Icons/misc")[0])
|
||||
public override string Name => "创建滤镜预设";
|
||||
public override Sprite Icon => Resources.LoadAll<Sprite>("Icons/XMB-Icons/misc")[0];
|
||||
public Opt_CreatePreset(Filter filter)
|
||||
{
|
||||
m_filter = filter;
|
||||
}
|
||||
@ -101,7 +103,9 @@ namespace AxibugEmuOnline.Client
|
||||
private OptionUI_MenuItem m_ui;
|
||||
private List<OptionMenu> m_menu;
|
||||
|
||||
public Opt_Presets(Filter filter, FilterPreset preset) : base(preset.Name, null)
|
||||
public override string Name => m_preset.Name;
|
||||
|
||||
public Opt_Presets(Filter filter, FilterPreset preset)
|
||||
{
|
||||
m_filter = filter;
|
||||
m_preset = preset;
|
||||
@ -151,8 +155,8 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
public override bool Visible => m_param.ValueType.IsEnum || m_param.ValueType == typeof(float);
|
||||
|
||||
public override string Name => m_param.Name;
|
||||
public Opt_ParamEditor(Filter filter, FilterEffect.EditableParamerter editParam, FilterPreset preset)
|
||||
: base(editParam.Name)
|
||||
{
|
||||
m_filter = filter;
|
||||
m_param = editParam;
|
||||
@ -179,8 +183,9 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
private Filter m_filter;
|
||||
private FilterPreset m_preset;
|
||||
public override string Name => "删除预设";
|
||||
|
||||
public Opt_Delete(Filter filter, FilterPreset preset) : base("删除预设", null)
|
||||
public Opt_Delete(Filter filter, FilterPreset preset)
|
||||
{
|
||||
m_filter = filter;
|
||||
m_preset = preset;
|
||||
|
@ -1,5 +1,8 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.Event;
|
||||
using AxibugEmuOnline.Client.UI;
|
||||
using Coffee.UIExtensions;
|
||||
using System;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
@ -16,12 +19,45 @@ namespace AxibugEmuOnline.Client
|
||||
Slider DownProgress;
|
||||
[SerializeField]
|
||||
GameObject FileReadyFlag;
|
||||
[SerializeField]
|
||||
UIShiny DownloadComplete;
|
||||
[SerializeField]
|
||||
GameObject Star;
|
||||
|
||||
public int Index { get; set; }
|
||||
|
||||
private RomLib m_romlib => App.nesRomLib;
|
||||
public bool IsStar
|
||||
{
|
||||
get
|
||||
{
|
||||
return m_romfile != null && m_romfile.InfoReady ? m_romfile.Star : false;
|
||||
}
|
||||
}
|
||||
public int RomID { get { return m_romfile != null && m_romfile.InfoReady ? m_romfile.ID : -1; } }
|
||||
|
||||
private RomLib m_romlib => App.nesRomLib;
|
||||
|
||||
public bool RomInfoReady => m_romfile != null && m_romfile.InfoReady;
|
||||
|
||||
private RomFile m_romfile;
|
||||
|
||||
protected override void OnEnable()
|
||||
{
|
||||
Eventer.Instance.RegisterEvent<int>(EEvent.OnRomFileDownloaded, OnRomDownloaded);
|
||||
}
|
||||
|
||||
protected override void OnDisable()
|
||||
{
|
||||
Eventer.Instance.UnregisterEvent<int>(EEvent.OnRomFileDownloaded, OnRomDownloaded);
|
||||
}
|
||||
|
||||
private void OnRomDownloaded(int romID)
|
||||
{
|
||||
if (m_romfile == null || m_romfile.ID != romID) return;
|
||||
|
||||
DownloadComplete.Play();
|
||||
}
|
||||
|
||||
public void SetData(object data)
|
||||
{
|
||||
Reset();
|
||||
@ -45,6 +81,14 @@ namespace AxibugEmuOnline.Client
|
||||
SetSelectState(data is ThirdMenuRoot && ((ThirdMenuRoot)data).SelectIndex == Index);
|
||||
}
|
||||
|
||||
protected override void OnSelected(float progress)
|
||||
{
|
||||
base.OnSelected(progress);
|
||||
|
||||
if (m_romImage.sprite == null) LaunchUI.Instance.HideRomPreview();
|
||||
else LaunchUI.Instance.SetRomPreview(m_romImage.sprite);
|
||||
}
|
||||
|
||||
public void Release()
|
||||
{
|
||||
m_romfile.OnInfoFilled -= OnRomInfoFilled;
|
||||
@ -69,7 +113,9 @@ namespace AxibugEmuOnline.Client
|
||||
if (!m_romfile.InfoReady || url != m_romfile.ImageURL) return;
|
||||
|
||||
m_romImage.sprite = img;
|
||||
if (m_select) LaunchUI.Instance.SetRomPreview(img);
|
||||
});
|
||||
Star.SetActiveEx(m_romfile.Star);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -34,6 +34,7 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
new OptMenu_Search(this),
|
||||
new OptMenu_ShowAll(this),
|
||||
new OptMenu_Fav(this),
|
||||
};
|
||||
}
|
||||
|
||||
@ -68,8 +69,9 @@ namespace AxibugEmuOnline.Client
|
||||
public class OptMenu_Search : ExecuteMenu
|
||||
{
|
||||
private RomListMenuItem m_romListUI;
|
||||
public override string Name => "搜索";
|
||||
|
||||
public OptMenu_Search(RomListMenuItem romListUI, Sprite icon = null) : base("搜索", icon)
|
||||
public OptMenu_Search(RomListMenuItem romListUI)
|
||||
{
|
||||
m_romListUI = romListUI;
|
||||
}
|
||||
@ -90,9 +92,10 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
private RomListMenuItem m_ui;
|
||||
|
||||
public override string Name => "显示全部";
|
||||
public override bool Visible => !string.IsNullOrWhiteSpace(m_ui.SearchKey);
|
||||
|
||||
public OptMenu_ShowAll(RomListMenuItem romListUI, Sprite icon = null) : base("显示全部", icon)
|
||||
public OptMenu_ShowAll(RomListMenuItem romListUI)
|
||||
{
|
||||
m_ui = romListUI;
|
||||
}
|
||||
@ -103,5 +106,32 @@ namespace AxibugEmuOnline.Client
|
||||
m_ui.RefreshUI();
|
||||
}
|
||||
}
|
||||
|
||||
public class OptMenu_Fav : ExecuteMenu
|
||||
{
|
||||
private RomListMenuItem m_romListUI;
|
||||
private ThirdMenuRoot m_romListSub;
|
||||
|
||||
private RomItem m_currentSelect => m_romListSub.GetItemUIByIndex(m_romListSub.SelectIndex) as RomItem;
|
||||
|
||||
public override bool Visible => m_currentSelect.RomInfoReady;
|
||||
|
||||
public override string Name { get { return m_currentSelect.IsStar ? "取消收藏" : "收藏"; } }
|
||||
|
||||
public OptMenu_Fav(RomListMenuItem romListUI)
|
||||
{
|
||||
m_romListUI = romListUI;
|
||||
m_romListSub = m_romListUI.SubMenuItemGroup as ThirdMenuRoot;
|
||||
}
|
||||
|
||||
public override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||
{
|
||||
var romItem = m_currentSelect;
|
||||
if (!romItem.IsStar)
|
||||
App.share.SendGameStar(romItem.RomID, 0);
|
||||
else
|
||||
App.share.SendGameStar(romItem.RomID, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -8,8 +8,9 @@ namespace AxibugEmuOnline.Client
|
||||
public class InGameUI_FilterSetting : ExpandMenu
|
||||
{
|
||||
private InGameUI m_gameUI;
|
||||
public override string Name => "滤镜";
|
||||
|
||||
public InGameUI_FilterSetting(InGameUI gameUI) : base("滤镜", null)
|
||||
public InGameUI_FilterSetting(InGameUI gameUI)
|
||||
{
|
||||
m_gameUI = gameUI;
|
||||
}
|
||||
@ -26,12 +27,11 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
private RomFile m_rom;
|
||||
|
||||
public override string Name => "取消滤镜";
|
||||
public override bool IsApplied => App.settings.Filter.GetFilterSetting(m_rom).filter == null;
|
||||
public FilterNone(RomFile rom) : base("取消滤镜", null)
|
||||
public FilterNone(RomFile rom)
|
||||
{
|
||||
m_rom = rom;
|
||||
|
||||
var currentFilterSetting = App.settings.Filter.GetFilterSetting(m_rom);
|
||||
}
|
||||
|
||||
public override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||
@ -58,8 +58,8 @@ namespace AxibugEmuOnline.Client
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public FilterMenu(RomFile rom, Filter filter) : base(filter.Name, null)
|
||||
public override string Name => m_filter.Name;
|
||||
public FilterMenu(RomFile rom, Filter filter)
|
||||
{
|
||||
m_filter = filter;
|
||||
m_presetsMenuItems = new List<OptionMenu> { new FilterPresetMenu(rom, m_filter, m_filter.DefaultPreset) };
|
||||
@ -87,8 +87,8 @@ namespace AxibugEmuOnline.Client
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public FilterPresetMenu(RomFile rom, Filter filter, FilterPreset preset) : base(preset.Name, null)
|
||||
public override string Name => m_preset.Name;
|
||||
public FilterPresetMenu(RomFile rom, Filter filter, FilterPreset preset)
|
||||
{
|
||||
m_preset = preset;
|
||||
m_rom = rom;
|
||||
|
@ -1,14 +1,12 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace AxibugEmuOnline.Client
|
||||
namespace AxibugEmuOnline.Client
|
||||
{
|
||||
public class InGameUI_LoadState : ExecuteMenu
|
||||
{
|
||||
private InGameUI m_gameUI;
|
||||
public override bool Visible => !m_gameUI.IsNetPlay;
|
||||
public override string Name => "读取快照";
|
||||
|
||||
public InGameUI_LoadState(InGameUI gameUI) : base("뗍혤우亮", null)
|
||||
public InGameUI_LoadState(InGameUI gameUI)
|
||||
{
|
||||
m_gameUI = gameUI;
|
||||
}
|
||||
@ -18,12 +16,9 @@ namespace AxibugEmuOnline.Client
|
||||
if (m_gameUI.IsNetPlay) return;
|
||||
|
||||
object state = m_gameUI.GetQuickState();
|
||||
Stopwatch sw = Stopwatch.StartNew();
|
||||
if (state != null)
|
||||
{
|
||||
m_gameUI.Core.LoadState(state);
|
||||
sw.Stop();
|
||||
App.log.Info($"{m_gameUI.RomFile.Platform}====>우亮속潼봬珂:{sw.Elapsed.TotalMilliseconds}ms");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
namespace AxibugEmuOnline.Client
|
||||
namespace AxibugEmuOnline.Client
|
||||
{
|
||||
public class InGameUI_QuitGame : ExecuteMenu
|
||||
{
|
||||
private InGameUI m_gameUI;
|
||||
public override string Name => "退出";
|
||||
|
||||
|
||||
public InGameUI_QuitGame(InGameUI gameUI) : base("退出", null)
|
||||
public InGameUI_QuitGame(InGameUI gameUI)
|
||||
{
|
||||
m_gameUI = gameUI;
|
||||
}
|
||||
|
@ -1,14 +1,14 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
|
||||
namespace AxibugEmuOnline.Client
|
||||
{
|
||||
public class InGameUI_Reset : ExecuteMenu
|
||||
{
|
||||
private InGameUI m_gameUI;
|
||||
|
||||
public override string Name => "复位";
|
||||
public override bool Visible => !m_gameUI.IsNetPlay || App.roomMgr.IsHost;
|
||||
|
||||
public InGameUI_Reset(InGameUI gameUI) : base("复位", null)
|
||||
public InGameUI_Reset(InGameUI gameUI)
|
||||
{
|
||||
m_gameUI = gameUI;
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace AxibugEmuOnline.Client
|
||||
@ -8,8 +8,9 @@ namespace AxibugEmuOnline.Client
|
||||
private InGameUI m_gameUI;
|
||||
|
||||
public override bool Visible => !m_gameUI.IsNetPlay;
|
||||
public override string Name => "保存快照";
|
||||
|
||||
public InGameUI_SaveState(InGameUI gameUI) : base("괏닸우亮", null)
|
||||
public InGameUI_SaveState(InGameUI gameUI)
|
||||
{
|
||||
m_gameUI = gameUI;
|
||||
}
|
||||
@ -23,7 +24,7 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
m_gameUI.SaveQuickState(state);
|
||||
sw.Stop();
|
||||
App.log.Info($"{m_gameUI.RomFile.Platform}====>삿혤우亮봬珂:{sw.Elapsed.TotalMilliseconds}ms");
|
||||
App.log.Info($"{m_gameUI.RomFile.Platform}====>获取快照耗时:{sw.Elapsed.TotalMilliseconds}ms");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -8,8 +8,8 @@ namespace AxibugEmuOnline.Client
|
||||
public class InGameUI_Scaler : ExpandMenu
|
||||
{
|
||||
private List<OptionMenu> m_subMenus = new List<OptionMenu>();
|
||||
|
||||
public InGameUI_Scaler(InGameUI inGameUI) : base("屏幕比例", null)
|
||||
public override string Name => "屏幕比例";
|
||||
public InGameUI_Scaler(InGameUI inGameUI)
|
||||
{
|
||||
m_subMenus.Add(new Scale(inGameUI, null));
|
||||
foreach (EnumScalerMode scaleModeValue in Enum.GetValues(typeof(EnumScalerMode)))
|
||||
@ -48,8 +48,8 @@ namespace AxibugEmuOnline.Client
|
||||
else return false;
|
||||
}
|
||||
}
|
||||
|
||||
public Scale(InGameUI inGameUI, EnumScalerMode? mode) : base(ModeToName(mode), null)
|
||||
public override string Name => ModeToName(m_mode);
|
||||
public Scale(InGameUI inGameUI, EnumScalerMode? mode)
|
||||
{
|
||||
m_mode = mode;
|
||||
m_gameUI = inGameUI;
|
||||
|
@ -1,5 +1,6 @@
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.ClientCore;
|
||||
using AxibugEmuOnline.Client.UI;
|
||||
using Coffee.UIExtensions;
|
||||
using DG.Tweening;
|
||||
using DG.Tweening.Core;
|
||||
using DG.Tweening.Plugins.Options;
|
||||
@ -14,7 +15,12 @@ namespace AxibugEmuOnline.Client
|
||||
RectTransform MainMenuRoot;
|
||||
[SerializeField]
|
||||
MainMenuController MainMenu;
|
||||
public Image BG;
|
||||
[SerializeField]
|
||||
Image XMBBackground;
|
||||
[SerializeField]
|
||||
Image RomPreviewBigPic;
|
||||
[SerializeField]
|
||||
CanvasGroup XMBCG_For_RomPreviewBigPic;
|
||||
|
||||
Vector2 m_mainLayoutPosition;
|
||||
[SerializeField]
|
||||
@ -25,12 +31,20 @@ namespace AxibugEmuOnline.Client
|
||||
public static LaunchUI Instance { get; private set; }
|
||||
|
||||
TweenerCore<Vector2, Vector2, VectorOptions> m_layoutTween;
|
||||
AlphaWraper romPreviewWraper;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
Instance = this;
|
||||
m_mainLayoutPosition = MainMenuRoot.anchoredPosition;
|
||||
MainMenu.ListenControlAction = true;
|
||||
romPreviewWraper = new AlphaWraper(XMBCG_For_RomPreviewBigPic, RomPreviewBigPic.GetComponent<CanvasGroup>(), false);
|
||||
|
||||
var uiEffect = RomPreviewBigPic.GetComponent<UIEffect>();
|
||||
if (Application.platform == RuntimePlatform.PSP2)
|
||||
uiEffect.blurMode = BlurMode.FastBlur;
|
||||
else
|
||||
uiEffect.blurMode = BlurMode.DetailBlur;
|
||||
}
|
||||
|
||||
private void Start()
|
||||
@ -46,14 +60,40 @@ namespace AxibugEmuOnline.Client
|
||||
|
||||
public void HideMainMenu()
|
||||
{
|
||||
BG.gameObject.SetActiveEx(false);
|
||||
XMBBackground.gameObject.SetActiveEx(false);
|
||||
MainMenuRoot.gameObject.SetActiveEx(false);
|
||||
RomPreviewBigPic.gameObject.SetActiveEx(false);
|
||||
}
|
||||
|
||||
public void ShowMainMenu()
|
||||
{
|
||||
BG.gameObject.SetActiveEx(true);
|
||||
XMBBackground.gameObject.SetActiveEx(true);
|
||||
MainMenuRoot.gameObject.SetActiveEx(true);
|
||||
|
||||
if (romPreviewWraper.On)
|
||||
{
|
||||
XMBCG_For_RomPreviewBigPic.gameObject.SetActive(false);
|
||||
RomPreviewBigPic.gameObject.SetActive(true);
|
||||
}
|
||||
else if (!romPreviewWraper.On)
|
||||
{
|
||||
XMBCG_For_RomPreviewBigPic.gameObject.SetActive(true);
|
||||
XMBCG_For_RomPreviewBigPic.alpha = 1;
|
||||
RomPreviewBigPic.gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
|
||||
public void HideRomPreview()
|
||||
{
|
||||
romPreviewWraper.On = false;
|
||||
}
|
||||
|
||||
public void SetRomPreview(Sprite sp)
|
||||
{
|
||||
if (MainMenu.ListenControlAction) return;
|
||||
|
||||
RomPreviewBigPic.sprite = sp;
|
||||
romPreviewWraper.On = true;
|
||||
}
|
||||
|
||||
public void ToDetailMenuLayout()
|
||||
@ -89,6 +129,8 @@ namespace AxibugEmuOnline.Client
|
||||
.SetSpeedBased();
|
||||
MainMenu.ListenControlAction = true;
|
||||
MainMenu.ExitDetailState();
|
||||
|
||||
HideRomPreview();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -42,7 +42,7 @@ namespace AxibugEmuOnline.Client
|
||||
if (m_selectIndex == -1) SelectIndex = 0;
|
||||
}
|
||||
|
||||
protected virtual MenuItem GetItemUIByIndex(int index)
|
||||
public virtual MenuItem GetItemUIByIndex(int index)
|
||||
{
|
||||
return m_runtimeMenuUI[SelectIndex];
|
||||
}
|
||||
|
@ -35,18 +35,20 @@ namespace AxibugEmuOnline.Client
|
||||
value = Mathf.Clamp(value, 0, m_runtimeMenuItems.Count - 1);
|
||||
if (m_selectIndex == value) return;
|
||||
|
||||
var gap = value - m_selectIndex;
|
||||
|
||||
var gap = value - m_selectIndex;
|
||||
|
||||
var temp = value;
|
||||
while (!m_runtimeMenuItems[value].Visible)
|
||||
{
|
||||
var temp = value;
|
||||
if (gap > 0)
|
||||
{
|
||||
temp++;
|
||||
temp++;
|
||||
if (temp >= m_runtimeMenuItems.Count) return;
|
||||
}
|
||||
else
|
||||
{
|
||||
temp--;
|
||||
if (temp < 0) return;
|
||||
}
|
||||
|
||||
if (temp >= 0 && temp < m_runtimeMenuItems.Count)
|
||||
@ -386,7 +388,6 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
/// <summary> 设置这个值以控制菜单中显示"已应用"标记 </summary>
|
||||
public virtual bool IsApplied { get; }
|
||||
protected ExecuteMenu(string name, Sprite icon = null) : base(name, icon) { }
|
||||
|
||||
public abstract void OnExcute(OptionUI optionUI, ref bool cancelHide);
|
||||
}
|
||||
@ -396,7 +397,7 @@ namespace AxibugEmuOnline.Client
|
||||
/// </summary>
|
||||
public abstract class ExpandMenu : ExecuteMenu
|
||||
{
|
||||
protected ExpandMenu(string name, Sprite icon = null) : base(name, icon) { }
|
||||
protected ExpandMenu() : base() { }
|
||||
|
||||
public sealed override void OnExcute(OptionUI optionUI, ref bool cancelHide)
|
||||
{
|
||||
@ -411,7 +412,7 @@ namespace AxibugEmuOnline.Client
|
||||
/// </summary>
|
||||
public abstract class ValueSetMenu : OptionMenu
|
||||
{
|
||||
protected ValueSetMenu(string name) : base(name) { }
|
||||
protected ValueSetMenu() : base() { }
|
||||
|
||||
public abstract Type ValueType { get; }
|
||||
public abstract object ValueRaw { get; }
|
||||
@ -423,17 +424,11 @@ namespace AxibugEmuOnline.Client
|
||||
/// <summary> 不要直接继承这个类 </summary>
|
||||
public abstract class OptionMenu
|
||||
{
|
||||
public string Name { get; protected set; }
|
||||
public Sprite Icon { get; protected set; }
|
||||
public abstract string Name { get; }
|
||||
public virtual Sprite Icon { get; }
|
||||
public virtual bool Visible => true;
|
||||
public virtual bool Enable => true;
|
||||
|
||||
protected OptionMenu(string name, Sprite icon = null)
|
||||
{
|
||||
Name = name;
|
||||
Icon = icon;
|
||||
}
|
||||
|
||||
public virtual void OnFocus() { }
|
||||
public virtual void OnShow(OptionUI_MenuItem ui) { }
|
||||
public virtual void OnHide() { }
|
||||
|
@ -3,6 +3,7 @@ using AxibugEmuOnline.Client.Event;
|
||||
using AxibugEmuOnline.Client.Manager;
|
||||
using AxibugEmuOnline.Client.UI;
|
||||
using AxibugProtobuf;
|
||||
using Sony.Vita.Dialog;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
@ -48,6 +49,14 @@ namespace AxibugEmuOnline.Client
|
||||
UpdateUI(roomInfo);
|
||||
}
|
||||
|
||||
protected override void OnSelected(float progress)
|
||||
{
|
||||
base.OnSelected(progress);
|
||||
|
||||
if (Icon.sprite == null) LaunchUI.Instance.HideRomPreview();
|
||||
else LaunchUI.Instance.SetRomPreview(Icon.sprite);
|
||||
}
|
||||
|
||||
public override bool OnEnterItem()
|
||||
{
|
||||
if (m_romFile == null) return false;
|
||||
@ -128,8 +137,9 @@ namespace AxibugEmuOnline.Client
|
||||
{
|
||||
if (m_romFile == null) return;
|
||||
if (m_romFile.ImageURL != url) return;
|
||||
|
||||
SetIcon(sprite);
|
||||
|
||||
if (m_select) LaunchUI.Instance.SetRomPreview(sprite);
|
||||
}
|
||||
|
||||
public void SetDependencyProperty(object data)
|
||||
|
@ -45,7 +45,7 @@ namespace AxibugEmuOnline.Client
|
||||
SelectIndex = selectIndex;
|
||||
}
|
||||
|
||||
protected override MenuItem GetItemUIByIndex(int index)
|
||||
public override MenuItem GetItemUIByIndex(int index)
|
||||
{
|
||||
return itemGroup.GetItemUIByDataIndex(index)?.GetComponent<MenuItem>();
|
||||
}
|
||||
|
@ -5,12 +5,6 @@
|
||||
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
|
||||
_Color ("Tint", Color) = (1,1,1,1)
|
||||
|
||||
_StencilComp ("Stencil Comparison", Float) = 8
|
||||
_Stencil ("Stencil ID", Float) = 0
|
||||
_StencilOp ("Stencil Operation", Float) = 0
|
||||
_StencilWriteMask ("Stencil Write Mask", Float) = 255
|
||||
_StencilReadMask ("Stencil Read Mask", Float) = 255
|
||||
|
||||
_ColorMask ("Color Mask", Float) = 15
|
||||
|
||||
[Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
|
||||
@ -45,15 +39,6 @@
|
||||
"CanUseSpriteAtlas"="True"
|
||||
}
|
||||
|
||||
Stencil
|
||||
{
|
||||
Ref [_Stencil]
|
||||
Comp [_StencilComp]
|
||||
Pass [_StencilOp]
|
||||
ReadMask [_StencilReadMask]
|
||||
WriteMask [_StencilWriteMask]
|
||||
}
|
||||
|
||||
Cull Off
|
||||
Lighting Off
|
||||
ZWrite Off
|
||||
@ -72,9 +57,6 @@
|
||||
#include "UnityCG.cginc"
|
||||
#include "UnityUI.cginc"
|
||||
|
||||
#pragma multi_compile_local _ UNITY_UI_CLIP_RECT
|
||||
#pragma multi_compile_local _ UNITY_UI_ALPHACLIP
|
||||
|
||||
struct appdata_t
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
@ -94,12 +76,7 @@
|
||||
};
|
||||
|
||||
fixed4 _Color;
|
||||
fixed4 _TextureSampleAdd;
|
||||
float4 _ClipRect;
|
||||
sampler2D _MainTex;
|
||||
float4 _MainTex_ST;
|
||||
float _UIMaskSoftnessX;
|
||||
float _UIMaskSoftnessY;
|
||||
|
||||
float wave(float x, float frequency, float speed, float midHeight, float maxHeight)
|
||||
{
|
||||
@ -128,10 +105,7 @@
|
||||
float2 pixelSize = vPosition.w;
|
||||
pixelSize /= float2(1, 1) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy));
|
||||
|
||||
float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
|
||||
float2 maskUV = (v.vertex.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy);
|
||||
OUT.texcoord = TRANSFORM_TEX(v.texcoord.xy, _MainTex);
|
||||
OUT.mask = float4(v.vertex.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_UIMaskSoftnessX, _UIMaskSoftnessY) + abs(pixelSize.xy)));
|
||||
OUT.texcoord = v.texcoord.xy;
|
||||
|
||||
OUT.color = v.color * _Color;
|
||||
return OUT;
|
||||
@ -187,15 +161,6 @@
|
||||
// Output to screen
|
||||
fixed4 fragColor = float4(col,1.0)*IN.color;
|
||||
|
||||
#ifdef UNITY_UI_CLIP_RECT
|
||||
half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
|
||||
fragColor.a *= m.x * m.y;
|
||||
#endif
|
||||
|
||||
#ifdef UNITY_UI_ALPHACLIP
|
||||
clip (fragColor.a - 0.001);
|
||||
#endif
|
||||
|
||||
return fragColor;
|
||||
}
|
||||
|
||||
|
@ -1,207 +0,0 @@
|
||||
Shader "AxibugEmuOnline/XMBBackGroundPreview"
|
||||
{
|
||||
Properties
|
||||
{
|
||||
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
|
||||
_Color ("Tint", Color) = (1,1,1,1)
|
||||
|
||||
_StencilComp ("Stencil Comparison", Float) = 8
|
||||
_Stencil ("Stencil ID", Float) = 0
|
||||
_StencilOp ("Stencil Operation", Float) = 0
|
||||
_StencilWriteMask ("Stencil Write Mask", Float) = 255
|
||||
_StencilReadMask ("Stencil Read Mask", Float) = 255
|
||||
|
||||
_ColorMask ("Color Mask", Float) = 15
|
||||
|
||||
[Toggle(UNITY_UI_ALPHACLIP)] _UseUIAlphaClip ("Use Alpha Clip", Float) = 0
|
||||
|
||||
[Space(10)]
|
||||
_Color1("Color1",Color) = (0,0.4,1,1)
|
||||
_Color2("Color2",Color) = (0,0.7,1,1)
|
||||
|
||||
[Header(Wave1)]
|
||||
_MidHeight1("MidHeight",Float) = 0.4
|
||||
_MaxHeight1("MaxHeigh",Float) = 0.5
|
||||
_Power1("Power",Float)=50.0
|
||||
_Frequency1("Frequency",Float)=2.0
|
||||
_Speed1("Speed",Float)=0.4
|
||||
|
||||
[Header(Wave2)]
|
||||
_MidHeight2("MidHeight",Float) = 0.42
|
||||
_MaxHeight2("MaxHeigh",Float) = 0.54
|
||||
_Power2("Power",Float)=50.0
|
||||
_Frequency2("Frequency",Float)=2.1
|
||||
_Speed2("Speed",Float)=0.3
|
||||
}
|
||||
|
||||
SubShader
|
||||
{
|
||||
Tags
|
||||
{
|
||||
"Queue"="Transparent"
|
||||
"IgnoreProjector"="True"
|
||||
"RenderType"="Transparent"
|
||||
"PreviewType"="Plane"
|
||||
"CanUseSpriteAtlas"="True"
|
||||
}
|
||||
|
||||
Stencil
|
||||
{
|
||||
Ref [_Stencil]
|
||||
Comp [_StencilComp]
|
||||
Pass [_StencilOp]
|
||||
ReadMask [_StencilReadMask]
|
||||
WriteMask [_StencilWriteMask]
|
||||
}
|
||||
|
||||
Cull Off
|
||||
Lighting Off
|
||||
ZWrite Off
|
||||
ZTest [unity_GUIZTestMode]
|
||||
Blend SrcAlpha OneMinusSrcAlpha
|
||||
ColorMask [_ColorMask]
|
||||
|
||||
Pass
|
||||
{
|
||||
Name "Default"
|
||||
CGPROGRAM
|
||||
#pragma vertex vert
|
||||
#pragma fragment frag
|
||||
#pragma target 2.0
|
||||
|
||||
#include "UnityCG.cginc"
|
||||
#include "UnityUI.cginc"
|
||||
|
||||
#pragma multi_compile_local _ UNITY_UI_CLIP_RECT
|
||||
#pragma multi_compile_local _ UNITY_UI_ALPHACLIP
|
||||
|
||||
struct appdata_t
|
||||
{
|
||||
float4 vertex : POSITION;
|
||||
float4 color : COLOR;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||
};
|
||||
|
||||
struct v2f
|
||||
{
|
||||
float4 vertex : SV_POSITION;
|
||||
fixed4 color : COLOR;
|
||||
float2 texcoord : TEXCOORD0;
|
||||
float4 worldPosition : TEXCOORD1;
|
||||
float4 mask : TEXCOORD2;
|
||||
UNITY_VERTEX_OUTPUT_STEREO
|
||||
};
|
||||
|
||||
fixed4 _Color;
|
||||
fixed4 _TextureSampleAdd;
|
||||
float4 _ClipRect;
|
||||
sampler2D _MainTex;
|
||||
float4 _MainTex_ST;
|
||||
float _UIMaskSoftnessX;
|
||||
float _UIMaskSoftnessY;
|
||||
|
||||
float wave(float x, float frequency, float speed, float midHeight, float maxHeight)
|
||||
{
|
||||
return (sin(frequency * (x + speed * (((1. - (pow(cos(0.002 * (_Time.y + 400.)), 2.) + 1.) / 2.) + .1) * 2048.))) * (maxHeight - midHeight)) + midHeight;
|
||||
}
|
||||
float percentHigh(float currentY, float waveHeight, float maxHeight, float power)
|
||||
{
|
||||
float percentWave = max(waveHeight - currentY, 0.0) / maxHeight;
|
||||
return pow(1.0 - percentWave, power);
|
||||
}
|
||||
float waveColor(float2 uv, float waveHeight, float maxHeight, float frequency, float power)
|
||||
{
|
||||
float percentWave = percentHigh(uv.y, waveHeight, maxHeight, power);
|
||||
return clamp(percentWave + 0.8, 0.0, 1.0);
|
||||
}
|
||||
|
||||
v2f vert(appdata_t v)
|
||||
{
|
||||
v2f OUT;
|
||||
UNITY_SETUP_INSTANCE_ID(v);
|
||||
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
|
||||
float4 vPosition = UnityObjectToClipPos(v.vertex);
|
||||
OUT.worldPosition = v.vertex;
|
||||
OUT.vertex = vPosition;
|
||||
|
||||
float2 pixelSize = vPosition.w;
|
||||
pixelSize /= float2(1, 1) * abs(mul((float2x2)UNITY_MATRIX_P, _ScreenParams.xy));
|
||||
|
||||
float4 clampedRect = clamp(_ClipRect, -2e10, 2e10);
|
||||
float2 maskUV = (v.vertex.xy - clampedRect.xy) / (clampedRect.zw - clampedRect.xy);
|
||||
OUT.texcoord = TRANSFORM_TEX(v.texcoord.xy, _MainTex);
|
||||
OUT.mask = float4(v.vertex.xy * 2 - clampedRect.xy - clampedRect.zw, 0.25 / (0.25 * half2(_UIMaskSoftnessX, _UIMaskSoftnessY) + abs(pixelSize.xy)));
|
||||
|
||||
OUT.color = v.color * _Color;
|
||||
return OUT;
|
||||
}
|
||||
|
||||
float3 _Color1;
|
||||
float3 _Color2;
|
||||
|
||||
float _MidHeight1;
|
||||
float _MaxHeight1;
|
||||
float _Power1;
|
||||
float _Frequency1;
|
||||
float _Speed1;
|
||||
|
||||
float _MidHeight2;
|
||||
float _MaxHeight2;
|
||||
float _Power2;
|
||||
float _Frequency2;
|
||||
float _Speed2;
|
||||
|
||||
fixed4 frag(v2f IN) : SV_Target
|
||||
{
|
||||
float2 uv= IN.texcoord;
|
||||
// Lerped background
|
||||
|
||||
float amount = (uv.x + uv.y) / 2.0;
|
||||
float3 bg = lerp(_Color2, _Color1, amount);
|
||||
|
||||
// Overlayed sine waves
|
||||
float maxHeight1 = _MaxHeight1 + wave(0, 4.0,0.02, 0.0, 0.02);
|
||||
float power1 = _Power1; //Higher power means thinner line
|
||||
float frequency1 = _Frequency1 + wave(0.0, 3.0, 0.03, 0.0, 0.02);
|
||||
float speed1 = _Speed1 + wave(0.0, 2.2, 0.04, 0.0, 0.01);
|
||||
float waveHeight1 = wave(uv.x, frequency1, speed1, _MidHeight1, maxHeight1);
|
||||
float waveCol1 = waveColor(uv, waveHeight1, maxHeight1, frequency1, power1);
|
||||
|
||||
float midHeight2 = _MidHeight2;
|
||||
float maxHeight2 = _MaxHeight2 + wave(0.0, 3.0, 0.04, 0.0, 0.02);
|
||||
float power2 = _Power2; //Higher power means thinner line
|
||||
float frequency2 = _Frequency2 + wave(0.0, 4.0, 0.05, 0.0, 0.02);
|
||||
float speed2 = _Speed2 + wave(0.0, 2.0, 0.02, 0.0, 0.01);
|
||||
float waveHeight2 = wave(uv.x, frequency2, speed2, midHeight2, maxHeight2);
|
||||
float waveCol2 = waveColor(uv, waveHeight2, maxHeight2, frequency2, power2);
|
||||
|
||||
float3 col = bg;
|
||||
|
||||
float3 waveCol1_temp=col/waveCol1;
|
||||
col = lerp(col,waveCol1_temp, step(uv.y, waveHeight1));
|
||||
|
||||
float3 waveCol2_temp=col/waveCol2;
|
||||
col = lerp(col,waveCol2_temp, step(uv.y, waveHeight2));
|
||||
|
||||
// Output to screen
|
||||
fixed4 fragColor = float4(col,1.0)*IN.color;
|
||||
|
||||
#ifdef UNITY_UI_CLIP_RECT
|
||||
half2 m = saturate((_ClipRect.zw - _ClipRect.xy - abs(IN.mask.xy)) * IN.mask.zw);
|
||||
fragColor.a *= m.x * m.y;
|
||||
#endif
|
||||
|
||||
#ifdef UNITY_UI_ALPHACLIP
|
||||
clip (fragColor.a - 0.001);
|
||||
#endif
|
||||
|
||||
return fragColor;
|
||||
}
|
||||
|
||||
|
||||
|
||||
ENDCG
|
||||
}
|
||||
}
|
||||
}
|
@ -1,10 +0,0 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 424d88aff12857f4aab1911fdb6e02e9
|
||||
ShaderImporter:
|
||||
externalObjects: {}
|
||||
defaultTextures: []
|
||||
nonModifiableTextures: []
|
||||
preprocessorOverride: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Loading…
Reference in New Issue
Block a user