杰瑞科技汇

Mars Android教程该怎么学?

Mars Android 开发完整教程

目录

  1. 第一部分:初识 Mars

    Mars Android教程该怎么学?-图1
    (图片来源网络,侵删)
    • 什么是 Mars?
    • 为什么选择 Mars?(优势)
    • Mars 与 Unity/Unreal 的对比
    • 适用人群
  2. 第二部分:环境搭建

    • 前置要求
    • 步骤 1:安装 JDK
    • 步骤 2:安装 Android Studio
    • 步骤 3:安装 Mars 编辑器
    • 步骤 4:配置 Mars 的 Android SDK/NDK
    • 步骤 5:验证环境配置
  3. 第三部分:第一个项目 - Hello World

    • 创建新项目
    • 熟悉编辑器界面
    • 创建一个简单的 3D 场景
    • 编写第一个脚本
    • 构建并运行到 Android 设备/模拟器
  4. 第四部分:核心概念与工作流

    • 场景
    • 实体
    • 组件
    • 脚本
    • 资源管理
  5. 第五部分:Android 平台特有配置

    Mars Android教程该怎么学?-图2
    (图片来源网络,侵删)
    • 包名与图标设置
    • 权限管理
    • 屏幕方向与分辨率适配
    • 性能优化技巧
  6. 第六部分:发布与打包

    • 生成 APK
    • 生成 AAB (Android App Bundle)
    • 签名配置
    • 安装到测试设备
  7. 第七部分:学习资源与社区

    • 官方文档
    • 视频教程
    • 社区论坛
    • 示例项目

第一部分:初识 Mars

1 什么是 Mars?

Mars 是由 米哈游 开发并开源的一款 跨平台、数据驱动 的游戏引擎,它最初用于《崩坏3》、《原神》等 3D 大作的开发,以其强大的渲染性能和高效的开发流程而闻名。

2 为什么选择 Mars?(优势)

  • 强大的渲染能力:继承了米哈游在 3A 游戏中的渲染技术,支持 PBR (Physically Based Rendering)、后处理、高级光照等,画面表现力强。
  • 跨平台支持:一次开发,可轻松部署到 Windows, macOS, Linux, iOS, Android 等多个平台。
  • 数据驱动:游戏逻辑、配置、美术资源等大量数据通过 JSON 等格式定义,实现了逻辑与资源的解耦,便于团队协作和热更新。
  • 高性能:底层使用 C++ 编写,对性能进行了极致优化,尤其适合移动端。
  • 开源与活跃社区:核心渲染模块已开源,社区持续贡献,问题能得到较快响应。

3 Mars 与 Unity/Unreal 的对比

特性 Mars Unity Unreal Engine
开发语言 C++ (主) / Lua (脚本) C# C++ / Blueprints (蓝图)
渲染管线 自定义,高度优化 Built-in / URP / HDRP 自定义,Lumen/Nanite
跨平台 优秀 优秀 优秀
数据驱动 核心优势,非常成熟 支持良好,但非核心 支持,但不如 Mars 纯粹
上手难度 较高,需要 C++ 基础 较低,生态成熟 中等,蓝图可视化降低门槛
移动端优化 极致优化 良好 较重,但近年有改善

4 适用人群

  • 有一定 C++ 基础的游戏开发者。
  • 追求高性能渲染和跨平台能力的独立开发者或小团队。
  • 对《原神》等游戏技术实现感兴趣的开发者。
  • 希望学习大型游戏引擎内部架构的开发者。

第二部分:环境搭建

这是最关键的一步,请严格按照顺序操作。

Mars Android教程该怎么学?-图3
(图片来源网络,侵删)

1 前置要求

  • 操作系统:Windows 10 (推荐) / macOS
  • 硬件:8GB 以上内存,建议 SSD 硬盘以提升编译速度。
  • 网络:需要稳定的网络连接,因为需要下载大量 SDK 和依赖库。

2 步骤 1:安装 JDK

Mars 需要 Java Development Kit 来编译项目。

  1. 下载 JDK 8 或更高版本 (JDK 11 是推荐版本)。
  2. 安装 JDK。
  3. 配置环境变量
    • 新建系统变量 JAVA_HOME,值为你的 JDK 安装路径 (C:\Program Files\Java\jdk-11)。
    • 编辑系统变量 Path,添加 %JAVA_HOME%\bin
    • 打开命令行,输入 java -version,如果显示版本号,则安装成功。

