⼿把⼿教你成为Shader编程达⼈系列概述
最近,很多⼤型的游戏公司或者虚拟现实公司,都在⼤量招聘从普通的引擎程序员到资深的引擎程序员或者引擎主管等职位。对于从事游戏开发的程序员,尤其是客户端程序员掌握GPU编程⾮常重要,由于项⽬分⼯的缘故,⼤部分程序员并没有接触到GPU编程,认为GPU编程很⾼深,在项⽬开发过程中并不关⼼,只负责写逻辑,这样做的后果会严重阻碍⾃⼰的职业发展。作为⼀名从事IT⾏业多年的⽼程序员,给读者⼀点建议,要想在⾏业⽴⾜,技术要做到全⾯,当然⾃⼰最拿⼿的技术要精,这样对于你职位的晋升,⾮常有帮助。IT公司的技术⾼管,他们的技术都⾮常全⾯,这样它才能把控整个公司研发团队的技术⾛向。⼈⽣在世,⼈追求的⽆⾮就是名和利。利,需要⾃⼰去扩展技能,名,是靠好的项⽬,这样的项⽬可遇⽽不可求,⼤部分程序员做的项⽬都是默默⽆闻的。所以,我们只能去丰富⾃⼰的技能来满⾜利,但很多程序员并没有去扩展⾃⼰的技能,⽆⾮有这⼏个原因:⽐如项⽬任务重,没时间;不知道学习啥;满⾜于现状,不思进取等等。
现今,玩家对于游戏品质的要求越来越⾼,GPU编程对于游戏开发来说,所占⽐重也越来越⼤,⼀款游戏给⼈的第⼀印象就是游戏的渲染效果,⼤家如果看过Unity或者UE4的发布会,他们给⼈的感觉就是渲染技术很⽜逼,这些⽜逼的画⾯都是通过GPU编程实现的。⽽会GPU编程的引擎程序员就显的尤为重要了,国内精通GPU编程的引擎程序相对来说⾮常少,物以稀为贵。为了帮助想学习GPU编程,⼜不知道如何下⼿的开发者,特意做了 ⼀个系统的GPU学习教程。
单人开发选ue4还是unity我们的系列内容由浅⼊深,所涉及内容都是与实战相关,⽬前,动漫,游戏,虚拟现实,增强现实等使⽤了⼤量的GPU渲染,画⾯⾮常逼真,在国内IT公司或者跨国公司对GPU开发⼈员需求⾮常⼤,市场前景⾮常⼴阔。作为程序员如果掌握了GPU编程,富丰了⾃⼰的技术库,真正成为技术复合型⼈才。
提升任何技术都不是⼀蹴⽽就的,需要循序渐进,学习GPU编程也是⼀个逐步提升的过程,本系列就是为想学习GPU编程的开发者量⾝打造,所列知识点都是经过实战检验的,适合开发者系统学习。
本课程主要分为三⼤部分:
1.第⼀部分为 基础篇介绍,主要介绍学习GPU编程所需的基础知识,这个是学习GPU编程必备条件。
2.第⼆部分为 进阶篇介绍,主要讲解的是GPU编程的关键知识点,这些知识点都是与GPU编程相关的。
3.第三部分为 提⾼篇介绍,结合项⽬实际案例讲解,这些案例在项⽬中经常使⽤。
最后,在这也给读者澄清⼀件事情,很多⼈认为,GPU编程是底层编程,这是⼀个错误的认识。GPU编程它针对的是Shader脚本编程,底层的接⼝引擎已经为我们封装好了,我们⽆需关⼼,我们关⼼的是使⽤GPU脚本编写我们的渲染算法满⾜项⽬的需求。再将我们所写的Shader脚本通知引擎帮助我们加载解释,最后应⽤到模型材质和场景的渲染上。 当然,GPU能做的事情远远不⽌这些,后⾯会⼀⼀道来。