`
projectanarchy
  • 浏览: 14814 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Vision引擎中着色器库创建和文件格式介绍

 
阅读更多
着色器库文件格式
有若干与着色器流水线创建有关的特殊文件格式。 在浏览器内,这些文件表现为如下结构:

下面是每种格式的介绍:
 
*.ShaderLib : 这些文件由 vForge 着色器编辑器生成。 它们包含着色器源代码和排列组合信息。 这些文件可以被引擎零售程序读取。 保存 .ShaderLib 文件时,vForge 会创建一个文件夹,其路径为着色器库文件路径再加上”.ShaderBin”。 现在,着色器库已不再包含任何二进制代码。 因为这样能够令着色器库呈现更清晰的结构,也更适合版本控制的要求。 但正因如此,着色器 bin 文件必须随程序发布,因为 shaderlib 不再提供二进制回退。
*.ShaderBin: 每个 *.ShaderBin 文件代表某个平台(DX9、DX10、Xbox 360、PS3)的二进制子集。 其中包含平台二进制信息,以及分层结构中相关的着色器效果(即包含该平台编译目标的效果)。 这些文件不含任何源代码信息,所以仅供程序零售版发布之用。
*.VSX: 可视化着色器编辑器生成的 XML 结构的文件。 其中包含用于创建着色器效果的节点信息和元信息。 因此引擎零售程序无法载入该文件,而只能由可视化着色器编辑器载入和保存。
 

总结:

扩展名 *.ShaderLib *.ShaderBin *.VSX
能读取该格式的工具 引擎 / vForge 引擎 vForge
能保存该格式的工具 vForge / vShader 编译 vForge / vShader 编译 vForge
是否随零售版发布

新建着色器库
为了有效组织项目中的着色器效果,您有时需要一个新的着色器库。 要创建新的着色器库,打开着色器编辑布局,在着色器库工具栏选择新着色器库图标。

按下后将打开保存对话框,请选择保存位置,为新库命名。

点击 OK,一个空白库将被创建,可立即添加着色器效果。

新建着色器效果
 
  引言
着色器效果资源包括一套技术回退分层结构。 每种技术引用一个或多个着色器通路资源,其中每条着色器通路定义一条渲染通路。 不同的技术可以通过独特的方式实现同一种效果,所使用的着色器复杂度不一而足。 这一机制可为老版本系统实现回退分层支持。

添加新效果
要为库添加新效果,可以打开一个已有库或创建一个新库。 
库被打开或创建时,右键单击空白处,或单击某个已有技术,然后选择添加新效果。

创建后,为您的新效果命名。 然后,您就可以为这一新效果添加技术了。 一个着色器效果可带有任意数量的技术和着色器通路。
 
添加技术
要添加技术,只需右键单击新效果,然后选择添加技术选项。

为新技术命名。

接下来,该技术还需要一条着色器通路。
 
添加一个着色器通路资源
有两种为您的技术添加着色器通路的方式。 第一种为技术添加着色器通路的方法是右键单击新技术,使用添加着色器选项选择一个可用的着色器通路。
  注:该选项仅显示此库中的可用通路。 如果还未创建任何效果,就没有可用的着色器通路,所以您必须创建一个。

选中一个着色器通路后,其状态如下图所示。 着色器通路显示为技术下方的红点。

第二种添加着色器通路的方法是从着色器列表将着色器通路拖拽到着色器库的技术中。

美工看不到回退分层结构。 但在回退名称中加入一些关于系统要求的有用信息(例如”SM11”)是合适的做法。 在分层结构中选择技术节点后,属性网格会显示该技术专有属性。 所以看不到回退分层结构也没有关系。
  注:一个技术可带有多个通路,并从上至下执行每个通路。 通路执行顺序可通过同一面板内的上下箭头调整。 高亮效果不应使用多重通路,因为该效果可使用专用技术(采样 / 高亮)。
分享到:
评论

相关推荐

    用于更改着色器以修复 3D Vision 中的游戏的 DirectX 挂钩库.zip

    用于更改着色器以修复 3D Vision 中的游戏的 DirectX 挂钩库用于更改着色器的 DirectX 挂钩使用这些包装器和固定着色器通常可以制作出符合 3D Vision 品质的游戏,打猎允许搜索着色器然后将其导出为二进制文件。...

    nivision.h.zip_NIVisi_nivision_nivision.h_nivision库文件

    NIVISION头文件,做机器视觉的朋友可以参考下,添加到所需的工程文件中

    VISION库模型.zip

    在VISION中,用户可以通过图形化的编程界面来创建和编辑虚拟仪器,进行数据采集、处理和分析。 在这个"VISION库模型.zip"中,我们可以期待找到各种电子元器件的模型,如电阻、电容、电感、二极管、晶体管、运算放大...

    VisionMaster算子图像格式互转

    总结来说,掌握在VisionMaster中进行图像格式转换的技巧,能够帮助用户更灵活地管理和应用图像数据,无论是进行单一的转换还是批处理操作,都能得心应手。通过了解这两种格式的特性以及转换方法,可以更好地适应不同...

    GigE Vision GenICam C 源码库

    3. **示例代码**:可能包含了一些演示如何使用这些库的示例程序,帮助开发者快速理解如何在实际项目中应用 GigE Vision 和 GenICam。 4. **文档**:可能包括详细的设计文档、API 参考手册和用户指南,解释库的使用...

    如何创建自己的库文件在MDK和IAR中

    MDK(Keil μVision)和IAR是两种广泛使用的嵌入式开发环境,它们都支持库文件的创建和使用。下面将详细介绍如何在MDK和IAR中创建自己的库文件。 ### 一、MDK (Keil μVision) 创建库文件 1. **新建工程**:首先...

    vision.rar_C# VISION引用_C#引用NI_Vision_c# vision_ni vision

    在本文中,我们将深入探讨如何在C#编程环境中引用并使用National Instruments (NI) 的Vision库,以便进行图像处理和机器视觉应用。标题"vision.rar_C# VISION引用_C#引用NI_Vision_c# vision_ni vision"以及描述"C#...

    海康VisionMaster中使用OpenCvSharp程序

    在VisionMaster中集成OpenCV库,可以极大地提升图像处理的效率和精度。OpenCVSharp是OpenCV的C#封装库,使得在.NET环境下调用OpenCV功能变得简单易行。本文将详细探讨如何在海康VisionMaster中使用OpenCvSharp进行...

    Opengl着色器播放器

    OpenGL着色器播放器是一款基于OpenGL技术开发的多媒体播放器,它结合了MFC(Microsoft Foundation Classes)框架和OpenCV库来实现视频处理和显示功能。在这个项目中,着色器是关键,它们允许对图形进行复杂的像素级...

    MS Vision 模板库

    在这个"MS Vision 模板库"中,用户可以找到各种预定义的图形和模板,减少了从头开始创建新图形的复杂度和时间。 "DataDomain-Storage.vss" 文件可能是一个专门针对数据存储领域的模板库。在IT行业中,数据存储是至...

    vision图标库大全

    在【描述】中提到,“史上最全的Visio图标库大全”意味着这个资源包提供了几乎所有的图标类别,无论你是设计复杂的业务流程,还是构建简洁的组织架构,都能在这个库中找到合适的元素。这大大提高了设计效率,避免了...

    µVision3中文帮助

    中文 µVision3 IDE用户指南 本用户指南描述了µVision3 IDE/Debugger,包含如下内容: 1.µVision3 综述 描述了µVision3 IDE及集成的调试器的主要...12.命令行调用介绍了如何从命令行或批文件中调用µVision3功能。

    vision-zjh

    首先,文档可能会介绍Vision引擎的基础概念,包括它如何处理图像数据,如何进行像素级别的操作,以及如何支持常见的图像格式如JPEG、PNG等。基础部分还会涉及色彩空间转换、图像缩放、旋转和裁剪等基本图像操作。 ...

    Visio常用图库_office vision图库,visio 传感器库-系统集成工具类资源

    标题中的"Visio常用图库"指的是Visio软件中的一系列预定义形状和模板,这些图库包含了多种行业标准的图形和符号,方便用户快速绘制专业图表。"Office Vision图库"可能是指Visio与Microsoft Office套件的其他应用(如...

    vision介绍

    此对话框与常见的文件打开对话框相似,但在文件类型筛选方面有所限制,只支持 TIF、BMP、JPG 和 PNG 等格式。此外,该对话框还提供了图像预览功能以及对文件基本信息的展示。 #### 四、采集图像功能 点击“Acquire...

    C#代码 NIVision Image To HalconImaget Hobject类型 图像格式转换.rar

    总结起来,本教程的重点是介绍如何通过C#代码桥接NIVision和Halcon之间的图像格式差异,从而实现跨平台的图像处理。这对于那些同时使用这两个工具的开发者来说是非常有价值的,因为它允许他们在不同的软件环境中无缝...

    open gige vision

    1. **库文件**:例如动态链接库(.dll on Windows, .so on Linux)或者静态链接库(.lib on Windows, .a on Linux),这些库文件供开发者在他们的应用程序中链接,以使用Open Gige Vision的功能。 2. **头文件**(.h...

    前端开源库-vision-style-loader

    1. **Webpack插件:** Vision Style Loader 是一个基于Webpack的加载器,它的主要任务是在Webpack构建过程中处理CSS和其他视觉相关的样式文件。Webpack加载器允许开发者自定义处理不同类型的模块,例如,将Less或...

    robot_vision

    在机器人技术领域,视觉系统是不可或缺的一...通过学习和理解这个项目,开发者不仅可以掌握ROS节点的创建和管理,还能深入理解OpenCV的图像处理和机器学习算法,这对于在现实世界中构建自主机器人系统是非常有价值的。

Global site tag (gtag.js) - Google Analytics