【发布时间】:2021-02-18 00:08:43
【问题描述】:
我正在尝试使用更小的数据结构来存储 Metal 顶点数据。 Particle 结构在 Swift 和 Metal 之间共享,但出现以下错误:
Unknown type name 'simd_half3'; did you mean 'simd_char3'
我需要导入什么来克服这个编译错误?
(直接粘贴到金属着色器文件中时会编译相同的结构)。是不是因为 Swift 中没有 half 类型?
ShaderTypes.h - C 头文件
#ifndef ShaderTypes_h
#define ShaderTypes_h
#include <simd/simd.h>
struct Particle {
simd_float3 floatTuple; // works fine
simd_char3 charTuple; // works fine
simd_half3 halfTuple; // Unknown type name 'simd_half3'; did you mean 'simd_char3'
};
#endif /* ShaderTypes_h */
所有这些类型都定义在同一个文件中,使用命令单击,我可以跳转到它们的定义(因此编辑器知道类型),但我仍然得到那个构建错误。
【问题讨论】: