微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Visual Studio 2019 的 HLSL 工具包含文件问题

如何解决Visual Studio 2019 的 HLSL 工具包含文件问题

我正在使用带有 HLSL 工具扩展的 Visual Studio 社区版本 2019 进行着色器编辑。

让我们考虑以下情况。

//定义一个全局使用的结构 源文件 A:structure_def.inc

struct Global_used_structure
{
  float a;
  float b;
}

// B 正在使用它 源文件 B:B_using_structure_A.fx

include "structure_def.inc"

Global_used_structure my_point ;

// C 正在使用它

文件 C:C_using_structure_A.fx

include "structure_def.inc"

Global_used_structure my_other_point ;

// D 也在使用它 源文件 D:problem_file.fx

include "structure_def.inc"
include “B_using_structure_A.fx”
include “C_using_structure_A.fx”

Global_used_structure my_new_point ;

在这里我会得到重新定义结构的错误,因为它被多次包含。 但在此版本中,HLSL 工具的语法突出显示和上下文帮助可以正常工作。

好的,我可以改变

//定义一个全局使用的结构体 源文件 A:structure_def.inc

#ifndef Global_used_structure_H
#def Global_used_structure_H

struct Global_used_structure
{
   float a;
   float b;
}
#endif

在这个版本中,代码将被编译,

但是我丢失了包含文件内容代码敏感功能

  • 例如转到定义 而且 HLSL 工具会突出显示代码中的很多错误,因为结构没有正确识别。

如何解决这个问题?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。