首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HLSL - int(x)或int(value)在High Level Shading Language 2.0中做什么?

HLSL - int(x)或int(value)在High Level Shading Language 2.0中做什么?
EN

Stack Overflow用户
提问于 2017-04-23 00:20:40
回答 1查看 1.2K关注 0票数 0

我被要求将一些旧的HLSL代码(Shader Model 2.0/3.0)移植到另一种语言中。

代码中有一行内容为- int(value)int(x)

但它似乎不是“转换为整数”或“返回整数”或类似的命令。

有人知道int(x)在旧版本的HLSL中做了什么吗?

非常感谢!

编辑:/

代码中的代码行为:

x = int(x / 12) * 12;

它似乎打算“步进”或“卡通”x的值……这应该与使用两个代码行相同;

代码语言:javascript
复制
int x2 = x / 12;   
x = x2 * 12;  

一个接一个,但结果不同-当我使用2行版本时,渲染的图像完全搞砸了。我也许能够完全删除这一行,并将其替换为其他代码...这不是一个非常关键的操作。但我很好奇的是

x = int(x / 12) * 12;

实际上是在HLSL着色器模型2.0/3.0下对x的值执行此操作。谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2017-04-23 00:59:11

这是一个构造类型转换,就像在C++或C#中一样--通常,type(arg)通过从一个或多个参数构造一个该类型的值,将参数转换为type

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43561580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档