Removed external texture loading.

Added Discord link.
Minimal cleanup.
This commit is contained in:
Katboi01 2023-10-09 00:11:02 +02:00
parent 51cc9df14f
commit 17862fa5c3
48 changed files with 505 additions and 848 deletions

View File

@ -1,9 +0,0 @@
fileFormatVersion: 2
guid: 425c3aed47dd05444960ca41af18e591
folderAsset: yes
timeCreated: 1481126943
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: e00e6f90ab8233e46a41c5e33917c642
timeCreated: 1585839223
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
Fire texture - http://suicidecrew.deviantart.com/art/Fire-Seamless-tile-116721709
Screen Space Curvature - http://madebyevan.com/shaders/curvature/
Grass Blades texture from:
http://www.fuzzimo.com/free-hi-res-ornamental-grass-blade-textures/
Keep them coming, contribute today!
http://amplify.pt/unity/amplify-shader-editor/contribute

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 451790f45b4e5434586d16e924540ee7
timeCreated: 1481127071
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
Use your Unity Asset Store invoice number in the Amplify Product download page to download the latest Amplify Shader Editor package and Shader Samples package.
1 - Go to http://amplify.pt/download
2 - Enter your Unity Asset Store and click Unlock
3 - Scroll down to the Amplify Shader Editor entry
4 - Click the Sample button to download the sample package.
NOTE: You can also use the product download page to download the latest Amplify Shader Editor package. Due to Asset Store review times and update cycles, the version hosted there is usually more recent.

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 03fe3bdcb7262a84ca060ff336c7d8d1
timeCreated: 1481127071
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: dff05fea7446d7b4e9029bfab77455d2
timeCreated: 1559836117
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: d1c0b77896049554fa4b635531caf741
timeCreated: 1533059192
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: f7c4e22642de60d448f4e4809190f7b1
timeCreated: 1559837332
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 6ecbfd0a046659943a69328c98ff0442
timeCreated: 1520956522
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,12 +0,0 @@
Samples are provided by pipeline, if you want to import the samples please use the "Start Screen" to do so instead of unpacking manually, this will ensure that they are imported correctly. Go to Windows > Amplify Shader Editor > Start Screen and under "Shader Samples" select the ones you want to import. Do be aware that importing any SRP samples requires to first install the respective pipeline using the package manager.
However if you still want to import them manually here is the breakdown of the included packages:
* "Sample Resources": constains the assets shared between all pipelines, like textures and meshes, this should always be imported first
* "Built-In Samples": contains the samples shaders with their scenes for the built-in rendering system
* "HDRP Samples": contains the samples shaders with their scenes for HDRP 7.X.X and up (Unity 2019.3 and up)
* "HDRP Samples (Legacy)": contains the samples shaders with their scenes for HDRP 6.X.X and down (from Unity 2018.2 to Unity 2019.2)
* "URP Samples": contains the samples shaders with their scenes for URP 7.X.X and up (Unity 2019.3 and up)
* "LWRP Samples": contains the samples shaders with their scenes for LWRP between 4.X.X and 6.X.X (from Unity 2018.3 to Unity 2019.2)
* "LWRP Samples (Legacy)": contains the samples shaders with their scenes for LWRP 3.X.X (Unity 2018.2)
Please notice that in some cases the sample may have been created in a different version from the SRP that you are using which can produce "pink" shaders. If that happens it's usually the case that you only need to open the shader in ASE and save it to update it.

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 5c5208e121a880c4fbb9de7aaeaa8aa2
timeCreated: 1541776170
licenseType: Store
TextScriptImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: c0a0a980c9ba86345bc15411db88d34f
timeCreated: 1585839223
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: a9d68dd8913f05d4d9ce75e7b40c6044
timeCreated: 1575902011
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -73,7 +73,7 @@ AnimatorStateMachine:
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 8321995038595102421}
m_Position: {x: 260, y: 170, z: 0}
m_Position: {x: 260, y: 160, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 9a6f8c7c1ea72ce46831c5e1b6150d0c
timeCreated: 1466790933
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 6c1aa30ed76f0414098c23d2d01e12b7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 9a1e19c65f9ff0f4bbbe82ded49fa582
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: d634f7ffe4093a347af6b72886c5bfe8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 855b9920034d47542b595e11470c873d
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 473c8132495fb3f43a506469ed1ff16f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 3d1a7cf6410f0c74d995dc3fe104d320
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -3382,7 +3382,7 @@ GameObject:
- component: {fileID: 311768530}
- component: {fileID: 311768529}
m_Layer: 5
m_Name: CreditsButton
m_Name: SettingsButton
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@ -4804,8 +4804,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 540, y: -1273.51}
m_SizeDelta: {x: 540, y: 200}
m_AnchoredPosition: {x: 523, y: -1273.51}
m_SizeDelta: {x: 523, y: 200}
m_Pivot: {x: 1, y: 0}
--- !u!114 &491643502
MonoBehaviour:
@ -6472,8 +6472,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -688.81}
m_SizeDelta: {x: 540, y: 67}
m_AnchoredPosition: {x: 261.5, y: -688.81}
m_SizeDelta: {x: 523, y: 67}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &549399992
MonoBehaviour:
@ -12806,8 +12806,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -864.41003}
m_SizeDelta: {x: 540, y: 284.2}
m_AnchoredPosition: {x: 261.5, y: -864.41003}
m_SizeDelta: {x: 523, y: 284.2}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &749479955
MonoBehaviour:
@ -14235,6 +14235,81 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 835771903}
m_CullTransparentMesh: 1
--- !u!1 &865850249
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 865850250}
- component: {fileID: 865850252}
- component: {fileID: 865850251}
m_Layer: 5
m_Name: Image
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &865850250
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 865850249}
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_Children: []
m_Father: {fileID: 1979302282}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 1, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: -69.26, y: 0}
m_SizeDelta: {x: 40, y: 40}
m_Pivot: {x: 1, y: 0.5}
--- !u!114 &865850251
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 865850249}
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: 21300000, guid: 606c8ef44552e594c8ba1b9ae8a7e46e, 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!222 &865850252
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 865850249}
m_CullTransparentMesh: 1
--- !u!1 &870154645
GameObject:
m_ObjectHideFlags: 0
@ -15889,6 +15964,7 @@ RectTransform:
- {fileID: 749479954}
- {fileID: 1336599967}
- {fileID: 491643501}
- {fileID: 1979302282}
m_Father: {fileID: 1404419001}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
@ -15916,9 +15992,9 @@ MonoBehaviour:
m_Bottom: 0
m_ChildAlignment: 0
m_Spacing: 0
m_ChildForceExpandWidth: 0
m_ChildForceExpandWidth: 1
m_ChildForceExpandHeight: 0
m_ChildControlWidth: 0
m_ChildControlWidth: 1
m_ChildControlHeight: 0
m_ChildScaleWidth: 0
m_ChildScaleHeight: 0
@ -15930,7 +16006,7 @@ MonoBehaviour:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1042785513}
m_Enabled: 1
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
@ -17716,8 +17792,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -33.5}
m_SizeDelta: {x: 540, y: 67}
m_AnchoredPosition: {x: 261.5, y: -33.5}
m_SizeDelta: {x: 523, y: 67}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1243768363
MonoBehaviour:
@ -18706,6 +18782,140 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1280518977}
m_CullTransparentMesh: 1
--- !u!1 &1284639743
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1284639744}
- component: {fileID: 1284639746}
- component: {fileID: 1284639745}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1284639744
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1284639743}
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_Children: []
m_Father: {fileID: 1979302282}
m_RootOrder: 0
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!114 &1284639745
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1284639743}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, 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_text: Model Viewer Discord
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 38f9c70d045080845a18307715f00e15, type: 2}
m_sharedMaterial: {fileID: 3861585161733349673, guid: 38f9c70d045080845a18307715f00e15, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_enableWordWrapping: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 1
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &1284639746
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1284639743}
m_CullTransparentMesh: 1
--- !u!1 &1304524550
GameObject:
m_ObjectHideFlags: 0
@ -19027,8 +19237,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -1040.01}
m_SizeDelta: {x: 540, y: 67}
m_AnchoredPosition: {x: 261.5, y: -1040.01}
m_SizeDelta: {x: 523, y: 67}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1336599968
MonoBehaviour:
@ -22547,7 +22757,7 @@ MonoBehaviour:
m_EditorClassIdentifier:
AAAPI: https://api.atlasacademy.io/export/
Region: JP
debugUrl: s.a.test/website/modelViewer.html
debugUrl: s.a.test/website/modelViewer.html?id=1101100
SpawnedServants: []
AnimationName:
Servants:
@ -23356,8 +23566,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 540, y: -444.655}
m_SizeDelta: {x: 540, y: 421.31}
m_AnchoredPosition: {x: 523, y: -444.655}
m_SizeDelta: {x: 523, y: 421.31}
m_Pivot: {x: 1, y: 0.5}
--- !u!114 &1684536183
MonoBehaviour:
@ -24453,8 +24663,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -200.5}
m_SizeDelta: {x: 540, y: 67}
m_AnchoredPosition: {x: 261.5, y: -200.5}
m_SizeDelta: {x: 523, y: 67}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1806041144
MonoBehaviour:
@ -26290,6 +26500,140 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1971428426}
m_CullTransparentMesh: 1
--- !u!1 &1979302281
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1979302282}
- component: {fileID: 1979302285}
- component: {fileID: 1979302284}
- component: {fileID: 1979302283}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1979302282
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979302281}
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_Children:
- {fileID: 1284639744}
- {fileID: 865850250}
m_Father: {fileID: 1042785514}
m_RootOrder: 8
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 261.5, y: -1273.51}
m_SizeDelta: {x: 523, y: 50}
m_Pivot: {x: 0.5, y: 1}
--- !u!114 &1979302283
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979302281}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 1979302284}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 1629128743}
m_TargetAssemblyTypeName: UIController, Assembly-CSharp
m_MethodName: OpenUrl
m_Mode: 5
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument: https://discord.gg/xVvBcKfAas
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &1979302284
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979302281}
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: 0.392}
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: 10907, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
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!222 &1979302285
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1979302281}
m_CullTransparentMesh: 1
--- !u!1 &1995491225
GameObject:
m_ObjectHideFlags: 0
@ -26949,8 +27293,8 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 1}
m_AnchorMax: {x: 0, y: 1}
m_AnchoredPosition: {x: 270, y: -117}
m_SizeDelta: {x: 540, y: 100}
m_AnchoredPosition: {x: 261.5, y: -117}
m_SizeDelta: {x: 523, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &2073514567
GameObject:

View File

@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 055f725890d872b4bb22fa493ed06356
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,281 +0,0 @@
/* HaRepacker - WZ extractor and repacker
* Copyright (C) 2009, 2010 haha01haha01
* This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
* This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
* You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.*/
namespace SharpApng
{
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using uGIF;
using UnityEngine;
public class Frame : IDisposable
{
#region Fields
private Image m_bmp;
private int m_den;
private int m_num;
#endregion Fields
#region Constructors
public Frame(Image bmp, int num, int den)
{
this.m_num = num;
this.m_den = den;
this.m_bmp = bmp;
}
#endregion Constructors
#region Properties
public Image Bitmap
{
get
{
return m_bmp;
}
set
{
m_bmp = value;
}
}
public int DelayDen
{
get
{
return m_den;
}
set
{
m_den = value;
}
}
public int DelayNum
{
get
{
return m_num;
}
set
{
m_num = value;
}
}
#endregion Properties
#region Methods
public void Dispose()
{
}
#endregion Methods
}
internal class Apng : IDisposable
{
#region Fields
private List<Frame> m_frames = new List<Frame>();
#endregion Fields
#region Constructors
public Apng()
{
}
#endregion Constructors
#region Indexers
public Frame this[int index]
{
get
{
if (index < m_frames.Count) return m_frames[index];
else return null;
}
set
{
if (index < m_frames.Count) m_frames[index] = value;
}
}
#endregion Indexers
#region Methods
public void AddFrame(Frame frame)
{
m_frames.Add(frame);
}
public void AddFrame(Image bmp, int num, int den)
{
m_frames.Add(new Frame(bmp, num, den));
}
public void Dispose()
{
foreach (Frame frame in m_frames)
frame.Dispose();
m_frames.Clear();
}
public void WriteApng(string path, bool firstFrameHidden, bool disposeAfter)
{
Size maxSize = new Size(m_frames.Max(f => f.Bitmap.width), m_frames.Max(f => f.Bitmap.height));
for (int i = 0; i < m_frames.Count; i++)
{
Frame frame = m_frames[i];
//if (frame.Bitmap.Width != maxSize.Width || frame.Bitmap.Height != maxSize.Height)
//frame.Bitmap = ExtendImage(frame.Bitmap, maxSize);
ApngBasicWrapper.CreateFrameManaged(frame.Bitmap, frame.DelayNum, frame.DelayDen, i);
}
ApngBasicWrapper.SaveApngManaged(path, m_frames.Count, maxSize.Width, maxSize.Height, firstFrameHidden);
if (disposeAfter) Dispose();
}
private static Image ExtendImage(Image source, Size newSize)
{
Image result = new Image(newSize.Width, newSize.Height);
//using (Graphics g = Graphics.FromImage(result))
//{
// g.DrawImageUnscaled(source, 0, 0);
//}
return result;
}
#endregion Methods
}
internal static class ApngBasicWrapper
{
#region Fields
private const string apngdll = "apng64.dll";
private const int PIXEL_DEPTH = 4;
#endregion Fields
#region Methods
internal static void CreateFrameManaged(Image source, int num, int den, int i)
{
IntPtr ptr = MarshalByteArray(TranslateImage(source));
CreateFrame(ptr, num, den, i, source.width * source.height * PIXEL_DEPTH);
ReleaseData(ptr);
}
internal static void SaveApngManaged(string path, int frameCount, int width, int height, bool firstFrameHidden)
{
IntPtr pathPtr = MarshalString(path);
byte firstFrame = firstFrameHidden ? (byte)1 : (byte)0;
SaveAPNG(pathPtr, frameCount, width, height, PIXEL_DEPTH, firstFrame);
var bufferSize = GetBufferSize();
//Call and return the pointer
IntPtr returnedPtr = GetBufferContent();
//Create new Variable to Store the result
byte[] returnedResult = new byte[bufferSize];
//Copy from result pointer to the C# variable
Marshal.Copy(returnedPtr, returnedResult, 0, bufferSize);
File.WriteAllBytes(path, returnedResult);
Debug.Log("saved");
ReleaseData(pathPtr);
}
[DllImport(apngdll, CallingConvention = CallingConvention.StdCall)]
private static extern void CreateFrame(IntPtr pdata, int num, int den, int i, int len);
[DllImport(apngdll)]
private static extern void SaveAPNG(IntPtr path, int frameCount, int width, int height, int bytesPerPixel, byte firstFrameHidden);
[DllImport(apngdll)]
private static extern int GetBufferSize();
[DllImport(apngdll)]
private static extern IntPtr GetBufferContent();
private static IntPtr MarshalByteArray(byte[] source)
{
int size = Marshal.SizeOf(source[0]) * source.Length;
IntPtr pnt = Marshal.AllocHGlobal(size);
Marshal.Copy(source, 0, pnt, source.Length);
return pnt;
}
private static IntPtr MarshalString(string source)
{
byte[] toMarshal = Encoding.ASCII.GetBytes(source);
int size = Marshal.SizeOf(source[0]) * source.Length;
IntPtr pnt = Marshal.AllocHGlobal(size + Marshal.SizeOf(source[0]));
Marshal.Copy(toMarshal, 0, pnt, source.Length);
//Marshal.Copy(new byte[] { 0 }, 0, new IntPtr(pnt.ToInt32() + size), 1);
return pnt;
}
private static void ReleaseData(IntPtr ptr)
{
Marshal.FreeHGlobal(ptr);
}
static byte[] TranslateImage(Image texture)
{
int width = texture.width, height = texture.height;
Color32[] original = new Color32[texture.pixels.Length];
texture.pixels.CopyTo(original, 0);
byte[] result = new byte[texture.width * texture.height * PIXEL_DEPTH];
int p = 0;
Debug.Log("1");
for (int y = 0; y < height; y++)
{
for (int x = 0; x < width; x++)
{
int index = (y * width + x);
int index2 = ((height-y-1) * width + x);
result[index * PIXEL_DEPTH] = original[index2].b;
result[index * PIXEL_DEPTH + 1] = original[index2].g;
result[index * PIXEL_DEPTH + 2] = original[index2].r;
result[index * PIXEL_DEPTH + 3] = original[index2].a;
}
p += 1;
}
Debug.Log("2");
return result;
}
#endregion Methods
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: de9592c4ae9713d41ae7a9ae40d1b549
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,11 +1,6 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Collections;
using System.Linq;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.UI;
public class FateModelBuilder : MonoBehaviour
@ -52,40 +47,25 @@ public class FateModelBuilder : MonoBehaviour
var lcButt = UIController.Instance.LoadedCharaButton;
lcButt.GetComponentInChildren<TMPro.TextMeshProUGUI>().text = servant.name + " - AA database";
lcButt.GetComponentInChildren<Button>().onClick.RemoveAllListeners();
lcButt.GetComponentInChildren<Button>().onClick.AddListener(() => Application.OpenURL("https://apps.atlasacademy.io/db/JP/servant/" + servant.collectionNo));
lcButt.GetComponentInChildren<Button>().onClick.AddListener(() => UIController.Instance.OpenUrl("https://apps.atlasacademy.io/db/JP/servant/" + servant.collectionNo));
}
AssetBundle assetBundle = null;
string url = $"{urlBase}/manifest.json";
Manifest manifest = null;
yield return FateAssetManager.DownloadText(url, (txt) =>
{
if (string.IsNullOrEmpty(txt)) return;
txt = $"{{\"Entries\": {txt} }}";
manifest = (Manifest)JsonUtility.FromJson(txt, typeof(Manifest));
});
string url = $"{urlBase}/{idNum}";
if (manifest == null)
{
Error.Log(Color.red, "Failed to download manifest from " + url);
LoadingInProgress = false;
yield break;
}
Error.Log(Color.green, "Loading character id " + id);
url = $"{urlBase}/{manifest.GetFilePath(idNum.ToString())}";
yield return FateAssetManager.DownloadBundle(url, (cb) =>
{
assetBundle = cb;
});
if (assetBundle == null)
{
Error.Log(Color.red, "Loading assetbundle failed!");
LoadingInProgress = false;
yield break;
}
StartCoroutine(BuildModel(assetBundle, manifest, urlBase));
StartCoroutine(BuildModel(assetBundle, urlBase));
}
public void ReplaceTexture()
@ -124,7 +104,7 @@ public class FateModelBuilder : MonoBehaviour
UIController.Instance.ReactivateTextureLoad();
}
public IEnumerator BuildModel(AssetBundle assetBundle, Manifest manifest, string modelUrl)
public IEnumerator BuildModel(AssetBundle assetBundle, string modelUrl)
{
if (assetBundle == null)
{
@ -151,16 +131,7 @@ public class FateModelBuilder : MonoBehaviour
else if (asset.GetType() == typeof(Texture2D))
{
Texture2D tex = asset as Texture2D;
yield return FateAssetManager.DownloadTexture(modelUrl + "/" + manifest.GetFilePath(tex.name + ".png"), (tex2) =>
{
if(tex2 == null)
{
Error.Log(Color.red, "Downloading " + tex.name + " failed");
return;
}
tex2.name = tex.name;
servant.Textures.Add(tex2);
});
servant.Textures.Add(tex);
}
else if (asset.GetType() == typeof(Material))
{

View File

@ -1,28 +1,7 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
[Serializable]
public class Manifest
{
public List<ManifestEntry> Entries = new List<ManifestEntry>();
public string GetFilePath(string input)
{
try { return Entries.FirstOrDefault(e => Path.GetFileName(e.path).ToLower() == input.ToLower()).path; }
catch { Error.Log(UnityEngine.Color.red, input + " not found in Manifest"); return null; }
}
[Serializable]
public class ManifestEntry
{
public string path;
public string type;
}
}
[Serializable]
public class BasicServant
{

View File

@ -1,9 +1,5 @@
using SharpApng;
using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using uGIF;
using UnityEngine;

View File

@ -1,71 +0,0 @@
// This was made by aaro4130 on the Unity forums. Thanks boss!
// It's been optimized and slimmed down for the purpose of loading Quake 3 TGA textures from memory streams.
using System;
using System.IO;
using UnityEngine;
public static class TGALoader
{
public static Texture2D LoadTGA(string fileName)
{
using (var imageFile = File.OpenRead(fileName))
{
return LoadTGA(imageFile);
}
}
public static Texture2D LoadTGA(Stream TGAStream)
{
using (BinaryReader r = new BinaryReader(TGAStream))
{
// Skip some header info we don't care about.
// Even if we did care, we have to move the stream seek point to the beginning,
// as the previous method in the workflow left it at the end.
r.BaseStream.Seek(12, SeekOrigin.Begin);
short width = r.ReadInt16();
short height = r.ReadInt16();
int bitDepth = r.ReadByte();
// Skip a byte of header information we don't care about.
r.BaseStream.Seek(1, SeekOrigin.Current);
Texture2D tex = new Texture2D(width, height);
Color32[] pulledColors = new Color32[width * height];
if (bitDepth == 32)
{
for (int i = 0; i < width * height; i++)
{
byte red = r.ReadByte();
byte green = r.ReadByte();
byte blue = r.ReadByte();
byte alpha = r.ReadByte();
pulledColors [i] = new Color32(blue, green, red, alpha);
}
} else if (bitDepth == 24)
{
for (int i = 0; i < width * height; i++)
{
byte red = r.ReadByte();
byte green = r.ReadByte();
byte blue = r.ReadByte();
pulledColors [i] = new Color32(blue, green, red, 1);
}
} else
{
throw new Exception("TGA texture had non 32/24 bit depth.");
}
tex.SetPixels32(pulledColors);
tex.Apply();
return tex;
}
}
}

View File

@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 854d5bb72ea5cbc4f976cc4e06f28968
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -99,7 +99,7 @@ public class UIController : MonoBehaviour
GameObject go = Instantiate(databaseContainer, ServantCostumeList.content);
go.transform.Find("Button").GetComponent<Button>().onClick.AddListener(() => {
Application.OpenURL("https://apps.atlasacademy.io/db/JP/servant/" + servant.collectionNo);
OpenUrl("https://apps.atlasacademy.io/db/JP/servant/" + servant.collectionNo);
});
foreach (var cos in servant.costumes)
@ -126,7 +126,6 @@ public class UIController : MonoBehaviour
go.transform.Find("Name").GetComponent<TMPro.TextMeshProUGUI>().text = !string.IsNullOrEmpty(cos.shortName)? cos.shortName : cos.name;
go.transform.Find("Button").GetComponent<Button>().onClick.AddListener(() => {
StartCoroutine(FateModelBuilder.Instance.ReplaceServant(cos.battleCharaId.ToString()));
//Application.OpenURL($"https://katboi01.github.io/FateViewer/?id={cos.battleCharaId}{(FateViewerMain.Instance.Region != "JP"? $"?region={FateViewerMain.Instance.Region}" : "")}");
});
}
}
@ -142,11 +141,6 @@ public class UIController : MonoBehaviour
}
EnemyCostumeList.gameObject.SetActive(true);
//GameObject go = Instantiate(databaseContainer, EnemyCostumeList.Content);
//go.transform.Find("Button").GetComponent<Button>().onClick.AddListener(() => {
// Application.OpenURL("https://apps.atlasacademy.io/db/JP/servant/" + servant[0].collectionNo);
//});
foreach (var cos in enemy)
{
GameObject go = Instantiate(costumeContainer, EnemyCostumeList.content);
@ -160,6 +154,11 @@ public class UIController : MonoBehaviour
}
}
public void OpenUrl(string url)
{
Application.OpenURL(url);
}
public void ReactivateTextureLoad()
{
ReloadTextureButton.interactable = true;

BIN
Assets/discord-icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

View File

@ -0,0 +1,120 @@
fileFormatVersion: 2
guid: 606c8ef44552e594c8ba1b9ae8a7e46e
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 0
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 256
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 256
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 3
buildTarget: WebGL
maxTextureSize: 256
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 175 B

View File

@ -1,105 +0,0 @@
html {
box-sizing: border-box;
}
*, *:before, *:after {
box-sizing: inherit;
}
html, body {
height: 100%;
}
canvas {
display: block;
}
body {
margin: 0;
}
#unity-container {
width: 100%;
height: 100%;
}
#unity-canvas {
width: 100%;
height: 100%;
background: transparent;
}
#loading-cover {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
#unity-loading-bar {
flex: 1 1 auto;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
}
#unity-logo {
text-align: center;
}
#unity-logo img {
max-width: 80%;
}
#unity-progress-bar-empty {
width: 80%;
height: 24px;
margin: 10px 20px 20px 10px;
text-align: left;
border: 1px solid white;
padding: 2px;
}
#unity-progress-bar-full {
width: 0%;
height: 100%;
background: white;
}
.light #unity-progress-bar-empty {
border-color: black;
}
.light #unity-progress-bar-full {
background: black;
}
#unity-fullscreen-button {
position: absolute;
right: 10px;
bottom: 10px;
width: 38px;
height: 38px;
background: url('fullscreen-button.png') no-repeat center;
background-size: contain;
}
.spinner,
.spinner:after {
border-radius: 50%;
width: 5em;
height: 5em;
}
.spinner {
margin: 10px;
font-size: 10px;
position: relative;
text-indent: -9999em;
border-top: 1.1em solid rgba(255, 255, 255, 0.2);
border-right: 1.1em solid rgba(255, 255, 255, 0.2);
border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
border-left: 1.1em solid #ffffff;
transform: translateZ(0);
animation: spinner-spin 1.1s infinite linear;
}
@keyframes spinner-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}

