P2L7——【程序准备工作】技术栈选择

技术栈

技术栈的意思是:用于开发 软件(游戏)使用的**技术和工具的集合**

比如:

  • 前后端程序技术 —— C++、C#、Java、Lua 等语言
  • 开发工具 —— Visual Studio、VSCode、Unity引擎、UE引擎、Cocos引擎 等

也就是说我们在正式开发之前,需要根据项目的实际情况
考虑好应该用什么样的技术和工具来进行开发,做好开发准备

  1. 什么是技术栈

    用于开发 软件(游戏)使用的技术和工具的集合

  2. 游戏开发(前端)常规技术栈分类

    Unity、UE、Cocos、Flash、Laya等

  3. Unity 技术栈选择

    Unity 2022.3.28f1、 VS、 Unity程序基础小框架、 数据持久化四部曲之2进制 等

在正式开发前就应该选择好技术栈,才能更好的应对后续的实际开发

游戏开发(前端)常见技术栈分类

由于目前 游戏开发前端 主要都是 基于 游戏引擎 进行开发
因此,技术栈基本都基于游戏引擎来划分。
目前市面上常见的技术栈分类有以下几种:

  1. Unity —— 适合移动端游戏、主机端游戏等
  2. UE(虚幻) —— 适合主机端游戏等,渲染相对于Unity更佳
  3. Cocos2d-x —— 适合2D游戏、H5游戏等
  4. Flash、Laya等 —— 适合页游、H5游戏等
  5. 其他

Unity技术栈选择

  1. Unity版本选择
  2. IDE(集成开发环境)编程工具选择
  3. 框架工具选择
  4. 热更新方案选择

等等

Unity版本选择

一定是选择 Unity的长期支持版 来进行学习和开发
这样才能保证项目的稳定和可靠,不要觉得最新的才是最好的!
在本套课程当中我们将使用目前最新的长期支持版 Unity 2022.3.28f1

注意

虽然现在已经2024年,但是实际情况,在大部分的商业游戏开发公司当中,
很多还在使用2019和2021的长期支持版(甚至老项目还会使用2017或更低版本)。
因此Unity版本的选择不是追求新,而是追求稳定和可靠!

编程工具的选择

目前在游戏公司中,最常用的三种编程工具为:

  • VS(Visual Studio)
  • VSCode(Visual Studio Code)
  • Rider( JetBrains Rider )

你可以根据你的使用习惯进行选择,在本套课程当中我们将使用 VS(Visual Studio) 作为我们的编程工具

框架工具的选择

我们将使用配套课程

  • Unity程序基础小框架(重置版)
  • Unity数据持久化四部曲之2进制

相关代码进行项目开发
因此,希望大家先把这两个前置课程学习完毕(当然也可以不学直接用,但是不建议)
这两套课程中的相关知识相信也会让你收获颇丰的!

热更新方案选择

目前市面上的游戏,如果存在热更新功能,那么一般会选择以下方案之一

  • 资源和代码热更必备知识:AB包相关知识、Addressables相关知识(可选)

  • 代码热更必备知识:

    • Lua热更解决方案(xLua、toLua等) —— 基于Lua
    • ILRuntime热更解决方案 —— 基于C#(旧方案)
    • HybridCLR(华佗)热更解决方案 —— 基于C#(性能更优的新方案)

本套课程中,我们主要针对独立游戏开发,目前更多的独立游戏是通过Steam平台发布
对于PC端游来说,Steam提供了比较好的更新流程,因此我们不制作热更新功能。
在后期讲解Steam平台更新相关知识即可。