initial commit
This commit is contained in:
@@ -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:
|
||||
Reference in New Issue
Block a user