3 步骤 2:安装 Android Studio

Mars 使用 Android Studio 的工具链来构建 Android 应用。

  1. Android 官网 下载并安装 Android Studio。
  2. 安装时,确保勾选了 "Android SDK Platform-Tools""Android SDK Build-Tools"
  3. 打开 Android Studio,进入 Settings -> Appearance & Behavior -> System Settings -> Android SDK
  4. 记下 "Android SDK Location" 的路径,后面会用到。

4 步骤 3:安装 Mars 编辑器

  1. 从 Mars 的 GitHub Releases 页面 下载最新版的编辑器(通常是 mars-editor-win-x64.zip 或类似名称)。
  2. 解压压缩包到你想安装的目录(D:\Mars)。
  3. 进入 bin 目录,双击 MarsEditor.exe (Windows) 或 MarsEditor.app (macOS) 启动编辑器。

5 步骤 4:配置 Mars 的 Android SDK/NDK

这是最容易出错的一步,Mars 需要你告诉它 Android SDK 和 NDK 的位置。

  1. 在 Mars 编辑器中,打开 Settings (齿轮图标)。
  2. 找到 Engine -> Platforms -> Android 设置项。
  3. 设置 SDK Path
    • 点击 Browse,选择你在 步骤 2.3 中记下的 "Android SDK Location" 路径。
  4. 设置 NDK Path
    • 如果你的 Android Studio 中没有 NDK,请先在 Android Studio 的 SDK Manager 中下载一个 NDK 版本(推荐 r21e 或更高)。
    • 点击 Browse,选择你下载的 NDK 路径(D:\Android\Sdk\ndk\21.4.7075529)。
  5. 点击 ApplyOK 保存设置。

6 步骤 5:验证环境配置

  1. 在 Mars 编辑器中,点击顶部菜单的 Tools -> Build & Run -> Android
  2. 如果一切正常,编辑器会开始编译引擎和你的项目,如果编译成功,说明环境配置正确。

第三部分:第一个项目 - Hello World

1 创建新项目

  1. 启动 Mars 编辑器。
  2. 点击 File -> New Project
  3. 选择一个模板(Empty Project)。
  4. 给项目命名,选择一个存放路径,然后点击 Create

2 熟悉编辑器界面

  • Scene View (场景视图):3D 场景的预览窗口,你可以在这里移动相机、摆放物体。
  • Hierarchy (层级视图):显示当前场景中所有实体(Entity)的树状结构。
  • Inspector (属性视图):选中一个实体或资源后,这里会显示其所有可配置的属性和组件。
  • Project (项目视图):显示你的项目文件,包括脚本、场景、模型、贴图等资源。
  • Console (控制台):输出日志、错误和警告信息,是调试的好帮手。

3 创建一个简单的 3D 场景

  1. Hierarchy 视图中,右键点击,选择 Create -> Camera 创建一个相机。
  2. 再次右键点击,选择 Create -> Mesh -> Cube 创建一个立方体。
  3. Scene View 中,使用鼠标左键旋转视角,右键平移,滚轮缩放,调整相机位置,以便能看到立方体。

4 编写第一个脚本

  1. Project 视图中,右键点击,选择 Create -> Script -> Lua Script

  2. 给脚本命名,RotateCube

  3. 双击打开脚本,你会看到一些默认的模板代码。

  4. 修改代码,让立方体旋转:

    -- RotateCube.lua
    local RotateCube = {}
    function RotateCube:start()
        -- 获取这个实体上的 MeshRenderer 组件
        self.meshRenderer = self.entity:GetComponent("MeshRenderer")
    end
    function RotateCube:update()
        -- 在每一帧更新时,让立方体绕 Y 轴旋转
        self.entity.rotation = self.entity.rotation + Vector3(0, 0.5, 0)
    end
    return RotateCube
  5. 回到编辑器,在 Hierarchy 视图中选中 Cube 实体。

  6. Inspector 视图中,点击 Add Component,选择你刚刚创建的 RotateCube 脚本组件。

