IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Games104现代游戏引擎入门-lecture13游戏引擎的引擎工具链基础 -> 正文阅读

[游戏开发]Games104现代游戏引擎入门-lecture13游戏引擎的引擎工具链基础

在这里插入图片描述
在这里插入图片描述

1 什么是工具链

在这里插入图片描述

DCC: 这个就在ACP这一层。

在这里插入图片描述
工具链就是调和不同层次的人的关系,不同使用者的习惯。
在这里插入图片描述

2 工具链的GUI

在这里插入图片描述

1 Immediate Mode

在这里插入图片描述
在这里插入图片描述
拓展性不好!

2 Retained Mode

大部分人用的这个模式。
在这里插入图片描述
在这里插入图片描述

3 Design Pattern

1 MVC 模式

MVC:1987
数据之间的逻辑,
把数据流清晰化了,底层的model单向的到view,不能从view 到model。model的修改只能通过controller来做。将View和model分离开的架构。

在这里插入图片描述

2 MVP

所有的复杂度放到了Presenter,这个得听懂view的语言,有得听懂model的语言。

在这里插入图片描述

3 MVVM

目前更推荐这个模式。

View不需要写逻辑,不需要知道别人的东西。
viewmodel需要程序员去写,

model和view彻底分离开来了。

在这里插入图片描述
在这里插入图片描述

缺点:对环境的要求高,而且不好维护。
在这里插入图片描述

3 加载数据-序列化

序列化:把数据变成可以传递的二进制块。
反序列化:变成内存中可以处理的数据。
是network非常重要的一块。
在这里插入图片描述

在这里插入图片描述

text,容易懂,都可以打开。
.obj格式
在这里插入图片描述
XML:容器,废话太多。
Json:处理快,piccolo就是用的Json格式。

在这里插入图片描述
二进制是最快的,小很多。
在这里插入图片描述

资产引用:

所有的文件都关联在了一起。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

数据可以 继承。

在这里插入图片描述

4 如何加载数据

在这里插入图片描述

解析:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
高位存在哪里,前面还是后面。
在这里插入图片描述
向下兼容。版本的兼容,非常重要的。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
建议 的做法:

大量的模块维护,数据格式有上百种,如何保证工具的鲁棒。

在这里插入图片描述

5 如何让工具链更鲁棒

如下两个问题: undo$redo和崩溃的时候数据的保存。
在这里插入图片描述
在这里插入图片描述

Command系统:可以让用户所有的操作都可以原子化。

这个结构要早点做进去。后面加就会很麻烦。
在这里插入图片描述
在这里插入图片描述

UID是逐渐累积的,保证顺序
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6 如何制作工具链

在这里插入图片描述
在这里插入图片描述

找出共性。

在这里插入图片描述

1 Schema:工具链最核心

在这里插入图片描述
在这里插入图片描述
需要继承关系:像高级语言一样。
在这里插入图片描述

数据引用
在这里插入图片描述
两种方式:
一种是用xml,json等直接定义个shema。

另外一种是:定义了个c++类,
在这里插入图片描述

第一种方式非常好理解, 把数据实现和工程彻底剥离开了。但是她需要代码的生成器。
但是版本不兼容。
第二种方式:可以直接将方法包进去,不会出现版本不兼容。
在这里插入图片描述

一种是磁盘上的,
一种是运行中的,内存中是二进制的。
一种是给用户使用的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在代码中是基于弧度的。工具中要让用户理解。
在这里插入图片描述
在这里插入图片描述

7 所看即所得

在这里插入图片描述
在这里插入图片描述

独立的工具:
在这里插入图片描述
游戏中的工具:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

非常简单,edit数据和游戏的数据会混合。
在这里插入图片描述

8 插件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9 参考文献

在这里插入图片描述
在这里插入图片描述
软件架构

10 视频

https://www.bilibili.com/video/BV11T411G7qB/?spm_id_from=333.788&vd_source=5c9c50b5a07b211beafdf65d7cc7f8c8

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章           查看所有文章
加:2022-07-05 23:42:25  更:2022-07-05 23:42:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 10:48:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码