Dive into Source Control in Unreal Engine | Webinar

00:55:07
https://www.youtube.com/watch?v=faYmvw_Pd-A

摘要

TLDRQuesto seminario web condotto da Matthew Doyle esplora il controllo delle versioni e la gestione del codice sorgente in Unreal Engine. Inizia con nozioni fondamentali sul controllo delle versioni, evidenziando come esso possa migliorare il flusso di lavoro, specialmente in un contesto di équipe. Viene fatta una rassegna delle quattro principali soluzioni di controllo delle versioni: Git, Perforce, Subversion e Plastic SCM, ognuna delle quali viene discussa in termini di vantaggi e svantaggi. I partecipanti apprendono le impostazioni di base per l'utilizzo di questi strumenti in Unreal Engine, inclusi i passaggi per configurare un progetto e gestire i commit e le modifiche. Infine, vengono forniti collegamenti a ulteriori risorse e tutorial per approfondire l'argomento.

心得

  • 👋 Benvenuti al seminario web di Unreal Engine!
  • 📚 Importanza del controllo delle versioni per i progetti di squadra.
  • 🛠️ Panoramica delle quattro opzioni di controllo delle versioni: Git, Perforce, Subversion, Plastic SCM.
  • 🔄 Il vantaggio principale del controllo delle versioni è il ripristino delle versioni precedenti in caso di errore.
  • 📂 Utilizzo di Git per la gestione efficace dei file e delle modifiche.
  • ⚠️ Le limitazioni di Git: conflitti e mancanza di locking dei file.
  • 🏢 Perforce è adatto per grandi team e supporta il locking dei file.
  • 📉 Limitazioni di Subversion, come la gestione della storia e prestazioni.
  • 📈 Plastic SCM offre flessibilità con modelli centralizzati e distribuiti.
  • 🔗 Risorse aggiuntive per approfondire il controllo delle versioni in Unreal Engine.

时间轴

  • 00:00:00 - 00:05:00

    Matthew introduce il seminario web dedicato alla gestione del codice sorgente in Unreal Engine, evidenziando l'importanza del version control nei flussi di lavoro e le quattro opzioni disponibili per Unreal Engine: Git, Perforce, Subversion e Plastic SCM.

  • 00:05:00 - 00:10:00

    Viene spiegato cosa sia il version control, come consente di salvare diverse versioni di file e il suo uso in team rispetto all'uso individuale. Viene sottolineato che l'uso di strumenti professionali di gestione del codice sorgente è fondamentale in ambienti professionali.

  • 00:10:00 - 00:15:00

    Matthew illustra il flusso di lavoro di base per il version control, mostrando i passaggi per ottenere l'ultimo file dal server, effettuare modifiche e reinserire i file modificati in un repository centrale.

  • 00:15:00 - 00:20:00

    Si approfondiscono i vantaggi e gli svantaggi dell'uso di Git, evidenziando la velocità delle operazioni locali, i conflitti che possono sorgere con l'aumento del numero di utenti e la mancanza di lock sui file durante l'uso di file binari o asset in Unreal Engine.

  • 00:20:00 - 00:25:00

    Matthew filtra ulteriormente gli svantaggi di Git, ma menziona anche il supporto per file binari tramite Git LFS. Viene anche descritto il flusso di lavoro su GitHub, incluso come impostare un repository e collegare Unreal Engine ad esso.

  • 00:25:00 - 00:30:00

    Viene illustrato il processo di installazione e configurazione di Git, inclusa la creazione di un repository su GitHub e l'impostazione di nome utente e email per i commit.

  • 00:30:00 - 00:35:00

    Matthew spiega disponibilità e utilizzo di strumenti GUI come GitHub Desktop e altre applicazioni di gestione Git, facilitando le operazioni in locale e sul server.

  • 00:35:00 - 00:40:00

    Spiegazione completa su come configurare Unreal Engine e Git per il version control, facendo riferimento alla creazione di file, e generazione di commit, spingendo poi i file al repository remoto.

  • 00:40:00 - 00:45:00

    Matthew introduce ora Perforce, descrivendone i vantaggi come il locking dei file e la capacità di gestire il codice sorgente del motore, sottolineando che Perforce è uno standard del settore per le sue funzionalità di scalabilità in ambienti aziendali.

  • 00:45:00 - 00:55:07

    Si discute l'uso di Subversion, coprendo la sua configurazione, i vantaggi e gli svantaggi, e il suo flusso di lavoro simile a quello di Git e Perforce. Infine, Matthew presenta Plastic SCM, i suoi vantaggi e spiegando come caricare e gestire risorse nella piattaforma.

显示更多

思维导图

视频问答

  • Quali sono le opzioni di controllo delle versioni disponibili nell'Unreal Engine?

    Le opzioni disponibili sono: Git, Perforce, Subversion e Plastic SCM.

  • Qual è il vantaggio dell'utilizzo di un sistema di controllo delle versioni?

    Il vantaggio principale è la possibilità di ripristinare modifiche a versioni precedenti in caso di errori.

  • Cosa significa 'controllo delle versioni' per un progetto?

    Il controllo delle versioni è un metodo per gestire e tracciare le modifiche apportate ai file nel progetto.

  • Perché è consigliato utilizzare strumenti di controllo delle versioni in ambito professionale?

    Gli strumenti professionali aiutano a gestire le modifiche in modo collaborativo ed evitano conflitti che possono avvenire quando più persone lavorano sugli stessi file.

  • Cosa è Plastic SCM e quali sono i suoi vantaggi?

    Plastic SCM è uno strumento di gestione del codice sorgente flessibile, con un forte sistema di branching e merging, progettato per supportare sia flussi di lavoro distribuiti che centralizzati.

查看更多视频摘要

