Modo团结桥

Modo具有与Unity实时通信的功能,并允许您在之间移动网格,网格实例,纹理,材质和相机Modo和Unity。

安装Modo桥接插件

从Unity Asset Store安装

您可以下载Modo来自的网桥插件Unity资产商店

1.   请点击Open in Unity

这将打开Unity项目浏览器。

2.   选择一个项目以打开或创建一个新项目。

这将打开项目并显示商品的商店页面。 Modo Unity浏览器中的网桥插件。

3.   请点击Import

将打开“导入Unity软件包”对话框。

4.   请点击Import再次。

该插件已导入Unity。一个ModoBridge文件夹被添加到项目的Assets夹。

5.   在本地驱动器上找到Unity项目文件夹,并创建一个名为Plugins在里面Assets夹。

视窗: C:\Users\<用户名>\Documents\<统一项目名称>\Assets\Plugins

苹果系统: /Users/<用户名>/<统一项目名称>/Assets/Plugins/

6.   放置ModoBridge夹入Plugins您的Unity项目的文件夹。

Modo现在已安装Bridge for Unity。

配置服务器和客户端

首先, Modo网桥需要通过网络连接。这俩Modo服务器和Unity客户端必须使用相同的端口号和相应的地址才能相互通信。

在大多数情况下Modo和Unity是在同一台机器上启动的,只需启动Modo桥服务器和Modo在Unity中桥接客户端。在更复杂的情况下,如果连接是在本地网络或Internet上进行的,则AddressPort在选项ModoServer IP/namePort应根据网络和防火墙规范更改Unity中的选项。

例如,对于LAN网络, Server IP/name可以是“ 192.168.1.100”或“ 192.168.20.32”,对于Internet连接,它可以是不同的,例如“ 216.27.61.137”。

以下是配置服务器和客户端的方法:

配置中Modo优先

配置Modo

1.   发射Modo
2.   请点击Systems > Preferences和下Defaults,点击Application
3.   Foundry Link Settings, 在里面Address字段中,键入TCP服务器IP地址。

默认情况下,TCP服务器地址为127.0.0.1。这是用于指向计算机的TCP / IP网络配置的回送Internet协议(IP)地址。

4.   在里面Port字段中,键入TCP连接的端口号。

默认情况下, Port号码是12000

配置Unity客户端

1.   在Unity的菜单栏中,单击Foundry > Set Client Options

注意:  此选项仅在客户端关闭时可用。

2.   设置以下内容:

Server IP/name: 127.0.0.1

Port: 12000

您可以编辑的其他设置是:

Connection timeout (ms)-设置如果没有收到响应,客户端应断开与服务器的连接的毫秒数。

Cancel check interval (ms) -设置客户端应检查用户是否单击了用户名时的毫秒数Cancel Import命令。

3.   请点击Save

开始之间的通信Modo和Unity客户端

要在Modo服务器:

1.   发射Modo
2.   在用户界面的右上角,点击Kits,然后点击Modo桥接按钮。

这将打开Modo Bridge选项。

注意:  有关每个选项的更多信息,请参见Modo桥

3.   Server,点击Start

Modo桥接服务器已连接到IP地址和端口Preferences并等待传入的客户端连接。

要在Unity客户端上启用通信:

1.   启动Unity。

Projects选项卡显示您的可用项目。

2.   单击您要加载的项目。

Unity打开所选项目

3.   在菜单栏中,单击Foundry > Start Client

Unity客户端连接到服务器的IP地址和端口。之间的沟通Modo现在,Unity成立了。

使用Modo桥接插件

两者都进行了更新Modo和Unity使用Push功能。您可以选择单独的几何项目或选定的多边形,边或顶点,材质和纹理,以将其传输到其他应用程序。

通过使用唯一的铸造代币,可以在Modo并在发送给Unity的情况下保留它们的映射,并在服务器-客户端连接中断,级别或项目重命名,场景图层次结构中的更改等情况下重新连接。以以下示例为例,推动Cylinder网格总是更新Cylinder Unity中的GameObject,而不是创建新的圆柱体GameObject。

从中推物体Modo团结

网格可以动态地从Modo到Unity。网格转移支持几何数据,法线和UV顶点贴图以及用于材质的曲面集。

注意:  您必须完成以下步骤配置服务器和客户端在执行以下步骤之前。

从中推场景Modo

1.   Modo,在右上角单击Kits,然后点击Modo按钮。

这将打开Modo Bridge选项对话框。

2.   在下面Push类别,启用要传输的对象,然后单击Push All

这些项目将转移到您的Unity项目中。

从转移网格Modo到Unity生成带有Unity网格对象作为子对象的新Prefab资产Project浏览器。该工作流程将保留网格数据,创建Unity GameObject组件以及将材质连接到Unity子网格(网格的材质表面)的设置。创建唯一的铸造令牌以保留对象中的链接Modo和Unity,完全阴影的网格GameObject可在关卡中使用。

如果您在Modo,您可以通过仅传输已修改的项目来重复传输过程。在此示例中,我们将立方体的顶部切成斜角:

1.   将更改保存到Modo
2.   选择项目,然后在Modo Bridge对话框中,单击Push Selected

该项目将在您的Unity场景中更新。

将对象从Unity推送到Modo

在Unity中对传输的场景进行更改后,您可以在Modo。您可以传输整个场景,也可以仅传输选定的对象。

传输所选对象:

1.   在Unity中选择对象。
2.   在Unity菜单栏中,单击Foundry >Push Selected

您的场景已在更新Modo

要传输整个场景,请在菜单栏中单击Foundry > Push All

传输网格实例

您可以在两个应用程序之间来回传输网格实例,就像常规网格一样。在Modo它们显示为网格实例项目,在Unity中,它们在当前级别中显示为Unity GameObjects。

注意:  中的网格或网格实例Modo仅在首次创建GameObject时在Unity的当前级别中生成场景图层次结构,而不在后续更新时生成。对作为其他网格物体和网格物体实例的父物体的网格物体和网格物体实例的支持有限。

转移物料

当您从Modo对于Unity而言,Unity会以材料对象作为子代来生成预制件。纹理与材料数据一起发送,并通过Unity标准着色器自动连接到Unity中的结果材料。

注意:  当前不支持后续的材料推送。您只能通过先在Unity中删除创建的材料来更新材料。

注意:  当传输没有网格数据的材料时,材料不会自动连接到网格,您必须在Unity中将材料分配给所需的网格。

当前支持的Unity材料数据是:

基本反照率颜色值

金属浮点值

平滑度浮动值

发光色值

当前支持的Unity纹理效果是:

团结反照率

团结凹凸

团结金属

统一法线

Unity环境光遮挡

统一排放

Unity细节蒙版

Unity Detail Albedo x2

统一细节正常

注意:  以上两个数据集目前是互斥的。例如,Base Albedo被Unity Albedo纹理效果覆盖。

传输纹理图像

从中传输纹理图像时Modo对于Unity,Unity生成带有纹理图像对象的预制件作为子对象。

将图片保存到Modo, 点击Push All按钮或在“着色器树”中选择纹理效果Modo然后点击Push Selected。这将在Unity中创建或更新纹理。

随后具有相同纹理效果的传输将更新Unity中已经存在的纹理图像。

注意:  传输前,请确保保存了编辑的图像。

传输相机数据

您可以从Modo到Unity。Unity使用相机组件在当前打开级别中生成一个GameObject。唯一受支持ProjectionTypePerspective

传输以下相机数据:

视角(视野)

接近剪切平面

长宽比