NVisionXR_iOS教程九 —— 渲染一个骨骼动画

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NVisionXR_iOS教程九 —— 渲染一个骨骼动画相关的知识,希望对你有一定的参考价值。

这篇给大家介绍如何在NVisionXR引擎中渲染骨骼动画。 
NVisionXR引擎中,动画模型的格式为.mesh,材质贴图格式为.material,骨骼格式为.skeleton。具体参考NVisionXR引擎基本介绍 

在我们NVisionXR引擎中,我们内置了一个Rabbit的动画,但是我们是将其资源整合为zip。NVisionXR引擎支持直接读取并加载渲染zip中的资源文件。这种方式有两方面的优势: 
1、可以很好地管理资源 
2、节约空间,最多可以节约80% 

所有自己添加的资源需要在导演类实例话后,场景加载之前添加,我们在NVisionController.m中预加载zip文件路径。 
技术分享图片 

技术分享图片 

代码: 

    // 加载骨骼动画资源     
    NSString *path = [[NSBundle mainBundle] pathForResource:@"UserRes.bundle/Rabbit.zip" ofType:nil];     
    [[NVAppDirector sharedNVAppDirector] setResourcesPath:path type:ZIP];

 
MyFirstScene.m中添加头文件 #import "NVSkeletonWidget.h" 
在onCreate方法中实例话骨骼动画,如下图: 

技术分享图片 
代码: 
 

   // 加载骨骼动画     
    NVSkeletonWidget *mRabbit = [[NVSkeletonWidget alloc] initWithScenePlay:self WidgetName:@"Rabbit"];     
    // 添加模型形状     
    [mRabbit setShape:@"Rabbit_LowPoly_RigUnity_Final.mesh"];     
    // 设置位置 
    [mRabbit setPosition:NVPosition(0, 5, 0)];     
    // 设置缩放 
    [mRabbit setScale:NVPosition(0.015, 0.015, 0.015)];   
    // 添加动画名称 
    [mRabbit addAnimation:@"BaseFBXFileAnim"];   
    // 添加到场景中 
    [self addWidget:mRabbit];


运行程序效果如下: 
技术分享图片 

以上是关于NVisionXR_iOS教程九 —— 渲染一个骨骼动画的主要内容,如果未能解决你的问题,请参考以下文章

NVisionXR_iOS教程十 —— 加载视频控件

NVisionXR_iOS教程六 —— 场景中对象交互

NVisionXR_iOS教程八 —— 场景中添加粒子

NVisionXR_iOS教程十二 —— 多图识别

NVisionXR_iOS教程十一 —— 多场景切换

NVisionXR_iOS教程七 —— 场景中物体运动