重磅!Renderbus SDK v2.0全新发布!

2019-11-20 01:59:23

经过瑞云程序猿们数月夜以继日的开发,沟通,测试及修复,今天,Renderbus SDK v2.0版本正式发布上线!至此,与3D制作行业的管道集成将更简单高效。

软件开发工具包(SDK)包括代码以及示例,用户可以使用Python SDK灵活方便的使用瑞云的云渲染服务

SDK v2.0的优势主要体现在

1.自动化。SDK将使用云渲染服务的流程(分析场景,上传资产,渲染,下载)全部自动化。并且可以嵌入到客户自身的调度中(如DeadLine,Qube等);
2.开源。用户可自定义开发或提交开发建议;
3.跨版本。支持Python 2和Python 3;
4.跨平台。支持Windows和Linux;
5.安全性高。使用动态签名算法认证(HmacSHA256 + Base64 + UTC限时认证+随机数防止转移攻击),更安全;
6.提供多种使用方式。支持本地分析和不本地分析;
7.独立性好。将API与业务逻辑独立开来,易扩展;
8.文档更完善。

Renderbus SDK可用于瑞云渲染农场下的所有3D软件,目前支持分析的有 • Maya • Houdini • Clarisse

组件说明

1

安装说明
系统要求
python SDK 可在 Linux和 Windows 上运行。使用python2.7解释器或者python3.4+解释器

安装方式(rayvision_api为例)

方式一:下载GitHub源码安装方式(https://github.com/renderbus) git clone github.com/renderbus/rayvision_api.git

方式二使用pip安装,请执行以下命令(推荐指数****) 为了方便用户及时的使用最新的渲染包,我们搭建了一个PIP仓库(https://pip.renderbus.com/simple/), 用 户可以直接下载自己需要的包进行pip安装即可

方式三: 在IDE中配置我们提供的PIP仓库地址(推荐指数*) 以pycharm为例,可以进行如下设置即可随时获取最新的包:

2

3

认证方式

Python SDK目前支持AK/SK认证方式
服务地址及平台设置:云服务地址为task.renderbus.com,目前支持的平台有2,3,6,9以及21(GPU一区),32(GPU二区)

渲染平台在上下级级联传输数据,发起请求时采用了AK/SK生成鉴权信息进行安全认证,保证了数据传输的安全。

AK/SK认证方式示例代码:

微信截图 20191127145943

SDK的详细的入门教程

一、用户传递的配置参数

微信截图 20191127150106

4
二.登陆

api = RayvisionAPI(access_id=render_para['access_id'],
           access_key=render_para['access_key'],
           domain=render_para['domain'],
           platform=render_para['platform'])

三.设置渲染环境(插件配置、所属项目,软件信息校验)

task = RayvisionTask(cg_file=cg_file, **render_para)

返回: RayvisionAPI的对象,可通过此对象调用其他的方法

四.分析与校验

•使用SDK自动分析并校验数据

RayvisionAnalyse.execute(task)
RayvisionCheck(task).execute(task.task_info, task.upload_info)

•用户使用自己的分析文件并校验数据

自行分析格式样例请参考分析文件详细配置

task_info = {}
upload_info = {}
RayvisionCheck(task).execute(task_info, upload_info)

五.上传

•实例化传输类

transfer_info = {
  'config_bid': api.user_info['config_bid'],
  'input_bid': api.user_info['input_bid'],
  "output_bid": api.user_info["output_bid"],
  "domain": render_para['domain'],
  "platform": render_para['platform'],
  "local_os": render_para['local_os'],
  "user_id": api.user_info['user_id'],
  "local_path": r"C:\workspace",  # 下载资源本地保存路径
}

传输类参数

5

•开始上传

resource_config_file = {
  "task_json_path": task.task_json_path,
  "tips_json_path": task.tips_json_path,
  "asset_json_path": task.asset_json_path,
  "upload_json_path": task.upload_json_path,
}

upload = RayvisionUpload(trans)
upload.upload(task_id=task.task_id, **resource_config_file)

上传参数

6

六.提交任务

task_id = int(task.task_id)
result = api.submit(task_id)

七.下载

manage_task = RayvisionManageTask(api.query)
trans.manage_task = manage_task
#
download = RayvisionDownload(trans)
# SDK提供了2种自动下载的方式
# 1.只要有任何帧渲染结束,则立即自动下载出图文件到本地,直到作业完成。
download.auto_download([task_id])
# 2.所有都完成后,开始自动下载所有出图文件到本地。
download.auto_download_after_task_completed([task_id])

SDK常见问题

1 .如何获取密钥对 ?
1.1 首先你需要一个RenderBus账号;
1.2 你还需要在RenderBus 开发者中心 申请使用渲染SDK,并获取AccessID和AccessKey,如下图:

750

2.怎么设置只渲染首帧
1.获取一个task实例: task = RayvisionTask(cg_file=cg_file, **render_para) 2.设置参数“pre_frame”为“100”:

task.task_info['task_info']['pre_frames'] = "100"

3.怎么设置渲染完优先帧之后任务自动停止?
1. 跟任务有关的首选也需要获取一个task实例: task = RayvisionTask(cg_file=cg_file, **render_para) 2. 更改参数"stopaftertest"为“1”:

 task.task_info['task_info']['stop_after_test'] = "2"
 

4.如何获取用户信息呢?
获取用户相关的信息需要调用rayvision_api
4.1首先更加access_id和access_key登陆服务器,代码请参考登陆.

4.2调用相应接口获取用户信息:
获取用户账号信息:
user_profile = api. user.query_user_profile()
获取用户设置信息:
user_setting = api.user.query_user_setting()

详细的使用手册请查看RenderBus SDK 使用手册,有什么问题请咨询在线客服哦~

上一篇:CG技术控们有福啦!泛CG实用技术交流会来了

下一篇:《逆转次元·AI崛起》国产原创IP孵化与制作的商业密码