View File

@ -1,92 +0,0 @@
<!DOCTYPE html>
<html lang="en-us">
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
<title>Fate Animation Viewer</title>
<link rel="shortcut icon" href="TemplateData/favicon.ico">
<link rel="stylesheet" href="TemplateData/style.css">
</head>
<body class="dark">
<div id="unity-container" class="unity-desktop">
<canvas id="unity-canvas"></canvas>
</div>
<div id="loading-cover" style="display:none;">
<div id="unity-loading-bar">
<div id="unity-logo"><img src="logo.png"></div>
<div id="unity-progress-bar-empty" style="display: none;">
<div id="unity-progress-bar-full"></div>
</div>
<div class="spinner"></div>
</div>
</div>
<div id="unity-fullscreen-button" style="display: none;"></div>
<script>
const hideFullScreenButton = "true";
const buildUrl = "Build";
const loaderUrl = buildUrl + "/Webgl.loader.js";
const config = {
dataUrl: buildUrl + "/Webgl.data",
frameworkUrl: buildUrl + "/Webgl.framework.js",
codeUrl: buildUrl + "/Webgl.wasm",
streamingAssetsUrl: "StreamingAssets",
companyName: "Katboi01",
productName: "Fate Animation Viewer",
productVersion: "2.4.1",
};
const container = document.querySelector("#unity-container");
const canvas = document.querySelector("#unity-canvas");
const loadingCover = document.querySelector("#loading-cover");
const progressBarEmpty = document.querySelector("#unity-progress-bar-empty");
const progressBarFull = document.querySelector("#unity-progress-bar-full");
const fullscreenButton = document.querySelector("#unity-fullscreen-button");
const spinner = document.querySelector('.spinner');
const canFullscreen = (function() {
for (const key of [
'exitFullscreen',
'webkitExitFullscreen',
'webkitCancelFullScreen',
'mozCancelFullScreen',
'msExitFullscreen',
]) {
if (key in document) {
return true;
}
}
return false;
}());
if (/iPhone|iPad|iPod|Android/i.test(navigator.userAgent)) {
container.className = "unity-mobile";
config.devicePixelRatio = 1;
}
loadingCover.style.display = "";
const script = document.createElement("script");
script.src = loaderUrl;
script.onload = () => {
createUnityInstance(canvas, config, (progress) => {
spinner.style.display = "none";
progressBarEmpty.style.display = "";
progressBarFull.style.width = `${100 * progress}%`;
}).then((unityInstance) => {
loadingCover.style.display = "none";
if (canFullscreen) {
if (!hideFullScreenButton) {
fullscreenButton.style.display = "";
}
fullscreenButton.onclick = () => {
unityInstance.SetFullscreen(1);
};
}
}).catch((message) => {
alert(message);
});
};
document.body.appendChild(script);
</script>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

5
debug.log Normal file
View File

@ -0,0 +1,5 @@
[1008/232855.814:ERROR:check.cc(298)] Check failed: false. NOTREACHED log messages are omitted in official builds. Sorry!
[1008/232950.806:ERROR:check.cc(298)] Check failed: false. NOTREACHED log messages are omitted in official builds. Sorry!
[1008/234001.769:ERROR:check.cc(298)] Check failed: false. NOTREACHED log messages are omitted in official builds. Sorry!
[1009/000128.951:ERROR:check.cc(298)] Check failed: false. NOTREACHED log messages are omitted in official builds. Sorry!
[1009/000221.301:ERROR:check.cc(298)] Check failed: false. NOTREACHED log messages are omitted in official builds. Sorry!