设置资源服务器 (Asset Server)        

服务器端安装

资源服务器 (Asset Server) 的设计令其在服务器机器上的安装简单方便,一次完成。资源服务器 (Asset Server) 的互动通过 Unity 实现。Unity 可以安装到服务器机器上,但这并非必须。服务器必须由可添加工程 (Projects) 和用户 (Users) 的客户端 (Client) 机器来管理。我们必须使用特定的用户 (User) 凭据将每个添加的客户端配置为与工程 (Project) 同步。

你可以在如下系统上安装资源服务器 (Asset Server):Mac OS X10.4 或更高版本、Windows XP、Windows Vista 和各种 Linux 发布版(包括 Cent OS、Ubuntu 和 Suse Linux)。请从此处下载 Unity 资源服务器 (Download Unity Asset Server)。

此安装程序将安装所有必需的文件、设置数据库并启动资源服务器 (Asset Server)。这个过程结束后,您需要设置一个管理员密码 (Admin password),这个密码是管理 Unity 内的资源服务器 (Asset Server) 所必需的。在您可以创建任何工程或用户之前,必须以管理员身份连接到资源服务器 (Asset Server)。

管理资源服务器 (Asset Server)

资源服务器 (Asset Server) 允许任意数量的用户 (Users) 连接至工程 (Project)。管理员 (Administrator) 必须首先使用 Unity 作为客户端连接至服务器 (Server),并新建工程 (Projects) 和用户 (Users)。

要访问管理员 (Administrator) 控制面板,请启动 Unity 并依次选择窗口 (Window)->资源服务器 (Asset Server),然后单击管理 (Administration) 按钮。


管理 (Administration) 选项卡

服务器地址 (Server Adress) 字段中,输入运行您想要管理的资源服务器 (Asset Server) 的计算机 ip 地址主机名。如果资源服务器 (Asset Server) 安装在本地机器上,您可将"本地主机"用作服务器地址 (Server Address)。之后,输入管理员名称和密码。管理员名称固定使用 "admin",密码是安装资源服务器 (Asset Server) 时输入的密码。最后按连接 (Connect) 按钮。您现已连接至资源服务器 (Asset Server),可进行初始设置了。

管理工程和用户

每个服务器 (Server) 都可包含多个工程 (Projects),并且每位用户都可以有一个或多个工程 (Projects)。工程 (Projects) 通常是正交的,并且在资源集合中具有唯一性。您可以认为"一个工程就是一个游戏"。

单击服务器管理 (Server Administration) 选项卡中的创建 (Create) 按钮即可新建工程 (Projects)。  


单击创建 (Create),然后输入新工程的名称

新用户的创建方式为,首先选择一个现有工程,然后单击新建用户 (New User) 按钮。


新建用户

在一个工程 (Project) 中创建用户后,您可选中用户列表左侧的复选框,将用户添加至其他工程。

您可启用或禁用用户访问单个工程。将工程或用户完全从服务器删除,请使用删除工程 (Delete Project)删除用户 (Delete User) 按钮。

防火墙设置

Unity 资源服务器 (Asset Server) 使用 TCP 端口 10733。您可能需要在防火墙和/或路由器中启用至此端口的连接。

高级

我们使用修改版本的 PostgreSQL 创建资源服务器 (Asset Server)。直接访问 SQL 数据库需要掌握一点关于 SQL 和 Unix/Linux 命令行的技术知识。建议用户谨慎操作。

备份

我们提供 了一个命令行工具用于备份资源服务器。您应在运行资源服务器的机器上使用管理员帐号运行此工具。请使用您希望备份工具放置备份的路径名替换 BACKUP_LOCATION:

Mac OS X
sudo /Library/UnityAssetServer/bin/as_backup BACKUP_LOCATION

Linux
sudo /opt/unity_asset_server/bin/as_backup   BACKUP_LOCATION

Windows
"UnityAssetServerinas_backup.cmd" BACKUP_LOCATION

as_backup 将在 BACKUP_LOCATION 处创建一个包含每个工程一个或多个文件的目录,以及包含每个工程的信息和所有用户及其密码备份的文件。

还原备份

要还原一个使用 as_backup 命令生成的资源服务器 (Asset Server) 备份,首先请重新安装一个未创建任何工程的资源服务器 (Asset Server)。(还原程序将拒绝覆盖已经存在的同名工程。)

然后运行提供 的备份还原工具,as_restore 将其指向使用 as_backup 创建的备份的位置:

Mac OS X
sudo /Library/UnityAssetServer/bin/as_restore BACKUP_LOCATION

Linux
sudo /opt/unity_asset_server/bin/as_restore BACKUP_LOCATION

Windows
"UnityAssetServerinas_restore.cmd" BACKUP_LOCATION

注意,您也可使用 as_backup 和 as_restore 将资源服务器安装程序从一台机器移至另一台机器,方法为:在源计算机上备份,将备份目录移至目标计算机(或通过共享网络文件安装),然后运行 as_restore 将数据插入至新安装的资源服务器 (Asset Server) 实例。此方法在源和目标资源服务器 (Asset Servers) 版本不同或是在不同操作系统上运行时同样适用。

查找资源服务器工程 (Asset Server Project) 的数据库名称

要查看工程 (Project) 数据库中的表, 您首先需要知道真实数据库的名称。在托管资源服务器 (Asset Server) 的机器上执行此命令行命令:

Mac OS X
/Library/UnityAssetServer/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases__view'

Linux
/opt/unity_asset_server/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases__view'

Windows
"UnityAssetServerinpsql.exe" -U admin -h localhost -d postgres -c "select * from all_databases__view"

此命令和其他命令将提示您输入密码。此时,请输入安装期间设置的数据库 admin 密码。 结果将为按此基本方式布局的表:

    databasename    |    projectname     |       description        | version --------------------+--------------------+--------------------------+--------- sandbox            | Sandbox            | Created with Unity 2.0.0 | 1.0 game               | Game               | Created with Unity 2.0.0 | 1.0 my_game_project    | My Game Project    | Created with Unity 2.0.0 | 1.0(3 rows)

现在,您需要确认需要备份的工程 (Project) 的 “databasename(数据库名称)”,创建数据库时,默认的 “databasename(数据库名称)”与 Unity 中显示的 “projectname(工程名称)” 相同,但前者全部使用小写字母并且用下划线代替空格。

注意,如果您的服务器托管不同端口上的多个 PostgreSQL 数据库,您可能需要明确指定用于连接至资源服务器 (Asset Server) 数据库的端口。在这种情况下,请将 -p 10733 添加至给定的命令(如果您的实例使用了默认端口 10733。)例如:

Linux
/opt/unity_asset_server/bin/psql -U admin -h localhost -d postgres -c 'select * from all_databases__view' -p 10733

其他 SQL 功能

这些和所有其他命令都使用 PostgreSQL 发布版中的工具。您可在此了解更多关于这些工具的信息:http://www.postgresql.org/docs/8.3/interactive/reference-client.html

,