48 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			48 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								title: EPIC大型项目资产数据跨地域同步方案
							 | 
						|||
| 
								 | 
							
								date: 2022-11-10 14:59:48
							 | 
						|||
| 
								 | 
							
								excerpt: 
							 | 
						|||
| 
								 | 
							
								tags: DDC
							 | 
						|||
| 
								 | 
							
								rating: ⭐
							 | 
						|||
| 
								 | 
							
								---
							 | 
						|||
| 
								 | 
							
								## 前言
							 | 
						|||
| 
								 | 
							
								对于大型项目来说同步Asset相对较快,但是构建资产数据缓存却比较慢,经常需要花很长时间才能打开编辑器。该视频介绍了一些解决方法。视频为[Improving Developer Iteration in Unreal Engine 5 | Unreal Fest 2022](https://www.youtube.com/watch?v=_gpJeeqIbjo)
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								## 资产数据同步方法
							 | 
						|||
| 
								 | 
							
								1. [[#Unreal Cloud DDC]] UE5.2(Beta)
							 | 
						|||
| 
								 | 
							
								2. [[#Virtual Asset]]UE5.1(Beta)
							 | 
						|||
| 
								 | 
							
								3. [[#Horde Compute]]UE5.x(TBD)
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								## Unreal Cloud DDC
							 | 
						|||
| 
								 | 
							
								- Local Project DDC项目DDC:
							 | 
						|||
| 
								 | 
							
								- Local Share DDC(本地共享DDC):
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								但是我们目标是`Team Shared DDC`,即每个人都有自己的一部分LocalDDC,然后团队有其他大部分共享的DDC。但并不适合使用VPN来获取数据。所以EPIC使用多台云服务器(多个地区)上构建DDC。他们开发了一个灵活可配置的系统来进行管理。
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								- 云上部署
							 | 
						|||
| 
								 | 
							
								- 多地部署
							 | 
						|||
| 
								 | 
							
								- 云服务器数据两两同步
							 | 
						|||
| 
								 | 
							
								- 支持OIDC登录与身份验证
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								## Virtual Asset
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								通过将Asset的结构数据生成DDC Key,这样就可以从DDC缓存中获取到数据了。所以我们就不需要BulkData了。以此来减少每日同步数据的量。同时因为这些缓存数据是散列形式的,这样就不会出现重复生成的问题。
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								而DDC Key就是视频中介绍的VirtualAssets
							 | 
						|||
| 
								 | 
							
								Virtual Asset
							 | 
						|||
| 
								 | 
							
								- 同步更快
							 | 
						|||
| 
								 | 
							
								- 更小的足迹数据
							 | 
						|||
| 
								 | 
							
								- 优先从UnrealCloudDDC上同步,次选Perforce
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								## Horde Compute
							 | 
						|||
| 
								 | 
							
								不充钱你会变强么
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								## 其他
							 | 
						|||
| 
								 | 
							
								EPIC在UE5开发了新的针对DDC构建的API
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 |