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: 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: