1
0

initial commit

This commit is contained in:
LupiNexMedia
2026-04-28 09:32:03 +02:00
commit f84f5c592b
2173 changed files with 376140 additions and 0 deletions
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7ead30e7f394b45bf8428db3fcfa776f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6165330ab58ff425c911aceb1f876477
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 761 KiB

@@ -0,0 +1,154 @@
fileFormatVersion: 2
guid: 428a4d057279948b796373c0af99db8c
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: 2
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: WebGL
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: Server
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: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: 903f7bc8ba49c498e80aad001c222eec
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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: 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: 3
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: 3
buildTarget: WebGL
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: 3
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: 3
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: 3
buildTarget: Server
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: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,135 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.0
m_EditorClassIdentifier:
Title:
m_Untranslated: Mission overview
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d98bac27e09e35f4cb921c5840d426c4, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/Talking%20Head%20Videos/M4_Programming/Essentials_Pathway_M4_Programming.webm
m_Video: {fileID: 0}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/Talking%20Head%20Videos/M4_Programming/Essentials_Pathway_M4_Programming.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 1
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this Mission, you\u2019ll program a simple interactive
experience where you control a character in a living room scene and move
around to collect objects. \n\nYou'll be able to choose from a variety
of characters and collectible objects. In our example, we'll use a robot
vacuum that maneuvers to pick up dirt around the room."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f5622cd4c6830435b8f7e49dd0afd025
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,133 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.1
m_EditorClassIdentifier:
Title:
m_Untranslated: Tutorial overview
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d98bac27e09e35f4cb921c5840d426c4, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.1%20-%20Overview%20v2%20-%20VIDEO.webm
m_Video: {fileID: 0}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.1%20-%20Overview%20v2%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 1
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this first tutorial, you\u2019ll add your first lines
of C# code to your Unity project to steer your chosen character around
the room."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ec0b8b60dfff876499782cfff0d26dd0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,147 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.10
m_EditorClassIdentifier:
Title:
m_Untranslated: Review and proceed to the next tutorial
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.1%20-%20Overview%20v2%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Congratulations on adding your first script to control the
player as it navigates throughout the room!\n\nHere are some of the things
you learned how to do along the way:\n\n\u2022 Explain how code is edited
in a Unity project. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/ScriptingToolsIDEs.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Make a new script component. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/CreatingAndUsingScripts.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Add a script component to a GameObject. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/CreatingAndUsingScripts.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Open the IDE from the Unity Editor. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/ScriptingToolsIDEs.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Assign a camera as a child GameObject that follows the player.\n\u2022
Adjust component properties temporarily in <b>Play</b> mode (<b>Game</b>
view). (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/UsingComponents.html?utm_source=learnTPOCi'>more</a>)\n"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8a31ff2ae63ec451f9e6e24f0098180e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,142 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.2
m_EditorClassIdentifier:
Title:
m_Untranslated: Open the programming scene
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 903f7bc8ba49c498e80aad001c222eec, type: 3}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: The first thing you need to do is open the new scene for
this Mission, which is a simple living room environment.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to <b>_Unity_Essentials</b>
> <b>Scenes.</b> \n\n<b>2.</b> Find <b>4_LivingRoom_Programming_Scene</b>
and double-click to open it. \n\n<b>3.</b> Adjust your view of the 3D
scene to see the living room interior layout from a good angle."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a2867451ce973614188ef66074bee38c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,173 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.3
m_EditorClassIdentifier:
Title:
m_Untranslated: 'Add a player to the scene '
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 2db283fa76e604392a93d9a02e9c56cf, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.3%20-%20Add%20a%20player%20to%20the%20scene%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.3%20-%20Add%20a%20player%20to%20the%20scene%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "The next step is to add a player to the scene. This player
is the character that the user of your game will control. \n\nIn this living
room scene, your player can be one of the following: \n\n\u2022 A robot
vacuum sucking up dirt\n\u2022 A toy car getting stars \n\u2022 A wind-up
mouse finding cheese\n\u2022 An alien in a UFO collecting gemstones \n\nIt\u2019s
up to you which one sounds the most fun!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to <b>_Unity
Essentials</b> > <b>Prefabs</b> > <b>Characters</b> and browse through
the options. \n\n<b>2.</b> Click and drag your chosen character into the
scene, near the main door on the left. \n\n<b>Warning:</b> Avoid double-clicking
the prefab in the <b>Project</b> window because this will open prefab editing
mode. Instead, simply drag and drop it into the scene.\n\n<b>3.</b> If
necessary, rotate the player by 90 degrees on the Y-axis so that it\u2019s
facing the center of the room. \n\n<b>4.</b> In the <b>Hierarchy</b> window,
rename your chosen character \u201CPlayer\u201D for clarity."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7c1d5f896e9d746739bb538b129098cc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,180 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.4
m_EditorClassIdentifier:
Title:
m_Untranslated: Create a new PlayerController script
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 905a5bae5effc47b88ea3207ca3ed8cd, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.4%20-%20Create%20a%20new%20PlayerController%20script%20-%20VIDEO_U6_V2.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.4%20-%20Create%20a%20new%20PlayerController%20script%20-%20VIDEO_U6_V2.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "It is time to create your first C# script! \n\n<b>C#</b>
(pronounced \u201Csee-sharp\u201D) is a versatile programming language
that is widely used for developing a broad range of applications, from
web to mobile to game development, and particularly with Unity for game
scripting.\n\nYour first <b>script,</b> which is just a document with code
in it, will be named \"PlayerController\". In this script, you'll define
how your player interacts within the game world."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to <b>_Unity
Essentials</b> > <b>Scripts.</b> There should already be a folder inside
the <b>Scripts</b> folder named <b>Provided Scripts</b> \u2014 ignore this
folder for now.\n\n<b>2.</b> Right-click in an empty part of the <b>Scripts</b>
folder and select <b>Create</b> > <b>MonoBehaviour Script.</b>\n\n<b>3.</b>
WIth the script\u2019s name automatically highlighted, immediately rename
this new script \"PlayerController\" (with a capital 'P' and 'C'). \n\nIt's
important to get the name correct right now \u2014 renaming it later can
cause problems. \n\n<b>4.</b> Press <b>Enter</b> to save the script name.
\n\nYou'll see the code of the new blank script in the <b>Inspector</b>
window. Notice that the name of the file is included in the code. That's
why it's important to spell the file name correctly.\n\n<b>Note:</b> If
you make a typo in your script name or have to rename it for any reason,
it will be easier to just delete it and create a new one with the correct
name."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6910e093c2e5047f3b927442c61312b7
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,171 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.5
m_EditorClassIdentifier:
Title:
m_Untranslated: Apply the script to the Player GameObject
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: c19681465ddd24bbbb0f30e492ec2a73, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.5%20-%20Apply%20the%20script%20to%20the%20Player%20GameObject%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.5%20-%20Apply%20the%20script%20to%20the%20Player%20GameObject%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Next, you'll apply your script to the player object. \n\nHere's
a fun fact: in Unity, the scripts you write in C# are components, similar
to the <b>Rigidbody,</b> <b>Audio Source,</b> and other components you've
worked with. The difference between the components you create and Unity's
built-in components is that your custom components are editable."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, find the <b>PlayerController</b>
script you created in the <b>Scripts</b> folder. \n\n<b>2.</b> Click and
drag this script onto your player character in the <b>Scene</b> view. \n\nNothing
will appear to happen after you do this.\n\n<b>3.</b> In the <b>Hierarchy</b>
window, select your player GameObject, then verify that your <b>PlayerController</b>
script has successfully been added at the bottom of the <b>Inspector</b>
window.\n\n<b>Note:</b> Remember to save your scene with <b>Ctrl+S</b>
(macOS: <b>Cmd+S</b>)."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 912ac3600c6de4bd2b21ba942398837f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,177 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.6
m_EditorClassIdentifier:
Title:
m_Untranslated: Open the PlayerController script in a script editor
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 5586970ee9236467aa668bb3f41daffb, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.6%20-%20Open%20PlayerController.cs%20script%20in%20a%20script%20editor%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.6%20-%20Open%20PlayerController.cs%20script%20in%20a%20script%20editor%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Unity doesn\u2019t allow you to edit code directly in the
Unity Editor, so the next step is to open your <b>PlayerController</b>
script in a separate script editor application. \n\nYou may not have realized
it at the time, but when you installed Unity, you likely also installed
a separate application called <b>Visual Studio,</b> which is a code editing
application (also known as an <b>Integrated Development Environment,</b>
or IDE).\n\nThis IDE is where you'll start coding the behavior of your
player character. A script editor, such as Visual Studio, provides you
with tools and features to write and manage your code efficiently."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Locate the <b>PlayerController</b> script in
the Unity Editor's <b>Project</b> window. \n\n<b>2.</b> Double-click the
script file to open it in your default script editor, such as Visual Studio.
\n\nIt may take a while to open the application the first time.\n\nWhen
the IDE opens, you'll see the default starter code that generates any time
you create a new script. \n\n<b>Note</b>: Don\u2019t worry if your IDE
doesn\u2019t look identical to the one shown in the demo videos. \n\nIf
the script doesn\u2019t open in an IDE, follow <a href=\"https://learn.unity.com/tutorial/65f8a6e3edbc2a545fc44bd3?uv=2022.3#65f8a6e3edbc2a545fc44bd7\">these
instructions</a> to install Visual Studio, relaunch Unity, and try opening
the script again."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f3bf0ba0e29534a069a57f0bb8ff96e3
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,199 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.7
m_EditorClassIdentifier:
Title:
m_Untranslated: Copy and paste code and save
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.7%20-%20Copy%20and%20Paste%20code%20and%20save%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.7%20-%20Copy%20and%20Paste%20code%20and%20save%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this step, you will infuse life into your player character
by adding some pre-written code to the <b>PlayerController</b> script.
This code contains the logic for player movement. \n\nTo start, you\u2019ll
copy and paste all the code from a completed script, overwriting the code
already in your script in its entirety. Later on, you\u2019ll take more
time to understand the code and write it line by line. \n\nCopying and
pasting code, then adjusting it, is actually a big part of every professional
developer\u2019s workflow!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In your IDE, in the <b>PlayerController.cs</b>
file, select all the code either by clicking and dragging with your cursor,
or by pressing <b>Ctrl+A</b> (macOS: <b>Cmd+A</b>), then delete it all.
\n\n<b>2.</b> Select all of the code below, then copy it with <b>Ctrl+C</b>
(macOS: <b>Cmd+C</b>).\n\n<b>Note:</b> You can also use the <b>Copy Code
Sample</b> button in the upper-right corner of the code sample. \n\n<b>3.</b>
In the script editor, paste this code into your now empty <b>PlayerController</b>
script with <b>Ctrl+V</b> (macOS: <b>Cmd+V</b>).\n\n<b>4.</b> Save your
changes by pressing <b>Ctrl+S</b> (macOS: <b>Cmd+S</b>).\n\nThere should
be no errors (red underlines) in your code. If there are, make sure that
the <b>PlayerController</b> script is spelled correctly in the <b>Project</b>
window. \n\n<b>5.</b> In the Unity Editor, enter Play mode. \n\n<b>6.</b>
Move the player with the arrow keys or the WASD keys. \n\nIf your player
does not move as expected, exit Play mode and check the script for any
errors and make sure to save it. If there are errors, try deleting all
the code again and re-pasting it in, then saving it again.\n\nIf you\u2019re
interested, read through the code and the comments (lines that start with
two forward slashes) to see if you can understand some of it."
m_CodeSample: "using UnityEngine;\r\n\r\n// Controls player movement and rotation.\r\npublic
class PlayerController : MonoBehaviour\r\n{\r\n public float speed = 5.0f;
// Set player's movement speed.\r\n public float rotationSpeed = 120.0f;
// Set player's rotation speed.\r\n\r\n private Rigidbody rb; // Reference
to player's Rigidbody.\r\n\r\n // Start is called before the first frame
update\r\n private void Start()\r\n {\r\n rb = GetComponent<Rigidbody>();
// Access player's Rigidbody.\r\n }\r\n\r\n // Update is called once
per frame\r\n void Update()\r\n {\r\n \r\n }\r\n\r\n //
Handle physics-based movement and rotation.\r\n private void FixedUpdate()\r\n
{\r\n // Move player based on vertical input.\r\n float moveVertical
= Input.GetAxis(\"Vertical\");\r\n Vector3 movement = transform.forward
* moveVertical * speed * Time.fixedDeltaTime;\r\n rb.MovePosition(rb.position
+ movement);\r\n\r\n // Rotate player based on horizontal input.\r\n
float turn = Input.GetAxis(\"Horizontal\") * rotationSpeed * Time.fixedDeltaTime;\r\n
Quaternion turnRotation = Quaternion.Euler(0f, turn, 0f);\r\n rb.MoveRotation(rb.rotation
* turnRotation);\r\n }\r\n}\r"
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5ad4e580b20474a9e91e2332848e01a8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,185 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.8
m_EditorClassIdentifier:
Title:
m_Untranslated: Set the camera as a child of the player
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: b9909ddcfcbef48daaa2a1e1e7df84b7, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.8%20-%20Set%20the%20camera%20as%20a%20child%20of%20the%20Player%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.8%20-%20Set%20the%20camera%20as%20a%20child%20of%20the%20Player%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Right now, the camera is stationary, making the experience
feel a bit distant and potentially confusing for the actual control of
the player character. \n\nNow, you\u2019ll position the camera to follow
the player in a third-person view, which will be more immersive and intuitive.
\n\nIf you make the camera a child GameObject of the player GameObject
in the <b>Hierarchy</b> window, it will inherit the player GameObject's
position and rotation, and also maintain a steady view of the player as
it moves."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Hierarchy</b> window, locate the <b>Main
Camera</b> GameObject. \n\n<b>2.</b> Click and drag the <b>Main Camera</b>
GameObject onto your player character in the <b>Hierarchy</b> window, making
it a child GameObject. \n\nYou'll see the <b>Main Camera</b> GameObject
indented under the player character in the <b>Hierarchy</b> window. \n\n<b>3.</b>
In the <b>Transform</b> component of <b>Main Camera</b> GameObject, reset
all of the position and rotation values to <b>0</b>.\n\nNow that the <b>Main
Camera</b> GameObject is a child GameObject, its position and rotation
are relative to its parent GameObject.\n\n<b>Tip:</b> To reset these value
quickly, select the <b>More</b> (<b>\u22EE</b>) context menu in the upper-right
corner of the <b>Transform</b> component and select <b>Reset.</b> \n\nThe
camera should now be positioned at the exact same position and rotation
as the player.\n\n<b>4.</b> In the <b>Scene</b> view, adjust the camera's
position to be slightly above and behind the player. \n\n<b>5.</b> Enter
<b>Play</b> mode and use the arrow or WASD keys to rotate the player. \n\nFeel
free to adjust the camera\u2019s position and rotation relative to the
player to your liking. If the camera starts behind the left wall, you may
need to move the player forward a bit into the room.\n\nYou'll now have
a more satisfying gameplay experience!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 21830422c859042aba342a130a7e5a89
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,182 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.1.9
m_EditorClassIdentifier:
Title:
m_Untranslated: Edit player properties in Play mode
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 61d7419a5d7ae4fd69bf08e2dd8513ff, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.9%20-%20Edit%20Player%20properties%20in%20Play%20mode%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.1%20-%20Add%20a%20movement%20script/4.1.9%20-%20Edit%20Player%20properties%20in%20Play%20mode%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: 'Editing player properties while in Play mode is a dynamic
way to fine-tune the behavior and characteristics of your player character
while observing the immediate effects of those changes.
<b>Important:</b>
Remember, anything you change while in <b>Play</b> mode is only temporary
and will not be saved! To save your changes, you''ll need to exit Play
mode, make those edits again, and save your scene.'
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Enter Play mode, then select your player character
in the <b>Hierarchy</b> window. \n\n<b>2.</b> In the <b>Inspector</b>
window, locate the new <b>Speed</b> and <b>Rotation Speed</b> properties
that have appeared in the <b>PlayerController</b> script component. \n\nThese
were added when you saved your script. \n\n<b>3.</b> Modify these <b>Speed</b>
and <b>Rotation Speed</b> values in the <b>Inspector</b> window as you
move your player with the arrow or WASD keys. \n\nFor example, make the
player move and rotate more slowly.\n\n<b>Warning:</b> After editing values
in the Inspector, the player may appear to freeze. If this happens, just
click somewhere in the Game view window to regain control of the player.
\n\n<b>4.</b> Take note of the values you prefer for <b>Speed</b> and
<b>Rotation Speed</b>, and then exit <b>Play</b> mode. \n\nThe values will
revert back when you return to the <b>Scene</b> view!\n\n<b>5.</b> Set
the <b>Speed</b> and <b>Rotation Speed</b> properties to the values you
prefer, then save your scene with these values."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a0294ea39fecc4e5db326781594a1cb2
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,73 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3}
m_Name: Tut 4.1
m_EditorClassIdentifier:
TutorialTitle:
m_Untranslated: Add a movement script
m_ProgressTrackingEnabled: 1
m_LessonId: 094ed2bb-3e99-4d8e-8bfc-72b718cae157
m_Version: 1
m_ReturnToPreviousScenes: 0
m_SceneManagementBehavior: 1
m_Scenes: []
m_DefaultSceneCameraSettings:
m_CameraMode: 1
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0.7414055
m_Pivot: {x: 12, y: 8, z: -15}
m_Rotation: {x: -0.20906472, y: 0.2526841, z: -0.05601874, w: -0.9430295}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
m_WindowLayout: {fileID: 0}
m_Pages:
m_Items:
- {fileID: 11400000, guid: f5622cd4c6830435b8f7e49dd0afd025, type: 2}
- {fileID: 11400000, guid: ec0b8b60dfff876499782cfff0d26dd0, type: 2}
- {fileID: 11400000, guid: a2867451ce973614188ef66074bee38c, type: 2}
- {fileID: 11400000, guid: 7c1d5f896e9d746739bb538b129098cc, type: 2}
- {fileID: 11400000, guid: 6910e093c2e5047f3b927442c61312b7, type: 2}
- {fileID: 11400000, guid: 912ac3600c6de4bd2b21ba942398837f, type: 2}
- {fileID: 11400000, guid: f3bf0ba0e29534a069a57f0bb8ff96e3, type: 2}
- {fileID: 11400000, guid: 5ad4e580b20474a9e91e2332848e01a8, type: 2}
- {fileID: 11400000, guid: 21830422c859042aba342a130a7e5a89, type: 2}
- {fileID: 11400000, guid: a0294ea39fecc4e5db326781594a1cb2, type: 2}
- {fileID: 11400000, guid: 8a31ff2ae63ec451f9e6e24f0098180e, type: 2}
CompletionDialog: {fileID: 0}
Modified:
m_PersistentCalls:
m_Calls: []
Initiated:
m_PersistentCalls:
m_Calls: []
PageInitiated:
m_PersistentCalls:
m_Calls: []
GoingBack:
m_PersistentCalls:
m_Calls: []
Completed:
m_PersistentCalls:
m_Calls: []
Quit:
m_PersistentCalls:
m_Calls: []
m_Scene: {fileID: 0}
m_TutorialTitle:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 97ed548fe019e487c8196755312795f5
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: dbd6d8243a7844b5ca1f0234be4802d8
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bd3b1e5809d634256bcbbf0cd87a2f2b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 236 KiB

@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: 7264deeece1034631a0ef7db0231a6f4
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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: 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: 3
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: 3
buildTarget: WebGL
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: 3
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: 3
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: 3
buildTarget: Server
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: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: 2da0df0b5845c4e388457cd472dee213
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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: 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: 3
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: 3
buildTarget: WebGL
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: 3
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: 3
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: 3
buildTarget: Server
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: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,136 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.1
m_EditorClassIdentifier:
Title:
m_Untranslated: Overview
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d98bac27e09e35f4cb921c5840d426c4, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.1%20-%20Overview%20-%20VIDEO.webm
m_Video: {fileID: 0}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.1%20-%20Overview%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In the last tutorial, you copy and pasted code into a new
script, which is a great way to start. In this tutorial, you\u2019ll write
your first line of code to make a collectible object rotate in the scene.
These rotating collectible objects will be the things that your player
character tries to gather throughout the living room scene. \n\nWhen you\u2019re
ready to get started, proceed to the next step."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 319f1a6064aa14bf482857d93694a64e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,174 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.2
m_EditorClassIdentifier:
Title:
m_Untranslated: Add a collectible GameObject in front of the player
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d6e00887090b24fc9a063c1139c8e4b6, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.2%20-%20Add%20a%20collectible%20GameObject%20in%20front%20of%20the%20player%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.2%20-%20Add%20a%20collectible%20GameObject%20in%20front%20of%20the%20player%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "The first step is adding a collectible item in front of
the player. You'll probably want to select a collectible prefab that makes
sense with the character you've chosen:\n\n\u2022 The robot vacuum could
suck up dirt\n\u2022 The toy car could get little stars \n\u2022 The wind-up
mouse could find cheese\n\u2022 The alien UFO could collect precious gemstones
\n\nThere are also a bunch of other interesting collectibles to choose
from, so feel free to get creative with your selection."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to <b>_Unity
Essentials</b> > <b>Prefabs</b> > <b>Collectibles.</b>\n\n<b>2.</b> Drag
and drop your chosen collectible prefab into the scene directly in front
of the player. \n\n<b>3.</b> Adjust the collectible\u2019s position, rotation,
and scale in the <b>Scene</b> view as needed to ensure that it's easily
visible and reachable by the player. \n\nThis will make testing as efficient
as possible.\n\n<b>Tip:</b> You might want to adjust the position and
rotation of the camera so that you can easily see the collectibles in front
of the player in <b>Play</b> mode."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a8c044f641c884eaea50eb2c03079d84
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,180 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.3
m_EditorClassIdentifier:
Title:
m_Untranslated: Create and apply a new Collectible script
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 1b2c57041698a43a080a6b3fd87a9513, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.3%20-%20Create%20and%20apply%20a%20new%20Collectible%20script%20-%20VIDEO_U6_V3.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.3%20-%20Create%20and%20apply%20a%20new%20Collectible%20script%20-%20VIDEO_U6_V3.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this step, you\u2019ll create a new empty script. This
script, which you\u2019ll name \"Collectible\", will govern the behavior
of the collectible objects in the scene. "
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to the
<b>_Unity Essentials</b> > <b>Scripts</b> folder you accessed in the previous
tutorial. \n\n<b>2.</b> Within the <b>Scripts</b> folder, right-click
and select <b>Create</b> > <b>MonoBehaviour Script.</b>\n\n<b>3.</b> With
the script\u2019s name automatically highlighted, immediately rename this
new script \"Collectible\". \n\nJust like last time, the spelling of the
name is important because it becomes part of the script.\n\n<b>4.</b>
Press <b>Enter</b> to save the script name. \n\nYou'll see the code of
the new blank script in the <b>Inspector</b> window.\n\n<b>Note:</b> If
you make a typo in your script name or have to rename it for any reason,
it will be easier to just delete it and create a new one with the correct
name.\n\n<b>5.</b> In the <b>Hierarchy</b>, select the <b>Collectible</b>
GameObject. \n\n<b>6.</b> Drag and drop the <b>Collectible</b> script
you just created from the <b>Project</b> window into an empty space of
the <b>Inspector</b> window for the <b>Collectible</b> GameObject (such
as the space around the <b>Add Component</b> button). \n\nNote that this
is different from the technique you used earlier to apply a script, where
you dragged it onto the object directly in the <b>Scene</b> view. There
are usually a few different ways to do the same things in Unity!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fc839b4964e764983b787177dee8a891
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,162 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.4
m_EditorClassIdentifier:
Title:
m_Untranslated: Review the structure of the default script
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 2da0df0b5845c4e388457cd472dee213, type: 3}
m_VideoUrl:
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Before you start coding, take a minute to review the structure
of the default script you've just created. \n\nThis might feel overwhelming
at first, especially if you're new to programming. It's important to remember
that understanding the nuances of scripting is a gradual process and it\u2019s
entirely normal to feel a bit daunted at this point! So don\u2019t worry
about that and trust that it will all slowly start to make sense over time."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, double-click the
<b>Collectible</b> script to open it in the script editor. \n\n<b>2.</b>
Locate the <b>using statement</b> at the top of the script, specifically
\u201Cusing UnityEngine;\u201D. \n\n<b>Using statements</b> link the script
to the necessary libraries so that when you enter something like \u201CRigidbody,\u201D
the script knows what that means. \n\n<b>3.</b> Beneath the using statements,
locate the <b>class declaration:</b> \n<b>public class Collectible : MonoBehaviour.</b>\n\nThis
defines the script as a public class named \"Collectible\" that inherits
from Unity's <b>MonoBehaviour</b> class. <b>MonoBehaviour</b> is a required
class for all GameObjects in Unity. This bit of code is what allows you
to add your script as a component to a GameObject.\n\nDon\u2019t worry
if this is still confusing at this point \u2014 it will slowly make more
and more sense as you continue on.\n\n<b>4.</b> Locate the <b>Start()
function.</b> \n\nThis function is executed once at the beginning of the
game. \n\n<b>5.</b> Locate the <b>Update() function.</b> \n\nUnity runs
this function once per frame. \n\nGames typically run at 30-60 frames per
second, so any code within this function will be executed many times continuously
throughout the game, making it suitable for ongoing actions and animations.
This is where you\u2019ll put your rotation code so that the collectible
will rotate continuously."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 26d930d5856be4468a8f628ad8517751
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,177 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.5
m_EditorClassIdentifier:
Title:
m_Untranslated: Plan your rotation code
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 5ffb74a8fcb1349f9bbacbe2cf0fed98, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.5%20-%20Plan%20your%20rotation%20code%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.5%20-%20Plan%20your%20rotation%20code%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Before writing your first line of code, let\u2019s take
a moment to understand what you\u2019re actually trying to do in your code.
You\u2019ll experiment in the <b>Scene</b> view to visualize this."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Select the collectible object and frame it in
the <b>Scene</b> view so you have a good view of it. \n\n<b>2.</b> At
the top of the <b>Scene</b> view, make sure you\u2019re using the <b>Local</b>
coordinate system instead of the <b>Global</b> system so that you\u2019ll
be able to see the orientation of the collectible changing as it rotates.
\n\n<b>3.</b> In the <b>Inspector</b> window, in the <b>Transform</b>
component, locate the <b>Rotation</b> coordinates. Click and drag the label
<b>Y</b> right and left to change the Y-axis rotation. \n\nWatch the demo
video again very closely if you\u2019re still not sure how to do this.\n\n<b>Tip:</b>
If you hold down the <b>Shift</b> key while you click and drag the value,
the value will change more quickly. \n\nObserve how the object rotates
in the <b>Scene</b> view. This visual experiment helps you see the effect
of rotation values on your object. This is the effect you want to achieve
in your script: you want to increase the Y rotation value in the <b>Transform</b>
component continuously over time. \n\nIn the next step, you\u2019ll add
the code that rotates the collectible around the Y-axis continuously."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 579f5b98b03d640648d43c6098f057e9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,186 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.6
m_EditorClassIdentifier:
Title:
m_Untranslated: Add your first line of code to rotate the collectible
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 73fcca876e18a4b9585ec87afafc4331, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.6%20-%20Add%20your%20first%20line%20of%20code%20to%20rotate%20the%20collectible%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.6%20-%20Add%20your%20first%20line%20of%20code%20to%20rotate%20the%20collectible%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "It's time to add continuous rotation from your <b>Collectible</b>
script. You'll do this by manipulating the object's <b>Transform</b> component,
which controls the object's position, rotation, and scale in the scene.
\n\nSpecifically, you'll use the <b>transform.Rotate</b> method, a built-in
Unity function that makes an object rotate in three dimensional space.
For a simple rotation effect, you'll change the Y value, which makes the
object rotate around its vertical axis.\n\nWhen you put this rotation code
in the <b>Update</b> function, the collectible will rotate a little bit
each frame, making it appear to smoothly, continuously rotate."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Open the <b>Collectible</b> script in the script
editor.\n\n<b>2.</b> Put your cursor inside the <b>Update()</b> method,
between the sets of curly brackets. \n\nIt can be helpful to add a few
new lines using the <b>Enter</b> (macOS: <b>Return</b>) key to give yourself
a bit of space before you add your new code. \n\nThe extra space won\u2019t
change the functionality of the code, but it can make your code easier
to read.\n\n<b>3.</b> Write the following line of code inside the <b>Update</b>
function, between the opening and closing curly brackets: \n\n <b>transform.Rotate(0,
1, 0); </b>\n\n<b>Important:</b> Don\u2019t forget to add the semicolon
at the end of the line of code. \n\nThis line instructs Unity to rotate
the collectible object 1 degree around the Y-axis in each frame, creating
a continuous rotation effect.\n\n<b>4.</b> Save the script by pressing
<b>Ctrl+S</b> (macOS: <b>Cmd+S</b>) or by selecting <b>File</b> > <b>Save</b>
from the main menu of the script editor. \n\n<b>5.</b> Back in the Unity
Editor, enter Play mode to see the collectible object rotating continuously.\n\n<b>Tip:</b>
During <b>Play</b> mode, you can switch to the <b>Scene</b> view tab, which
will allow you to get a close-up view of your collectible as the application
is running. \n\n<b>6.</b> Remember to exit <b>Play</b> mode when you\u2019re
done testing!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 41a9127a1465e472bb8931046e60e053
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,176 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.7
m_EditorClassIdentifier:
Title:
m_Untranslated: Reduce speed to a decimal float value
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 110d75bc958d8415b81570a077b9d02e, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.7%20-%20Reduce%20speed%20to%20a%20decimal%20float%20value%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.7%20-%20Reduce%20speed%20to%20a%20decimal%20float%20value%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "You might notice that the collectible rotates really quickly.
However, if you try to reduce the value from <b>1</b> to <b>0.5</b> in
your script, you'll get an error in your code, indicated by a red underline.
\n\nIn C#, decimal numbers are treated as <b>float values.</b>\nA float,
short for \"floating point number\", is a data type that can handle decimals.
\n\n<b>Data types</b> in programming specify the type of a value and how
the computer interprets this value. For instance, integers for whole numbers,
floats for decimal numbers, and strings for text. \n\nWhen you use float
values in C#, you need to explicitly indicate it's a float by putting an
\u201Cf\u201D at the end of the number."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Reopen the <b>Collectible</b> script in your
script editor.\n\n<b>2.</b> Modify the rotation line in the <b>Update()</b>
method to <b>transform.Rotate(0, 0.5f, 0);.</b>\n \nThis change reduces
the rotation speed to half a degree per frame. \n\nWhen entering the decimal
value <b>0.5,</b> make sure to add \u201Cf\u201D at the end (0.5f). Try
temporarily removing the \u201Cf\u201D to see the error in your code.\n\n<b>3.</b>
Save the script and return to the Unity Editor. Play your scene to observe
the slower rotation of the collectible."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: dfe012ccd13eb4945963aebab6a4a2af
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,195 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.8
m_EditorClassIdentifier:
Title:
m_Untranslated: Declare new rotation speed variable
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 5e143ea7467c64b21a4d48dbcf1b4866, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.8%20-%20Declare%20new%20rotation%20speed%20variable%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.2%20-%20Create%20a%20rotating%20collectible/4.2.8%20-%20Declare%20new%20rotation%20speed%20variable%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this step, you will enhance the flexibility of the rotation
behavior by introducing a <b>public variable</b> to your script. \n\nA
variable in programming is just a named piece of data that can vary. When
you declare a public variable for rotation speed, you'll allow yourself,
and anyone else who works on this project in Unity, to easily adjust the
rotation rate directly from the <b>Inspector</b> window without the need
to modify the script. \n\nThis practice is an example of efficient game
programming."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Open the <b>Collectible</b> script in your script
editor.\n\n<b>2.</b> Above the <b>Start()</b> method, but after the first
opening curly bracket of your script, use the <b>Enter</b> (macOS: <b>Return</b>)
key to add a few empty lines to make some space for yourself to type. \n\n<b>Important:</b>
Pay close attention to the demo video to see where to put this code. Putting
it in the wrong section of your script will cause errors. \n\n<b>3.</b>
Declare a new public float variable before the <b>Start</b> method by adding
the line: \n\n <b>public float rotationSpeed;</b>\n\nThis creates a
public variable named <b>rotationSpeed</b> of type float. The word \"public\"
(as opposed to \"private\") makes this value editable in the <b>Inspector</b>
window. \n\nUsing a lowercase letter for the first word, but uppercase
letters at the start of all subsequent words is known as <b>camelCase,</b>
and is a common practice when naming variables. It\u2019s called camelCase
because it kind of looks like a camel from the side, with humps at the
center of the word. \n\n<b>4.</b> Now, replace the hard-coded rotation
value in the <b>Update()</b> method with this new variable you just created:
\n\n <b>transform.Rotate(0, rotationSpeed, 0);</b>\n\n<b>5.</b> Save
the script and switch back to the Unity Editor. In the <b>Inspector</b>
window, you'll now see the <b>rotationSpeed</b> variable in the <b>Inspector</b>
window when you select the collectible object, which is set to zero by
default. You\u2019ll also notice that Unity has taken your camelCase <b>rotationSpeed</b>
variable and changed it to <b>Rotation Speed</b> in the <b>Inspector</b>
window for improved readability. \n\n<b>6.</b> In the <b>Inspector</b>
window, set the <b>Rotation Speed</b> value to a number like <b>0.5</b>
to control the speed of rotation. Edit the value to the rotation speed
you like the best.\n\nNow, if you ever want to adjust that value in the
future, you don\u2019t need to open a script! You can make the change right
there in the <b>Inspector</b> window. \n\n<b>Note:</b> Remember to save
your scene after exiting <b>Play</b> mode."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4ec95cc66856244d8b0a5a9a3f2e7e9b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,155 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.2.9
m_EditorClassIdentifier:
Title:
m_Untranslated: Review and proceed to the next tutorial
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 32900000, guid: 40d96c2562ea6444ebd8d9224fa334ab, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Congratulations on writing your first line of code to make
the collectible rotate about the Y-axis! \n\nHere are some of the things
you learned along the way:\n\n\u2022 Explain the <b>using</b> statements
at the top of a Unity script. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/Namespaces.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Identify a class declaration in a script. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/Namespaces.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Explain the MonoBehaviour class in Unity scripts. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/class-MonoBehaviour.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Explain the <b>Start</b> method and <b>Update</b> method in a Unity script.
(<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/CreatingAndUsingScripts.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Call a transform function in the <b>Update</b> method to transform a GameObject
over time. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/EventFunctions.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Apply correct data types in code, including integers and floats.\n\u2022
Declare new custom variables in a script. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/VariablesAndTheInspector.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Explain how public variables in a script behave in Unity. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/VariablesAndTheInspector.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Describe common naming conventions including PascalCase and camelCase.\n\u2022
Apply correct naming conventions to variables and methods.\n"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "Proceed to the next tutorial where you'll finalize the living
room functionality. You\u2019ll add more code that will allow the player
to pick up the collectible object. Then you\u2019ll arrange more collectibles
throughout the room."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4503e5054fa764f91bee405f8b7dd44e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,71 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3}
m_Name: Tut_4.2
m_EditorClassIdentifier:
TutorialTitle:
m_Untranslated: Create a rotating collectible
m_ProgressTrackingEnabled: 1
m_LessonId: 148c14df-3921-461b-9240-01c0d49d1273
m_Version: 1
m_ReturnToPreviousScenes: 0
m_SceneManagementBehavior: 1
m_Scenes: []
m_DefaultSceneCameraSettings:
m_CameraMode: 1
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0.7414055
m_Pivot: {x: 12, y: 8, z: -15}
m_Rotation: {x: -0.20906472, y: 0.2526841, z: -0.05601874, w: -0.9430295}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
m_WindowLayout: {fileID: 0}
m_Pages:
m_Items:
- {fileID: 11400000, guid: 319f1a6064aa14bf482857d93694a64e, type: 2}
- {fileID: 11400000, guid: a8c044f641c884eaea50eb2c03079d84, type: 2}
- {fileID: 11400000, guid: fc839b4964e764983b787177dee8a891, type: 2}
- {fileID: 11400000, guid: 26d930d5856be4468a8f628ad8517751, type: 2}
- {fileID: 11400000, guid: 579f5b98b03d640648d43c6098f057e9, type: 2}
- {fileID: 11400000, guid: 41a9127a1465e472bb8931046e60e053, type: 2}
- {fileID: 11400000, guid: dfe012ccd13eb4945963aebab6a4a2af, type: 2}
- {fileID: 11400000, guid: 4ec95cc66856244d8b0a5a9a3f2e7e9b, type: 2}
- {fileID: 11400000, guid: 4503e5054fa764f91bee405f8b7dd44e, type: 2}
CompletionDialog: {fileID: 0}
Modified:
m_PersistentCalls:
m_Calls: []
Initiated:
m_PersistentCalls:
m_Calls: []
PageInitiated:
m_PersistentCalls:
m_Calls: []
GoingBack:
m_PersistentCalls:
m_Calls: []
Completed:
m_PersistentCalls:
m_Calls: []
Quit:
m_PersistentCalls:
m_Calls: []
m_Scene: {fileID: 0}
m_TutorialTitle:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: bbbce2216871549d2882c4b8924af869
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 91f46807fb5fb4395a339b9fff19f9ca
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d1e09a29f8e184055a3939fdbbdf5693
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 664 KiB

@@ -0,0 +1,153 @@
fileFormatVersion: 2
guid: 79d22360af7a14b3aba588ee7ae0d738
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 12
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: 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: 3
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: 3
buildTarget: WebGL
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: 3
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: 3
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: 3
buildTarget: Server
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: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
nameFileIdTable: {}
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,137 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.1
m_EditorClassIdentifier:
Title:
m_Untranslated: Overview
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d98bac27e09e35f4cb921c5840d426c4, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.1%20-%20Overview%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: fc89ef7c71df44c649624555e791232a, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.1%20-%20Overview%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In the previous tutorial, you wrote your first line of code
to make a collectible object rotate in the scene. In this tutorial, you\u2019ll
complete the interactive living room scene with more code that allows the
player to pick up the collectible object, rewarding them with a satisfying
visual effect. You\u2019ll also add more collectibles throughout the room
to complete the scene.\n\nWhen you\u2019re ready to get started, go to
the next step."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6d21b7d4cb5aa466eb11a7d7a044dbde
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,192 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.10
m_EditorClassIdentifier:
Title:
m_Untranslated: Restrict collisions to the player only
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 31107235378b844e5a4c2bdc406c7ada, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.10%20-%20Restrict%20collisions%20to%20the%20Player%20only%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.10%20-%20Restrict%20collisions%20to%20the%20Player%20only%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "When you spread collectibles around the room, you may have
noticed something strange: collectibles disappear when they collide with
one of the chairs! If you haven\u2019t already seen the problem, try putting
one of the chair\u2019s legs or the couch on top of one of your collectibles,
then enter Play mode. You\u2019ll see the chair trigger the destruction
of the collectible!\n\nTo fix this, you'll need to adjust the logic in
the code so that only the player triggers these events. The logic in the
<b>Collectible</b> script needs to be: \"When an object with a <b>Rigidbody</b>
component collides with me, <b>IF that object is the player</b>, then destroy
myself and spawn a particle effect.\"\n\nTo add this logic, you\u2019ll
use an if-statement to check if a certain condition is true, and if that
condition is true, then continue to execute the code. \n\nYou\u2019ll also
use a feature in Unity called <b>tags</b> to identify the player GameObject."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Select the player GameObject, open the <b>Tag</b>
dropdown at the top of the <b>Inspector</b> window, and select <b>Player</b>
to apply that tag.\n\n<b>2.</b> In the <b>Collectible </b>script, use
the <b>Enter</b> (macOS: <b>Return</b>) key to add some space above the
<b>Destroy</b> command for your new if-statement. \n\n<b>Important:</b>
Pay close attention to the demo video to see where to put this code. Putting
it in the wrong section of your script will cause errors. \n\n<b>3.</b>
Add the following if-statement code:\n\n if (other.CompareTag(\"Player\"))
{\n \n }\n\nRemember, this code defines properties
of this collectible, so \u201Cother\u201D refers to another object that
has collided with this one. With that in mind, here\u2019s how you can
read the code above:\n\n\"If the \u201Cother\u201D GameObject that collided
with me has the <b>Player</b> tag, then execute the code inside the brackets.\"\n\n<b>Important:</b>
Getting the brackets and capitalization exactly right is important. \n\n<b>4.</b>
Select the<b> Destroy</b> and <b>Instantiate</b> code below your if-statement,
then use <b>Ctrl+X, Ctrl+V</b> (macOS: <b>Cmd+X, Cmd+V</b>) to cut and
paste the code to the space between the curly brackets of your new if-statement.
\n\nNow that code will only run if the if-statement\u2019s condition is
met. \n\n<b>5.</b> Save your script and return to Unity.\n\n<b>6.</b>
Enter <b>Play</b> mode to test your scene. \n\nOnly the player should be
able to trigger the collection effect now."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9f2797b87d6054c4c8d6665e4b5502ab
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,172 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.11
m_EditorClassIdentifier:
Title:
m_Untranslated: Declutter the Hierarchy
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 15e3d055307744df9b6c6c4131b85e0d, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.11%20-%20De-clutter%20the%20Hierarchy%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.11%20-%20De-clutter%20the%20Hierarchy%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: You now have a lot of collectible objects in your scene,
and the <b>Hierarchy</b> window is getting very cluttered. Take a moment
to organize the <b>Hierarchy</b> using an empty parent GameObject.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Hierarchy</b> window, select the first
collectible GameObject, then hold down the <b>Shift</b> key and select
the last collectible object in your list to select all GameObjects in between.\n\n<b>2.</b>
Right-click the selected objects and select <b>Create Empty Parent.</b>\nThis
action creates a new GameObject with the collectible GameObjects indented
as <b>child</b> GameObjects.\n\n<b>3.</b> Rename this new GameObject to
something descriptive, like \u201CCollectibles\u201D. \n\n<b>Tip:</b>
When an object is selected in the <b>Hierarchy</b> window or the <b>Project</b>
window, you can press <b>F2</b> (macOS: <b>Return</b>) to quickly rename
it.\n\nYou can now expand and collapse that parent GameObject in the <b>Hierarchy</b>
to keep things nice and tidy."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 156526276c6584a15b74930ed03e76ad
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,155 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.12
m_EditorClassIdentifier:
Title:
m_Untranslated: Review and proceed to the next tutorial
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.1%20-%20Overview%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Congratulations on completing your interactive living room
scene by setting up collision detection for your collectible and triggering
VFX feedback. \n\nHere are some of the things you learned along the way:\n\n\u2022
Set up a collider as a trigger instead of a physical boundary. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/EventFunctions.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Apply the <b>OnTriggerEnter</b> method to detect collisions with other
objects. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/EventHandling.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Devise comments that describe a given block or line of code.\n\u2022 Apply
the <b>Destroy</b> method to remove objects from a scene. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/InstantiatingPrefabs.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Code quickly using the autocomplete feature of the IDE. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/ManagedCodeDebugging.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Declare a variable with the data type of GameObject. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/class-GameObject.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Apply the <b>Instantiate</b> method to spawn prefab instances in a scene.
(<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/InstantiatingPrefabs.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Apply snapping with the <b>Move</b> tool to align and evenly space out
GameObjects. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/class-Transform.html?utm_source=learnTPOCi'>more</a>)\n\u2022
Apply <b>if</b> statements to control the logic and flow of a script.\n\u2022
Apply tags to GameObjects in order to identify them in a script. (<a href='https://docs.unity3d.com/6000.0/Documentation/Manual/Tags.html?utm_source=learnTPOCi'>more</a>)\n"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: Proceed to the next tutorial, which includes optional challenges
to further develop your skills, explore new concepts, and improve your
project.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d2e3faf3d4c3a4603b4969872a483f86
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,180 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.2
m_EditorClassIdentifier:
Title:
m_Untranslated: Allow the player to go through the collectible
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 1169879b63b0541359b69bbddf82bdaa, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.2%20-%20Allow%20the%20player%20to%20go%20through%20the%20collectible%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.2%20-%20Allow%20the%20player%20to%20go%20through%20the%20collectible%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Right now, the collectible is like an immovable rock \u2014
it won\u2019t budge when the player collides with it at full speed, and
it even knocks the player off its course! You need to set up the collectible
so that the player can pass through it without any visible physical collision
or bump. \n\nYou can achieve this with the <b>Is Trigger</b> property of
the <b>Collider</b> component. When you tell a collider component to act
as a trigger instead of a physical collider, it will no longer have a solid
barrier, but it can still detect entry by the player or other GameObjects.
\n\nA <b>trigger collider</b> makes an object act more like a cloud. Even
though it looks solid, an airplane can still pass right through it, and
the pilot knows when they\u2019ve gone through it."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Make sure that the collectible is positioned
in your scene so that the player can run into it.\n\n<b>2.</b> Enter Play
mode and try to collide with the collectible \u2014 notice what happens.
Exit Play mode when you\u2019re done testing.\n\n<b>3.</b> Select the
collectible object, then locate its <b>Collider</b> component.\n\n<b>4.</b>
In the <b>Collider</b> component, enable the <b>Is Trigger</b> property.
This transforms the physical collider into a trigger area.\n\n<b>5.</b>
Enter Play mode to test it again. Verify that the player can move through
the collectible without any physical resistance. \n\nThe collectible still
doesn't disappear when the player moves over it. You\u2019ll work on that
next.\n\nRemember to exit <b>Play</b> mode when you\u2019re done testing!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3000d025013f84b19b0ef42c7416344e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,180 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.3
m_EditorClassIdentifier:
Title:
m_Untranslated: Add the OnTriggerEnter function
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: e702598a5a0b0469dab65c9887972ee1, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.3%20-%20Add%20the%20OnTriggerEnter%20function%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.3%20-%20Add%20the%20OnTriggerEnter%20function%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "In this step, you\u2019ll write code to detect when the
player makes contact with the collectible. You\u2019ll achieve this in
your script using the <b>OnTriggerEnter</b> function, a special Unity function
that is called when one object enters a trigger collider zone of another
object. \n\nIt's important to note that <b>OnTriggerEnter</b> is only called
if at least one of the objects involved has a <b>Rigidbody</b> component
attached to it. The player object already has a <b>Rigidbody</b> component,
so you\u2019re all set!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Reopen the <b>Collectible</b> script in your
script editor.\n\n<b>2.</b> After the ending curly bracket of the <b>Update</b>
method, but before the final curly bracket of the entire script, create
some space by pressing <b>Enter</b> (macOS: <b>Return</b>) a few times.\n\n<b>Important:</b>
Pay close attention to the demo video to see where to put this code. Putting
it in the wrong section of your script will cause errors. \n\n<b>3.</b>
Begin entering \u201COnTriggerEnter\u201D. If your development environment
supports it, you should see very helpful autocomplete suggestions.\n\n<b>4</b>.
Select or complete the <b>OnTriggerEnter</b> method in your script. \n\nIt
should look like this:\n\n private void OnTriggerEnter(Collider other)
{\n \n }\n\nAny code that you put in between those two curly brackets
will run when an object with a <b>Rigidbody</b> component collides with
the collectible. In this case, you want to make the collectible disappear,
which you\u2019ll do next."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f10d9cf5ee16f4e2ca96e6103218cc5b
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,177 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.4
m_EditorClassIdentifier:
Title:
m_Untranslated: Write a comment
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 49dd65d2be4d142fd881cb70aee461f9, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.4%20-%20Write%20a%20comment%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.4%20-%20Write%20a%20comment%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "<b>Comments</b> are non-executable lines in your code that
serve as notes or explanations. They are crucial for maintaining clear
and understandable code, especially when you're working on complex projects
or with a team. \n\nHere, you'll use comments as <b>pseudo code,</b> a
practice where you outline your code's intended logic in plain language
before you write the functional code. It's a way to plan and clarify your
thoughts, and make the coding process go smoother. \n\nIn C#, comments
are marked with \u201C//\u201D, and anything following these two slashes
on the same line is ignored when the code runs. \n\nThe default template
Unity script that you get when you create a new script already has a couple
of comments \u2014 did you notice them?"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In your script, navigate to the <b>OnTriggerEnter</b>
method where you plan to add new code, then press <b>Enter</b> (macOS:
<b>Return</b>) a few times after the opening curly bracket to make some
space.\n\nIn this case, you\u2019ll write the comment, \u201CDestroy the
collectible\u201D, since that\u2019s what you want to do when the player
enters its trigger zone.\n\n<b>2.</b> Write your comment, which should
look like this:\n\n private void OnTriggerEnter(Collider other) {\n\n
// Destroy the collectible\n\n }"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9f56069a893d641b394f4b2d44bf8aab
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,176 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.5
m_EditorClassIdentifier:
Title:
m_Untranslated: Destroy the collectible
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 55180641518c1492e89ad70113b881ee, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.5%20-%20Destroy%20the%20collectible%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.5%20-%20Destroy%20the%20collectible%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: In this step, you'll make the collectible disappear when
the player interacts with it. You'll use the <b>Destroy</b> method in Unity,
which removes GameObjects from the scene. This will make it seem like the
player has collected the object.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Inside the <b>OnTriggerEnter</b> method, press
<b>Enter</b> (macOS: <b>Return</b>) to add a new line beneath your comment.\n\n<b>2.</b>
Begin to enter \u201CDestroy\u201C and notice that your code editor may
provide autocomplete suggestions. Then complete the line of code:\n\nDestroy(gameObject);\n\nThe
\u201CGameObject\u201D here refers to the GameObject the script is attached
to, which in this case, is your collectible. Also, note that \u201CgameObject\u201D
starts with a lowercase letter here (camelCase)!\n\nYour code should look
like this:\n\n private void OnTriggerEnter(Collider other) { \n
// Destroy the collectible\n Destroy(gameObject);\n }\n\n<b>4.</b>
Save the script, return to Unity, and enter Play mode. \n\nYou'll see that
when the player collides with the collectible, it disappears from the scene
and from the <b>Hierarchy</b> window, simulating that it has been collected
by the player.\n\nRemember to exit Play mode when you\u2019re done testing!\n\n<b>TIp:</b>
If the behavior does not work, double-check that you saved your script."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 199b02a1d9dd24a82952d08f4d06516e
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,178 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.6
m_EditorClassIdentifier:
Title:
m_Untranslated: Explore particle effect options
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: e001648fccd53476ea54ab37bcd41a0b, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.6%20-%20Explore%20particle%20effect%20options%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.6%20-%20Explore%20particle%20effect%20options%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "You probably noticed that collecting the object was not
very satisfying or obvious; you could barely tell it was collected!\n\nWhen
the player accomplishes something, they should get some kind of visual
feedback to make that clear. Simple <b>Visual Effects (VFX)</b> \u2014
like puffs of smoke or mini explosions \u2014 are one of the most effective
ways to provide this visual feedback.\n\nIn Unity, you can use <b>particle
systems</b> to simulate complex visual effects such as fire, smoke, or
a burst of sparks. In this step, you\u2019ll select a particle system to
provide visual feedback for your collectible."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Project</b> window, navigate to <b>_Unity
Essentials</b> > <b>Prefabs</b> > <b>VFX</b> folder. \n\nThis folder contains
pre-made 2D and 3D visual effects that you can use in your scene. You\u2019ll
use the non-2D effects for this project. \n\n<b>2.</b> Double-click the
various 3D particle system prefabs to preview them in prefab editing mode.
\n\nInside prefab editing mode, you should see a <b>Particles</b> panel
that allows you to restart and preview the particle effect.\n\n<b>3.</b>
Take note of which one you want to use for your collectible \u2014 you\u2019ll
actually make it appear in the following steps.\n\n<b>4.</b> Exit prefab
editing mode using the small back arrow at the top of the <b>Hierarchy</b>
window."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 697fd78112856486e916d99f1843a9b1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,184 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.7
m_EditorClassIdentifier:
Title:
m_Untranslated: Create and assign a new variable for the Particle
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 2236135ede55b4f30aa46834871c9a49, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.7%20-%20Create%20and%20assign%20a%20new%20variable%20for%20the%20Particle%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.7%20-%20Create%20and%20assign%20a%20new%20variable%20for%20the%20Particle%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Variables store data that you can reference and manipulate
in your code. For example, you made a float variable for the rotation speed
of your collectible in the previous tutorial. \n\nVariables aren\u2019t
just limited to numbers, though. They can be any data type \u2014 you can
even have GameObjects variables!\n\nIn this step, you'll create a variable
of the type GameObject to reference your chosen particle effect prefab.
Later on, you\u2019ll be able to reference this variable to spawn your
particle effect in the scene."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Open your <b>Collectible</b> script in your script
editor.\n\n<b>2.</b> Below your <b>rotationSpeed</b> variable near the
top of the script, add a new line that declares a new public variable of
type GameObject:\n\n public GameObject onCollectEffect;\n\nYou can name
the variable whatever you want, but something like \u201ConCollectEffect\u201D
makes sense. This variable will hold the reference to your particle effect
prefab.\n\n<b>3.</b> Save your script and switch back to the Unity Editor.\n\n<b>4.</b>
In the Unity Editor, select the collectible GameObject that your script
is attached to. \n\nYou should now see the new <b>On Collect Effect</b>
variable in the <b>Inspector</b> window window. You\u2019ll notice that
it has <b>None</b> assigned as its value. You need to tell Unity what prefab
GameObject you actually want to use as your collection effect.\n\n<b>5.</b>
To assign your chosen particle effect to the variable, locate your chosen
VFX prefab in the <b>Project</b> window, then drag the prefab from the
<b>Project</b> window onto the <b>On Collect Effect</b> variable box in
the <b>Inspector</b> window. This links your VFX prefab with the variable
in your script.\n\nIf you enter Play mode now, the particle effect still
won\u2019t generate \u2014 you\u2019ll add the code to do that next."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f49cfcd838cee4d029afae50591ce36c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,187 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.8
m_EditorClassIdentifier:
Title:
m_Untranslated: Instantiate the particle
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 7356978c80c9e4bb4b0986b8a7406887, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.8%20-%20Instantiate%20the%20particle%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.8%20-%20Instantiate%20the%20particle%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "<b>Instantiating</b> an object in Unity means creating a
copy of it during runtime (while the application is running); you\u2019re
making a new instance of that prefab in your scene. \n\nJust like the transform.Rotate
method you used earlier required a rotation value for the X, Y, and Z axes,
the <b>Instantiate</b> method also requires certain information to execute,
separated by commas. Specifically, you need to specify the following information:\n\n\u2022
Which object to instantiate\n\u2022 The position of the instantiated object\n\u2022
The rotation of the instantiated object\n\nIn this step, you'll instantiate
your chosen particle effect when the player collides with the collectible."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Inside the <b>OnTriggerEnter</b> method, press
<b>Enter</b> (macOS: <b>Return</b>) after the <b>Destroy</b> command to
make room for your new code.\n\n<b>2.</b> Add the <b>Instantiate</b> code
as is shown below \u2014 feel free to also include the comment:\n\n //
instantiate the particle effect\n Instantiate(onCollectEffect, transform.position,
transform.rotation);\n \nKeep in mind that since this code defines properties
of the collectible, \"transform\" refers to the transform (position, scale,
rotation) of this particular collectible GameObject. With that in mind,
here\u2019s how you can interpret the code above:\n\n\u2022 Call the <b>Instantiate</b>
method.\n\u2022 Which object do we want to instantiate? The <b>onCollectEffect.</b>
\n\u2022 What position should we instantiate it at? My current position
(<b>transform.position</b>).\n\u2022 What rotation should it have when
it\u2019s instantiated? My current rotation (<b>transform.rotation</b>).\n\n<b>transform.position</b>
and <b>transform.rotation</b> refer to the collectible\u2019s position
and rotation since this script is attached to the collectible object. \n\nDon\u2019t
worry if this is still confusing at this point. It\u2019ll take repetition
and time before you\u2019re fully comfortable. This is part of the process.\n\n<b>3.</b>
Save your script, return to Unity, and enter <b>Play</b> mode. \n\nYou'll
see the particle effect appear when you collide with the collectible. This
visual feedback is much more satisfying!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ecfc50c8e959a42c9baf9685471e8cc8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,186 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.3.9
m_EditorClassIdentifier:
Title:
m_Untranslated: Create an interesting path of collectibles
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: 6364b7a48740744648dde302febc49fc, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.9%20-%20Create%20an%20interesting%20path%20of%20collectibles%20-%20VIDEO.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.3%20-%20Collect%20the%20collectibles/4.3.9%20-%20Create%20an%20interesting%20path%20of%20collectibles%20-%20VIDEO.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "With your collectible now completely functional, you\u2019re
ready to populate your scene with more of them. We'll provide you with
a few pro tips for efficiently creating a straight, evenly-spaced path
of objects in your scene."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> In the <b>Scene</b> view, make sure you are using
<b>Global</b> coordinates so that you can move objects in a straight line
relative to the world\u2019s coordinates, regardless of which way each
object is facing.\n\n<b>2.</b> In the <b>Hierarchy</b> window, double-click
the <b>03_Living_Room</b> GameObject to frame it, then use the <b>Scene</b>
view gizmos to switch to the Top view to get a better perspective for arranging
the collectibles. \n\n<b>3.</b> Select the <b>Move</b> tool, then select
your collectible.\n\n<b>4.</b> Press <b>Ctrl+D</b> (macOS: <b>Cmd+D</b>)
to duplicate the collectible. \n\nThe duplicate collectible will be at
the same position \u2014 so you won\u2019t see it in the <b>Scene</b> view,
but you will see a copy appear in the <b>Hierarchy</b> window.\n\n<b>5.</b>
To move the duplicated collectible along a specific axis (X, Y, or Z),
click and drag one of the arrows of the <b>Move</b> tool.\n\n<b>6.</b>
To ensure that the collectibles are evenly spaced, hold down <b>Ctrl</b>
(macOS: <b>Cmd</b>) while you move the collectible. \n\nThis enables snapping,
so that you can place the collectible at fixed increments along the chosen
axis.\n\n<b>7.</b> Repeat the process: duplicate (<b>Ctrl+D</b> (macOS:
<b>Cmd+D</b>), then move (drag while holding <b>Ctrl</b> or <b>Cmd</b>)
to create a series of collectibles, forming a path or pattern.\n\nMake
an interesting path through the environment so that the user of your game
will explore and interact with the entire living room.\n\n<b>8.</b> Test
your living room scene in Play mode and try to collect all the collectibles
\u2014 it should be pretty satisfying gameplay now that you have some visual
feedback on each collision!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9cb41ef30669441a690bd3e42925344a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,74 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3}
m_Name: Tut_4.3
m_EditorClassIdentifier:
TutorialTitle:
m_Untranslated: Collect the collectible
m_ProgressTrackingEnabled: 1
m_LessonId: 5c6c7647-b5f0-4c70-9258-e44868f7b75f
m_Version: 1
m_ReturnToPreviousScenes: 0
m_SceneManagementBehavior: 1
m_Scenes: []
m_DefaultSceneCameraSettings:
m_CameraMode: 1
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0.7414055
m_Pivot: {x: 12, y: 8, z: -15}
m_Rotation: {x: -0.20906472, y: 0.2526841, z: -0.05601874, w: -0.9430295}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
m_WindowLayout: {fileID: 0}
m_Pages:
m_Items:
- {fileID: 11400000, guid: 6d21b7d4cb5aa466eb11a7d7a044dbde, type: 2}
- {fileID: 11400000, guid: 3000d025013f84b19b0ef42c7416344e, type: 2}
- {fileID: 11400000, guid: f10d9cf5ee16f4e2ca96e6103218cc5b, type: 2}
- {fileID: 11400000, guid: 9f56069a893d641b394f4b2d44bf8aab, type: 2}
- {fileID: 11400000, guid: 199b02a1d9dd24a82952d08f4d06516e, type: 2}
- {fileID: 11400000, guid: 697fd78112856486e916d99f1843a9b1, type: 2}
- {fileID: 11400000, guid: f49cfcd838cee4d029afae50591ce36c, type: 2}
- {fileID: 11400000, guid: ecfc50c8e959a42c9baf9685471e8cc8, type: 2}
- {fileID: 11400000, guid: 9cb41ef30669441a690bd3e42925344a, type: 2}
- {fileID: 11400000, guid: 9f2797b87d6054c4c8d6665e4b5502ab, type: 2}
- {fileID: 11400000, guid: 156526276c6584a15b74930ed03e76ad, type: 2}
- {fileID: 11400000, guid: d2e3faf3d4c3a4603b4969872a483f86, type: 2}
CompletionDialog: {fileID: 0}
Modified:
m_PersistentCalls:
m_Calls: []
Initiated:
m_PersistentCalls:
m_Calls: []
PageInitiated:
m_PersistentCalls:
m_Calls: []
GoingBack:
m_PersistentCalls:
m_Calls: []
Completed:
m_PersistentCalls:
m_Calls: []
Quit:
m_PersistentCalls:
m_Calls: []
m_Scene: {fileID: 0}
m_TutorialTitle:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 555ec0d725e874539ac03984739b8530
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5c4d86788bd818f479124bdc43898b02
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,124 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.4.1
m_EditorClassIdentifier:
Title:
m_Untranslated: Overview
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 32900000, guid: 53f88a75402804c628dcbcd5217c73b3, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 1
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "Try these optional activities to challenge yourself, build
your skills, and improve your project!\n\nEach challenge is tagged as <b>Easy</b>,
<b>Medium</b>, or <b>Expert</b> difficulty so that you know what to expect.
You can do one of them, all of them, or none of them \u2014 it\u2019s totally
up to you!\n\n\u2022 <b>Easy:</b> Add a jump ability.\n\u2022 <b>Medium:</b>
Make the door open when the player approaches. \n\u2022 <b>Expert:</b>
Use generative AI to add multi-camera toggling. \n\nIf you\u2019re not
interested in doing these challenges, skip to the end of this tutorial
to mark it as complete."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 1
m_FocusMode: 0
m_Orthographic: 0
m_Size: 10
m_Pivot: {x: 6.7290187, y: -15.533001, z: -3.385282}
m_Rotation: {x: 0.44912335, y: 0.33663946, z: -0.18756376, w: 0.8060943}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9244eac34778c544da2ddd6616646deb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,182 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.4.2
m_EditorClassIdentifier:
Title:
m_Untranslated: 'Easy: Add a jump ability'
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d29fefbb3d8b8428ea34ebe4f67eb028, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.2%20-%20Easy%20-%20Add%20a%20jump%20ability.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.2%20-%20Easy%20-%20Add%20a%20jump%20ability.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "The ability for a player character to jump unlocks limitless
additional gameplay possibilities and mechanics. \n\nIn this extra challenge,
you\u2019ll give the player the ability to jump with just a few lines of
code. \n\nThis optional challenge is classified as Easy difficulty."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Open the <b>PlayerController</b> script in your
script editor. \n\n<b>2.</b> Add the following variable declaration statement
directly below your other <b>speed</b> and <b>rotationSpeed</b> variables
toward the top of your script:\n\n<b>public float jumpForce = 5.0f;</b>\n\nAfter
you save your script, this variable will be visible and editable in the
<b>Player Controller</b> component. \n\n<b>3.</b> Between the opening
and closing curly brackets of the empty <b>Update()</b> function, add the
following code:\n\nif (Input.GetButtonDown(\"Jump\")) {\n rb.AddForce(Vector3.up
* jumpForce, ForceMode.VelocityChange);\n}\n\nHere's what this code means:
\n\n\u2022 <b>if (Input.GetButtonDown(\"Jump\")):</b> Checks if the <b>Jump</b>
button is pressed. <b>Jump</b> is configured in Unity's Input Manager to
correspond to a key or button press. By default, the <b>Jump</b> action
corresponds to the <b>Spacebar.</b>\n\n\u2022 <b>rb:</b> A reference to
the GameObject's <b>Rigidbody</b> component, used to apply physics.\n\n\u2022
<b>rb.AddForce(Vector3.up * jumpForce, ForceMode.VelocityChange):</b> Applies
an upward force to make the object jump. \n\n- Vector3.up indicates the
upward direction, and jumpForce sets the force magnitude.\n- ForceMode.VelocityChange
changes velocity directly, making the jump instant.\n\n<b>4.</b> Save
your script and return to Unity. Enter <b>Play</b> mode and press <b>Spacebar</b>
to test the new jump. Adjust the Jump Force variable as you see fit."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8ee90ab646bab8f428000cb7d69b8d12
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,203 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.4.3
m_EditorClassIdentifier:
Title:
m_Untranslated: 'Medium: Make the door open when the player approaches'
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d29fefbb3d8b8428ea34ebe4f67eb028, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.3%20-%20Medium%20-%20Make%20the%20door%20open%20when%20the%20player%20approaches_U6_V2.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.3%20-%20Medium%20-%20Make%20the%20door%20open%20when%20the%20player%20approaches_U6_V2.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "The player is currently trapped in the living room. It would
open up so many possibilities if the player was able to open the doors
and enter other rooms. You could even connect the living room with the
kitchen and the kid\u2019s room and allow the player to explore all three
environments! \n\nTo allow the player to open the door, you\u2019ll need
to add a new script that makes use of Unity\u2019s Animator system. You
may not have realized this, but you can actually create animations directly
in Unity and then trigger those animations via scripts. \n\nThe <b>Door</b>
GameObject already has an <b>Animator</b> component with a Door_Open animation
attached to it. You need to add the script that tells that animation to
start when the player enters a trigger zone of the door. \n\nThis optional
challenge is classified as Medium difficulty."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Create a new script in the <b>Unity Essentials</b>
> <b>Scripts</b> folder named \u201CDoorOpener\u201D. \n\n<b>Important:</b>
The name of this script must match exactly the name declared at the top
of the class in the code snippet below (DoorOpener). \n\n<b>2.</b> In
the <b>Scene</b> view, select the door on the right side of the living
room, then in the <b>Hierarchy</b> window, make sure you have selected
the parent <b>Door</b> GameObject \u2014 and not the child <b>DoorPanel</b>
or <b>DoorHandle</b> GameObjects. \n\nThe parent GameObject is the one
with the <b>Animator</b> component attached to it. \n\n<b>3.</b> With
the <b>Door</b> GameObject selected, select <b>Add Component,</b> then
search for and add your new <b>DoorOpener</b> script. \n\n<b>4.</b> Open
the <b>DoorOpener</b> script in your script editor, delete all the default
code inside it, and replace it by copying and pasting the code below into
the empty script. \n\nFeel free to read through the code to see if you
can understand it, with help from the comments. When you\u2019re done,
save your script and return to the Unity Editor. \n\nThe script relies
on the door having a trigger zone that detects when the player has entered
it. \n\n<b>5.</b> With the <b>Door</b> GameObject still selected, add
a new <b>Box Collider</b> component, then enable the <b>Is Trigger</b>
property. \n\n<b>6.</b> In the <b>Box Collider</b> component, select
<b>Edit Collider</b> then use the <b>Scene</b> view collider controls to
set the size and position of the trigger zone. \n\n<b>7.</b> Enter <b>Play</b>
mode to test your game. \n\nWhen the player enters the trigger zone, the
door should open!"
m_CodeSample: "using UnityEngine;\r\n\r\n\r\npublic class DoorOpener : MonoBehaviour\r\n{\r\n
private Animator doorAnimator;\r\n\r\n void Start()\r\n {\r\n //
Get the Animator component attached to the same GameObject as this script\r\n
doorAnimator = GetComponent<Animator>();\r\n }\r\n\r\n private void OnTriggerEnter(Collider
other)\r\n {\r\n // Check if the object entering the trigger is the
player (or another specified object)\r\n if (other.CompareTag(\"Player\"))
// Make sure the player GameObject has the tag \"Player\"\r\n {\r\n
if (doorAnimator != null)\r\n {\r\n // Trigger the
Door_Open animation\r\n doorAnimator.SetTrigger(\"Door_Open\");\r\n
}\r\n }\r\n }\r\n}\r"
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c397ce03275ec39419703f4c0eda7af8
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,190 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.4.4
m_EditorClassIdentifier:
Title:
m_Untranslated: 'Expert: Use generative AI to simulate sunrise and sunset'
m_Paragraphs:
m_Items:
- m_Type: 9
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 2800000, guid: d29fefbb3d8b8428ea34ebe4f67eb028, type: 3}
m_VideoUrl: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.4%20-%20Expert%20-%20Use%20generative%20AI%20to%20simulate%20sunrise%20and%20sunset_U6_V3.webm
m_Video: {fileID: 32900000, guid: 5b69f4d6321874ec19173e92689ae1ad, type: 3}
m_Media:
m_ContentType: 2
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url: https://storage.googleapis.com/learn-media-public/Essentials-Pathway/4.C%20-%20Challenge/4.C.4%20-%20Expert%20-%20Use%20generative%20AI%20to%20simulate%20sunrise%20and%20sunset_U6_V3.webm
m_AutoStart: 0
m_Loop: 0
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: "You\u2019d be amazed at how much you can accomplish with
the help of generative AI large language models (LLMs) like <a href=\"https://muse.unity.com/\">Unity
Muse</a>, ChatGPT, or Claude. These tools are especially helpful for generating
relatively simple code. Unity Muse is trained and refined for Unity-specific
questions, so it will probably give you the most reliable results, but
other LLMs will work very well too. \n\nIn this Expert-level challenge,
you\u2019ll use one of these tools to generate a script that slowly rotates
the <b>Directional Light</b>, simulating a day-night cycle in your scene.\n\nThis
optional challenge is classified as Expert difficulty."
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: "<b>1.</b> Head over to your generative AI tool of choice
and enter a prompt similar to the one below: \n\n\u201CCreate a script
for Unity that I can add to my <b>Directional Light</b> that slowly rotates
the light to simulate the day passing. The actual seconds for a day to
pass should be a variable editable in the <b>Inspector</b> window.\u201D\n\n<b>2.</b>
In the script that is generated, locate the class declaration line at the
top of the script that says, \u201Cpublic class [SCRIPT_NAME] : MonoBehaviour.\u201D
\n\nThe [SCRIPT_NAME] is what you\u2019ll need to name your script. The
one generated for you will likely be different from the name of the script
in the example!\n\n<b>3.</b> In the <b>Project</b> window, create a new
script and give it the appropriate script name, then apply it to the <b>Directional
Light</b> GameObject in your scene. \n\n<b>Important:</b> The name of
your script in the <b>Project</b> window and the name declared within the
script in the class declaration (\u201Cpublic class [SCRIPT_NAME]\u201D)
must match exactly! Otherwise, your project will display an error in the
console.\n\n<b>4.</b> Open the script and replace the default code with
the AI-generated code. Save the script and return to the Editor. \n\n<b>5.</b>
In the <b>Inspector</b> window, there should be a new variable that allows
you to control the time it takes for a full day to pass. Make the day pass
quickly for testing purposes.\n\n<b>6.</b> Enter <b>Play</b> mode to test
your new sun rotation functionality. \n\nIf something doesn\u2019t work,
explain what is happening to the AI tool and see if the AI can troubleshoot
the issue!"
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_Media:
m_ContentType: 0
m_Image: {fileID: 0}
m_VideoClip: {fileID: 0}
m_Url:
m_AutoStart: 1
m_Loop: 1
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_FaqEntries: []
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 105a73c2b6ded1c4b8437f2ce2a4f4cb
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,140 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: ff771ccdf4150419d9ff4d342b069aae, type: 3}
m_Name: Step_4.4.5
m_EditorClassIdentifier:
Title:
m_Untranslated: Proceed to the next tutorial
m_Paragraphs:
m_Items:
- m_Type: 6
Title:
m_Untranslated:
Text:
m_Untranslated:
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 32900000, guid: 5a9ac420de85d43c6ad82d86253e2c25, type: 3}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 1
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 0
Title:
m_Untranslated:
Text:
m_Untranslated: No matter if you chose to tackle a single challenge, complete
them all, or skip them, you're set for the next step.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
- m_Type: 1
Title:
m_Untranslated: Instructions
Text:
m_Untranslated: Proceed to the next tutorial, where you'll have a chance
to complete a quiz and get credit for completing this project.
m_CodeSample:
m_PostInstructionImage: {fileID: 0}
m_Tutorial: {fileID: 0}
m_Image: {fileID: 0}
m_VideoUrl:
m_Video: {fileID: 0}
m_CriteriaCompletion: 0
m_Criteria:
m_Items: []
m_MaskingSettings:
m_MaskingEnabled: 0
m_UnmaskedViews: []
m_Summary:
m_Description:
m_InstructionBoxTitle:
m_InstructionText:
m_TutorialButtonText:
m_CameraSettings:
m_CameraMode: 0
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0
m_Pivot: {x: 0, y: 0, z: 0}
m_Rotation: {x: 0, y: 0, z: 0, w: 0}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
NextButton:
m_Untranslated: Next
DoneButton:
m_Untranslated: Done
m_CompletedSound: {fileID: 0}
m_AutoAdvance: 0
Showing:
m_PersistentCalls:
m_Calls: []
Shown:
m_PersistentCalls:
m_Calls: []
Staying:
m_PersistentCalls:
m_Calls: []
CriteriaValidated:
m_PersistentCalls:
m_Calls: []
MaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
NonMaskingSettingsChanged:
m_PersistentCalls:
m_Calls: []
m_OnBeforePageShown:
m_PersistentCalls:
m_Calls: []
m_OnAfterPageShown:
m_PersistentCalls:
m_Calls: []
m_OnTutorialPageStay:
m_PersistentCalls:
m_Calls: []
m_OnBeforeTutorialQuit:
m_PersistentCalls:
m_Calls: []
m_NextButton: Next
m_DoneButton: Done
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 21defa06b31babb489cee053f7e25abc
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,67 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !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: 8f107dc6d4c984c45bdafd3bb15f98f0, type: 3}
m_Name: Tut_4.4
m_EditorClassIdentifier:
TutorialTitle:
m_Untranslated: 'Programming Essentials: More things to try'
m_ProgressTrackingEnabled: 1
m_LessonId: b0a08ba9-1fa7-48b5-9c26-d075842a21e2
m_Version: 1
m_ReturnToPreviousScenes: 0
m_SceneManagementBehavior: 1
m_Scenes: []
m_DefaultSceneCameraSettings:
m_CameraMode: 1
m_FocusMode: 0
m_Orthographic: 0
m_Size: 0.7414055
m_Pivot: {x: 12, y: 8, z: -15}
m_Rotation: {x: -0.20906472, y: 0.2526841, z: -0.05601874, w: -0.9430295}
m_FrameObject:
m_SceneGuid:
m_GameObjectGuid:
m_SerializedComponentType:
m_TypeName:
m_ComponentIndex: 0
m_AssetObject: {fileID: 0}
m_Prefab: {fileID: 0}
m_Enabled: 0
m_WindowLayout: {fileID: 0}
m_Pages:
m_Items:
- {fileID: 11400000, guid: 9244eac34778c544da2ddd6616646deb, type: 2}
- {fileID: 11400000, guid: 8ee90ab646bab8f428000cb7d69b8d12, type: 2}
- {fileID: 11400000, guid: c397ce03275ec39419703f4c0eda7af8, type: 2}
- {fileID: 11400000, guid: 105a73c2b6ded1c4b8437f2ce2a4f4cb, type: 2}
- {fileID: 11400000, guid: 21defa06b31babb489cee053f7e25abc, type: 2}
CompletionDialog: {fileID: 0}
Modified:
m_PersistentCalls:
m_Calls: []
Initiated:
m_PersistentCalls:
m_Calls: []
PageInitiated:
m_PersistentCalls:
m_Calls: []
GoingBack:
m_PersistentCalls:
m_Calls: []
Completed:
m_PersistentCalls:
m_Calls: []
Quit:
m_PersistentCalls:
m_Calls: []
m_Scene: {fileID: 0}
m_TutorialTitle:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d4dbcbc5a9ba9f742a2b2a15285c613a
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 7ffc068e9c12f4ca481d03dd19dcb1e1
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Some files were not shown because too many files have changed in this diff Show More