永发信息网

怎样模拟Unity游戏环境并从服务器直接下载asset到本地?

答案:2  悬赏:80  手机版
解决时间 2021-01-29 20:58
  • 提问者网友:轻浮
  • 2021-01-29 13:42
我见过有人用Python编写的程序实现过,但不清楚具体怎么做到的,也不知道用的什么程序
大致运行流程:程序向服务器发出请求,服务器检查客户端版本后返回asset列表,客户端下载asset
怎样才能实现同样的效果?有没有类似的工具?
最佳答案
  • 五星知识达人网友:执傲
  • 2021-01-29 13:58
Unity会下载Assetbundle本地中,它的工作原理是先通过(版本号和下载地址)先在本地去找看有没有这个Assetbundle,如果有直接返回对象,如果没有的话,在根据这个下载地址重新从服务器或者本地下载。这里版本号起到了很重要的作用,举个例子,同一下载地址版本号为1的时候已经下载到本地,此时将版本号的参数改成2 那么它又会重新下载,如果还保持版本号为1那么它会从本地读取,因为本地已经有版本号为1的这个Assetbundle了。你不用担心你的资源本地下载过多,也不用自己手动删除他们,这一切的一切Unity会帮我们自动完成,它会自动删除掉下载后最不常用的Assetbundle ,如果下次需要使用的话只要提供下载地址和版本后它会重新下载。
  我们在聊聊Assetbundle 中的脚本,在移动平台下Assetbundle里面放的脚本是不会被执行的,还记得我们打包前给两个Prefab挂上了脚本吗?在手机上将Assetbundle下载到本地后,加载进游戏中Prefab会自动在本地找它身上挂着的脚本,他是根据脚本的名来寻找,如果本地有这条脚本的话,Prefab会把这个脚本重新绑定在自身,并且会把打包前的参数传递进来。如果本地没有,身上挂的条脚本永远都不会被执行。
  在Prefab打包前,我在编辑器上给脚本中的变量 name 赋了不同值,当Prefab重新载入游戏的时候,它身上脚本的参数也会重新输出。

  如果你的Assetbundle中的Prefab上引用的对象,那么这样做就会出错了,你需要设定他们的依赖关系。或者运行时通过脚本动态的载入对象。
全部回答
  • 1楼网友:夜余生
  • 2021-01-29 15:06
资源服务器 (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) 按钮。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