博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[原]unity3d 纹理旋转
阅读量:5310 次
发布时间:2019-06-14

本文共 467 字,大约阅读时间需要 1 分钟。

纹理旋转实现思路:纹理坐标*平移矩阵*旋转矩阵(类似顶点旋转);

矩阵一般要求中心点为(0,0) 而纹理中心点默认(0.5,0.5);所以先得平移到(0,0);可以考虑乘以平移矩阵[1,0,0,0,1,0,-0.5,-0.5,1]

也可以直接简化 (texcoord.x-0.5,texcoord.y-0.5)。

纹理坐标二维坐标 旋转矩阵为[cosA,sinA,-sinA,cosA]; 旋转结果:mul(平移后纹理坐标,旋转矩阵) //注意 u3d中mul函数,我用的不好使,我直接用后面的公式算的;旋转后的纹理坐标=(cosA(x-0.5)-sinA(y-0.5),sinA(x-0.5)+cosA(y-0.5));

因为纹理坐标范围[0,1] 所以需要把旋转好的纹理在平移回来;旋转好的纹理坐标+float2(0.5)=最终输出纹理;

如果实现纹理移动 需要TRANSFORM_TEX(最终输出纹理, _MainTex);

转载于:https://www.cnblogs.com/U-tansuo/p/3738592.html

你可能感兴趣的文章
百度Ueditor编辑器的Html模式自动替换样式的解决方法
查看>>
变量提升
查看>>
线性表可用顺序表或链表存储的优缺点
查看>>
在现有的mysql主从基础上,搭建mycat实现数据的读写分离
查看>>
[Flex] flex手机项目如何限制横竖屏?只允许横屏?
查看>>
tensorflow的graph和session
查看>>
JavaScript动画打开半透明提示层
查看>>
Mybatis生成resulteMap时的注意事项
查看>>
jquery-jqzoom 插件 用例
查看>>
1007. Maximum Subsequence Sum (25)
查看>>
图片生成缩略图
查看>>
查看oracle数据库的连接数以及用户
查看>>
【数据结构】栈结构操作示例
查看>>
三.野指针和free
查看>>
activemq5.14+zookeeper3.4.9实现高可用
查看>>
TCP/IP详解学习笔记(3)IP协议ARP协议和RARP协议
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>