added yarn spinner package
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
# Changelog
|
||||
All notable changes to this package will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
|
||||
|
||||
## [1.0.0] - 2026-05-20
|
||||
|
||||
This is the first release of Snaaake for Yarn Spinner.
|
||||
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e2970021f5a4e4e94ba93a3b5be801c6
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/CHANGELOG.md
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1 @@
|
||||
Snaaake for Yarn Spinner is distributed under the terms of the Unity Asset Store Terms of Service and End User License Agreement, which is available here: https://unity.com/legal/as-terms.
|
||||
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6029371209fbfb4e2bcdd4642c53c2e9
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/LICENSE.md
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,71 @@
|
||||
# Snaaake for Yarn Spinner
|
||||
|
||||
**Snaaake** is a dialogue presenter for Yarn spinner that pays homage to the dialogue in classic action games. It shows two characters in a 'radio' view, with retro effect. As characters speak their voice-over lines, the characters play a talking animation, and a subtitle view shows the corresponding text. An animated 'signal level' graphic appears between them during the conversation.
|
||||
|
||||
## Try it out!
|
||||
|
||||
Test out the Snaaake presenter by installing the sample:
|
||||
|
||||
1. Open the Package Manager by choosing Window -> Packages -> Package Manager.
|
||||
2. Select the 'Snaaake for Yarn Spinner' package.
|
||||
3. Select the 'Samples' tab.
|
||||
4. Install the 'Snaaake' sample. The sample will be copied into your project's Assets folder.
|
||||
5. Open the 'Snaaake' scene that was copied over, and hit Play.
|
||||
|
||||
## How To Use Snaaake
|
||||
|
||||
To use Snaaake in your game's dialogue, follow these steps.
|
||||
|
||||
- In the Project tab, find the 'Snaaake for Yarn Spinner' package, and navigate to 'Runtime/Prefabs'.
|
||||
- Drag the 'Snaaake Dialogue System' prefab into your scene.
|
||||
- Add your Yarn Project to the dialogue system, turn on Start Automatically, and choose a node.
|
||||
- Hit play, and enjoy your dialogue!
|
||||
|
||||
## Structure
|
||||
|
||||
The Snaaake dialogue presenter is composed of several components.
|
||||
|
||||
### Talking Head Character
|
||||
|
||||
A `TalkingHeadCharacter` is a ScriptableObject that contains a number of sprites. The first sprite will be used as the 'idle' frame, and the rest will be used while talking.
|
||||
|
||||
### Talking Head Character View
|
||||
|
||||
A `TalkingHeadCharacterView` presents sprites from a `TalkingHeadCharacter`, and can be signalled whether the speaking animation should be playing or not.
|
||||
|
||||
### Talking Head Dialogue Presenter
|
||||
|
||||
The `TalkingHeadDialoguePresenter` manages a collection of named `TalkingHeadCharacterView`s, a collection of available `TalkingHead and keeps track of which character is being presented in which view, and which character is speaking the current line. It also monitors an AudioSource's volume levels; when the level is over a threshold, the view that's showing the currently speaking character is signalled to show a speaking animation.
|
||||
|
||||
### Subtitle Dialogue Presenter
|
||||
|
||||
The `SubtitleDialoguePresenter` is a simple presenter that shows the text of the current line in a TextMeshPro text view.
|
||||
|
||||
### VO Dialogue Presenter
|
||||
|
||||
The Snaaake dialogue presenter includes a Yarn Spinner `VoiceOverDialoguePresenter` that plays the audio associated with the line. (This component is built-in to Yarn Spinner, and is made use of by this custom presenter.)
|
||||
|
||||
## Defining Characters
|
||||
|
||||
To define a character, create a new `TalkingHeadCharacter` object by opening Assets menu and choosing Create -> Yarn Spinner -> Snaaake -> Talking Head Character. Name it whatever you like, and add the sprites you want to use.
|
||||
|
||||
**Note:** The sprites you use can be any resolution, but they _must_ be square in order for the pixellation effect to work correctly.
|
||||
|
||||
Next, select the Snaaake Dialogue Presenter, find the Talking Heads Dialogue Presenter component, and click the `+` button next to the Characters list. Set the name of the character to the value you use to refer to them in your Yarn Spinner script, and set the value to the `TalkingHeadCharacter` asset you just created.
|
||||
|
||||
## Using Characters in Dialogue
|
||||
|
||||
To make a character appear in a slot, use the `set_slot` command in your scripts. The prefab that comes with Snaaake has two slots: left, and right. You can define your own slots, or add more slots, by modifying the Character Slots list in the Talking Heads Dialogue Presenter.
|
||||
|
||||
```
|
||||
// Put the TalkingHeadsCharacter named 'Player' in the 'left' slot.
|
||||
<<set_slot Player left>>
|
||||
```
|
||||
|
||||
You can change which character is in which slot at any time. Make sure to assign characters to slots before any of their lines play, or the system won't know where to show them.
|
||||
|
||||
## Notes
|
||||
|
||||
- Snaaake expects all lines to have an audio file. When the audio for a line finishes, the next line will play. If a line doesn't have audio, it will be skipped.
|
||||
- You can adjust the style of the retro effect by creating a custom material that uses the retro shader. Simply create a new Material, set its shader to 'Yarn Spinner/Snaaake Retro', and assign it to the Material of the Image on the Character. You can adjust the tint colour, pixellation, dither amount, posterisation, and more.
|
||||
- To make post-processing effects like Bloom work, you'll need to assign your camera to the canvas. To do this, open the 'Snaaake Dialogue System' prefab in your scene, and find the 'Snaaake Dialogue Presenter -> Canvas' object. Drag your scene's main camera into the Camera slot. (Make sure that your Camera has post-processing enabled!)
|
||||
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b9c4d68fadde64c8b8e4d25d3f632b39
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/README.md
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 54136020f2c1c4f19b2b00d75c610fb8
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 43b62b79447494c4086e887ddcbd5da5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+298
@@ -0,0 +1,298 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!28 &-6305474512521559428
|
||||
Texture2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: DSEG7Classic-Bold Atlas
|
||||
m_ImageContentsHash:
|
||||
serializedVersion: 2
|
||||
Hash: 00000000000000000000000000000000
|
||||
m_IsAlphaChannelOptional: 0
|
||||
serializedVersion: 4
|
||||
m_Width: 1
|
||||
m_Height: 1
|
||||
m_CompleteImageSize: 1
|
||||
m_MipsStripped: 0
|
||||
m_TextureFormat: 1
|
||||
m_MipCount: 1
|
||||
m_IsReadable: 1
|
||||
m_IsPreProcessed: 0
|
||||
m_IgnoreMipmapLimit: 1
|
||||
m_MipmapLimitGroupName:
|
||||
m_StreamingMipmaps: 0
|
||||
m_StreamingMipmapsPriority: 0
|
||||
m_VTOnly: 0
|
||||
m_AlphaIsTransparency: 0
|
||||
m_ImageCount: 1
|
||||
m_TextureDimension: 2
|
||||
m_TextureSettings:
|
||||
serializedVersion: 2
|
||||
m_FilterMode: 1
|
||||
m_Aniso: 1
|
||||
m_MipBias: 0
|
||||
m_WrapU: 0
|
||||
m_WrapV: 0
|
||||
m_WrapW: 0
|
||||
m_LightmapFormat: 0
|
||||
m_ColorSpace: 0
|
||||
m_PlatformBlob:
|
||||
image data: 1
|
||||
_typelessdata: 00
|
||||
m_StreamData:
|
||||
serializedVersion: 2
|
||||
offset: 0
|
||||
size: 0
|
||||
path:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3}
|
||||
m_Name: DSEG7Classic-Bold SDF
|
||||
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TMP_FontAsset
|
||||
m_Version: 1.1.0
|
||||
m_FaceInfo:
|
||||
m_FaceIndex: 0
|
||||
m_FamilyName: DSEG7 Classic
|
||||
m_StyleName: Bold
|
||||
m_PointSize: 90
|
||||
m_Scale: 1
|
||||
m_UnitsPerEM: 1000
|
||||
m_LineHeight: 98.100006
|
||||
m_AscentLine: 90
|
||||
m_CapLine: 86
|
||||
m_MeanLine: 86
|
||||
m_Baseline: 0
|
||||
m_DescentLine: 0
|
||||
m_SuperscriptOffset: 90
|
||||
m_SuperscriptSize: 0.5
|
||||
m_SubscriptOffset: 0
|
||||
m_SubscriptSize: 0.5
|
||||
m_UnderlineOffset: -13.500001
|
||||
m_UnderlineThickness: 4.5
|
||||
m_StrikethroughOffset: 34.4
|
||||
m_StrikethroughThickness: 4.5
|
||||
m_TabWidth: 18
|
||||
m_Material: {fileID: 6884716131310289754}
|
||||
m_SourceFontFileGUID: 91e7d6b1fe3fa491eb896dc861616cb7
|
||||
m_CreationSettings:
|
||||
sourceFontFileName:
|
||||
sourceFontFileGUID: 91e7d6b1fe3fa491eb896dc861616cb7
|
||||
faceIndex: 0
|
||||
pointSizeSamplingMode: 0
|
||||
pointSize: 90
|
||||
padding: 9
|
||||
paddingMode: 2
|
||||
packingMode: 0
|
||||
atlasWidth: 1024
|
||||
atlasHeight: 1024
|
||||
characterSetSelectionMode: 7
|
||||
characterSequence:
|
||||
referencedFontAssetGUID:
|
||||
referencedTextAssetGUID:
|
||||
fontStyle: 0
|
||||
fontStyleModifier: 0
|
||||
renderMode: 4165
|
||||
includeFontFeatures: 0
|
||||
m_SourceFontFile: {fileID: 12800000, guid: 91e7d6b1fe3fa491eb896dc861616cb7, type: 3}
|
||||
m_SourceFontFilePath:
|
||||
m_AtlasPopulationMode: 1
|
||||
InternalDynamicOS: 0
|
||||
m_GlyphTable: []
|
||||
m_CharacterTable: []
|
||||
m_AtlasTextures:
|
||||
- {fileID: -6305474512521559428}
|
||||
m_AtlasTextureIndex: 0
|
||||
m_IsMultiAtlasTexturesEnabled: 0
|
||||
m_GetFontFeatures: 1
|
||||
m_ClearDynamicDataOnBuild: 1
|
||||
m_AtlasWidth: 1024
|
||||
m_AtlasHeight: 1024
|
||||
m_AtlasPadding: 9
|
||||
m_AtlasRenderMode: 4165
|
||||
m_UsedGlyphRects: []
|
||||
m_FreeGlyphRects:
|
||||
- m_X: 0
|
||||
m_Y: 0
|
||||
m_Width: 1023
|
||||
m_Height: 1023
|
||||
m_FontFeatureTable:
|
||||
m_MultipleSubstitutionRecords: []
|
||||
m_LigatureSubstitutionRecords: []
|
||||
m_GlyphPairAdjustmentRecords: []
|
||||
m_MarkToBaseAdjustmentRecords: []
|
||||
m_MarkToMarkAdjustmentRecords: []
|
||||
m_ShouldReimportFontFeatures: 0
|
||||
m_FallbackFontAssetTable: []
|
||||
m_FontWeightTable:
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
fontWeights: []
|
||||
normalStyle: 0
|
||||
normalSpacingOffset: 0
|
||||
boldStyle: 0.75
|
||||
boldSpacing: 7
|
||||
italicStyle: 35
|
||||
tabSize: 10
|
||||
m_fontInfo:
|
||||
Name:
|
||||
PointSize: 0
|
||||
Scale: 0
|
||||
CharacterCount: 0
|
||||
LineHeight: 0
|
||||
Baseline: 0
|
||||
Ascender: 0
|
||||
CapHeight: 0
|
||||
Descender: 0
|
||||
CenterLine: 0
|
||||
SuperscriptOffset: 0
|
||||
SubscriptOffset: 0
|
||||
SubSize: 0
|
||||
Underline: 0
|
||||
UnderlineThickness: 0
|
||||
strikethrough: 0
|
||||
strikethroughThickness: 0
|
||||
TabWidth: 0
|
||||
Padding: 0
|
||||
AtlasWidth: 0
|
||||
AtlasHeight: 0
|
||||
m_glyphInfoList: []
|
||||
m_KerningTable:
|
||||
kerningPairs: []
|
||||
fallbackFontAssets: []
|
||||
atlas: {fileID: 0}
|
||||
--- !u!21 &6884716131310289754
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: DSEG7Classic-Bold Atlas Material
|
||||
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Cube:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _FaceTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: -6305474512521559428}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OutlineTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _Ambient: 0.5
|
||||
- _Bevel: 0.5
|
||||
- _BevelClamp: 0
|
||||
- _BevelOffset: 0
|
||||
- _BevelRoundness: 0
|
||||
- _BevelWidth: 0
|
||||
- _BumpFace: 0
|
||||
- _BumpOutline: 0
|
||||
- _ColorMask: 15
|
||||
- _CullMode: 0
|
||||
- _Diffuse: 0.5
|
||||
- _FaceDilate: 0
|
||||
- _FaceUVSpeedX: 0
|
||||
- _FaceUVSpeedY: 0
|
||||
- _GlowInner: 0.05
|
||||
- _GlowOffset: 0
|
||||
- _GlowOuter: 0.05
|
||||
- _GlowPower: 0.75
|
||||
- _GradientScale: 10
|
||||
- _LightAngle: 3.1416
|
||||
- _MaskSoftnessX: 0
|
||||
- _MaskSoftnessY: 0
|
||||
- _OutlineSoftness: 0
|
||||
- _OutlineUVSpeedX: 0
|
||||
- _OutlineUVSpeedY: 0
|
||||
- _OutlineWidth: 0
|
||||
- _PerspectiveFilter: 0.875
|
||||
- _Reflectivity: 10
|
||||
- _ScaleRatioA: 0.9
|
||||
- _ScaleRatioB: 0.73125
|
||||
- _ScaleRatioC: 0.73125
|
||||
- _ScaleX: 1
|
||||
- _ScaleY: 1
|
||||
- _ShaderFlags: 0
|
||||
- _Sharpness: 0
|
||||
- _SpecularPower: 2
|
||||
- _Stencil: 0
|
||||
- _StencilComp: 8
|
||||
- _StencilOp: 0
|
||||
- _StencilReadMask: 255
|
||||
- _StencilWriteMask: 255
|
||||
- _TextureHeight: 1024
|
||||
- _TextureWidth: 1024
|
||||
- _UnderlayDilate: 0
|
||||
- _UnderlayOffsetX: 0
|
||||
- _UnderlayOffsetY: 0
|
||||
- _UnderlaySoftness: 0
|
||||
- _VertexOffsetX: 0
|
||||
- _VertexOffsetY: 0
|
||||
- _WeightBold: 0.75
|
||||
- _WeightNormal: 0
|
||||
m_Colors:
|
||||
- _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
|
||||
- _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _FaceColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
|
||||
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
|
||||
- _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
|
||||
m_BuildTextureStacks: []
|
||||
m_AllowLocking: 1
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 67979057ca5724a699640a538d186367
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Fonts/DSEG7Classic-Bold
|
||||
SDF.asset
|
||||
uploadId: 968678
|
||||
BIN
Binary file not shown.
+28
@@ -0,0 +1,28 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 91e7d6b1fe3fa491eb896dc861616cb7
|
||||
TrueTypeFontImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 4
|
||||
fontSize: 16
|
||||
forceTextureCase: -2
|
||||
characterSpacing: 0
|
||||
characterPadding: 1
|
||||
includeFontData: 1
|
||||
fontNames:
|
||||
- DSEG7 Classic
|
||||
fallbackFontReferences: []
|
||||
customCharacters:
|
||||
fontRenderingMode: 0
|
||||
ascentCalculationMode: 1
|
||||
useLegacyBoundsCalculation: 0
|
||||
shouldRoundAdvanceValue: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Fonts/DSEG7Classic-Bold.ttf
|
||||
uploadId: 968678
|
||||
+298
@@ -0,0 +1,298 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!21 &-6703381836575571422
|
||||
Material:
|
||||
serializedVersion: 8
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: ScienceGothic_SemiCondensed-Light Atlas Material
|
||||
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
|
||||
m_Parent: {fileID: 0}
|
||||
m_ModifiedSerializedProperties: 0
|
||||
m_ValidKeywords: []
|
||||
m_InvalidKeywords: []
|
||||
m_LightmapFlags: 4
|
||||
m_EnableInstancingVariants: 0
|
||||
m_DoubleSidedGI: 0
|
||||
m_CustomRenderQueue: -1
|
||||
stringTagMap: {}
|
||||
disabledShaderPasses: []
|
||||
m_LockedProperties:
|
||||
m_SavedProperties:
|
||||
serializedVersion: 3
|
||||
m_TexEnvs:
|
||||
- _BumpMap:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _Cube:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _FaceTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _MainTex:
|
||||
m_Texture: {fileID: 8965678434025470537}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
- _OutlineTex:
|
||||
m_Texture: {fileID: 0}
|
||||
m_Scale: {x: 1, y: 1}
|
||||
m_Offset: {x: 0, y: 0}
|
||||
m_Ints: []
|
||||
m_Floats:
|
||||
- _Ambient: 0.5
|
||||
- _Bevel: 0.5
|
||||
- _BevelClamp: 0
|
||||
- _BevelOffset: 0
|
||||
- _BevelRoundness: 0
|
||||
- _BevelWidth: 0
|
||||
- _BumpFace: 0
|
||||
- _BumpOutline: 0
|
||||
- _ColorMask: 15
|
||||
- _CullMode: 0
|
||||
- _Diffuse: 0.5
|
||||
- _FaceDilate: 0
|
||||
- _FaceUVSpeedX: 0
|
||||
- _FaceUVSpeedY: 0
|
||||
- _GlowInner: 0.05
|
||||
- _GlowOffset: 0
|
||||
- _GlowOuter: 0.05
|
||||
- _GlowPower: 0.75
|
||||
- _GradientScale: 10
|
||||
- _LightAngle: 3.1416
|
||||
- _MaskSoftnessX: 0
|
||||
- _MaskSoftnessY: 0
|
||||
- _OutlineSoftness: 0
|
||||
- _OutlineUVSpeedX: 0
|
||||
- _OutlineUVSpeedY: 0
|
||||
- _OutlineWidth: 0
|
||||
- _PerspectiveFilter: 0.875
|
||||
- _Reflectivity: 10
|
||||
- _ScaleRatioA: 0.9
|
||||
- _ScaleRatioB: 0.73125
|
||||
- _ScaleRatioC: 0.73125
|
||||
- _ScaleX: 1
|
||||
- _ScaleY: 1
|
||||
- _ShaderFlags: 0
|
||||
- _Sharpness: 0
|
||||
- _SpecularPower: 2
|
||||
- _Stencil: 0
|
||||
- _StencilComp: 8
|
||||
- _StencilOp: 0
|
||||
- _StencilReadMask: 255
|
||||
- _StencilWriteMask: 255
|
||||
- _TextureHeight: 1024
|
||||
- _TextureWidth: 1024
|
||||
- _UnderlayDilate: 0
|
||||
- _UnderlayOffsetX: 0
|
||||
- _UnderlayOffsetY: 0
|
||||
- _UnderlaySoftness: 0
|
||||
- _VertexOffsetX: 0
|
||||
- _VertexOffsetY: 0
|
||||
- _WeightBold: 0.75
|
||||
- _WeightNormal: 0
|
||||
m_Colors:
|
||||
- _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
|
||||
- _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
|
||||
- _FaceColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _GlowColor: {r: 0, g: 1, b: 0, a: 0.5}
|
||||
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
|
||||
- _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
|
||||
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
|
||||
m_BuildTextureStacks: []
|
||||
m_AllowLocking: 1
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3}
|
||||
m_Name: ScienceGothic_SemiCondensed-Light SDF
|
||||
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TMP_FontAsset
|
||||
m_Version: 1.1.0
|
||||
m_FaceInfo:
|
||||
m_FaceIndex: 0
|
||||
m_FamilyName: Science Gothic SemiCondensed
|
||||
m_StyleName: Light
|
||||
m_PointSize: 90
|
||||
m_Scale: 1
|
||||
m_UnitsPerEM: 2000
|
||||
m_LineHeight: 132.84001
|
||||
m_AscentLine: 97.920006
|
||||
m_CapLine: 63
|
||||
m_MeanLine: 45
|
||||
m_Baseline: 0
|
||||
m_DescentLine: -34.920002
|
||||
m_SuperscriptOffset: 97.920006
|
||||
m_SuperscriptSize: 0.5
|
||||
m_SubscriptOffset: -34.920002
|
||||
m_SubscriptSize: 0.5
|
||||
m_UnderlineOffset: -11.25
|
||||
m_UnderlineThickness: 4.5
|
||||
m_StrikethroughOffset: 18
|
||||
m_StrikethroughThickness: 4.5
|
||||
m_TabWidth: 24
|
||||
m_Material: {fileID: -6703381836575571422}
|
||||
m_SourceFontFileGUID: 6a556a43741e648f5a8c0c26c9b2d1cf
|
||||
m_CreationSettings:
|
||||
sourceFontFileName:
|
||||
sourceFontFileGUID: 6a556a43741e648f5a8c0c26c9b2d1cf
|
||||
faceIndex: 0
|
||||
pointSizeSamplingMode: 0
|
||||
pointSize: 90
|
||||
padding: 9
|
||||
paddingMode: 2
|
||||
packingMode: 0
|
||||
atlasWidth: 1024
|
||||
atlasHeight: 1024
|
||||
characterSetSelectionMode: 7
|
||||
characterSequence:
|
||||
referencedFontAssetGUID:
|
||||
referencedTextAssetGUID:
|
||||
fontStyle: 0
|
||||
fontStyleModifier: 0
|
||||
renderMode: 4165
|
||||
includeFontFeatures: 0
|
||||
m_SourceFontFile: {fileID: 12800000, guid: 6a556a43741e648f5a8c0c26c9b2d1cf, type: 3}
|
||||
m_SourceFontFilePath:
|
||||
m_AtlasPopulationMode: 1
|
||||
InternalDynamicOS: 0
|
||||
m_GlyphTable: []
|
||||
m_CharacterTable: []
|
||||
m_AtlasTextures:
|
||||
- {fileID: 8965678434025470537}
|
||||
m_AtlasTextureIndex: 0
|
||||
m_IsMultiAtlasTexturesEnabled: 0
|
||||
m_GetFontFeatures: 1
|
||||
m_ClearDynamicDataOnBuild: 1
|
||||
m_AtlasWidth: 1024
|
||||
m_AtlasHeight: 1024
|
||||
m_AtlasPadding: 9
|
||||
m_AtlasRenderMode: 4165
|
||||
m_UsedGlyphRects: []
|
||||
m_FreeGlyphRects:
|
||||
- m_X: 0
|
||||
m_Y: 0
|
||||
m_Width: 1023
|
||||
m_Height: 1023
|
||||
m_FontFeatureTable:
|
||||
m_MultipleSubstitutionRecords: []
|
||||
m_LigatureSubstitutionRecords: []
|
||||
m_GlyphPairAdjustmentRecords: []
|
||||
m_MarkToBaseAdjustmentRecords: []
|
||||
m_MarkToMarkAdjustmentRecords: []
|
||||
m_ShouldReimportFontFeatures: 0
|
||||
m_FallbackFontAssetTable: []
|
||||
m_FontWeightTable:
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
- regularTypeface: {fileID: 0}
|
||||
italicTypeface: {fileID: 0}
|
||||
fontWeights: []
|
||||
normalStyle: 0
|
||||
normalSpacingOffset: 0
|
||||
boldStyle: 0.75
|
||||
boldSpacing: 7
|
||||
italicStyle: 35
|
||||
tabSize: 10
|
||||
m_fontInfo:
|
||||
Name:
|
||||
PointSize: 0
|
||||
Scale: 0
|
||||
CharacterCount: 0
|
||||
LineHeight: 0
|
||||
Baseline: 0
|
||||
Ascender: 0
|
||||
CapHeight: 0
|
||||
Descender: 0
|
||||
CenterLine: 0
|
||||
SuperscriptOffset: 0
|
||||
SubscriptOffset: 0
|
||||
SubSize: 0
|
||||
Underline: 0
|
||||
UnderlineThickness: 0
|
||||
strikethrough: 0
|
||||
strikethroughThickness: 0
|
||||
TabWidth: 0
|
||||
Padding: 0
|
||||
AtlasWidth: 0
|
||||
AtlasHeight: 0
|
||||
m_glyphInfoList: []
|
||||
m_KerningTable:
|
||||
kerningPairs: []
|
||||
fallbackFontAssets: []
|
||||
atlas: {fileID: 0}
|
||||
--- !u!28 &8965678434025470537
|
||||
Texture2D:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_Name: ScienceGothic_SemiCondensed-Light Atlas
|
||||
m_ImageContentsHash:
|
||||
serializedVersion: 2
|
||||
Hash: 00000000000000000000000000000000
|
||||
m_IsAlphaChannelOptional: 0
|
||||
serializedVersion: 4
|
||||
m_Width: 1
|
||||
m_Height: 1
|
||||
m_CompleteImageSize: 1
|
||||
m_MipsStripped: 0
|
||||
m_TextureFormat: 1
|
||||
m_MipCount: 1
|
||||
m_IsReadable: 1
|
||||
m_IsPreProcessed: 0
|
||||
m_IgnoreMipmapLimit: 1
|
||||
m_MipmapLimitGroupName:
|
||||
m_StreamingMipmaps: 0
|
||||
m_StreamingMipmapsPriority: 0
|
||||
m_VTOnly: 0
|
||||
m_AlphaIsTransparency: 0
|
||||
m_ImageCount: 1
|
||||
m_TextureDimension: 2
|
||||
m_TextureSettings:
|
||||
serializedVersion: 2
|
||||
m_FilterMode: 1
|
||||
m_Aniso: 1
|
||||
m_MipBias: 0
|
||||
m_WrapU: 0
|
||||
m_WrapV: 0
|
||||
m_WrapW: 0
|
||||
m_LightmapFormat: 0
|
||||
m_ColorSpace: 0
|
||||
m_PlatformBlob:
|
||||
image data: 1
|
||||
_typelessdata: 00
|
||||
m_StreamData:
|
||||
serializedVersion: 2
|
||||
offset: 0
|
||||
size: 0
|
||||
path:
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
fileFormatVersion: 2
|
||||
guid: afc75f8b1c4494bafa8fa17d86981e18
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Fonts/ScienceGothic_SemiCondensed-Light
|
||||
SDF.asset
|
||||
uploadId: 968678
|
||||
BIN
Binary file not shown.
+28
@@ -0,0 +1,28 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6a556a43741e648f5a8c0c26c9b2d1cf
|
||||
TrueTypeFontImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 4
|
||||
fontSize: 16
|
||||
forceTextureCase: -2
|
||||
characterSpacing: 0
|
||||
characterPadding: 1
|
||||
includeFontData: 1
|
||||
fontNames:
|
||||
- Science Gothic SemiCondensed
|
||||
fallbackFontReferences: []
|
||||
customCharacters:
|
||||
fontRenderingMode: 0
|
||||
ascentCalculationMode: 1
|
||||
useLegacyBoundsCalculation: 0
|
||||
shouldRoundAdvanceValue: 1
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Fonts/ScienceGothic_SemiCondensed-Light.ttf
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4b87d6382dc974fe69f3fb13e8304d4d
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+244
@@ -0,0 +1,244 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1 &2685809789340058871
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 9073070581582838234}
|
||||
- component: {fileID: 8569653950979764812}
|
||||
- component: {fileID: 8135251353932745513}
|
||||
m_Layer: 5
|
||||
m_Name: Border
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &9073070581582838234
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2685809789340058871}
|
||||
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: 5205167640650724488}
|
||||
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: 80, y: 80}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!222 &8569653950979764812
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2685809789340058871}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &8135251353932745513
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 2685809789340058871}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.57252175, g: 0.823, b: 0.57252175, a: 0.6039216}
|
||||
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: 65a52cd4c28494214a5a0f5893b2e204, type: 3}
|
||||
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: 0.16
|
||||
--- !u!1 &3421943593915399027
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5205167640650724488}
|
||||
- component: {fileID: 5672680925068023999}
|
||||
- component: {fileID: 4369063329456523292}
|
||||
m_Layer: 5
|
||||
m_Name: Snaaake Character View
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &5205167640650724488
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3421943593915399027}
|
||||
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: 5319686039645983245}
|
||||
- {fileID: 9073070581582838234}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0.5}
|
||||
m_AnchorMax: {x: 0, y: 0.5}
|
||||
m_AnchoredPosition: {x: 80, y: 0}
|
||||
m_SizeDelta: {x: 469.5222, y: 469.5222}
|
||||
m_Pivot: {x: 0, y: 0.5}
|
||||
--- !u!222 &5672680925068023999
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3421943593915399027}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &4369063329456523292
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 3421943593915399027}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.43847328, g: 0.6320754, b: 0.43827873, 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!1 &4405246347121567242
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 5319686039645983245}
|
||||
- component: {fileID: 2105530697395099871}
|
||||
- component: {fileID: 4890490824892634613}
|
||||
- component: {fileID: 9033460965311809990}
|
||||
m_Layer: 5
|
||||
m_Name: Character
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &5319686039645983245
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4405246347121567242}
|
||||
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: 5205167640650724488}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 540}
|
||||
m_Pivot: {x: 0.5, y: 0}
|
||||
--- !u!222 &2105530697395099871
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4405246347121567242}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &4890490824892634613
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4405246347121567242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
|
||||
m_Material: {fileID: -876546973899608171, guid: afeca3e1b22ad4ee9b8a244dc08c7b76, type: 3}
|
||||
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: ef33c81aad9234da88388c949bddefd1, type: 3}
|
||||
m_Type: 0
|
||||
m_PreserveAspect: 1
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!114 &9033460965311809990
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4405246347121567242}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5189d1ee67a4c4eb8a261f0838a93343, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: YSUAddons.Snaaake::TalkingHeadCharacterView
|
||||
image: {fileID: 4890490824892634613}
|
||||
FramesPerSecond: 8
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9b0c985fc7b234b25a99b01fb3a77102
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Prefabs/Snaaake
|
||||
Character View.prefab
|
||||
uploadId: 968678
|
||||
+1523
File diff suppressed because it is too large
Load Diff
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3cac2ead431924c63ad35c41b5195fb0
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Prefabs/Snaaake
|
||||
Dialogue Presenter.prefab
|
||||
uploadId: 968678
|
||||
+374
@@ -0,0 +1,374 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!1001 &2633030277510356657
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 2543591460179083244}
|
||||
m_Modifications:
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3307874257259253614, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Snaaake Dialogue UI
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3779176393738423805, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: characters.m_keys.Array.size
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: characters.m_values.Array.size
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_keys.Array.data[0]'
|
||||
value: Dwight
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_keys.Array.data[1]'
|
||||
value: Player
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_values.Array.data[0]'
|
||||
value:
|
||||
objectReference: {fileID: 11400000, guid: e09fca9cc64e74617a043806ad3db23c, type: 2}
|
||||
- target: {fileID: 6543422678045693905, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_values.Array.data[1]'
|
||||
value:
|
||||
objectReference: {fileID: 11400000, guid: 564a18e8d953a454d855523a674d113c, type: 2}
|
||||
- target: {fileID: 8945976763698731837, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 9132723082820636873, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_keys.Array.data[0]'
|
||||
value: Dwight
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 9132723082820636873, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_keys.Array.data[1]'
|
||||
value: Player
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 9132723082820636873, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_values.Array.data[0]'
|
||||
value:
|
||||
objectReference: {fileID: 11400000, guid: e09fca9cc64e74617a043806ad3db23c, type: 2}
|
||||
- target: {fileID: 9132723082820636873, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
propertyPath: 'characters.m_values.Array.data[1]'
|
||||
value:
|
||||
objectReference: {fileID: 11400000, guid: 564a18e8d953a454d855523a674d113c, type: 2}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents:
|
||||
- targetCorrespondingSourceObject: {fileID: 4648720434485967354, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 1871924379157315787}
|
||||
- targetCorrespondingSourceObject: {fileID: 3835140520404881906, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 4193301170431855157}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
--- !u!114 &624873284429678435 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 3179992030420556242, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 040745bbc9c4a429d911037da4556ee9, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: YarnSpinner.Unity.Addons.Snaaake::SubtitlePresenter
|
||||
--- !u!1 &1275434508739071811 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 3835140520404881906, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &4193301170431855157
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1275434508739071811}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 86710e43de46f6f4bac7c8e50813a599, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.AspectRatioFitter
|
||||
m_AspectMode: 1
|
||||
m_AspectRatio: 1
|
||||
--- !u!4 &2369202622792330534 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 318486934050550679, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &4151099127995439868 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 2094681524380124237, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: eb87ae987c60e9d4f8346202d271648d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: YarnSpinner.Unity::Yarn.Unity.VoiceOverPresenter
|
||||
--- !u!114 &6500827692446944888 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 9132723082820636873, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: b7948f050ae2d45bca291d4149dd41b3, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: YarnSpinner.Unity.Addons.Snaaake::AnimationParameterOnAudio
|
||||
--- !u!1 &7208562663053911883 stripped
|
||||
GameObject:
|
||||
m_CorrespondingSourceObject: {fileID: 4648720434485967354, guid: 3cac2ead431924c63ad35c41b5195fb0, type: 3}
|
||||
m_PrefabInstance: {fileID: 2633030277510356657}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &1871924379157315787
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 7208562663053911883}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 86710e43de46f6f4bac7c8e50813a599, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.AspectRatioFitter
|
||||
m_AspectMode: 1
|
||||
m_AspectRatio: 1
|
||||
--- !u!1001 &5593114176228253021
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 0}
|
||||
m_Modifications:
|
||||
- target: {fileID: 2958262985454349539, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262986520364887, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 2958262987206614837, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7262066351540048079, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Snaaake Dialogue System
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925107869966, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMax.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchorMin.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_SizeDelta.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8020628925673895293, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_AnchoredPosition.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: autoStart
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: dialoguePresenters.Array.size
|
||||
value: 4
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: 'dialoguePresenters.Array.data[0]'
|
||||
value:
|
||||
objectReference: {fileID: 624873284429678435}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: 'dialoguePresenters.Array.data[1]'
|
||||
value:
|
||||
objectReference: {fileID: 6500827692446944888}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: 'dialoguePresenters.Array.data[2]'
|
||||
value:
|
||||
objectReference: {fileID: 4151099127995439868}
|
||||
- target: {fileID: 8309902628685535410, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: 'dialoguePresenters.Array.data[3]'
|
||||
value:
|
||||
objectReference: {fileID: 8651879178093781460}
|
||||
- target: {fileID: 9078442560890639579, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
propertyPath: m_IsActive
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects:
|
||||
- {fileID: 3416868783655305253, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
m_AddedGameObjects:
|
||||
- targetCorrespondingSourceObject: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 2369202622792330534}
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
--- !u!4 &2543591460179083244 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7985477256237130417, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
m_PrefabInstance: {fileID: 5593114176228253021}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!114 &8651879178093781460 stripped
|
||||
MonoBehaviour:
|
||||
m_CorrespondingSourceObject: {fileID: 3859336324316773513, guid: 52571f68872914e24837210513edea1d, type: 3}
|
||||
m_PrefabInstance: {fileID: 5593114176228253021}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 61503eb6a998a4af68e0dcbec4aad8cb, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f9cc3cf6de0c74942adaff4226173ffb
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Prefabs/Snaaake
|
||||
Dialogue System.prefab
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b84ade111eef74440a148014449d5491
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+63
@@ -0,0 +1,63 @@
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
#nullable enable
|
||||
namespace Yarn.Unity.Addons.Snaaake
|
||||
{
|
||||
/// <summary>
|
||||
/// Randomly varies the <see cref="Image.fillAmount"/> property of an <see
|
||||
/// cref="Image"/> over time, at a fixed frame rate.
|
||||
/// </summary>
|
||||
public class RandomImageFill : MonoBehaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// The minimum amount to fill.
|
||||
/// </summary>
|
||||
public float MinFill = 0.5f;
|
||||
|
||||
/// <summary>
|
||||
/// The maximum amount to fill.
|
||||
/// </summary>
|
||||
public float MaxFill = 1.0f;
|
||||
|
||||
/// <summary>
|
||||
/// The degree to which the fill amount will change each frame.
|
||||
/// </summary>
|
||||
public float Speed = 1f;
|
||||
|
||||
/// <summary>
|
||||
/// The rate at which the fill amount will change.
|
||||
/// </summary>
|
||||
public float FrameRate = 8f;
|
||||
|
||||
/// <summary>
|
||||
/// The image to change the fill amount of.
|
||||
/// </summary>
|
||||
public Image? Image;
|
||||
|
||||
void Update()
|
||||
{
|
||||
if (Image == null)
|
||||
{
|
||||
// No image, so nothing to update.
|
||||
return;
|
||||
}
|
||||
|
||||
var t = Time.time;
|
||||
|
||||
// Snap time to framerate
|
||||
t *= FrameRate;
|
||||
t = Mathf.FloorToInt(t);
|
||||
t /= FrameRate;
|
||||
|
||||
// Increase speed
|
||||
t *= Speed;
|
||||
|
||||
// Evaluate the noise at our calculated point and update the image's
|
||||
// fill amount
|
||||
var noise = Mathf.PerlinNoise1D(t);
|
||||
var fill = Mathf.Lerp(MinFill, MaxFill, noise);
|
||||
Image.fillAmount = fill;
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d110ca3d7bebb426d8cb287ecaac4c99
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Scripts/RandomImageFill.cs
|
||||
uploadId: 968678
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
using System.Threading;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
using Yarn;
|
||||
using Yarn.Unity;
|
||||
|
||||
#nullable enable
|
||||
|
||||
namespace Yarn.Unity.Addons.Snaaake
|
||||
{
|
||||
/// <summary>
|
||||
/// A basic dialogue presenter that shows the line text in a TextMeshPro
|
||||
/// text view.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This presenter waits until the line has been externally cancelled before
|
||||
/// completing. It expects to be used alongside other presenters that signal
|
||||
/// that the line has been cancelled, like <see cref="VoiceOverPresenter"/>.
|
||||
/// </remarks>
|
||||
public class SubtitlePresenter : DialoguePresenterBase
|
||||
{
|
||||
|
||||
public TMPro.TMP_Text? text;
|
||||
|
||||
void Awake()
|
||||
{
|
||||
if (text != null)
|
||||
{
|
||||
text.enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
public override async YarnTask OnDialogueStartedAsync() { }
|
||||
|
||||
public override async YarnTask OnDialogueCompleteAsync() { }
|
||||
|
||||
public override async YarnTask RunLineAsync(LocalizedLine line, LineCancellationToken token)
|
||||
{
|
||||
if (text == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
text.enabled = true;
|
||||
|
||||
text.text = line.TextWithoutCharacterName.Text;
|
||||
|
||||
// Wait until the line has been ended by someone else
|
||||
await YarnTask.WaitUntilCanceled(token.NextContentToken);
|
||||
|
||||
text.enabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 040745bbc9c4a429d911037da4556ee9
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Scripts/SubtitlePresenter.cs
|
||||
uploadId: 968678
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Yarn.Unity.Addons.Snaaake
|
||||
{
|
||||
/// <summary>
|
||||
/// Stores a list of sprites associated with a character in the Snaaake
|
||||
/// dialogue presenter.
|
||||
/// </summary>
|
||||
[CreateAssetMenu(menuName = "Yarn Spinner/Snaaake/Talking Head Character")]
|
||||
public class TalkingHeadCharacter : ScriptableObject
|
||||
{
|
||||
/// <summary>
|
||||
/// The list of sprites for the character. The first sprite will be used
|
||||
/// as the 'idle' pose, when the character is not talking.
|
||||
/// </summary>
|
||||
public List<Sprite> sprites = new();
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5d31af3bd6f764e14af50289644aa9ac
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Scripts/TalkingHeadCharacter.cs
|
||||
uploadId: 968678
|
||||
+141
@@ -0,0 +1,141 @@
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
#nullable enable
|
||||
|
||||
namespace Yarn.Unity.Addons.Snaaake
|
||||
{
|
||||
/// <summary>
|
||||
/// A view that presents an animated talking head in an <see cref="Image"/>,
|
||||
/// driven by an <see cref="Animator"/>.
|
||||
/// </summary>
|
||||
[ExecuteInEditMode]
|
||||
public class TalkingHeadCharacterView : MonoBehaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// The <see cref="Image"/> to show the sprite in.
|
||||
/// </summary>
|
||||
[SerializeField] Image? image;
|
||||
|
||||
/// <summary>
|
||||
/// The character that this view is presenting.
|
||||
/// </summary>
|
||||
private TalkingHeadCharacter? currentCharacter;
|
||||
|
||||
[Min(0.001f)]
|
||||
public float FramesPerSecond = 4;
|
||||
|
||||
public bool Talking { get; set; }
|
||||
|
||||
void OnValidate()
|
||||
{
|
||||
if (this.image == null && TryGetComponent<Image>(out var image))
|
||||
{
|
||||
this.image = image;
|
||||
}
|
||||
}
|
||||
|
||||
public TalkingHeadCharacter? CurrentCharacter
|
||||
{
|
||||
get => currentCharacter;
|
||||
set
|
||||
{
|
||||
currentCharacter = value;
|
||||
|
||||
if (image == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (currentCharacter != null && currentCharacter.sprites.Count > 0)
|
||||
{
|
||||
image.sprite = currentCharacter.sprites[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
image.sprite = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private int _currentFrame = 0;
|
||||
private int CurrentFrame
|
||||
{
|
||||
get => _currentFrame;
|
||||
set
|
||||
{
|
||||
if (this.currentCharacter == null || this.currentCharacter.sprites.Count == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
_currentFrame = value;
|
||||
|
||||
if (this.image == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Ping-pong the actual index of the sprite to use based on our
|
||||
// frame count
|
||||
var i = PingPong(CurrentFrame, currentCharacter.sprites.Count - 1);
|
||||
var sprite = this.currentCharacter.sprites[i];
|
||||
|
||||
this.image.sprite = sprite;
|
||||
}
|
||||
}
|
||||
|
||||
private static int PingPong(int input, int max)
|
||||
{
|
||||
|
||||
return Mathf.Abs(((input + max) % (max * 2)) - max);
|
||||
}
|
||||
|
||||
void Awake()
|
||||
{
|
||||
RunAnimation().Forget();
|
||||
}
|
||||
|
||||
public async YarnTask RunAnimation()
|
||||
{
|
||||
var destroyToken = this.destroyCancellationToken;
|
||||
while (destroyToken.IsCancellationRequested == false)
|
||||
{
|
||||
if (!Talking)
|
||||
{
|
||||
await YarnTask.Yield();
|
||||
continue;
|
||||
}
|
||||
|
||||
// Start the talking animation. Stop when we're no longer
|
||||
// talking AND we've reached the end of a cycle.
|
||||
try
|
||||
{
|
||||
do
|
||||
{
|
||||
if (currentCharacter == null || currentCharacter.sprites.Count == 0)
|
||||
{
|
||||
// No character to show; it must have changed.
|
||||
// Stop looping.
|
||||
break;
|
||||
}
|
||||
|
||||
// Show the next frame, and wait until it's time to
|
||||
// show the next.
|
||||
CurrentFrame += 1;
|
||||
|
||||
await YarnTask.Delay(System.TimeSpan.FromSeconds(1.0f / FramesPerSecond), destroyToken);
|
||||
|
||||
} while (Talking || CurrentFrame % (2 * (currentCharacter.sprites.Count - 1)) != 0);
|
||||
}
|
||||
catch (System.OperationCanceledException)
|
||||
{
|
||||
// We must have been destroyed, so stop immediately
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5189d1ee67a4c4eb8a261f0838a93343
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Scripts/TalkingHeadCharacterView.cs
|
||||
uploadId: 968678
|
||||
+214
@@ -0,0 +1,214 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
using Yarn.Unity;
|
||||
|
||||
#nullable enable
|
||||
|
||||
namespace Yarn.Unity.Addons.Snaaake
|
||||
{
|
||||
public class TalkingHeadDialoguePresenter : Yarn.Unity.DialoguePresenterBase
|
||||
{
|
||||
[Header("Audio")]
|
||||
/// <summary>
|
||||
/// The audio source to monitor.
|
||||
/// </summary>
|
||||
public AudioSource? audioSource;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// The channel in <see cref="audioSource"/> to monitor.
|
||||
/// </summary>
|
||||
public int sampleChannel = 0;
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A dictionary for mapping names to animators that present the characters,
|
||||
/// </summary>
|
||||
public Yarn.Unity.SerializableDictionary<string, TalkingHeadCharacterView> characterSlots = new();
|
||||
|
||||
public Yarn.Unity.SerializableDictionary<string, TalkingHeadCharacter> characters = new();
|
||||
|
||||
[Range(0f, 1f)]
|
||||
public float threshold = 0.5f;
|
||||
|
||||
/// <summary>
|
||||
/// The current animator whose parameters we are changing.
|
||||
/// </summary>
|
||||
private TalkingHeadCharacterView? activeView = null;
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// A buffer containing audio samples collected from <see
|
||||
/// cref="audioSource"/>.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// (This is kept in the class because we want to reuse the same buffer,
|
||||
/// rather than allocate every time we want to sample it.)
|
||||
/// </remarks>
|
||||
private float[] sampleBuffer = new float[512];
|
||||
|
||||
/// <summary>
|
||||
/// The amount of time, in milliseconds, between samples of the audio source.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// We don't need to be super precise with monitoring the audio source, so
|
||||
/// there's no need to measure every frame. Instead, we'll measure at a fix
|
||||
/// number of milliseconds between samples.
|
||||
/// </remarks>
|
||||
private readonly int timeBetweenSamplesMilliseconds = 50;
|
||||
|
||||
/// <summary>
|
||||
/// The amount of time remaining until we next sample.
|
||||
/// </summary>
|
||||
private float timeUntilNextSample = 0;
|
||||
|
||||
protected void Start()
|
||||
{
|
||||
if (audioSource)
|
||||
{
|
||||
// Unity creates the internal buffers and starts recording the first
|
||||
// time this is called, so call it immediately on start
|
||||
audioSource.GetOutputData(sampleBuffer, sampleChannel);
|
||||
}
|
||||
}
|
||||
|
||||
protected void Update()
|
||||
{
|
||||
|
||||
// Ensure that we have the components that we need
|
||||
if (audioSource == null || activeView == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Are we due for another audio source sample? If not, wait.
|
||||
if (timeUntilNextSample > 0)
|
||||
{
|
||||
timeUntilNextSample -= Time.deltaTime;
|
||||
return;
|
||||
}
|
||||
|
||||
// Read sample data out of the audio source.
|
||||
|
||||
audioSource.GetOutputData(sampleBuffer, sampleChannel);
|
||||
|
||||
// Determine the highest peak level that we hit.
|
||||
var maxPower = 0f;
|
||||
|
||||
for (int i = 0; i < sampleBuffer.Length; i++)
|
||||
{
|
||||
maxPower = Mathf.Max(Mathf.Abs(maxPower), sampleBuffer[i]);
|
||||
}
|
||||
|
||||
// Set the parameter to whether or not we have a loud enough signal!
|
||||
activeView.Talking = maxPower > threshold;
|
||||
|
||||
|
||||
// Reset our clock.
|
||||
timeUntilNextSample = timeBetweenSamplesMilliseconds / 1000f;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Associates a character name with a slot.
|
||||
/// </summary>
|
||||
/// <param name="characterName">The character name to associate.</param>
|
||||
/// <param name="slotName">The name of the slot to associate the character
|
||||
/// with.</param>
|
||||
[YarnCommand("set_slot")]
|
||||
public static void SetCharacterToSlot(string characterName, string slotName)
|
||||
{
|
||||
var presenter = FindAnyObjectByType<TalkingHeadDialoguePresenter?>();
|
||||
if (presenter == null)
|
||||
{
|
||||
Debug.LogWarning($"Can't associate {characterName} with slot {slotName}: no {nameof(TalkingHeadDialoguePresenter)}");
|
||||
return;
|
||||
}
|
||||
|
||||
if (presenter.characters.TryGetValue(characterName, out var characterData) == false)
|
||||
{
|
||||
Debug.LogWarning($"Can't associate {characterName} with slot {slotName}: no known character {characterName}");
|
||||
return;
|
||||
}
|
||||
|
||||
if (presenter.characterSlots.TryGetValue(slotName, out var slot) == false)
|
||||
{
|
||||
Debug.LogWarning($"Can't associate {characterName} with slot {slotName}: no slot named {slotName}");
|
||||
return;
|
||||
}
|
||||
|
||||
slot.CurrentCharacter = characterData;
|
||||
}
|
||||
|
||||
public override async YarnTask RunLineAsync(LocalizedLine line, LineCancellationToken token)
|
||||
{
|
||||
// Ensure that we have a character, a slot name for that character, and
|
||||
// an animator for that slot name.
|
||||
var characterName = line.CharacterName;
|
||||
if (characterName == null)
|
||||
{
|
||||
Debug.LogWarning($"Can't run talking animation for line {line.TextID} '{line.Text}': line has no character name");
|
||||
return;
|
||||
}
|
||||
|
||||
if (characters.TryGetValue(characterName, out var character) == false)
|
||||
{
|
||||
Debug.LogWarning($"Can't run talking animation for line {line.TextID} '{line.Text}': {characterName} is not a known character");
|
||||
return;
|
||||
}
|
||||
|
||||
TalkingHeadCharacterView? slot = null;
|
||||
|
||||
// Find the slot that contains this character
|
||||
foreach (var s in characterSlots.Values)
|
||||
{
|
||||
if (s.CurrentCharacter == character)
|
||||
{
|
||||
slot = s;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (slot == null)
|
||||
{
|
||||
// We don't know which slot is showing this character
|
||||
Debug.LogWarning($"Can't run talking animation for line {line.TextID} '{line.Text}': {characterName} is not associated with a slot");
|
||||
return;
|
||||
}
|
||||
|
||||
// The animator we're working with is this one we've arrived at
|
||||
activeView = slot;
|
||||
|
||||
// Wait until the line is finished
|
||||
await YarnTask.WaitUntilCanceled(token.NextContentToken);
|
||||
|
||||
if (slot != null)
|
||||
{
|
||||
// Turn off the animation just in case the audio level is currently
|
||||
// over the threshold
|
||||
slot.Talking = false;
|
||||
}
|
||||
|
||||
// Tidy up
|
||||
activeView = null;
|
||||
}
|
||||
|
||||
public override YarnTask OnDialogueStartedAsync()
|
||||
{
|
||||
// Clear all characters from their slots
|
||||
foreach (var kv in characterSlots)
|
||||
{
|
||||
kv.Value.CurrentCharacter = null;
|
||||
}
|
||||
|
||||
return YarnTask.CompletedTask;
|
||||
}
|
||||
|
||||
public override YarnTask OnDialogueCompleteAsync()
|
||||
{
|
||||
return YarnTask.CompletedTask;
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -0,0 +1,9 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b7948f050ae2d45bca291d4149dd41b3
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Scripts/TalkingHeadDialoguePresenter.cs
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d39bab6fe3e4d42f3aca47998579d3e7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
/* 4x4 Bayer ordered dithering in UV space */
|
||||
|
||||
void Dither_float(float In, float2 UV, out float Out)
|
||||
{
|
||||
|
||||
float DITHER_THRESHOLDS[16] =
|
||||
{
|
||||
1.0 / 17.0, 9.0 / 17.0, 3.0 / 17.0, 11.0 / 17.0,
|
||||
13.0 / 17.0, 5.0 / 17.0, 15.0 / 17.0, 7.0 / 17.0,
|
||||
4.0 / 17.0, 12.0 / 17.0, 2.0 / 17.0, 10.0 / 17.0,
|
||||
16.0 / 17.0, 8.0 / 17.0, 14.0 / 17.0, 6.0 / 17.0
|
||||
};
|
||||
uint index = (uint(UV.x) % 4) * 4 + uint(UV.y) % 4;
|
||||
Out = In - DITHER_THRESHOLDS[index];
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5977540e36f5f47cf8a5cc7988f1a077
|
||||
ShaderIncludeImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Shaders/Dither.hlsl
|
||||
uploadId: 968678
|
||||
+11016
File diff suppressed because it is too large
Load Diff
+26
@@ -0,0 +1,26 @@
|
||||
fileFormatVersion: 2
|
||||
guid: afeca3e1b22ad4ee9b8a244dc08c7b76
|
||||
ScriptedImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3}
|
||||
useAsTemplate: 0
|
||||
exposeTemplateAsShader: 0
|
||||
template:
|
||||
name:
|
||||
category:
|
||||
description:
|
||||
icon: {instanceID: 0}
|
||||
thumbnail: {instanceID: 0}
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Shaders/Snaaake
|
||||
Retro.shadergraph
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 089db08c700e74440970fce53ba56d94
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 510 B |
+150
@@ -0,0 +1,150 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 54a8566a9842b47eb93ab1c9a2c13c46
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
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: 1, y: 1, z: 1, w: 1}
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: iOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 1537655665
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Sprites/1x1Box.png
|
||||
uploadId: 968678
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
+150
@@ -0,0 +1,150 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 65a52cd4c28494214a5a0f5893b2e204
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 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: 4, y: 4, z: 4, w: 4}
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: iOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 1537655665
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Sprites/Frame.png
|
||||
uploadId: 968678
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 704 B |
+150
@@ -0,0 +1,150 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7deeaf313d7754e999c677ea7d9afc75
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: iOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Sprites/RadioButton.png
|
||||
uploadId: 968678
|
||||
BIN
Binary file not shown.
|
After Width: | Height: | Size: 876 B |
+150
@@ -0,0 +1,150 @@
|
||||
fileFormatVersion: 2
|
||||
guid: caa2f33fbe6d84f45929b7fd6eca463d
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 13
|
||||
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
|
||||
flipGreenChannel: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
vTOnly: 0
|
||||
ignoreMipmapLimit: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 0
|
||||
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
|
||||
swizzle: 50462976
|
||||
cookieLightType: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 4
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Standalone
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: Android
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
- serializedVersion: 4
|
||||
buildTarget: iOS
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
ignorePlatformSupport: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
customData:
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spriteCustomMetadata:
|
||||
entries: []
|
||||
nameFileIdTable: {}
|
||||
mipmapLimitGroupName:
|
||||
pSDRemoveMatte: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/Sprites/RadioMask.png
|
||||
uploadId: 968678
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "YarnSpinner.Addons.Snaaake",
|
||||
"rootNamespace": "",
|
||||
"references": [
|
||||
"GUID:34aa492b82754644eac2f903cd496268",
|
||||
"GUID:6055be8ebefd69e48b49212b09b47b2f"
|
||||
],
|
||||
"includePlatforms": [],
|
||||
"excludePlatforms": [],
|
||||
"allowUnsafeCode": false,
|
||||
"overrideReferences": false,
|
||||
"precompiledReferences": [],
|
||||
"autoReferenced": true,
|
||||
"defineConstraints": [],
|
||||
"versionDefines": [],
|
||||
"noEngineReferences": false
|
||||
}
|
||||
+14
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 648e16e7661bc478fb421ef6f89210c4
|
||||
AssemblyDefinitionImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/Runtime/YarnSpinner.Addons.Snaaake.asmdef
|
||||
uploadId: 968678
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "dev.yarnspinner.unity.addons.snaaake",
|
||||
"displayName": "Snaaake for Yarn Spinner",
|
||||
"version": "3.2.0",
|
||||
"unity": "6000.0",
|
||||
"author": {
|
||||
"name": "Yarn Spinner Pty Ltd",
|
||||
"url": "https://yarnspinner.dev"
|
||||
},
|
||||
"description": "A Dialogue Presenter for Yarn Spinner designed to look a retro action game.",
|
||||
"dependencies": {
|
||||
"dev.yarnspinner.unity": "3.2.1"
|
||||
},
|
||||
"samples": [
|
||||
{
|
||||
"displayName": "Snaaaake",
|
||||
"description": "Demonstrates using the Snaaake dialogue presenter.",
|
||||
"path": "Samples~/Snaaake"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2bb57a41f67074b1d9dab1c0153b0bd5
|
||||
PackageManifestImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
AssetOrigin:
|
||||
serializedVersion: 1
|
||||
productId: 267061
|
||||
packageName: Yarn Spinner+ for Unity, the friendly dialogue and narrative tool
|
||||
packageVersion: 3.2.8
|
||||
assetPath: Packages/dev.yarnspinner.unity.addons.snaaake/package.json
|
||||
uploadId: 968678
|
||||
Reference in New Issue
Block a user