人工精选使用Unity制作无限跑酷游戏 Making an Infinite Runner with Unity
跑酷类游戏看起来简单,真动手做才会发现难点集中在几处:地面怎么无限延伸、障碍物怎么按节奏出现、玩家撞上去之后怎么判定、速度加快后镜头和输入怎么跟上。这门课围绕的就是这些问题,用 Unity 把一个能一直跑下去、难度会逐渐上升的完整小游戏做出来,而不是只演示几个孤立的功能点。 它解决的是哪类工作场景
会员可免费下载本篇月会员可按日额度下载(每篇扣 1 次)。
开通会员 ›会员 A · 按档位折扣
会员 B
游客按标价购买,不享受上表折扣。
支付成功后自动发放网盘链接,链接失效可找客服免费补
跑酷类游戏看起来简单,真动手做才会发现难点集中在几处:地面怎么无限延伸、障碍物怎么按节奏出现、玩家撞上去之后怎么判定、速度加快后镜头和输入怎么跟上。这门课围绕的就是这些问题,用 Unity 把一个能一直跑下去、难度会逐渐上升的完整小游戏做出来,而不是只演示几个孤立的功能点。
它解决的是哪类工作场景
如果你之前跟着教程做过一些零散的小 Demo,但每次想自己从头搭一个项目就卡在结构上,这门课的价值在于它给了一条完整的主线:从角色移动和碰撞,到跑道分段的生成与回收,再到分数、菜单和重新开始。这些环节恰好是跑酷玩法的骨架,也是很多移动端小游戏共用的结构。学完之后你拿到的不只是一个跑酷游戏,而是一套可以迁移到其他无限生成类玩法的思路,比如无限下落、无限横版推进。
需要说明的是,课程不涉及联网、排行榜后台、商业化变现这些内容,它聚焦在单机玩法的实现上。如果你的目标是做一款上线运营的产品,这部分要另外补。
适合什么基础,先看哪几块
建议至少能看懂 C# 的基本语法,知道类和方法的含义,能分清 Update 和 FixedUpdate 的差别。完全没写过代码的人直接上手会比较吃力,因为课程里的脚本是连续演进的,中途掉队不容易接回来。有过一点 Unity 编辑器操作经验最好,比如会拖拽组件、会创建预制体。
如果时间有限,建议按这个顺序看:先看角色控制与碰撞判定这一段,把玩家跑起来、撞上去会停下这件事做通;再看跑道分段的生成与回收,这是无限跑酷的核心机制,也是整门课信息密度最高的部分;最后看分数统计和菜单流程,把开始、失败、重开这条闭环补上。中间涉及具体资源导入、场景摆放的片段可以边做边看,不必先全部过一遍。
学完能独立做什么,资料怎么配合练
跟完之后,你应该能独立做出一个可以玩的跑酷原型:角色自动前进、跑道持续生成、障碍随机出现、碰撞后结束并显示分数、可以从菜单重新开始。更重要的是,你能说清楚每个脚本负责什么,改起来知道动哪里,比如想让障碍变密、想让速度曲线更陡,都能自己调参数验证。
练习上不建议只看不写。每看完一个模块,先关掉视频自己敲一遍,再对照检查差异,尤其是跑道回收那部分,逻辑写反了往往不报错但会越跑越卡。可以给自己加两个小改动作为检验:把直线跑道换成左右两条交替,或者加入一个加速道具。能独立改出来,说明这套结构你真的吃透了。
课程目录
课程目录84 集
- 📁 6 - The Train 6 - The Train必看.png [493.5 KB] 40 - 39SpawnandMovetheTrainSegment.mp4
- [211.4 MB] 39 - 38CreatetheTrainSegmentClass.srt [17.8 KB] 39 - 38CreatetheTrainSegmentClass.mp4
- [111.9 MB] 40 - 39SpawnandMovetheTrainSegment.vtt [19.3 KB] 40 - 39SpawnandMovetheTrainSegment.srt [18.2 KB] 39 - 38CreatetheTrainSegmentClass.vtt [18.0 KB] 📁 3 - Procedural Level Generation 3 - Procedural Level Generation必看.zip
- [1.8 MB] 27 - 26UsetheCircleEquationtoarctheEnvironment.mp4
- [159.3 MB] 22 - 21SpawnnewBlockswithTrigger.mp4
- [165.5 MB] 26 - 25Manipulatethepositionofthepoints.mp4
- [187.5 MB] 22 - 21SpawnnewBlockswithTrigger.vtt [16.1 KB] 19 - 18UsePrefabtoSetuptheCollision.mp4
- [74.9 MB] 27 - 26UsetheCircleEquationtoarctheEnvironment.srt [19.2 KB] 17 - 16PrefabsandtheWorldGenerator.srt [16.5 KB] 27 - 26UsetheCircleEquationtoarctheEnvironment.vtt [19.7 KB] 18 - 17Generatetheroads.mp4
- [234.9 MB] 25 - 24CreateourFirstShader.vtt [11.5 KB] 26 - 25Manipulatethepositionofthepoints.srt [11.1 KB] 21 - 20DestoryObjectattheEndPoint.vtt [10.8 KB] 21 - 20DestoryObjectattheEndPoint.mp4
- [81.3 MB] 21 - 20DestoryObjectattheEndPoint.srt [10.1 KB] 17 - 16PrefabsandtheWorldGenerator.mp4
- [132.5 MB] 26 - 25Manipulatethepositionofthepoints.vtt [11.5 KB] 18 - 17Generatetheroads.vtt [20.0 KB] 23 - 22SpawnBuildings.vtt [14.7 KB] 24 - 23SpawnStreetLight.vtt [24.1 KB] 23 - 22SpawnBuildings.mp4
- [174.5 MB] 25 - 24CreateourFirstShader.srt [10.8 KB] 23 - 22SpawnBuildings.srt [13.7 KB] 20 - 19AddMovementUsingaComponent.srt [12.4 KB] 18 - 17Generatetheroads.srt [18.3 KB] 17 - 16PrefabsandtheWorldGenerator.vtt [17.0 KB] 20 - 19AddMovementUsingaComponent.vtt [12.6 KB] 19 - 18UsePrefabtoSetuptheCollision.vtt [9.1 KB] 20 - 19AddMovementUsingaComponent.mp4
- [53.5 MB] 24 - 23SpawnStreetLight.mp4
- [308.4 MB] 24 - 23SpawnStreetLight.srt [23.3 KB] 22 - 21SpawnnewBlockswithTrigger.srt [15.3 KB] 25 - 24CreateourFirstShader.mp4
- [63.5 MB] 19 - 18UsePrefabtoSetuptheCollision.srt [8.8 KB] 📁
- 11 - Final Touches
- 11 - Final Touches资料.zip
- [1.8 MB] 70 - 69ChangetheSkyboxandFixInputBug.mp4
- [94.0 MB] 67 - 66CreateTextinBlender.mp4
- [261.3 MB] 69 - 68RendertheTitleandImporttoUnity.mp4
- [306.1 MB] 68 - 67AddourCharactertotheTitle.mp4
- [138.2 MB] 69 - 68RendertheTitleandImporttoUnity.vtt [23.9 KB] 66 - 65UpdateButtonVisuals.vtt [11.6 KB] 67 - 66CreateTextinBlender.vtt [18.4 KB] 68 - 67AddourCharactertotheTitle.vtt [10.3 KB] 72 - 71CongratsandFinalRemarks.vtt [2.7 KB] 67 - 66CreateTextinBlender.srt [17.3 KB] 72 - 71CongratsandFinalRemarks.mp4
- [7.0 MB] 72 - 71CongratsandFinalRemarks.srt [2.6 KB] 70 - 69ChangetheSkyboxandFixInputBug.vtt [9.0 KB] 69 - 68RendertheTitleandImporttoUnity.srt [22.9 KB] 66 - 65UpdateButtonVisuals.srt [11.0 KB] 71 - 70BuildtheGameandWrapUp.mp4
- [162.4 MB] 68 - 67AddourCharactertotheTitle.srt [9.9 KB] 66 - 65UpdateButtonVisuals.mp4
- [167.3 MB] 71 - 70BuildtheGameandWrapUp.vtt [11.8 KB] 71 - 70BuildtheGameandWrapUp.srt [11.3 KB] 70 - 69ChangetheSkyboxandFixInputBug.srt [8.8 KB] 📁 8 - Menu Setup 8 - Menu Setup必看.zip
- [1.8 MB] 54 - 53ImplementtheMainMenu.mp4
- [275.0 MB] 51 - 50ExpandtheIngameUI.mp4
- [184.2 MB] 53 - 52ImplementtheGameoverMenu.vtt [13.7 KB] 52 - 51AddButtonstothePauseMenu.vtt [15.1 KB] 51 - 50ExpandtheIngameUI.srt [30.0 KB] 52 - 51AddButtonstothePauseMenu.mp4
- [130.8 MB] 54 - 53ImplementtheMainMenu.vtt [24.4 KB] 54 - 53ImplementtheMainMenu.srt [23.7 KB] 53 - 52ImplementtheGameoverMenu.mp4
- [187.8 MB] 52 - 51AddButtonstothePauseMenu.srt [14.8 KB] 53 - 52ImplementtheGameoverMenu.srt [13.7 KB] 51 - 50ExpandtheIngameUI.vtt [31.1 KB] 📁 7 - Other Game Mechanics 7 - Other Game Mechanics必看.png [493.5 KB] 42 - 41MaketheCameraFollowthePlayer.mp4
- [140.5 MB] 48 - 47AddNoSpawnZoneandBlancetheGame.mp4
- [357.3 MB] 50 - 49CreatetheSpeedBoostPickup.mp4
- [96.1 MB] 46 - 45CreattheFailZone.mp4
- [318.8 MB] 48 - 47AddNoSpawnZoneandBlancetheGame.srt [17.3 KB] 49 - 48-Make-the-Speed-Booster.zip
- [117.7 KB] 42 - 41MaketheCameraFollowthePlayer.vtt [9.9 KB] 44 - 43FixRoadCollisionIssueandTriggerSpawningBug.mp4
- [261.8 MB] 43 - 42BlockPlayerFromgoingToanOccupiedLane.mp4
- [319.1 MB] 48 - 47AddNoSpawnZoneandBlancetheGame.vtt [17.7 KB] 50 - 49CreatetheSpeedBoostPickup.vtt [8.3 KB] 44 - 43FixRoadCollisionIssueandTriggerSpawningBug.vtt [19.0 KB] 49 - 48CreatetheSpeedBoostModel.srt [24.6 KB] 45 - 44ChangetheSpawnRatio.mp4
- [178.2 MB] 41 - 40AddressingOverlappingandPlacementIssues.srt [9.6 KB] 46 - 45CreattheFailZone.vtt [20.7 KB] 47 - 46ImplementtheTrashCan.mp4
- [231.4 MB] 46 - 45CreattheFailZone.srt [19.4 KB] 41 - 40AddressingOverlappingandPlacementIssues.vtt [10.1 KB] 45 - 44ChangetheSpawnRatio.srt [10.8 KB] 43 - 42BlockPlayerFromgoingToanOccupiedLane.vtt [19.0 KB] 49 - 48CreatetheSpeedBoostModel.vtt [25.5 KB] 42 - 41MaketheCameraFollowthePlayer.srt [9.6 KB] 49 - 48CreatetheSpeedBoostModel.mp4
- [408.0 MB] 41 - 40AddressingOverlappingandPlacementIssues.mp4
- [185.1 MB] 50 - 49CreatetheSpeedBoostPickup.srt [8.0 KB] 45 - 44ChangetheSpawnRatio.vtt [11.0 KB] 47 - 46ImplementtheTrashCan.vtt [19.9 KB] 43 - 42BlockPlayerFromgoingToanOccupiedLane.srt [18.5 KB] 44 - 43FixRoadCollisionIssueandTriggerSpawningBug.srt [18.1 KB] 47 - 46ImplementtheTrashCan.srt [19.3 KB] 📁 1 - Introduction and the Basics 1 - Introduction and the Basics文档.zip
- [1.8 MB] 5 - 04GameObjectandComponents.mp4
- [47.7 MB] 5 - 04GameObjectandComponents.vtt [10.6 KB] 7 - 06DeltaTimeandExposeVariablestoTheEditor.srt [13.9 KB] 7 - 06DeltaTimeandExposeVariablestoTheEditor.mp4
- [150.2 MB] 1 - Introduction.vtt [7.0 KB] 1 - Introduction.srt [6.3 KB] 7 - 07-importing-out-side-assets.zip
- [1.0 MB] 2 - 01InstallUnity.vtt [10.3 KB] 3 - 02IntroductiontotheEditor.vtt [16.0 KB] 3 - 02IntroductiontotheEditor.srt [15.3 KB] 3 - 02IntroductiontotheEditor.mp4
- [52.5 MB] 7 - 06DeltaTimeandExposeVariablestoTheEditor.vtt [14.5 KB] 4 - 03BasicObjectManipulations.mp4
- [83.6 MB] 2 - 01InstallUnity.srt [9.9 KB] 5 - 04GameObjectandComponents.srt [10.3 KB] 6 - 05CreateandAttachaScript.mp4
- [110.5 MB] 6 - 05CreateandAttachaScript.vtt [16.9 KB] 4 - 03BasicObjectManipulations.vtt [8.6 KB] 4 - 03BasicObjectManipulations.srt [8.2 KB] 2 - 01InstallUnity.mp4
- [59.3 MB] 1 - Introduction.mp4
- [16.1 MB] 6 - 05CreateandAttachaScript.srt [16.4 KB] 📁 2 - Setup the Player 2 - Setup the Player资料.png [493.5 KB] 14 - 13GroundCheck.mp4
- [150.7 MB] 15 - 14BasicsofAnimator.mp4
- [118.3 MB] 13 - 12CaculateJumpingSpeed.vtt [12.0 KB] 16 - 15TriggeringAnimationintheCode.srt [8.7 KB] 12 - 11PhysicsConstrainsandCollisionComponents.srt [18.1 KB] 16 - 15TriggeringAnimationintheCode.mp4
- [60.4 MB] 14 - 13GroundCheck.vtt [19.6 KB] 13 - 12CaculateJumpingSpeed.mp4
- [111.9 MB] 9 - 08InstalltheNewInputSystem.srt [15.0 KB] 15 - 14BasicsofAnimator.vtt [21.2 KB] 9 - 08InstalltheNewInputSystem.mp4
- [58.4 MB] 10 - 09AddtheMoveAction.mp4
- [101.1 MB] 11 - 10MovethePlayerWithPreDefinedTransforms.mp4
- [110.8 MB] 16 - 15TriggeringAnimationintheCode.vtt [8.9 KB] 13 - 12CaculateJumpingSpeed.srt [11.8 KB] 8 - 07ImportingAssetsandtheAssetStore.srt [20.9 KB] 12 - 11PhysicsConstrainsandCollisionComponents.mp4
- [181.0 MB] 11 - 10MovethePlayerWithPreDefinedTransforms.srt [13.0 KB] 14 - 13GroundCheck.srt [19.4 KB] 10 - 09AddtheMoveAction.srt [17.3 KB] 12 - 11PhysicsConstrainsandCollisionComponents.vtt [19.6 KB] 8 - 07ImportingAssetsandtheAssetStore.vtt [21.7 KB] 9 - 08InstalltheNewInputSystem.vtt [15.4 KB] 8 - 07ImportingAssetsandtheAssetStore.mp4
- [215.0 MB] 10 - 09AddtheMoveAction.vtt [17.8 KB] 11 - 10MovethePlayerWithPreDefinedTransforms.vtt [13.7 KB] 15 - 14BasicsofAnimator.srt [20.3 KB] 📁 9 - Player Profile and Leader Board 9 - Player Profile and Leader Board文档.png [493.5 KB] 59 - 58ImplementLeaderBoardSavingFacilities.mp4
- [183.8 MB] 9 - Player Profile and Leader Board.pdf
- [658.1 KB] 62 - 61ReadEntriestotheLeaderBoard.mp4
- [229.9 MB] 58 - 57DeleteExistingPlayer.mp4
- [127.6 MB] 55 - 54BaiscSavingMechanicandJSON.mp4
- [87.0 MB] 55 - 54BaiscSavingMechanicandJSON.srt [17.8 KB] 57 - 56SaveNewPlayer.srt [14.4 KB] 57 - 56SaveNewPlayer.mp4
- [123.4 MB] 56 - 55CreatethePlayerProflieUI.srt [18.1 KB] 62 - 61ReadEntriestotheLeaderBoard.vtt [15.6 KB] 55 - 54BaiscSavingMechanicandJSON.vtt [17.9 KB] 61 - 60LayouttheStructureoftheLeaderBoard.mp4
- [77.1 MB] 59 - 58ImplementLeaderBoardSavingFacilities.vtt [22.4 KB] 58 - 57DeleteExistingPlayer.srt [9.7 KB] 59 - 58ImplementLeaderBoardSavingFacilities.srt [22.5 KB] 57 - 56SaveNewPlayer.vtt [14.6 KB] 60 - 59SetandGetthePlayerNameandSortLeaderBoard.vtt [24.8 KB] 58 - 57DeleteExistingPlayer.vtt [9.7 KB] 60 - 59SetandGetthePlayerNameandSortLeaderBoard.srt [24.9 KB] 56 - 55CreatethePlayerProflieUI.mp4
- [136.8 MB] 56 - 55CreatethePlayerProflieUI.vtt [18.3 KB] 62 - 61ReadEntriestotheLeaderBoard.srt [15.1 KB] 60 - 59SetandGetthePlayerNameandSortLeaderBoard.mp4
- [225.0 MB] 61 - 60LayouttheStructureoftheLeaderBoard.srt [13.0 KB] 61 - 60LayouttheStructureoftheLeaderBoard.vtt [13.6 KB] 📁 5 - Pick Ups 5 - Pick Ups说明.zip
- [1.8 MB] 36 - 35SpawnanArrayofCoins.mp4
- [190.9 MB] 37 - 36RefactortheSpawning.mp4
- [166.4 MB] 35 - 34ImplementthescorekeeperandtheUI.mp4
- [161.8 MB] 38 - 37AdjustthePositionofPickups.srt [15.1 KB] 34 - 33ImplmentthePickupClass.vtt [15.7 KB] 38 - 37AdjustthePositionofPickups.mp4
- [231.4 MB] 35 - 34ImplementthescorekeeperandtheUI.srt [18.1 KB] 37 - 36RefactortheSpawning.srt [13.3 KB] 34 - 33ImplmentthePickupClass.srt [15.1 KB] 34 - 33ImplmentthePickupClass.mp4
- [143.1 MB] 35 - 34ImplementthescorekeeperandtheUI.vtt [18.7 KB] 36 - 35SpawnanArrayofCoins.srt [23.5 KB] 36 - 35SpawnanArrayofCoins.vtt [24.2 KB] 38 - 37AdjustthePositionofPickups.vtt [15.4 KB] 37 - 36RefactortheSpawning.vtt [13.9 KB] 📁
- 10 - Audio 65 - 64FinishallAudio.mp4
- [54.1 MB] 63 - 62AddBackgroundandMovementAudio.mp4
- [158.5 MB] 65 - 64FinishallAudio.srt [11.1 KB] 65 - 64FinishallAudio.vtt [11.4 KB] 64 - 63ImplementAudioTriggering.vtt [13.8 KB] 64 - 63ImplementAudioTriggering.mp4
- [124.6 MB] 63 - 62-Add-Audio.zip
- [2.9 MB] 63 - 62AddBackgroundandMovementAudio.vtt [13.3 KB] 64 - 63ImplementAudioTriggering.srt [12.7 KB] 63 - 62AddBackgroundandMovementAudio.srt [13.1 KB] 📁 4 - Threats 31 - 30SpawntheRoadBlock.srt [19.9 KB] 30 - 29SpawntheCarOnRandomLanes.srt [19.9 KB] 31 - 30SpawntheRoadBlock.vtt [20.7 KB] 30 - 29SpawntheCarOnRandomLanes.vtt [20.7 KB] 33 - 32RefactortheSpeedControl.mp4
- [151.5 MB] 28 - 27CreatetheThreatandComposetheCarClass.vtt [14.0 KB] 32 - 31RefactortheThreats.srt [7.9 KB] 28 - 27CreatetheThreatandComposetheCarClass.mp4
- [106.2 MB] 30 - 29SpawntheCarOnRandomLanes.mp4
- [161.1 MB] 31 - 30SpawntheRoadBlock.mp4
- [298.2 MB] 29 - 28SpawntheCarusingCoroutine.vtt [12.1 KB] 33 - 32RefactortheSpeedControl.vtt [17.5 KB] 32 - 31RefactortheThreats.mp4
- [94.1 MB] 29 - 28SpawntheCarusingCoroutine.srt [11.3 KB] 32 - 31RefactortheThreats.vtt [8.4 KB] 33 - 32RefactortheSpeedControl.srt [16.9 KB] 29 - 28SpawntheCarusingCoroutine.mp4
- [238.2 MB] 28 - 27CreatetheThreatandComposetheCarClass.srt [13.7 KB] 适合人群 Unity开发者 游戏爱好者 学习收获 掌握Unity游戏开发流程 学会场景动态生成 提升UI设计能力 祝您学习愉快! 学有所成,前程似锦!





