当前位置: 首页 > news >正文

网站建设 万户建站跨境浏览网站

网站建设 万户建站,跨境浏览网站,网站建设名,做企业网站对企业的好处文章目录 Execution of Standalone Wrapper构建 (CMake)依赖关系构建步骤如果需要更改 GLSL 语法测试运行测试基本内部操作 Execution of Standalone Wrapper 要使用独立的二进制形式#xff0c;请执行glslang#xff0c;它将打印一条使用语句。基本操作是给它一个包含着色器… 文章目录 Execution of Standalone Wrapper构建 (CMake)依赖关系构建步骤如果需要更改 GLSL 语法测试运行测试基本内部操作 Execution of Standalone Wrapper 要使用独立的二进制形式请执行glslang它将打印一条使用语句。基本操作是给它一个包含着色器的文件它会打印出警告/错误以及可选的 AST。 应用的特定于阶段的规则基于文件扩展名 vert 顶点着色器tesc 曲面细分控制着色器tese 曲面细分评估着色器geom 几何着色器frag 片段着色器comp 计算着色器 对于光线追踪管道着色器 rgen 光线生成着色器rint 光线相交着色器rahit 光线任意命中着色器rchit 光线最接近的着色器rmiss 光线缺失着色器rcall 可调用着色器 还有一个非着色器扩展 conf 有关限制的配置文件请参阅使用阶段的示例 构建 (CMake) 除了手动构建您还可以直接从 GitHub 上的main-tot 版本下载适合您平台的二进制文件这些二进制文件在成功测试后由构建机器人自动上传并且它们始终反映main分支的最新状态。 依赖关系 C17 编译器。对于 MSVS使用 2019 或更高版本。CMake用于生成编译目标。make: Linux , ninja 是一个替代方案如果已配置。Python 3.x用于执行 SPIRV-Tools 脚本。如果不使用 SPIRV-Tools 并且“外部”子目录不存在则可选。bison可选但在更改语法时需要glslang.y。googletest可选但在对 glslang 进行任何更改时应使用。 构建步骤 以下步骤假设使用 Bash shell。在 Windows 上可能就是 Git Bash shell 或选择的其他 shell。 检出项目 cd parent of where you want glslang to be there git clone https://github.com/KhronosGroup/glslang.git检查外部项目 cd the directory glslang was cloned to, External will be a subdirectory git clone https://github.com/google/googletest.git External/googletest临时添加另外执行以下操作以避免 googletest 中的当前有所损坏 cd External/googletest git checkout 0c400f67fcf305869c5fb113dd296eca266c9725 cd ../..如果您希望确保从 HLSL 生成的 SPIR-V 对于 Vulkan 是合法的希望调用 -Os 来减少 HLSL 或 GLSL 中的 SPIR-V 大小或者希望运行集成测试套件请使用以下命令安装spirv-tools ./update_glslang_sources.py配置 假设源目录为$SOURCE_DIR构建目录为 $BUILD_DIR。首先确保构建目录存在然后进入到它 mkdir -p $BUILD_DIR cd $BUILD_DIR对于在 Linux 上构建 cmake -DCMAKE_BUILD_TYPERelease -DCMAKE_INSTALL_PREFIX$(pwd)/install $SOURCE_DIR # Release (for CMAKE_BUILD_TYPE) could also be Debug or RelWithDebInfo构建和安装 # for Linux: make -j4 install如果使用MSVCMicrosoft Visual Studio编译器运行CMake配置后使用配置管理器检查项目INSTALL。 如果需要更改 GLSL 语法 如果语法 glslang/MachineIndependent/glslang.y 发生变化则必须使用 bison 重新编译输出文件将提交到存储库以避免每个开发人员在语法更改非常罕见时需要配置 bison 来编译项目。对于 Windows您可以从GnuWin32获取二进制文件 。 重建的命令是 bison --definesMachineIndependent/glslang_tab.cpp.h-t MachineIndependent/glslang.y-o MachineIndependent/glslang_tab.cppupdateGrammar当从 glslang 存储库的 glslang 子目录执行时上述命令也可以在 bash 脚本中使用。 测试 目前glslang 中存在两种测试工具一种是Google Test一种是runtestsscript。前者运行单元测试和单着色器单线程集成测试而后者运行多着色器链接测试和多线程测试。 运行测试 该runtests脚本需要将编译的二进制文件安装到**$BUILD_DIR/install**。请确保您**-DCMAKE_INSTALL_PREFIX**在构建时已向 CMake 提供了正确的配置使用否则您可能需要脚本中的路径runtests。 运行Google Test 支持的测试 cd $BUILD_DIR# for Linux: ctest运行runtests脚本支持的测试 cd $SOURCE_DIR/Test ./runtests基本内部操作 初始词法分析由 中的预处理器完成 MachineIndependent/Preprocessor然后由 中的 GLSL 扫描器进行细化MachineIndependent/Scan.cpp。目前没有使用flex。MachineIndependent/glslang.y代码是在符号表和 AST 的帮助下使用 bison 进行解析的。符号表不会传递到后端中间表示是独立的。该树是由语法产生式构建的其中许多被卸载到ParseHelper.cpp、 和Intermediate.cpp。中间表示非常高级并表示为内存中的树。这不会丢失原始程序中的任何信息并且可以有效地将解析结果传输到后端。在 AST 中常量被传播和折叠并且消除了极少量的死代码。 为了帮助链接和反射AST 中的最后一个顶级分支列出了所有全局符号。后端编译器的主要算法是遍历树高级中间表示并创建内部目标代码表示。有一个关于如何执行此操作的示例MachineIndependent/intermOut.cpp。将树简化为线性字节码样式的低级中间表示可能是生成完全优化的代码的好方法。目前仍然存在一些已失效的旧式链接器类型代码。内存池解析使用从 Cstd类型派生的类型使用自定义分配器将它们放入内存池中。这使得单个容器/内容物的分配只需几个周期并且无需重新分配。该池在 AST 生成并处理后弹出。 使用很简单如果要调用new则分为三种情况 该对象来自池它的基类 POOL_ALLOCATOR_NEW_DELETE中有宏您不必调用delete 它是一个TString在这种情况下 call NewPoolTString()它从池中获取它并且没有相应的delete 该对象不是来自池你必须对你的对象进行正常的 C 内存管理new功能可以通过版本/扩展/级别/配置文件进行保护请参见中的评论glslang/MachineIndependent/Versions.cpp。
http://www.tj-hxxt.cn/news/141321.html

