首  页 | 资讯中心 | 网络学院 | 天新汽车 | 天新手机 | 天新游戏 | 软件开发 | 考试认证
品 牌 机 | 笔 记 本 | 服 务 器 | 天新数码 - DC - DV - MP3 - MP4 - GPS - TV | 数字家庭
硬件 DIY - 主板 - CPU - 内 存 - 硬 盘 - 显示器 - 显卡 - 光驱 - 机箱 - 键鼠 - 网络设备
办公设备 | 打 印 机 | 扫 描 仪 | 投 影 仪 | 一 体 机 | 传 真 机 | 路 由 器 | 交 换 机
软件下载 | 驱动下载 | 游戏下载 | 源码下载 | 教程下载 | 站长在线 | 产品中心 | 报价中心
开发首页 | 开发语言 | .Net开发 | Java开发 | Web开发 | 数据库开发 | 移动开发 | 游戏开发 | 企业开发 | 操作系统 | 软件工程
VB VC Delphi PB BCB C++ - ASP.net C# VB.net - J2EE J2SE J2ME EJB - ASP PHP JSP CGI - MSSQL Oracle DB2 MySQL - CodingLife
  您现在的位置:天新网 > 软件开发 > 游戏开发
GLSL基础教程(一)
http://dev.21tx.com 2006年12月13日 Skyman

每日文章精萃
.Net:Visual C++.NET编程讲座之八 Java:实战JBuilder7+WebLogic7存取SQL S
ASP:ASP中如何在网页上输入中文日期 PHP:用PHP实现验证码功能
JSP:Java中文问题详解,底层编码解剖 CGI:Perl教学 第十篇 格式化输出之一
VB:VB开发通讯软件 VC:串口侦听监视及TCP/IP协议解析软件简

   
    高级着色语言(HLSL――High Level Shading Language)是用来在顶点和像素着色器(shader)中编程的语言。其实,说白了他们就是我们写的短小的自定义程序,他们是在图形卡的GPU(Graphic Processor Unit图形处理单元)上执行的,代替了固定的渲染管线的一部分。比如:视图转换、投影转换等。

由于我们可以将HLSL着色器所写的代码直接作为长字符串资源放进应用程序中。所以,我们可以在记事本中描写我们的着色器代码。

GLSL(GL Shading Language)的着色器代码分成2个部分:Vertex Shader(顶点着色器)和Fragment(片断着色器)。下面主要关于顶点着色器代码。

顶点着色器主要的工作是:

1.     利用视图和投影矩阵对点的位置进行变化

2.     如果需要利用法线的时候,也同样需要利用视图矩阵对其进行转换

3.     纹理坐标的产生和转换

4.     顶点的光照或者象素光照的计算

5.     颜色计算

并不是所有的工作都需要做,只需根据自己的需要进行不同的编写

负责运行顶点着色的是顶点处理器。它可以得到当前OpenGL中的状态,GLSL内置变量进行传递。比如gl_ProjectionMatrix(投影变换矩)、gl_ModelViewMatrix(视图变换矩阵)、g_position、gl_Backcolor、gl_Frontcolor、gl_Normal等;而这些又是根据OpenGL应用程序传递诸如顶点位置、颜色、法线等信息。举一个简单的顶点着色器代码:

        void main()
               {       
                              gl_Position = gl_ProjectionMatrix * gl_ModelViewMatrix * 
                                gl_Vertex;
               }
 
--未完待续--

 

 

上一篇: 游戏中输入的处理
下一篇: 游戏中音频的处理

编辑推荐
相关内容
·Quake源碼的一個參數引用技巧
·构造使用类C语言的脚本引擎(3)词法分析
·构造使用类C语言的脚本引擎(5)语法检查,生
·j2me学习方法总结--摘录篇
·OGRE教程(一):SceneNode, Entity, Scene
·矩阵类模板
·看骂国产游戏、骂国内制作者的文章
·DirectX5.0最新游戏编程指南 DirectDraw篇
·实现爆炸后的振动效果
·色环
·向量几何在游戏编程中的使用4
·人们为什么玩游戏———节选自《游戏设计原
·Interlocking Tile LOD算法演示(包括部分
·手机游戏设计心得(1)--ACT类游戏中地图的
·游戏引擎剖析 1-1
·使用vb.net实现五子棋的人工智能5电脑算法2
·Game Development Methodology for Small D
·网络游戏外挂制作之我所见(1)
·Win32的512字节Intro
·用Gamma控制来实现FadeIn和FadeOut
最近更新
人气最热
·游戏中输入的处理
·游戏中音频的处理
·Toon Shading Using GLSL
·Java 2游戏编程读书笔记(3)
·A*寻路算法
·DXUT 框架入门 1
·对LR回放中highest severity level was"ERR
·关于LUA中的随机数问题
·卡通渲染进展(一)
·PhysX SDK物理引擎开发包使用教程
·google 卫星地图之中国主要城市
·j2me学习方法总结--摘录篇
·PhysX SDK物理引擎开发包使用教程
·ZLib2000 3D加速渲染2D游戏
·电脑游戏中的人工智能制作
·手机游戏设计心得(1)--ACT类游戏中地图的
·The Art of Computer Game Design--Chapter
·飞机躲避小游戏---是男人就撑100秒的制作
·再提供两套清纯美女扑克
·【分享】100多个3D模型下载站

 
·[硬件]DIY宝典:BIOS刷新升级相关问答4则
·[数码]看清奸商嘴脸 揭穿MP3惯用之十大猫腻
·[汽车]06款宝马530i发动机升级 售价调整为63.
·[开发]RAD与non-RAD
·[资讯]百元笔记本成本费用为150美元
·[游戏]《鬼泣3》全SS评价心得
·[本本]戴尔全球NB出货95%来自马来西亚
·[办公]边缘融合大屏幕拼接系统之应用发展
·[手机]带您删除Windows mobile系统程序
·[考试]CCNP认证介绍
·[学院]以逸待劳应对垃圾邮件-Foxmail篇
·[娱乐]高台滑雪
 

关于我们 | 联系我们 | 广告服务 | 工作机会 | 版权声明 | 欢迎投稿 | 网站地图
Copyright © 2000-2008 , www.21tx.com , All Rights Reserved .
© 晨新科技 版权所有 Created by TXSite.net