5 构建并运行到 Android 设备

  1. 连接设备:用 USB 线将你的 Android 手机连接到电脑,并开启“开发者选项”和“USB 调试”。
  2. 选择设备:在 Mars 编辑器顶部工具栏,确保目标设备是你的手机。
  3. 点击运行:点击工具栏上的播放按钮(一个绿色的三角形),选择 Android Device
  4. 编辑器会开始编译项目,并将 APK 安装到你的手机上,安装成功后,游戏会自动启动,你应该能看到一个正在旋转的立方体。

第四部分:核心概念与工作流

  • 场景:游戏的一个关卡或一个界面,是所有实体的容器。
  • 实体:场景中的基本对象,可以是玩家、敌人、相机、灯光等,实体本身像一个空容器。
  • 组件:附加到实体上,赋予实体特定功能的模块。
    • Transform:位置、旋转、缩放(每个实体都有)。
    • MeshRenderer:渲染 3D 模型。
    • Camera:定义视角。
    • Script:附加你编写的 Lua 脚本。
  • 脚本:使用 Lua 编写的逻辑代码,控制实体的行为,通过 start (初始化) 和 update (每帧更新) 等生命周期函数来组织逻辑。
  • 资源管理:将模型、贴图、音频等文件放在 Resources 文件夹下,然后在代码中通过 Resources.Load() 加载。

第五部分:Android 平台特有配置

1 包名与图标设置

  1. Project 视图中,找到 Settings/AndroidManifest.xml 文件。
  2. 修改 package 属性来设置你的应用包名。
  3. Project 视图中,找到 Assets/Icons 文件夹,放入不同尺寸的图标文件(如 icon_48x48.png, icon_128x128.png 等)。

2 权限管理

AndroidManifest.xml 中,添加 <uses-permission> 标签来申请权限,申请相机权限:

<uses-permission android:name="android.permission.CAMERA" />

3 屏幕方向与分辨率适配

AndroidManifest.xml 中,为 Activity 添加 screenOrientation 属性来锁定屏幕方向:

<activity android:name=".MainActivity"
          android:screenOrientation="landscape">
</activity>

Mars 引擎通常会自动处理分辨率适配,你可以在项目设置中调整缩放模式。

4 性能优化技巧

  • Draw Call 优化:尽量合并网格,使用纹理图集。
  • LOD (Level of Detail):为远处的模型使用低精度模型。
  • Occlusion Culling (遮挡剔除):关闭被不透明物体遮挡的物体的渲染。
  • 降低粒子特效数量
  • 使用 Profiler:Mars 编辑器内置性能分析工具,可以帮你找到性能瓶颈。

第六部分:发布与打包

  1. 点击顶部菜单 File -> Package Project -> Android
  2. 选择输出路径,选择打包格式:
    • APK:可直接安装的包,包含所有架构(如 arm64-v8a, armeabi-v7a),文件较大。
    • AAB (Android App Bundle):Google 推荐的格式,只包含设备需要的架构,体积更小,便于动态分发。
  3. 点击 Package 开始打包,完成后,你会在指定的输出路径找到打包好的文件。

签名配置

正式发布必须对 APK/AAB 进行签名,你需要一个签名密钥库。

  1. 在 Mars 编辑器的 Settings -> Platforms -> Android 中,配置你的 Keystore 文件路径、密码、别名等信息。
  2. 打包时,编辑器会自动使用这个密钥进行签名。

第七部分:学习资源与社区

1 官方文档

  • Mars GitHub 仓库https://github.com/miloyip/mars
    • 这是获取源码、阅读 Issue 和贡献代码的地方。
    • docs 文件夹下有详细的文档。

2 视频教程

  • Bilibili 上搜索 "Mars 教程" 或 "Mars引擎",有社区分享的入门和进阶视频。
  • 官方也可能在特定渠道发布视频教程。

3 社区论坛

  • GitHub Discussions:在 Mars 的 GitHub 仓库下,可以提问和参与讨论。
  • 米哈游开发者社区:可能会有相关板块。

4 示例项目

  • Mars 仓库中通常包含一些示例项目,是学习引擎 API 和工作流的最佳材料。
分享:
扫描分享到社交APP
上一篇
下一篇