[Unity3D]Shader学习笔记之图像编程接口与着色语言

本文介绍了Unity3D中图像编程接口如OpenGL和DirectX的作用,它们作为应用程序与GPU之间的桥梁,通过显卡驱动进行GPU通信。接着,探讨了着色语言,包括HLSL、GLSL和Cg,讨论了它们的特性和适用场景,如GLSL的跨平台性和HLSL的硬件一致性。
摘要由CSDN通过智能技术生成

图像编程接口

  如果开发者直接访问CPU、寄存器、显存等硬件设备将会是一件非常麻烦的事情,为了方便使用在这些硬件的基础上实现了一层抽象,这就是图像编程接口
  OpenGL和DirectX就是这些图像编程接口,这些接口用于渲染二维或三维图形。这些接口架起了上层应用程序和底层GPU的沟通桥梁。
  一个应用程序向这些接口发送渲染命令,而这些接口会依次向显卡驱动(Graphics driver)发送渲染命令也称为Draw Call,这些显卡驱动是真正知道如何和GPU通信的角色,它们把OpenGL或者DirectX的函数调用翻译成GPU能够识别的语言,同时它们也负责把相关数据转换成GPU所支持的格式。显卡驱动就好比是显卡的操作系统。
  一个显卡除了有图像处理单元GPU之外,还拥有自己的内存,这个内存通常被称为显存(Video Random Access Memory, VRAM)。GPU可以在显存中存储任何数据,但对与渲染来说一些数据类型是必须的,例如用于屏幕显示的图像缓冲、深度缓冲等。
  图像编程接口一个显卡制作商为了让他们的显卡可以同时和OpenGL和DirectX合作,就必须提供支持OpenGL和DirectX接口的显卡驱动。

这里写图片描述

着色语言

  着色语言(Shading language)是专门用于编写着色器的,常见的着色器语言有:

  • DirectX的HLSL(High Level Shading La
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值