zoukankan      html  css  js  c++  java
  • [原][spark]帧序列的纹理UV索引,修改spark源码,改变纹理索引方式,支持常规帧序列

    spark的纹理索引方式是左下为最小值0 右上为最大值k ,遍历顺序为横向即:

      3  4  5

      0  1  2

    而常规的纹理帧序列是这样的:

      0  1  2

      3  4  5

    所以,为了让spark的纹理遍历顺序能按照常规的纹理遍历顺序,需要改spark的源码;

    在SPARK核心工程的SPK_QuadRenderBehavior.h头文件中

    247行:完成如下修改即可:

    	inline void QuadRenderBehavior::computeAtlasCoordinates(const Particle& particle) const
    	{
    		//edit by 南水之源: for UV 从左上为 00, 右下为最大
    		//之前的UV是左下为00,右上最大
    		int textureIndex = static_cast<int>(particle.getParamNC(PARAM_TEXTURE_INDEX));
    		atlasU0 = atlasU1 = static_cast<float>(textureIndex % textureAtlasNbX) / textureAtlasNbX;
    		//atlasV0 = atlasV1 = static_cast<float>(textureIndex / textureAtlasNbX) / textureAtlasNbY;
    		atlasV0 = atlasV1 = 1.0 - static_cast<float>(textureIndex / textureAtlasNbX) / textureAtlasNbY;//edit
    		atlasU1 += textureAtlasW;
    		//atlasV1 += textureAtlasH;
    		atlasV1 -= textureAtlasH;//edit
    	}
    

      

  • 相关阅读:
    JS事件委托学习(转)
    js 监听监键盘动作(转)
    JS操作JSON总结
    靶机练习-VulnHub-Toopo
    Web安全测试学习笔记
    Web安全测试学习笔记
    PentesterLab练习
    CTF-攻防世界-supersqli(sql注入)
    工具学习
    漏洞复现-ElasticSearch 命令执行漏洞(CVE-2014-3120)
  • 原文地址:https://www.cnblogs.com/lyggqm/p/10120634.html
Copyright © 2011-2022 走看看