class0

作者: 阿瑟琴 | 来源:发表于2018-11-20 10:22 被阅读0次

    学习目标

    • GPU 历史和渲染流水线
    • GPU 编程API(Cg,HLSL,*GLSL)
    • 学会Vertex Shaders, Geometry Shader and Fragment Shaders
    • 基于GPU渲染技术和应用
    • 通用GPU基础、工具和应用

    参考书

    • OpenGL Shading Language
    • Unity shader 入门精要

    考察方式

    • 50%(课堂表现和平时作业)
    • 50%大作业(给定系统,为系统写shader,阴影?材质?)

    作业

    发送email

    附加:

    推荐课程

    基于GPU的计算

    自查资料

    Cg
    Cg语言(C for Graphics)是为GPU编程设计的高级着色器语言,由NVIDIA公司开发。Cg极力保留C语言的大部分语义,并让开发者从硬件细节中解脱出来,Cg同时也有一个高级语言的其他好处,如代码的易重用性,可读性得到提高,编译器代码优化。最新版本为3.1,当前已不再被积极开发与支持.

    HLSL
    高阶着色器语言(High Level Shader Language,简称HLSL),由微软拥有及开发的一种语言,HLSL 独立的工作在 Windows 平台上,只能供微软的Direct3D使用。 HLSL是微软抗衡GLSL的产品,同时不能与OpenGL标准兼容。他跟Nvidia的Cg非常相似。 HLSL的主要作用为将一些复杂的图像处理,快速而又有效率地在显示卡上完成,与组合式或低阶Shader Language相比,能降低在编写复杂特殊效果时所发生编程错误的机会。 HLSL已经整合到了 DirectX 9中。

    GLSL
    OpenGL着色语言(OpenGL Shading Language)是用来在OpenGL中着色编程的语言,也即开发人员写的短小的自定义程序,他们是在图形卡的GPU (Graphic Processor Unit图形处理单元)上执行的,代替了固定的渲染管线的一部分,使渲染管线中不同层次具有可编程性。比如:视图转换、投影转换等。GLSL(GL Shading Language)的着色器代码分成2个部分:Vertex Shader(顶点着色器)和Fragment(片断着色器),有时还会有Geometry Shader(几何着色器)。负责运行顶点着色的是顶点着色器。它可以得到当前OpenGL 中的状态,GLSL内置变量进行传递。GLSL其使用C语言作为基础高阶着色语言,避免了使用汇编语言或硬件规格语言的复杂性。

    相关文章

      网友评论

          本文标题:class0

          本文链接:https://www.haomeiwen.com/subject/tlrtqqtx.html