如何在 Metal Shading Language 中使用 modf 函数?
How do I use the modf function in Metal Shading Language?
我需要将 float
的小数部分与整数部分分开。在 C 中,我可以使用 modf
来实现这一点。当我尝试在 Metal Shading Language 中使用相同的函数时,它 returns 出现以下错误:
No matching function for call to 'modf'
Fix in metal_math
按“在 metal_math 中修复”只会导致 metal_math 文件出现更多问题。有什么方法可以让我使用 modf
或替代方法来获取 Metal Shading Language 中的小数部分。到目前为止,这是我在金属着色语言中的代码。
float f = <some float of undetermined precision>;
float decimal;
modf(f, &decimal);
您应该通过引用而不是地址传递您的值。
将您的代码替换为:
modf(f, decimal);
我需要将 float
的小数部分与整数部分分开。在 C 中,我可以使用 modf
来实现这一点。当我尝试在 Metal Shading Language 中使用相同的函数时,它 returns 出现以下错误:
No matching function for call to 'modf'
Fix in metal_math
按“在 metal_math 中修复”只会导致 metal_math 文件出现更多问题。有什么方法可以让我使用 modf
或替代方法来获取 Metal Shading Language 中的小数部分。到目前为止,这是我在金属着色语言中的代码。
float f = <some float of undetermined precision>;
float decimal;
modf(f, &decimal);
您应该通过引用而不是地址传递您的值。 将您的代码替换为:
modf(f, decimal);