All Projects → jiangzhhhh → Unity Multiprocess Buildpipeline

jiangzhhhh / Unity Multiprocess Buildpipeline

Licence: mit
multiprocess buildpipeline for unity

Labels

Projects that are alternatives of or similar to Unity Multiprocess Buildpipeline

Mesh Voxelization
Mesh voxelization in Unity
Stars: ✭ 112 (-5.88%)
Mutual labels:  unity
Unity3d Globe
Unity3D Implementation of Chrome Experiment WebGL Globe
Stars: ✭ 115 (-3.36%)
Mutual labels:  unity
Unity 2d Pathfinding
A very simple 2d tile-based pathfinding for unity, with penalty supported
Stars: ✭ 117 (-1.68%)
Mutual labels:  unity
Otto
Otto sample project for the AI Planner
Stars: ✭ 113 (-5.04%)
Mutual labels:  unity
Cscore
cscore is a minimal-footprint library providing commonly used helpers & patterns for your C# projects. It can be used in both pure C# and Unity projects.
Stars: ✭ 115 (-3.36%)
Mutual labels:  unity
Unitydecompiled
Now unnecessary, use the official code instead: https://github.com/Unity-Technologies/UnityCsReference
Stars: ✭ 1,486 (+1148.74%)
Mutual labels:  unity
Iframework
Simple Unity Framework
Stars: ✭ 110 (-7.56%)
Mutual labels:  unity
Geomapping With Unity Mapbox
Geomap is the virtualization of data that maps a Country. Mapbox Unity SDK gives data(Global map layers of Streets, Buildings, Elev, and Satellite) generating custom 3D worlds for Mobile VR/AR apps.
Stars: ✭ 118 (-0.84%)
Mutual labels:  unity
Unitystyleguide
For file structure, naming conventions and other things
Stars: ✭ 115 (-3.36%)
Mutual labels:  unity
Interactive Erosion
Interactive erosion in Unity
Stars: ✭ 117 (-1.68%)
Mutual labels:  unity
Proccharvfx
Procedural character generation with Unity Shader Graph and VFX Graph
Stars: ✭ 114 (-4.2%)
Mutual labels:  unity
Holobot
HoloBot is a reusable 3D interface that allows HoloLens & VR users to interact with any bot using Mixed Reality & Speech.
Stars: ✭ 114 (-4.2%)
Mutual labels:  unity
Awesome Upm
A curated list of awesome Git repositories for Unity that support Unity Package Manager (UPM). Feel free to add yours in!
Stars: ✭ 116 (-2.52%)
Mutual labels:  unity
Dawnbringer Palettes
Limited color palettes by DawnBringer in various formats.
Stars: ✭ 112 (-5.88%)
Mutual labels:  unity
Rock Generator
C# rock generator
Stars: ✭ 118 (-0.84%)
Mutual labels:  unity
Self Driving Vehicle
Simulation of self-driving vehicles in Unity. This is also an implementation of the Hybrid A* pathfinding algorithm which is useful if you are interested in pathfinding for vehicles.
Stars: ✭ 112 (-5.88%)
Mutual labels:  unity
Ma textureatlasser
Texture atlas creator for Unity
Stars: ✭ 116 (-2.52%)
Mutual labels:  unity
Gdk For Unity Fps Starter Project
SpatialOS GDK for Unity FPS Starter Project
Stars: ✭ 119 (+0%)
Mutual labels:  unity
Invisible Highway
Invisible Highway is an experiment in controlling physical things in the real world by drawing in AR. Simply make a pathway along the floor on your phone and the robot car will follow that path on the actual floor in your room. A custom highway with scenery is generated along the path to make the robots a little more scenic on your phone screen.
Stars: ✭ 118 (-0.84%)
Mutual labels:  unity
Unityanimatorevents
UnityEvents triggered by states inside an Animator. Easy to use and performant.
Stars: ✭ 117 (-1.68%)
Mutual labels:  unity

Unity-MultiProcess-BuildPipeline

多进程资源构建方案

设计

  • 创建多组子工程进行并行构建
  • 在Windows下,通过使用mklink命令创建子工程的Assets/ProjectSetting目录
  • 在OSX下,由于Unity不支持Assets目录为符号链接,因此为子工程创建真实Assets目录,然后将主工程Assets目录下的文件和文件夹符号链接到子工程的Assets目录下
  • 构建时对构建列表进行依赖分析,根据依赖关系进行任务分组,确保有依赖关系的构建资源从属同一节点
  • 使用子进程方式启动多个Unity进程,并行进行资源构建

数据对比

在ssd+i7的pc上进行实验,测试工程单节点进行全量资源构建需要300min,同样测试条件下,修改为5节点并行构建后缩短为42min,效果显著

用例

使用"Exampl/Build"进行资源构建

design

  • Create multiple subprojects for parallel builds
  • Under Windows, create the Assets/ProjectSetting directory of the salve build project by using 'mklink'
  • Under OSX, since Unity does not support the Assets directory as a symbolic link on the OSX system, so, the real Assets directory is created for the subproject.Then link files and directories under the Assets directory of the master project to the Assets directory of the subproject.
  • Dependency analysis of the build list before building.Group build assets, Make sure that the dependent assets belong to the same build group.

single process VS multi process

My test project reduced the build time from 300mins to 42mins on the same PC(ssd+i7).

usage

click menu "Exampl/Build"

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].