关于HLSL的问题

WJN92 2018-08-06 04:45:43
HLSL不能使用float3x3作为const buffer吗?
发现如果使用了float3x3的话计算出来的数都是错的




...全文
701 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
WJN92 2018-11-11
  • 打赏
  • 举报
回复
引用 2 楼 P_hantom 的回复:
你能把shader贴出来吗?CB确实是float4对齐的,但是 HLSL 里面写 float3x3 是应该可以自动对应过去的,不会出现数据取错问题啊


你也可以自己随便找个4x4该成3x3的试试,反正试了好几种都不行。
IONPhantom 2018-11-11
  • 打赏
  • 举报
回复
你能把shader贴出来吗?CB确实是float4对齐的,但是 HLSL 里面写 float3x3 是应该可以自动对应过去的,不会出现数据取错问题啊
mach 2018-09-21
  • 打赏
  • 举报
回复
constant buffer是按16字节对齐的,所以实际上你的float3x3矩阵应该是float4x3的。

456

社区成员

发帖
与我相关
我的任务
社区描述
其它游戏引擎
社区管理员
  • 其它游戏引擎社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