• cocos2dx 实现gpu instancing


    所有的gpu instancing都是在unity3d上实现的,ue4实现起来应该压力也不大
    相关链接见下:
    https://www.cnblogs.com/hont/p/7143626.html
    https://blog.csdn.net/leonwei/article/details/77387357
    https://www.cnblogs.com/murongxiaopifu/p/7250772.html

    untiy5.4之后可以在shader种选择是否支持gpu instance


    cocos最终实现的结果,批次总共是4,绘制三个骨骼动画,批次加一
    骷髅的位置,动作时间都可以通过instance的参数来调


    实现要点:
    首先数据准备,采用的跟unity一样的思路(本开始打算用上面链接中的方法,将动作烘到图片上然后给cocos使用,但是用的过程中发现数据的顺序以及数据有些不同。。。这样的话还需要对数据进行处理,这样可能cocos种还不知道有多少坑)
    用cocos烘出动作数据存储到一个二进制数据中,水平方向记录网格各个顶点的位置,垂直方向是时间信息。用到的小骷髅模型对应的数据如上图所示,我直接采用的glfloat的精度。
    烘完之后,自己写mesh的渲染,写相应的shader进行渲染
    如果不想改源代码,需要扩展mesh的绘制命令 
  • 相关阅读:
    数据清洗
    JAVA多线程三种实现方式
    QT-4.8.6 编译配置过程
    qt 编译问题总结
    [转载]tslib1.4与Qt4.8.6的交叉编译与移植
    STC12C5A60S2 @ 22.0184Mhz 精确延时
    STC12C5A60S2 双串口通信
    C# Bitmap 复制
    TextMate2 最新版下载及源码编译过程
    mac系统 PHP Nginx环境变量修改
  • 原文地址:https://www.cnblogs.com/cg_ghost/p/10299088.html
Copyright © 2020-2023  润新知