marvr_ios
论坛版主
论坛版主
  • UID3513
  • 粉丝10
  • 关注1
  • 发帖数144
  • 社区居民
  • 忠实会员
  • 原创写手
阅读:1014回复:0

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

楼主#
更多 发布于:2018-04-02 14:11
这篇给大家介绍如何在NVisionXR引擎中渲染骨骼动画。
NVisionXR引擎中,动画模型的格式为.mesh,材质贴图格式为.material,骨骼格式为.skeleton。具体参考NVisionXR引擎基本介绍

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

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

图片:WechatIMG202.jpg



图片:WechatIMG199.jpg



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

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


图片:WechatIMG201.jpg


代码:

    // 加载骨骼动画    
    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];



运行程序效果如下:

图片:WechatIMG203.jpg



欢迎联系:

开发者

欢迎分享

游客

返回顶部