Vuforia AR SDK对模型进行控制(平移、旋转、缩放)

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)

2016/4/29 14:59:43

AR的兴起使AR培训越来越火爆,通过网络学到一些知识也是尤为重要的。

1、 写本地方法

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第1张图片

2、 使用javah命令生成头文件。

生成之后会在工程目录下看到头文件,需要刷新:

3、 Native层调用本地方法。

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第2张图片

经过javah命令之后,会生成对应native层的本地方法,例如:

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第3张图片

将方法拷贝到ImageTargets.cpp文件中,实现该方法:

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第4张图片

这就完成JNI通信部分。注意变量要自己设定。

4、 使用触屏事件,将数据传递到native层中,即ImageTargets.cpp中的两个方法。

触屏当然要在Java层实现啦,在ImageTargets.java中:注意黄色背景部分。

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第5张图片
Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第6张图片
Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第7张图片

5、 Native层OpenGL渲染

Native层获取从java层传递的值之后,需要使用OpenGL命令对模型进行控制,这个就在ImageTargets.cpp的JNIEXPORTvoid

JNICALL

Java_com_qualcomm_QCARSamples_ImageTargets_ImageTargetsRenderer_renderFrame(JNIEnv*,

jobject)方法中:

Vuforia AR SDK对模型进行控制(平移、旋转、缩放)_第8张图片

这三句分别控制模型的平移、旋转和缩放,传递的值在这里才起作用。

到这里,所有的都完成了。剩下的就是使用NDK编译生成so文件,再运行就可以了。

你可能感兴趣的:(Vuforia AR SDK对模型进行控制(平移、旋转、缩放))