即时访问由人工智能支持的免费 YouTube 视频摘要!
字幕
zh-Hans
自动滚动:
  • 00:00:10
    >>Matthew:大家好
  • 00:00:11
    欢迎参加本次虚幻引擎网络研讨会
  • 00:00:15
    我们将对虚幻引擎中的源码管理
  • 00:00:17
    即版本管理进行讲解
  • 00:00:20
    我是今天的主持人Matthew Doyle
  • 00:00:24
    我们今天首先会了解
  • 00:00:25
    版本控制的说明简介
  • 00:00:29
    同时学习它对工作流的帮助
  • 00:00:31
    之后我们会了解虚幻引擎中
  • 00:00:33
    可用的四种选项
  • 00:00:35
    并学习Perforce Git Subversion和Plastic SCM等内容
  • 00:00:41
    我们将对各选项的利弊进行讲解
  • 00:00:44
    同时还会学习虚幻编辑器中的
  • 00:00:46
    基础设置和用法
  • 00:00:48
    版本控制即源码控制
  • 00:00:51
    是一种保存不同文件版本的重要方式
  • 00:00:54
    事实上在首次创建项目时
  • 00:00:56
    您就能保存文件的版本
  • 00:00:59
    甚至还能向版本控制添加新文件
  • 00:01:01
    或是移除版本控制中的文件
  • 00:01:03
    虽然可以自行使用版本控制
  • 00:01:06
    但它在团队协作中的效果更佳
  • 00:01:09
    使用类似Dropbox的服务
  • 00:01:11
    或直接通过本地硬盘
  • 00:01:14
    来保存不同项目的版本便是最简单的
  • 00:01:17
    版本控制形式
  • 00:01:18
    但此类选项不够强大 可扩展性也不足
  • 00:01:22
    在专业环境中
  • 00:01:23
    您需要使用专业源码控制管理程序
  • 00:01:27
    即SCM工具
  • 00:01:29
    利用专业版本控制工具
  • 00:01:30
    您可以追踪文件的修改
  • 00:01:33
    或是保留此类修改的历史记录
  • 00:01:35
    此类修改将包含
  • 00:01:37
    文件修改人 修改内容
  • 00:01:40
    修改时间以及修改原因
  • 00:01:44
    总的来说 其工作原理便是
  • 00:01:47
    将您在本地计算机中做出的修改
  • 00:01:50
    合并到总数据源中
  • 00:01:52
    此操作可能涉及使用包含所有修改
  • 00:01:56
    以及项目当前状态的
  • 00:01:59
    远程元库
  • 00:02:00
    使用源码控制(即版本控制)的好处
  • 00:02:03
    在于当操作出错时
  • 00:02:05
    可以将修改还原到
  • 00:02:07
    之前任意版本
  • 00:02:09
    您可以选择还原整个项目
  • 00:02:11
    也可以只还原特定文件
  • 00:02:15
    虚幻引擎中提供了版本控制的
  • 00:02:18
    四种可用选项
  • 00:02:20
    分别为Git Perforce Subversion
  • 00:02:24
    以及Plastic SCM
  • 00:02:25
    Plastic SCM是最新的附加项
  • 00:02:28
    那么 现在展示的便是今天将学习的
  • 00:02:30
    基础工作流
  • 00:02:31
    注意 您可以选择使用分支功能
  • 00:02:35
    但今天时间有限 先暂时跳过此功能
  • 00:02:38
    我们只会展示最为基础的工作流
  • 00:02:41
    大家可以看到
  • 00:02:43
    我在这里使用了小图标来代表不同的
  • 00:02:45
    源码控制管理工具
  • 00:02:46
    而这些图标前方对应的则是各个步骤
  • 00:02:49
    那么首先 通常您需要做的是
  • 00:02:51
    从服务器元库 或从远程元库中
  • 00:02:55
    获取最新文件
  • 00:02:57
    利用此操作 您便可以获取其他用户
  • 00:02:59
    完成的修改或工作
  • 00:03:00
    该步骤在所有源码控制工具中
  • 00:03:02
    都基本相同
  • 00:03:03
    之后 您需要迁出
  • 00:03:05
    要使用的文件
  • 00:03:07
    除使用Git大文件系统外
  • 00:03:09
    通常不能利用get命令
  • 00:03:13
    进行迁出(即锁定文件)操作
  • 00:03:16
    利用get命令的大文件系统版本
  • 00:03:18
    即可迁出如图像和Uasset文件等
  • 00:03:21
    二进制文件
  • 00:03:23
    那么进行到此步时 您便需要开始工作了
  • 00:03:25
    您需要对正在工作的项目
  • 00:03:26
    进行修改等各类操作
  • 00:03:28
    例如添加新文件等
  • 00:03:30
    此时 需要完成的最后一步
  • 00:03:32
    通常是将文件重新迁入服务器
  • 00:03:34
    此步骤将涉及使用除Git之外的
  • 00:03:37
    所有SCM工具
  • 00:03:39
    Git则需要额外几个步骤
  • 00:03:41
    那么使用Git将文件迁回服务器的
  • 00:03:43
    首个步骤便是暂存修改
  • 00:03:45
    和额外文件
  • 00:03:47
    Git本质上是一个暂存区域
  • 00:03:50
    您可以在继续工作和
  • 00:03:52
    进行其他修改等操作时
  • 00:03:54
    放入并暂时保存所有修改
  • 00:03:57
    之后您可以选择
  • 00:03:58
    实际需要提交的暂存文件
  • 00:04:01
    完成操作后这些暂存文件会被
  • 00:04:04
    提交到存储器的本地副本中
  • 00:04:06
    而最后 当您准备将所有文件
  • 00:04:08
    发送回服务器时 需将本地存储器分支
  • 00:04:12
    推回Git中的服务器
  • 00:04:13
    好了
  • 00:04:14
    以上便是基础工作流 正如我之前所说
  • 00:04:16
    您可以选择使用分支
  • 00:04:17
    但今天我们还不会对此详细讲解
  • 00:04:20
    那么
  • 00:04:21
    让我们继续吧
  • 00:04:22
    我们现在将了解在专业类别中
  • 00:04:24
    使用Git的利弊 Git实际上是一种分散式
  • 00:04:29
    或分布式版本控制系统
  • 00:04:31
    意味着所有用户将需要下载远程元库的本地副本
  • 00:04:36
    或是创建对应的本地元库
  • 00:04:39
    因此它的速度极快
  • 00:04:41
    用户的所有操作均在本地完成
  • 00:04:44
    将文件添加到元库和提交
  • 00:04:47
    此类文件等操作
  • 00:04:48
    均在对应的本地元库中完成
  • 00:04:52
    但此操作也有一项缺点
  • 00:04:55
    由于每位用户各自拥有存储器本地副本
  • 00:04:58
    随着团队规模的不断扩大
  • 00:05:00
    在将所有修改合并到远程
  • 00:05:02
    或总元库时可能会发生
  • 00:05:06
    冲突问题
  • 00:05:08
    使用Git的另一严重缺点是
  • 00:05:10
    您无法进行任何文件锁定
  • 00:05:13
    此问题会严重阻碍
  • 00:05:15
    对二进制资产、Uasset、纹理等文件的
  • 00:05:20
    锁定
  • 00:05:22
    但随着Git LFS 2.0的推出
  • 00:05:24
    该问题已经得到解决
  • 00:05:26
    您现在可锁定此类二进制资产
  • 00:05:29
    对它进行使用时其他用户
  • 00:05:31
    将无法使用
  • 00:05:32
    注意 在虚幻引擎的编辑器中
  • 00:05:34
    无法进行此操作
  • 00:05:37
    您必须在编辑器外
  • 00:05:39
    使用可用的Git工具进行操作
  • 00:05:41
    原因在于 在虚幻编辑器中
  • 00:05:44
    使用Git元库时 您所利用的是本地副本
  • 00:05:47
    而非远程元库
  • 00:05:48
    利用虚幻引擎中的LFS(即大文件系统)
  • 00:05:51
    Git可支持二进制文件
  • 00:05:54
    但与Perforce或Plastic SCM等竞争对手不同的是
  • 00:05:57
    我们仍需对大文件系统支持功能
  • 00:06:01
    进行微调
  • 00:06:02
    但好在Git是开源软件并且可免费使用
  • 00:06:06
    若未自行设置Git服务器
  • 00:06:09
    则需要购买线上服务器
  • 00:06:12
    但同时您也可以
  • 00:06:13
    利用如GitHub等网站 开发团队
  • 00:06:16
    可在之上免费使用私有和公开元库
  • 00:06:20
    虽然自行设置
  • 00:06:21
    Git服务器并不复杂
  • 00:06:23
    但对于非工程师用户而言
  • 00:06:26
    将Git应用到客户端和服务器仍很困难
  • 00:06:29
    原因在于Git的多数工作
  • 00:06:31
    均通过命令提示符(即终端)完成
  • 00:06:33
    但使用Git时的工作流却十分灵活
  • 00:06:36
    您可以通过多种方式
  • 00:06:39
    来管理版本控制流程
  • 00:06:41
    该流程利用了强大的分支和合并功能
  • 00:06:45
    同时还能在向分支提交
  • 00:06:48
    已添加或修改的文件之前
  • 00:06:51
    进行暂存
  • 00:06:52
    那么使用Git时的第一步
  • 00:06:54
    便需要访问Git服务器
  • 00:06:56
    我们将以GitHub为例
  • 00:06:59
    首先创建一个GitHub帐号
  • 00:07:01
    之后在GitHub页面中
  • 00:07:03
    点击新建(New)按钮
  • 00:07:05
    即可新建元库
  • 00:07:06
    接着我们需要设置元库名称
  • 00:07:09
    在本范例中我们将其命名为Webinar_sourcecontrol
  • 00:07:15
    还可以按需设置描述
  • 00:07:17
    此并非必须项
  • 00:07:18
    接着需将它设为公开或私有
  • 00:07:21
    公开即意味着所有人都可以访问元库
  • 00:07:25
    但您仍拥有对提交修改人的控制权
  • 00:07:28
    而私有则表示
  • 00:07:29
    您可以控制元库的访问权
  • 00:07:33
    和提交权
  • 00:07:34
    您可以提供初始README文件
  • 00:07:36
    此处我们暂时留空
  • 00:07:38
    同时我们还能添加Git忽略文件
  • 00:07:39
    如需忽略特定文件
  • 00:07:41
    我们可以在此直接勾选
  • 00:07:44
    无需迁入元库的文件
  • 00:07:46
    此处我们暂不勾选
  • 00:07:48
    我们将在项目中生成Git忽略文件
  • 00:07:51
    当然我们还可以指定
  • 00:07:53
    要用于项目的许可证
  • 00:07:55
    我们可以按需将它放入项目
  • 00:07:57
    但我们也暂不勾选此处
  • 00:07:59
    而现在我们只需点击此处的
  • 00:08:01
    创建元库(Create Repository)按钮即可完成
  • 00:08:03
    好了
  • 00:08:03
    在创建元库后
  • 00:08:05
    您将进入此页面
  • 00:08:06
    在该页面中首先需注意的
  • 00:08:09
    便是用于访问元库的
  • 00:08:12
    访问地址
  • 00:08:13
    在我们设置用于源码控制的项目时
  • 00:08:16
    需使用该地址在虚幻引擎中进行访问
  • 00:08:19
    因此务必保存一个该地址的副本
  • 00:08:21
    好了 远程服务器上的元库已经设置完毕
  • 00:08:24
    我们可以继续下一操作了
  • 00:08:26
    要将Git下载并安装到电脑上
  • 00:08:29
    需访问Git-SCM.com/downloads
  • 00:08:32
    然后在页面中选择所使用的系统
  • 00:08:34
    我使用的是Windows系统
  • 00:08:36
    那么就下载Windows版本
  • 00:08:38
    如要使用GitHub
  • 00:08:40
    建议下载GitHub桌面客户端
  • 00:08:42
    可在desktop.github.com中下载
  • 00:08:46
    利用GitHub桌面客户端
  • 00:08:48
    您可以使用GUI在本地元库
  • 00:08:51
    和GitHub元库间来回发送文件
  • 00:08:54
    从而简化操作过程
  • 00:08:57
    当然还有其他一些方法可供选择
  • 00:09:00
    比较流行的一类是Git Cracking
  • 00:09:03
    您可以随意尝试这些不同方法
  • 00:09:05
    有些收费
  • 00:09:06
    有些免费
  • 00:09:07
    有些会根据您的团队规模
  • 00:09:09
    提供收费和免费版本
  • 00:09:11
    而GitHub桌面客户端则完全免费且简单易用
  • 00:09:13
    那么我们就来试试看
  • 00:09:15
    将Git下载并安装到电脑上后
  • 00:09:17
    首先要进行的操作是设置用于标记
  • 00:09:21
    元库迁入文件和提交文件的
  • 00:09:24
    用户名和邮箱地址
  • 00:09:26
    以便大家查看迁入人
  • 00:09:28
    我们需要开启命令提示符来完成该操作
  • 00:09:32
    现在输入“Gitconfig--global user.name”
  • 00:09:36
    并在之后的引号中输入全名
  • 00:09:40
    也可使用其他名称
  • 00:09:42
    接着输入“Gitconfig--global user.email”来设置邮箱
  • 00:09:44
    同样在后方的引号中输入
  • 00:09:49
    要使用的邮箱地址
  • 00:09:52
    现在回到虚幻引擎中
  • 00:09:54
    在我们的项目中点击上方的
  • 00:09:57
    源码控制(Source Control)
  • 00:09:58
    然后点击连接源码控制(Connect to Source Control)
  • 00:10:01
    在登录界面的提供方(Provider)下拉列表中
  • 00:10:04
    我们需要选择Git
  • 00:10:07
    在接下来的源码控制登录窗口中
  • 00:10:09
    首个选项为Git路径
  • 00:10:12
    此会直接指向您的Git安装目录
  • 00:10:14
    无需进行修改
  • 00:10:16
    下一个选项为元库根目录
  • 00:10:18
    这便是我们的本地元库
  • 00:10:20
    它应与项目文件夹的位置相同
  • 00:10:24
    接着便是用户名和邮箱
  • 00:10:27
    即之前我们使用终端在Git中设置的内容
  • 00:10:31
    请注意 此处显示的
  • 00:10:33
    用户名和邮箱并非
  • 00:10:35
    远程元库的登录信息
  • 00:10:38
    其只是在您向元库提交修改时
  • 00:10:42
    用于向他人公开显示的
  • 00:10:44
    修改人相关信息
  • 00:10:45
    接下来是远程服务器
  • 00:10:48
    即原址的URL
  • 00:10:49
    将它从GitHub粘贴到此处
  • 00:10:52
    我们需要使用到Git忽略文件
  • 00:10:54
    那么就保持勾选
  • 00:10:55
    如需要基本README文件
  • 00:10:57
    可在此设置
  • 00:10:58
    我来进行示范
  • 00:10:59
    我们把这句改为Source Control Webinar
  • 00:11:06
    同时启用添加Git属性文件功能
  • 00:11:09
    利用该功能 我们可以
  • 00:11:11
    使用Git的大文件系统 以便上传
  • 00:11:14
    US头文件等图像和二进制文件
  • 00:11:17
    接着我们可以输入
  • 00:11:19
    初始上传的初始注释
  • 00:11:21
    我暂时将它留为默认的initial commit
  • 00:11:24
    之后我们需要使用Git初始化项目
  • 00:11:27
    我们可以在下方看到
  • 00:11:29
    文件正在被添加到本地元库
  • 00:11:31
    让我们等待其完成
  • 00:11:33
    好了
  • 00:11:34
    在完成添加之后可点击接受设置
  • 00:11:37
    (Accept Settings)按钮
  • 00:11:38
    点击后可以看到上方的源码控制(Source Control)按钮中
  • 00:11:40
    出现了带绿色箭头的小图标
  • 00:11:43
    这表示我们当前正在使用源码控制
  • 00:11:47
    现在我们来快速浏览一下项目结构
  • 00:11:50
    在Unreal Project文件夹中 我们可以找到
  • 00:11:53
    一个.Git文件夹 一个.Git属性文件
  • 00:11:56
    和一个.Git忽略文件
  • 00:11:57
    Git文件夹中将包含用于
  • 00:12:00
    保存分支和提交项的所有内容
  • 00:12:03
    以及做出的修改和进行中的项目
  • 00:12:05
    切勿随意变更此处的内容
  • 00:12:08
    打开Git属性文件后
  • 00:12:10
    我们可以在此处指定
  • 00:12:13
    需要设置哪些用于大文件系统的文件
  • 00:12:17
    和文件夹
  • 00:12:17
    在该范例中 Content文件夹里的
  • 00:12:19
    所有内容都将用于LFS系统
  • 00:12:23
    这其中便包括了所有Uasset文件
  • 00:12:26
    及图像等内容
  • 00:12:28
    打开Git忽略文件
  • 00:12:30
    可在此处告知Git迁入修改的时间
  • 00:12:32
    提交到元库的时间以及要忽略的
  • 00:12:35
    文件和文件夹
  • 00:12:37
    那么头几项为文件夹
  • 00:12:38
    有binaries和derived data cache以及intermediate与saved
  • 00:12:42
    这些文件都不需要迁入到元库之中
  • 00:12:45
    至于这些则是文件类型
  • 00:12:48
    所有以这些文件类型作为后缀的项目
  • 00:12:52
    均无需进行迁入
  • 00:12:54
    如果要迁入相关类型的项目
  • 00:12:56
    则需将它们从这个文件中删除
  • 00:12:58
    当然 您还可以将其他文件类型和文件夹
  • 00:13:01
    添加到此处
  • 00:13:02
    那么现在呢 我们需要将整个项目
  • 00:13:06
    发送到远程元库
  • 00:13:08
    我们可以在此开始操作
  • 00:13:10
    并在项目中添加文件 做出修改
  • 00:13:14
    或是进行调整
  • 00:13:15
    但我们在此进行的操作
  • 00:13:17
    都只会迁入到本地元库
  • 00:13:19
    远程元库将作为我们的总数据源
  • 00:13:23
    其会固定包含我们项目的版本
  • 00:13:25
    所有人都能对它进行访问
  • 00:13:27
    使用Git Bash是将项目发送到
  • 00:13:29
    远程元库最为快捷的方式
  • 00:13:31
    它本质上是一类终端(即命令提示符)
  • 00:13:34
    在项目文件夹中点击右键
  • 00:13:36
    只要电脑中装有Git
  • 00:13:39
    则能在该菜单中选择Git Bash
  • 00:13:41
    点击后会弹出Git Bash窗口
  • 00:13:43
    我们现在一起来看看可以在此处
  • 00:13:45
    输入的Git命令吧
  • 00:13:46
    首先 如果输入git status
  • 00:13:49
    此命令将会告知我们
  • 00:13:51
    本地元库的当前状态
  • 00:13:53
    正如大家所见 这里有一项未追踪文件
  • 00:13:57
    这是我们的缩略图data prep PMG
  • 00:14:00
    如果要将它添加到暂存区域
  • 00:14:04
    只需先输入git add 然后再输入文件名
  • 00:14:08
    如果要添加所有需追踪的文件
  • 00:14:10
    直接输入英文句号即可
  • 00:14:12
    现在再查看一遍状态
  • 00:14:15
    可以发现已经没有未追踪文件了
  • 00:14:17
    但仍有一些文件需要提交
  • 00:14:20
    在该范例中则是缩略图
  • 00:14:22
    要将文件提交到本地元库中——
  • 00:14:24
    请注意 我们并非要发送到远程元库
  • 00:14:26
    而是将它发送到本地元库
  • 00:14:28
    那么我们需输入git commit
  • 00:14:30
    然后使用m切换发送注释
  • 00:14:33
    注释的话就写initial
  • 00:14:36
    commit 然后点击回车
  • 00:14:41
    可以看到 提交已成功完成
  • 00:14:43
    现在查看status的话
  • 00:14:45
    可发现已没有需提交的文件了
  • 00:14:48
    那么 这些便是我们在使用
  • 00:14:50
    Git命令提示符时可用的一些基本选项
  • 00:14:53
    但我们实际想要进行的操作是
  • 00:14:54
    将本地元库发送到正在使用的
  • 00:14:58
    服务器上的元库 本范例中的服务器
  • 00:15:01
    为GitHub
  • 00:15:02
    如要查看服务器的位置
  • 00:15:05
    请记住 只要输入git remote -v即可
  • 00:15:11
    此处可以看到 我们要推向的原址
  • 00:15:15
    位于GitHub
  • 00:15:18
    那么 现在输入git push -u
  • 00:15:22
    我们要推向位于GitHub的原址
  • 00:15:26
    而总分支则是推动的对象
  • 00:15:30
    那么现在我们只需等待
  • 00:15:32
    它将文件上传完毕即可
  • 00:15:34
    根据项目的大小 此过程花费的
  • 00:15:36
    时间将不同
  • 00:15:39
    好了
  • 00:15:39
    上传完毕后应该不会弹出错误消息
  • 00:15:42
    此处的文本将告知我们
  • 00:15:46
    本地元库已经被推到远程元库
  • 00:15:49
    也就是本范例中使用的GitHub
  • 00:15:51
    返回我们在GitHub的元库中后
  • 00:15:54
    可以清楚看到 项目结构
  • 00:15:56
    已被成功上传 其中包括config content和source目录
  • 00:15:59
    以及git属性文件
  • 00:16:02
    git忽略文件 项目文件 缩略图
  • 00:16:06
    与README文件 我们可以看到
  • 00:16:09
    README中含有我们首次提交时
  • 00:16:12
    在虚幻引擎中的修改
  • 00:16:13
    那么现在呢
  • 00:16:15
    我不会对GitHub的使用方法进行详述
  • 00:16:18
    如果各位想了解更多使用方法
  • 00:16:21
    请自行参阅GitHub文档
  • 00:16:23
    现在来看看将文件发送到GitHub的第二种方式吧
  • 00:16:29
    另一种将文件发送远程元库的方式
  • 00:16:33
    则是使用Git的GUI
  • 00:16:35
    GUI的类型诸多 包括Tortoise Git GUI
  • 00:16:39
    以及Source Tree
  • 00:16:43
    但在本范例中 我们将使用GitHub
  • 00:16:46
    桌面客户端
  • 00:16:47
    其使用方法十分简单
  • 00:16:49
    首先需要添加我们的元库
  • 00:16:51
    那么在左上方 点击添加(Add)
  • 00:16:53
    创建(Create)或复制(Clone)按钮
  • 00:16:56
    这里有三个选项
  • 00:16:57
    我们可以选择复制元库
  • 00:16:59
    点击后可以从GitHub元库列表中
  • 00:17:04
    复制元库
  • 00:17:05
    我们也能新建元库
  • 00:17:08
    最后则可以添加当前的本地元库
  • 00:17:11
    而这也是我们将要使用的功能
  • 00:17:12
    我们先点击浏览(Browse) 然后浏览到
  • 00:17:15
    本地元库的目录处
  • 00:17:17
    接着只需点击添加元库(Add Repository)按钮即可
  • 00:17:21
    设置完成后 我们可以看到
  • 00:17:22
    这是我们在虚幻编辑器里的Git中
  • 00:17:25
    设置的初始上传项
  • 00:17:29
    以及将被上传到远程元库的
  • 00:17:32
    全部277个文件
  • 00:17:34
    但在进行操作前 我们先点击
  • 00:17:37
    右上角的设置 然后选择元库设置(Repository Settings)
  • 00:17:40
    我们来核查一下这里的信息
  • 00:17:42
    那么 这里有Git忽略文件
  • 00:17:44
    它与项目文件夹中的一样
  • 00:17:46
    这里是远程元库地址
  • 00:17:48
    我已经设置了第二个GitHub元库
  • 00:17:51
    而我们的Git LFS文件也已包含在此
  • 00:17:55
    那么我们现在已经准备好
  • 00:17:57
    将此推到GitHub元库了
  • 00:18:00
    要进行此操作需点击发布(Publish)按钮
  • 00:18:02
    既然我们已经完成设置
  • 00:18:05
    那么就来看看 使用虚幻编辑器中的
  • 00:18:07
    Git进行修改并将之提交到GitHub的
  • 00:18:11
    方法吧
  • 00:18:12
    首先我要对贴图中的部分资产
  • 00:18:15
    进行快速修改
  • 00:18:16
    选中这些渲染助手
  • 00:18:18
    将它修改为可移动(Movable)
  • 00:18:20
    此操作需要对贴图进行保存
  • 00:18:22
    那我们就点击保存
  • 00:18:24
    完成此操作后 可以看到文件
  • 00:18:27
    已被迁出
  • 00:18:28
    这个红色小勾即代表迁出
  • 00:18:30
    但注意 在使用Git时
  • 00:18:31
    它本身并未提供迁出选项
  • 00:18:34
    因此这并不代表文件已被锁定
  • 00:18:37
    只是表示已经可以
  • 00:18:39
    将它添加到元库而已
  • 00:18:42
    现在点击这里的Datasmith文件夹
  • 00:18:46
    再选择材质(Materials) 我要使用这个灯座文件
  • 00:18:50
    点击打开这个文件
  • 00:18:51
    我需要对它进行设置 以便使用材质实例
  • 00:18:55
    那么我现在要添加利用底色
  • 00:18:58
    来增量该纹理贴图的功能
  • 00:19:01
    在这添加一个增量注释
  • 00:19:03
    然后再添加一个三向量
  • 00:19:05
    将它连入B槽位
  • 00:19:08
    现在将默认值设为白色
  • 00:19:11
    然后将它连入底色
  • 00:19:14
    然后将此转换为参数
  • 00:19:16
    并命名为Base Color
  • 00:19:19
    好的 现在保存
  • 00:19:21
    可以看到在我保存后
  • 00:19:23
    该文件也被迁出了
  • 00:19:26
    同样地 对它点击右键
  • 00:19:28
    并新建材质实例 将它命名为Mi_lampbase
  • 00:19:33
    这个新材质实例上有个黄色问号
  • 00:19:36
    其表示该材质并未保存到
  • 00:19:39
    我们的元库中
  • 00:19:41
    那我们现在就将它保存本地元库吧
  • 00:19:43
    点击右键 选择源码控制(Source Control)
  • 00:19:46
    并将它标记添加
  • 00:19:48
    现在这里的红色加号表示
  • 00:19:50
    它已标记添加
  • 00:19:51
    换句话说就是它已经被放入
  • 00:19:53
    本地元库的暂存区域
  • 00:19:55
    现在只需提交即可
  • 00:19:57
    我可以对这些资产点击右键
  • 00:20:00
    前往源码管理并选择迁入
  • 00:20:03
    也可以点击顶部的(Source Control)源码管理按钮
  • 00:20:06
    选择将全部文件提交到源码控制
  • 00:20:09
    此操作会开启提交文件窗口
  • 00:20:11
    由于我同时选择了三个文件
  • 00:20:13
    我需要同时将它们全部迁入
  • 00:20:16
    那么针对修改列表 我们进行了贴图微调(minor map tweak)
  • 00:20:20
    还调整了材质(adjusted material)并创建了实例(created instance)
  • 00:20:23
    现在点击提交(Submit)按钮
  • 00:20:25
    可以看到我们的修改已被提交
  • 00:20:28
    当然 此类提交仅在
  • 00:20:30
    本地元库中操作 即项目的本地副本
  • 00:20:35
    因此为了将它发送到GitHub的服务器
  • 00:20:38
    也就是我们总数据源的所在处
  • 00:20:41
    我们现在需要将该分支推向服务器
  • 00:20:45
    注意 推动的方法共有两种
  • 00:20:47
    首先是在项目文件夹中打开Git Bash
  • 00:20:51
    然后输入git push origin master
  • 00:20:55
    此命令会将我们正在使用的
  • 00:20:56
    分支推向原始数据源
  • 00:20:59
    即GitHub项目
  • 00:21:01
    此外 我们还可以使用GitHub的GUI程序
  • 00:21:05
    这里可以看到新提交项已经准备好了
  • 00:21:09
    那我们就继续 点击同步(Sync)按钮
  • 00:21:11
    现在回到我们在GitHub的元库
  • 00:21:14
    可以看到这里有三项提交
  • 00:21:15
    点击此处
  • 00:21:17
    这里可以看到贴图调整的新提交项
  • 00:21:19
    那么点击此处
  • 00:21:22
    其将显示之前已完成的操作
  • 00:21:24
    我们新建了MI_LampBase.uasset文件
  • 00:21:27
    修改了灯座材质
  • 00:21:30
    还对贴图进行了微调
  • 00:21:32
    那么以上便是在虚幻引擎中
  • 00:21:35
    使用Git的基本设置和操作
  • 00:21:37
    在我们继续演示在此Git项目中
  • 00:21:42
    迁出和推动不同文件类型之前
  • 00:21:45
    我们先来看看Perforce
  • 00:21:47
    完成设置后需要多花些时间
  • 00:21:49
    来讲解此过程
  • 00:21:50
    我们还会学习提交C++的方法
  • 00:21:54
    同时在讲解Perforce时 各位可了解使用蓝图
  • 00:21:57
    和进行对比的方法
  • 00:21:59
    那么先来看看使用Perforce时的
  • 00:22:01
    一些利弊吧
  • 00:22:02
    请注意 此处显示的基本为高层面的
  • 00:22:05
    利弊
  • 00:22:06
    每位用户对于特定工具的喜欢
  • 00:22:09
    和厌恶理由各不相同
  • 00:22:11
    但这些是我看来最为突出的点
  • 00:22:14
    首先对于Perforce而言
  • 00:22:17
    优点包括能够锁定或迁出文件
  • 00:22:19
    这点是使用Git时无法完成的
  • 00:22:23
    该操作能够避免产生冲突
  • 00:22:26
    那么在迁出文件后
  • 00:22:27
    其他用户就能知道有人正在
  • 00:22:30
    使用该文件
  • 00:22:31
    当然 这并不意味着文件迁出后
  • 00:22:33
    其他用户无法在自己的电脑上
  • 00:22:35
    修改版本
  • 00:22:37
    其仅代表他们无法将修改迁回
  • 00:22:39
    Perforce 因为他人目前正在
  • 00:22:42
    使用该文件
  • 00:22:43
    其表现为一个小旗帜
  • 00:22:45
    告知他人文件正被使用
  • 00:22:47
    Perforce的另一优点在于
  • 00:22:48
    您可以利用它来包含引擎源
  • 00:22:52
    如果需要更改引擎源代码
  • 00:22:54
    则可使用Perforce进行操作
  • 00:22:57
    Perforce拥有非常便于使用的
  • 00:22:59
    可视化GUI和部分工具
  • 00:23:01
    进行文件对比等操作时将更将方便
  • 00:23:04
    Perforce被视为工业标准
  • 00:23:06
    它的扩展性很强
  • 00:23:08
    在企业领域适用性很高
  • 00:23:11
    它对图像和Uasset等大文件的处理
  • 00:23:14
    也非常不错
  • 00:23:16
    小型开发团队能免费使用
  • 00:23:17
    Perforce可向最多五位用户提供五个工作站
  • 00:23:20
    但超过此规模后 它将会变得较为昂贵
  • 00:23:24
    特别是在运行服务器的情况下
  • 00:23:26
    服务器的费用极高
  • 00:23:28
    有人认为Perforce实际上是
  • 00:23:30
    一种专用工具
  • 00:23:32
    它不同于开源的Git
  • 00:23:34
    由于Perforce针对项目总数据源
  • 00:23:37
    使用的是中央服务器
  • 00:23:39
    它在使用时速度可能会很慢
  • 00:23:41
    但在Git的程序中 所有修改和
  • 00:23:44
    所有提交到本地元库的操作
  • 00:23:46
    均在本地快速完成
  • 00:23:48
    而在Perforce中
  • 00:23:50
    使用文件时需将每项文件
  • 00:23:53
    发送回总服务器
  • 00:23:55
    但总的来说 Perforce的效能普遍较高
  • 00:23:58
    Perforce也拥有分支系统
  • 00:24:00
    好像叫做流送(streaming)
  • 00:24:02
    但跟Git中的分支系统
  • 00:24:04
    相比要弱上不少
  • 00:24:07
    那么 现在让我们进入虚幻引擎
  • 00:24:08
    一起来看看Perforce的使用方法吧
  • 00:24:10
    当您开起Perforce时
  • 00:24:12
    程序会默认弹出
  • 00:24:14
    连接对话窗口
  • 00:24:15
    您需要在该窗口中输入服务器地址
  • 00:24:18
    以及服务器上的用户名
  • 00:24:20
    还有您的工作区
  • 00:24:22
    Perforce将工作区定义为电脑上的本地空间
  • 00:24:27
    从服务器中下载的元库文件将被
  • 00:24:31
    保存在其中
  • 00:24:33
    这里也是您进行所有操作
  • 00:24:35
    并将修改提交回服务器的地方
  • 00:24:39
    当然 在首次使用Perforce时
  • 00:24:42
    还不会有工作区
  • 00:24:43
    因此需要点击新建(New)按钮来新建一个
  • 00:24:46
    在正确填入所有相关信息后
  • 00:24:48
    点击OK按钮即可开始使用
  • 00:24:50
    Perforce可视程序(即p4v)开启后
  • 00:24:55
    可以在其中找到depot和工作区(workspace)选项卡
  • 00:24:58
    Depot选项卡是远程服务器上
  • 00:25:02
    保存的文件
  • 00:25:04
    而工作区选项卡则是本地电脑上的所有文件
  • 00:25:09
    如果想要下载depot中的全部文件
  • 00:25:12
    只需点击depot选项卡
  • 00:25:14
    选择想要下载的文件夹
  • 00:25:18
    再点击获取最新(Get laest)即可
  • 00:25:19
    此操作会下载该文件夹中的全部文件
  • 00:25:22
    那么在开始将文件从工作区
  • 00:25:25
    发送到服务器之前
  • 00:25:27
    我们需要将虚幻项目复制到工作区中
  • 00:25:31
    一起来看看操作方法吧
  • 00:25:33
    为了使用Perforce 我们首先
  • 00:25:36
    需要进行的就是确保
  • 00:25:39
    正在使用的项目位于
  • 00:25:41
    我们的工作区之中
  • 00:25:44
    我现在已经进入workspace文件夹
  • 00:25:46
    接着继续点击打开文件夹
  • 00:25:48
    直到进入collaboration文件夹
  • 00:25:51
    然后将项目粘贴到此处
  • 00:25:55
    现在项目已经位于工作区中
  • 00:25:57
    我已能够在Perforce中将它发送回服务器
  • 00:26:00
    现在让我们开启项目
  • 00:26:02
    开启后请点击源码管理
  • 00:26:05
    再点击连接到源码管理
  • 00:26:07
    在提供方中选择Perforce
  • 00:26:09
    那么 第二个域中填写的是服务器地址
  • 00:26:12
    包括端口号
  • 00:26:13
    下方的则是用户名
  • 00:26:16
    这项是我们的工作区
  • 00:26:18
    如果不清楚自己的工作区
  • 00:26:20
    只要该文件位于工作区内
  • 00:26:24
    点击工作区下拉列表
  • 00:26:26
    就能自动找到工作区
  • 00:26:29
    接着我们点击接受设置
  • 00:26:31
    可以看到我们已经成功连接到了
  • 00:26:33
    源码管理
  • 00:26:34
    大家一定注意到了 由于我们
  • 00:26:36
    还未将文件发送到服务器
  • 00:26:38
    因此所有文件均标有问号
  • 00:26:40
    例如打开我的Blueprints文件夹
  • 00:26:43
    此文件标有问号
  • 00:26:45
    我的道具全都标有问号
  • 00:26:47
    材质等文件上也有
  • 00:26:49
    在全部项目互相连接时 这些问号
  • 00:26:53
    要过一会儿才会显示
  • 00:26:55
    这是因为我们尚未完成向服务器
  • 00:26:58
    初次提交
  • 00:26:59
    那么在Perforce客户端中
  • 00:27:02
    我们已经将项目复制到了工作区
  • 00:27:04
    现在点击工作区选项卡
  • 00:27:06
    就可以在相同位置找到项目
  • 00:27:08
    那么就是这里 它就在collaboration之下的
  • 00:27:10
    DataPrep 4.25中
  • 00:27:13
    那么我们需要进行的下一步则是
  • 00:27:15
    将我们的项目发送到服务器
  • 00:27:18
    要进行此操作 需选择项目文件夹
  • 00:27:22
    然后点击添加(Add)按钮 将它加入修改列表
  • 00:27:25
    在弹出窗口中选择新修改列表
  • 00:27:29
    同时在修改列表说明中
  • 00:27:30
    输入Initial commit
  • 00:27:33
    最后点击OK
  • 00:27:34
    现在打开待定修改列表选项卡
  • 00:27:38
    然后选中初次提交的修改列表
  • 00:27:41
    打开列表之后
  • 00:27:43
    可看到虚幻项目的所有文件
  • 00:27:46
    都已经准备好提交到服务器
  • 00:27:48
    当然 有一些内容您不需要
  • 00:27:50
    迁入源码管理
  • 00:27:53
    例如中间和保存文件夹
  • 00:27:56
    因此您需要在修改列表中向下滚动
  • 00:27:58
    直到找到这些文件夹
  • 00:28:01
    选择第一个文件夹 滚到底部
  • 00:28:04
    再按住Shift键选择最后一个文件夹
  • 00:28:07
    选中这些文件夹中的全部文件后
  • 00:28:10
    点击右键选择恢复(Revert)
  • 00:28:12
    在恢复文件(Revert Files)窗口中点击恢复(Revert)按钮
  • 00:28:15
    这样一来我们就不会
  • 00:28:17
    把中间保存的文件夹上传到服务器
  • 00:28:19
    另外 也可以让Perforce
  • 00:28:22
    忽略特定文件类型和文件夹
  • 00:28:26
    方法是进入
  • 00:28:27
    项目工作区副本
  • 00:28:31
    点击右键新建一个文本文件
  • 00:28:33
    我们把它命名为p4ignore.txt
  • 00:28:38
    我们可以在这个文件中添加文件夹
  • 00:28:40
    例如中间和保存文件夹
  • 00:28:44
    以及文件类型
  • 00:28:46
    假设不需要sln文件
  • 00:28:49
    就在这里输入*.sln
  • 00:28:52
    现在只需要点击提交(submit)按钮
  • 00:28:54
    假设我不需要进行任何修改
  • 00:28:56
    现在就可以在提交修改列表(submit change list)
  • 00:28:58
    窗口中按下提交(submit)按钮
  • 00:29:00
    如果没有错误
  • 00:29:01
    就会出现提交修改列表进度窗口
  • 00:29:04
    现在只需要等待
  • 00:29:06
    文件被上传到服务器
  • 00:29:09
    我们在项目里进行一些修改
  • 00:29:10
    然后来学习如何将这些修改发送到服务器
  • 00:29:14
    并了解锁定机制
  • 00:29:17
    等内容
  • 00:29:19
    我们先来进行一些基础资产修改
  • 00:29:22
    选中背景里的台灯
  • 00:29:25
    然后浏览材质资产
  • 00:29:29
    之后打开材质资产M lamp base
  • 00:29:31
    就可以看到
  • 00:29:32
    整个材质图表
  • 00:29:34
    我要进行的操作就是用它来
  • 00:29:37
    创建一个可以进行修改的材质实例
  • 00:29:39
    首先为金属感(metallic)值
  • 00:29:42
    添加一个标量参数
  • 00:29:44
    把它命名为metallic
  • 00:29:46
    再进行设置
  • 00:29:50
    叠加这个纹理来调整底色
  • 00:29:53
    因此我们需要一个三维向量
  • 00:29:56
    我们可以把这个连入底色
  • 00:29:58
    再转换为参数
  • 00:30:01
    命名为base color
  • 00:30:04
    默认为白色
  • 00:30:06
    好了
  • 00:30:07
    我们现在保存材质
  • 00:30:09
    执行这个操作时
  • 00:30:11
    引擎将询问是否要迁出资产
  • 00:30:14
    或将其设为可写入
  • 00:30:16
    注意 如果文件已经被其他人迁出
  • 00:30:19
    那么其用户名就会
  • 00:30:22
    显示在迁出人(checked out by)下方
  • 00:30:24
    而这里的迁出选定项(checked out selected)
  • 00:30:27
    按钮也会变灰 将无法点击
  • 00:30:29
    我现在开始迁出资产
  • 00:30:32
    现在我关闭了材质窗口
  • 00:30:34
    在这个材质上有一个红色的小勾
  • 00:30:37
    代表这个资产
  • 00:30:39
    当前被我迁出
  • 00:30:41
    在虚幻引擎中迁出文件之后
  • 00:30:44
    如果打开p4v 在工作区中浏览此文件
  • 00:30:46
    它明显已经被迁出
  • 00:30:50
    它旁边有一个锁定标志和小红勾
  • 00:30:53
    如果前往depot的相同位置
  • 00:30:55
    (depot是项目的服务器副本)
  • 00:30:58
    也会看到一样的图标
  • 00:31:02
    这是为了让大家都知道
  • 00:31:03
    我已经迁出了这个文件
  • 00:31:05
    现在把材质迁入Perforce服务器
  • 00:31:09
    对它点击右键
  • 00:31:10
    选择源码管理(Source Control)和迁入(Check In)
  • 00:31:14
    需要输入修改列表描述
  • 00:31:17
    我在这里就输入实例添加的参数
  • 00:31:22
    然后点击提交(Submit)
  • 00:31:24
    然后点击右键 选择创建材质实例(create material instance)
  • 00:31:27
    命名为mi_lampbase
  • 00:31:31
    创建材质实例之后
  • 00:31:33
    左下角会出现一个保存图标
  • 00:31:37
    右上角也会出现一个
  • 00:31:40
    黄色的问号图标
  • 00:31:43
    代表这个文件还没有
  • 00:31:45
    被迁入到版本控制系统
  • 00:31:49
    可以点击右键 选择源码管理(Source Control)
  • 00:31:53
    然后选择标记添加(Mark For Add)
  • 00:31:55
    进行操作之后
  • 00:31:58
    资产上就会出现一个红色加号
  • 00:32:01
    表示已经迁入源码管理
  • 00:32:03
    首先对它进行一些修改
  • 00:32:05
    我们选择底色调整数值
  • 00:32:11
    然后设置金属感值
  • 00:32:13
    现在再把它迁入 点击右键
  • 00:32:16
    选择源码管理(Source Control) 迁入(Check In)
  • 00:32:18
    在提交文件(Submit Files)窗口
  • 00:32:20
    的修改列表描述中
  • 00:32:21
    我就写一个初始提交(initial commit)
  • 00:32:24
    然后点提交(Submit)
  • 00:32:25
    现在回到Perforce进入depot
  • 00:32:29
    打开内容文件夹找到
  • 00:32:32
    刚才迁入的材质
  • 00:32:34
    在这里选中后可以清楚看到
  • 00:32:37
    Uasset文件有2/2个
  • 00:32:40
    这说明存在两个版本
  • 00:32:42
    我们现在处于第二个版本
  • 00:32:44
    如果需要查看修改列表
  • 00:32:45
    选择视图(View) 已提交修改列表(Submitted Changelists)
  • 00:32:49
    在已提交(Submitted)选项卡上可以看到
  • 00:32:52
    除了initial commit之外还有第二个修改added parameters for instance
  • 00:32:56
    打开之后就可以看到
  • 00:32:58
    我们修改的材质文件 US头文件
  • 00:33:01
    进入Perforce
  • 00:33:05
    右键点击台灯材质选择获取修改(Get Revision)
  • 00:33:08
    就可以回滚修改
  • 00:33:09
    修改数量为2 我们正处于第二个修改
  • 00:33:12
    我们要指定需要的修改
  • 00:33:16
    也就是第一个修改
  • 00:33:18
    然后点击获取修改(Get Revision)
  • 00:33:20
    注意 虚幻引擎项目打开时
  • 00:33:22
    不能执行这项操作
  • 00:33:24
    现在返回虚幻引擎 材质上出现了
  • 00:33:27
    一个感叹号
  • 00:33:28
    这个感叹号是提醒我们
  • 00:33:30
    尚未从服务器获得最新版本
  • 00:33:34
    如果点击右键选择源码管理(Source Control)
  • 00:33:36
    点击历史(History)
  • 00:33:38
    就能看到我们向Perforce服务器进行的
  • 00:33:40
    多次提交
  • 00:33:42
    这里有初始提交(initial commit)
  • 00:33:45
    和实例添加的参数(added parameters for instance)
  • 00:33:49
    甚至还可以右键选中
  • 00:33:51
    然后与上个修改进行对比
  • 00:33:55
    之后就会从Perforce呼出对比窗口
  • 00:33:58
    左边是之前的版本
  • 00:34:00
    右边是当前的版本
  • 00:34:01
    我们就知道当前版本处在服务器上
  • 00:34:04
    还添加了一些参数
  • 00:34:07
    我们再次右键点击材质
  • 00:34:09
    选择源码管理(source control)进行同步(Sync)
  • 00:34:12
    这样我们就能拥有最新的版本
  • 00:34:15
    现在打开材质
  • 00:34:17
    里面就有第二个版本中的修改
  • 00:34:20
    处理蓝图和源码管理的方式
  • 00:34:22
    和处理其他资产的方式基本相同
  • 00:34:25
    现在打开这个shell蓝图
  • 00:34:28
    现在它的功能是显示出hello
  • 00:34:31
    我们来添加一个碰撞体积并进行设置
  • 00:34:33
    玩家走进来时便会亮灯
  • 00:34:37
    首先要做的当然就是
  • 00:34:39
    添加碰撞组件
  • 00:34:42
    然后再添加一个光源
  • 00:34:46
    我们将在事件图表中
  • 00:34:48
    选择盒体碰撞
  • 00:34:51
    我们添加一个on overlap 添加一个光源
  • 00:34:56
    再连出引线
  • 00:34:57
    设置光源颜色
  • 00:35:06
    为了便于展示
  • 00:35:08
    我们这里就设置一个很奇怪的绿色
  • 00:35:12
    然后编译并保存
  • 00:35:15
    保存时迁出资产窗口
  • 00:35:18
    会再次打开
  • 00:35:19
    这时候必须点迁出选中项(Check Out Selected)
  • 00:35:22
    我们来把它提交到服务器
  • 00:35:35
    现在我们来了解下拥有多个蓝图版本时
  • 00:35:38
    应该如何进行区分
  • 00:35:41
    我们重新打开蓝图
  • 00:35:44
    再次选择碰撞盒体
  • 00:35:47
    再添加一个end overlap事件
  • 00:35:51
    然后再次设置光源颜色
  • 00:36:01
    这次改为红色
  • 00:36:05
    好了
  • 00:36:06
    编译保存
  • 00:36:09
    同样需要迁出
  • 00:36:12
    我们来把它迁入 进行提交
  • 00:36:24
    好了
  • 00:36:25
    进行修改之后
  • 00:36:26
    现在对修改进行一些对比
  • 00:36:28
    右键点击资产 进入源码管理(Source Control)
  • 00:36:31
    前往历史(History)
  • 00:36:33
    此处就是完成的修改
  • 00:36:35
    从第二个版本开始
  • 00:36:37
    右键点击 与上个版本
  • 00:36:39
    初始提交(initial commit)进行对比
  • 00:36:42
    将出现蓝图对比窗口
  • 00:36:45
    左边显示的
  • 00:36:46
    便是可能已经被修改的
  • 00:36:49
    所有内容
  • 00:36:51
    如果是黄色
  • 00:36:52
    就代表在上个版本基础上进行了修改
  • 00:36:55
    举例而言 如果我打开蓝图
  • 00:36:57
    就能看到添加的可变点光源和
  • 00:37:00
    可变盒体
  • 00:37:01
    原本当中并没有碰撞盒体
  • 00:37:02
    或点光源
  • 00:37:04
    但这个版本中有所添加
  • 00:37:06
    右边的是修改
  • 00:37:08
    左边的是原版
  • 00:37:10
    在组件(Components)下方可以看到一个默认场景根
  • 00:37:13
    而修改版本中
  • 00:37:14
    有点光源和盒体碰撞
  • 00:37:17
    同样 点开组件(Components)
  • 00:37:18
    可以看到我们添加了盒体碰撞节点
  • 00:37:22
    还添加了点光源节点
  • 00:37:25
    最后 打开事件图表
  • 00:37:27
    可以在此看到在事件图表中
  • 00:37:29
    进行的所有操作
  • 00:37:30
    首先添加点光源变量
  • 00:37:34
    然后添加一个set light color节点
  • 00:37:37
    最后添加on begin overlap事件
  • 00:37:41
    我们移动一下
  • 00:37:42
    把画面调大一点
  • 00:37:44
    点击右键拖动就可以平移
  • 00:37:47
    在蓝图图表中可以进行这类操作
  • 00:37:49
    可以看到蓝图之间的差异
  • 00:37:51
    如果要修改 可以解锁
  • 00:37:54
    只让左侧或者右侧移动
  • 00:37:57
    我们还是先锁定上
  • 00:37:59
    这样可以很好地
  • 00:38:01
    观察不同版本蓝图之间
  • 00:38:02
    的差异
  • 00:38:04
    在内容浏览器里点击右键
  • 00:38:07
    新建一个C++类 设为actor类
  • 00:38:11
    我们把命名修改为
  • 00:38:13
    Webinar actor
  • 00:38:17
    完成创建
  • 00:38:19
    创建C++ actor类之后
  • 00:38:24
    有几种方式可以把它放到
  • 00:38:28
    Perforce服务器上
  • 00:38:29
    首先可以使用Visual Studio Perforce插件
  • 00:38:34
    要在Visual Studio使用Perforce
  • 00:38:38
    先从Perforce.com/downloads下载插件
  • 00:38:40
    在页面上向下滚动找到
  • 00:38:45
    Helix Plugin for Visual Studio
  • 00:38:47
    然后针对您的Visual Studio
  • 00:38:48
    下载并安装版本
  • 00:38:51
    要进行迁入
  • 00:38:52
    点击添加到源码管理(add to source control) 再点击helix core
  • 00:38:55
    然后在这里输入信息
  • 00:38:58
    然后点击OK
  • 00:39:01
    要指定修改列表 选择新建(New)
  • 00:39:04
    输入初始提交(initial commit)
  • 00:39:07
    另一个选项就是加载
  • 00:39:10
    Perforce客户端
  • 00:39:13
    选择源目录和sln文件
  • 00:39:17
    将它标记添加
  • 00:39:18
    我们将新建一个修改列表
  • 00:39:21
    同样命名为初始提交(initial commit)
  • 00:39:24
    然后在待操作修改列表(pending change lists)中
  • 00:39:26
    选择新修改列表 点击右键并提交
  • 00:39:30
    迁出 使用
  • 00:39:32
    然后迁回C++类的方法
  • 00:39:37
    与所有其他资产相同
  • 00:39:38
    和其他资产一样
  • 00:39:40
    可以使用对比工具来查看
  • 00:39:42
    类不同版本之间的差异
  • 00:39:45
    好了
  • 00:39:45
    Perforce我们差不多就聊到这里
  • 00:39:48
    我们已经深入
  • 00:39:50
    学习了如何在虚幻引擎中
  • 00:39:51
    设置和使用的方法
  • 00:39:54
    以便进行源码管理和p4v工具查看
  • 00:39:56
    接下来我们看看
  • 00:39:58
    如何使用Subversion
  • 00:40:01
    在开始聊Subversion的使用和设置之前
  • 00:40:04
    我们先讲讲一些
  • 00:40:08
    基础的利弊
  • 00:40:09
    这些高层面利弊适用于
  • 00:40:11
    大多数人的使用情况
  • 00:40:12
    但具体也视个人情况而定
  • 00:40:14
    每个人的观点也有所不同
  • 00:40:17
    先说说优点
  • 00:40:19
    Subversion是开源的工具
  • 00:40:23
    由Apache免费提供
  • 00:40:25
    设置简单 非常易用
  • 00:40:29
    它可以兼容一些很棒的图形用户界面
  • 00:40:32
    例如Tortoise SVN
  • 00:40:34
    它还拥有一些良好的冲突解决方案
  • 00:40:36
    及其他功能
  • 00:40:38
    但它会保存项目的本地副本
  • 00:40:41
    这被称为工作目录
  • 00:40:45
    所以使用SVN时
  • 00:40:47
    本地硬盘上的文件大小将翻倍
  • 00:40:51
    它的合并功能也很有限
  • 00:40:54
    它在这方面存在一些问题 性能也比较低
  • 00:40:56
    大型团队使用起来也不太方便
  • 00:40:59
    也有很多用户抱怨说历史记录查找
  • 00:41:02
    速度较慢
  • 00:41:04
    如果您倾向使用Git之类的分布版本控制系统
  • 00:41:07
    则需要注意
  • 00:41:10
    Subversion也是一个集中选择
  • 00:41:12
    我们现在来看看如何设置
  • 00:41:14
    Subversion服务器
  • 00:41:16
    设置方法实际很多
  • 00:41:18
    但在本次讲解中
  • 00:41:20
    我们使用的是本地网络上的NAS
  • 00:41:22
    如果要像我这样使用NAS
  • 00:41:24
    就需要安装SVN
  • 00:41:27
    Synology NAS带有SVN包
  • 00:41:30
    只需要在这里搜索一下
  • 00:41:31
    然后安装
  • 00:41:34
    安装之后就可以打开SVN服务器
  • 00:41:37
    需要点击添加(Add)按钮
  • 00:41:39
    新建一个元库
  • 00:41:41
    给元库命名
  • 00:41:44
    还需要在这里添加用户
  • 00:41:46
    我就把自己添加上
  • 00:41:52
    然后点OK
  • 00:41:53
    现在就已经在NAS上创建了元库
  • 00:41:57
    这就是保存项目远程版本的地方
  • 00:42:01
    打开备份之后找到访问URL
  • 00:42:05
    选择并复制下来
  • 00:42:08
    我们要通过它来访问远程元库
  • 00:42:12
    除了在NAS上安装SVN包之外
  • 00:42:16
    还需要获取客户端
  • 00:42:18
    比较好用的是Tortoise SVN
  • 00:42:21
    访问TortoiseSVN.net/downloads.HTML
  • 00:42:25
    根据自己的Windows版本
  • 00:42:28
    下载32位或64位版本
  • 00:42:30
    要把当前项目导入到SVN
  • 00:42:34
    需选中项目 点击右键
  • 00:42:38
    再选择Tortoise SVN
  • 00:42:40
    如果Tortoise SVN安装成功
  • 00:42:42
    右键菜单里就会出现
  • 00:42:44
    Tortoise SVN和SVN Checkout
  • 00:42:46
    点击这里的导入(Import)
  • 00:42:48
    元库的URL需要和NAS的元库
  • 00:42:52
    相匹配
  • 00:42:55
    然后点击OK
  • 00:42:57
    这里会弹出用户名和密码输入提示
  • 00:43:05
    输入之后就会开始把本地项目的
  • 00:43:07
    所有文件导入到NAS上的SVN元库
  • 00:43:11
    项目保存到NAS上之后
  • 00:43:14
    下一步需要创建
  • 00:43:18
    项目的工作副本目录
  • 00:43:20
    这就是使用Subversion的缺点之一
  • 00:43:22
    它会在硬盘上保存
  • 00:43:24
    项目的两个副本
  • 00:43:26
    我们先关闭导入窗口
  • 00:43:29
    要创建本地副本
  • 00:43:31
    右键点击要保存的文件夹
  • 00:43:34
    然后选择SVN迁出(SVN Checkout)
  • 00:43:36
    对于元库URL
  • 00:43:37
    我们需要确保它
  • 00:43:39
    和NAS元库的路径相一致
  • 00:43:43
    之后需要设置迁出目录
  • 00:43:46
    这是工作副本的路径
  • 00:43:49
    然后点击OK开始下载
  • 00:43:54
    工作副本创建完毕之后
  • 00:43:56
    进入项目文件夹启动项目
  • 00:43:59
    在项目中
  • 00:44:01
    我们将按下源码管理(Source Control)按钮
  • 00:44:03
    然后选择连接到源码管理(Connect to Source Control)
  • 00:44:05
    提供方这里选择Subversion
  • 00:44:08
    而元库域里面就粘贴NAS Subversion
  • 00:44:13
    地址
  • 00:44:14
    然后输入用户名
  • 00:44:16
    在标签目录(Labels Directory)中输入tags
  • 00:44:19
    这与标记C++文件有关
  • 00:44:22
    除非是在执行大量C++编程的
  • 00:44:24
    多用户团队环境中进行工作
  • 00:44:27
    否则无需进行这个操作
  • 00:44:29
    不需要在这里输入密码
  • 00:44:30
    在迁入文件时会要求输入密码
  • 00:44:33
    我现在提前输入密码
  • 00:44:36
    之后就不会再询问了
  • 00:44:37
    然后点击接受设置(Accept Settings)
  • 00:44:39
    此时源码管理上便会显示绿色图标
  • 00:44:40
    我们便知道已经成功连接
  • 00:44:43
    Subversion
  • 00:44:45
    我们现在来简单了解一下
  • 00:44:46
    工作副本目录中可用的
  • 00:44:50
    Subversion右键菜单选项
  • 00:44:53
    我新建一个文本文件
  • 00:44:56
    将它命名为deleteme.txt
  • 00:45:00
    然后点击右键 选择Tortoise SVN
  • 00:45:03
    就可以把这个文件添加到我的Subversion元库了
  • 00:45:06
    或者添加到忽略列表(Add to ignore list)
  • 00:45:08
    操作一下看看吧
  • 00:45:10
    如果点击Subversion中已有的文件
  • 00:45:13
    然后选择Tortoise SVN
  • 00:45:17
    就会出现很多选项
  • 00:45:18
    有对比的选项
  • 00:45:20
    可以很轻松地更新到特定版本
  • 00:45:23
    可以在这里进行重命名 删除 锁定
  • 00:45:25
    分支等一系列操作
  • 00:45:26
    回到虚幻引擎
  • 00:45:28
    使用Subversion的方式与使用其他选项相同
  • 00:45:32
    那我们就选择这里的渲染助手
  • 00:45:36
    将它们设为静态(static)
  • 00:45:38
    这里出现了有一个文件需要迁出的提醒
  • 00:45:40
    然后就点击迁出
  • 00:45:42
    而此时要迁出的文件
  • 00:45:43
    就是贴图
  • 00:45:45
    开始迁出吧
  • 00:45:48
    现在打开Maps文件夹
  • 00:45:50
    可以看到贴图不但需要保存
  • 00:45:53
    它还有一个迁出标记
  • 00:45:55
    我们就直接保存它 然后迁入
  • 00:46:01
    还是需要设置修改列表描述
  • 00:46:10
    关于其他选项 就右键点击贴图
  • 00:46:12
    前往源码管理(Source Control) 历史(History)
  • 00:46:16
    已经执行的迁入
  • 00:46:18
    就会显示出来
  • 00:46:19
    这是我们的第二个版本 写着将球体设为静态
  • 00:46:23
    现在进入项目文件夹
  • 00:46:25
    找到刚刚修改的资产
  • 00:46:30
    在那张贴图上点击右键 选择Tortoise SVN
  • 00:46:33
    然后显示日志(Show log)
  • 00:46:35
    在日志里可以清楚看到
  • 00:46:36
    第二个版本将球体设为静态(made sphere static)
  • 00:46:40
    再次右键点击资源
  • 00:46:41
    选择Tortoise SVN
  • 00:46:43
    这次使用元库浏览器(Repo-browser)
  • 00:46:46
    点击后会打开一个
  • 00:46:48
    指向NAS上远程元库的浏览器窗口
  • 00:46:52
    这里也可以清楚地看到资产
  • 00:46:55
    有两个版本
  • 00:46:56
    使用SVN 或者说Subversion
  • 00:47:01
    其实是很简单的
  • 00:47:02
    服务器设置很简单
  • 00:47:05
    结合虚幻引擎使用也很简单
  • 00:47:07
    我们在介绍Git和Perfoce的时候
  • 00:47:09
    就已经讲到了文件迁入流程的大部分内容
  • 00:47:12
    所以我们就不讲如何用
  • 00:47:14
    Subversion来迁入文件了
  • 00:47:17
    直接进入今天的最后一个主题
  • 00:47:21
    就是Plastic SCM
  • 00:47:24
    我们简单聊聊Plastic SCM
  • 00:47:26
    的利弊
  • 00:47:29
    您也许会注意到其优点很多 缺点却很少
  • 00:47:34
    这是因为Plastic SCM相对来说
  • 00:47:37
    是比较新的源码管理系统
  • 00:47:39
    所以它的缺点仍然
  • 00:47:42
    有待大家的发掘
  • 00:47:43
    但我期待能听到今天观看
  • 00:47:45
    网络研讨会的各位提出
  • 00:47:48
    Plastic SCM的缺点
  • 00:47:51
    说到优点 Plastic SCM非常灵活
  • 00:47:54
    它提供分布式和集中式模型
  • 00:47:58
    甚至还能在两种模型的混合环境下使用
  • 00:48:01
    Plastic SCM使用费用会比较高
  • 00:48:04
    这算是一个缺点
  • 00:48:06
    但其实它也有免费版
  • 00:48:09
    您可在本地或云端使用Plastic SCM
  • 00:48:13
    同时还提供企业选项
  • 00:48:15
    Plastic SCM拥有很好的内置工具
  • 00:48:18
    和内置GUI
  • 00:48:19
    其实它有两个版本的GUI
  • 00:48:22
    一个是针对程序员
  • 00:48:24
    Gluon则是针对美术师
  • 00:48:26
    它拥有强大的分支和合并系统
  • 00:48:29
    甚至可以用来对比图像
  • 00:48:32
    和预览图像
  • 00:48:34
    我们现在来了解一下
  • 00:48:35
    如何安装并使用Plastic SCM
  • 00:48:38
    要下载Plastic SCM
  • 00:48:40
    首先访问PlasticSCM.com/download
  • 00:48:43
    这里有几个选项
  • 00:48:45
    有免费的个人社区版
  • 00:48:48
    付费的有云端 团队和
  • 00:48:51
    企业版
  • 00:48:52
    这次我们使用团队版
  • 00:48:54
    注意这些版本是需要付费的
  • 00:48:57
    在Windows上安装Plastic SCM
  • 00:49:00
    GUI有两个选项
  • 00:49:02
    可以使用Plastic SCM GUI
  • 00:49:05
    它最适用于编程
  • 00:49:08
    也可以选择Gluon 适合美术师
  • 00:49:11
    和游戏开发使用
  • 00:49:12
    我就选择Plastic Gluon
  • 00:49:14
    安装Windows的Plastic SCM服务器时
  • 00:49:17
    可以选择启动控制台
  • 00:49:20
    启动时需要输入
  • 00:49:23
    管理员密码
  • 00:49:24
    然后点击完成安装(Finish Installation)
  • 00:49:26
    进入Plastic控制台后
  • 00:49:28
    就能访问服务器的所有设置
  • 00:49:32
    以及用户的验证
  • 00:49:34
    和保存文件的元库存储系统
  • 00:49:37
    等诸多功能
  • 00:49:40
    在监控器(Monitor)下面
  • 00:49:42
    则可以监控Plastic的性能
  • 00:49:44
    在Plastic SCM配置窗口中
  • 00:49:47
    我们需要指定服务器位置
  • 00:49:50
    我们可以轻松地执行这个操作
  • 00:49:51
    只需要点击扫描网络(Scan network)即可在Windows PC上本地执行
  • 00:49:54
    这是我用的服务器
  • 00:49:56
    然后点击OK
  • 00:49:57
    之后需要配置凭证
  • 00:49:59
    这就是用户名和密码
  • 00:50:01
    然后可以选择元库
  • 00:50:03
    点击选择(Choose)能选择默认元库
  • 00:50:06
    这次我就直接新建一个
  • 00:50:08
    命名为Webinar Plastic SCM
  • 00:50:12
    和Perforce一样 我们现在需要
  • 00:50:14
    选择工作目录或工作区
  • 00:50:16
    点击选择(Choose)按钮
  • 00:50:18
    浏览到虚幻引擎项目
  • 00:50:22
    然后点击应用(Apply)
  • 00:50:23
    现在可以访问工作区了
  • 00:50:26
    这就是整个虚幻引擎项目
  • 00:50:29
    还可以点击迁入修改(Checkin changes)
  • 00:50:31
    这样就能提交已执行的所有修改
  • 00:50:34
    大家可能会注意到
  • 00:50:36
    这些文件当前都被标记为私有
  • 00:50:38
    这是因为它们还尚未被提交到
  • 00:50:41
    版本控制服务器
  • 00:50:43
    我们现在就进行提交
  • 00:50:45
    在迁入内容之前
  • 00:50:47
    需要忽略一些文件
  • 00:50:48
    即中间和保存文件夹
  • 00:50:52
    因此我们需要找到这些文件夹
  • 00:50:54
    然后全部选中
  • 00:50:56
    全选文件夹之后
  • 00:50:57
    就可以点击右键选择隐藏 忽略 添加到忽略列表
  • 00:51:02
    可以使用项的命名或完整路径
  • 00:51:05
    现在对初始提交进行设置
  • 00:51:07
    选择所有项
  • 00:51:09
    在留言域里面输入initial commit
  • 00:51:14
    然后点击Checkin
  • 00:51:20
    可以看到Plastic SCM的迁入速度非常快
  • 00:51:24
    当然 这是在本地工作
  • 00:51:26
    如果前往修改集(Changesets)
  • 00:51:29
    可以看到已添加初始提交
  • 00:51:32
    如果无法看到提交 请点击刷新(Refresh)按钮
  • 00:51:35
    在虚幻引擎项目的
  • 00:51:37
    Plastic工作目录中
  • 00:51:40
    点击源码管理(Source Control) 连接到源码管理(Connect to Source Control)
  • 00:51:43
    提供方(Provider)一栏选择Plastic SCM
  • 00:51:46
    这边的内容基本已经都填好了
  • 00:51:49
    只需要点击
  • 00:51:51
    接受设置(Accept Settings)按钮就行
  • 00:51:53
    然后源码管理上会出现绿色图标
  • 00:51:55
    现在来快速进行修改
  • 00:51:58
    进入材质并打开铬球体(chrome sphere)
  • 00:52:02
    在这里修改颜色并保存
  • 00:52:08
    之后会弹出迁出资产(Check Out Assets)窗口
  • 00:52:10
    我们需要选中材质
  • 00:52:12
    然后点击迁出选中项(Check Out Selected)
  • 00:52:14
    现在可以在编辑器窗口中看到
  • 00:52:16
    材质上出现了红色小勾
  • 00:52:19
    代表它已经被提交到
  • 00:52:21
    Plastic SCM服务器
  • 00:52:24
    现在我们点击右键选择源码管理(Source Control)
  • 00:52:26
    进行迁入
  • 00:52:30
    这样我们就完成了Plastic的首次提交
  • 00:52:33
    现在回到Plastic Gluon
  • 00:52:35
    选择修改集(Changesets)后点击刷新(Refresh)
  • 00:52:38
    就能看到新修改将材质设为黑色(Made material black)
  • 00:52:41
    在内容(Content)下方有
  • 00:52:43
    两个修改集
  • 00:52:45
    把它打开 选择材质(Materials)
  • 00:52:47
    可以看到M_ChromeSphere Uasset
  • 00:52:50
    就是第二个修改集发生的文件
  • 00:52:52
    当然 在虚幻引擎中 我们可以点击资产上的源码管理(Source Control)
  • 00:52:55
    再点击历史(History) 查看这些相同的修改
  • 00:52:59
    可以点击右键 与上个版本进行对比
  • 00:53:02
    可看到新版本的RGB颜色
  • 00:53:05
    已经变为黑色
  • 00:53:09
    而旧版本是白色
  • 00:53:10
    好了
  • 00:53:10
    Plastic SCM差不多就聊到这里
  • 00:53:13
    今天研讨会的也快要结束了
  • 00:53:15
    这只是对工具的一些初步讲解
  • 00:53:18
    但希望能够帮助大家
  • 00:53:20
    上手开始使用
  • 00:53:22
    请记住 无论是Git Perforce Subversion
  • 00:53:26
    还是Plastic SCM
  • 00:53:30
    迁出材质 纹理 C++类和蓝图的方法
  • 00:53:34
    均万变不离其宗
  • 00:53:36
    全部都是源码管理的选项
  • 00:53:39
    如果想了解虚幻引擎
  • 00:53:43
    版本控制的更多使用帮助
  • 00:53:45
    可以参考这里的链接
  • 00:53:47
    我稍微停一下
  • 00:53:50
    方便大家记录下来
  • 00:53:51
    第一个链接是虚幻引擎教员直播
  • 00:53:55
    这项直播在Twitch上进行
  • 00:53:58
    很好地为大家展示了一些可用选项
  • 00:54:02
    并详细介绍了Perforce的使用方法
  • 00:54:05
    这个视频讲得很详细
  • 00:54:07
    涉及到的选项比我讲的
  • 00:54:10
    更多更广
  • 00:54:11
    要记得去看看哦
  • 00:54:13
    时间大约是两小时
  • 00:54:15
    另外还有虚幻引擎版本控制基础要点
  • 00:54:18
    这个视频是2020年初发布的
  • 00:54:22
    也是一个两小时左右的视频
  • 00:54:24
    可在虚幻引擎YouTube频道中观看
  • 00:54:27
    这个视频十分详细地介绍了
  • 00:54:30
    虚幻引擎版本控制
  • 00:54:31
    以及结合Perforce的使用方法
  • 00:54:33
    该视频里甚至还涉及到了
  • 00:54:35
    Perforce服务器的设置
  • 00:54:38
    最后一个链接是虚幻引擎官方文档
  • 00:54:40
    讲解源码管理的使用
  • 00:54:42
    用画面中显示的链接
  • 00:54:45
    就可以查阅到这篇文档
  • 00:54:46
    也可以登陆docs.unrealengine.com/zh-CN
  • 00:54:49
    搜索源码管理
  • 00:54:52
    文档里不但有源码管理的页面
  • 00:54:55
    还有一些子页面 一个讲解Perforce
  • 00:54:57
    另一个则讲解Subversion
标签
  • Unreal Engine
  • controllo delle versioni
  • versione di codice sorgente
  • Git
  • Perforce
  • Subversion
  • Plastic SCM
  • gestione del codice
  • team di sviluppo
  • flusso di lavoro