准备工作
因为我们要调用的是腾讯的远程API滤镜接口,因此要先注册账号(注册地址),然后创建应用程序,进入控制台,点击“创建应用”即可完成创建。再查看应用信息,拷贝app_id和app_key,后面要用到。如下图所示:
这里也给出腾讯AI滤镜的开发文档地址(开发文档),大家可以先自己了解一下,然后再往下看。
核心代码讲解
总共有天天P图和AI Lab两个滤镜API接口,不过参数基本相同,都是htpp post请求。本文是基于Unity2018.3.0进行开发,将使用UnityWebRequest进行post请求。API 具体的请求参数如下:
对于天天P图的API接口,总共有6个参数,app_id大家可以在上面创建的应用信息中找到,如下图:
filter对应的是滤镜的效果id,天天P图有32种效果,为1-32;AI Lab有65种效果为1-65;接下来主要重点讲解一下其他三个参数。
首先是time_stamp,int类型,根据字段描述,可以知道是请求时间戳,以秒为单位,因此只要算出当前时间距1970.01.01:00:00:00的秒数就好,具体代码如下:
1
2
3
4
5
6
7
8private string GetUnixTimestamp()
{
//获取时间
TimeSpan timeSpan = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0);
//将时间转换为以秒为单位,因此是64位的整型值
return Convert.ToInt64(timeSpan.TotalSeconds).ToString();
}</