相关文章:

  • app那个网站开发比较好阿里巴巴网页设计教程
  • 网络推广 网站制作电影网站源码系统
  • 微信开发网站建设西安公司最新招聘信息
  • wordpress网站跳转nginx国外酷炫网站
  • 备案 网站建设方案书怎么写qq群引流推广平台免费
  • 建怎么网站比较赚钱高端礼品定制网站
  • 怎么自己做五合一网站wordpress文字
  • 哪家网站建设公司好网站建设市场价
  • 永川区做网站WordPress微信签到
  • 网站空间不能读数据库搜索引擎关键词广告
  • 试剂网站建设淘客帝国 wordpress
  • 网站框架设计图wordpress照片exif
  • php网站有点哪个网站专门做母婴
  • 小学教育网站专题模板WordPress页面生成时间
  • 江西科技学校网站建设wordpress 手机端分开
  • 营销型门户网站有哪些做平面设计好的网站有哪些
  • 佛山网站优化有it运维发展方向
  • 怎么在网站做外部链接成都 网站原创
  • 大理装饰公司做网站vps wordpress
  • 网站开发硬件配置苏州手机网站建设报价
  • seo证书考试网站个人直播网站怎么做
  • 企业网站开发价格成都最专业做网站的
  • 盘锦市建设局网站地址网站地图建设有什么用
  • 网站建设流程总结编程app用什么软件
  • 关于美食的网站设计网络管理系统的配置管理最主要的功能是
  • 广西网站建设价格低宁波网站建设公司制作网站
  • 动易 网站顶部导航 sitefactory长沙竞价网站建设价格
  • 克拉玛依市区建设局网站中国建筑股吧
  • 台商区住房和建设网站个人网站注册步骤图解
  • 搭建网站平台做网站建设出路在哪里