作者:i_dovelemon

日期:2016 / 05 / 30

主题:3D,Graphics

引言

进公司以来,主要在学习的就是如何保证代码的质量,以前热爱的图形学也放置了。但是,作为游戏程序员,特别是3D游戏程序员,图形学的重要不言而喻。从今天开始起,将进行GraphicsLab Project学习项目,此项目旨在学习常用的图形学方面的知识,一方面构建在图形方面的知识库,另一方面也希望以此激励在同一条道路上行走的伙伴们继续坚持下去。

GraphicsLab Project将以理论总结配合实际实现的方式展现出来,基于的渲染库不定,随性而为,可能使用OpenGL,可能使用DirectX,也可能两种实现都给出。

每一篇分支章节,都会在本篇文章中给出索引列表。希望能够方便大家查阅,同时也鞭策自己不断的学习。

项目GitHub地址

这个项目已经在Github上开源了代码,感兴趣的同学可以自行查看下:https://github.com/idovelemon/GraphicsLabtory

我给GLB渲染库设计的了一个简单的LOGO:

章节列表

[1] GraphicsLab Project之辉光(Glare,Glow)效果

[2] GraphicsLab Project之HDR渲染

[3] GraphicsLab Project之Color Grading

[4] GraphicsLab Project之Screen Space Ambient Occlusion(SSAO)

[5] GraphicsLab Project之Normal Mapping

[6]  GraphicsLab Project之Dynamic Environment Mapping

[7] GraphicsLab Project之Parallel Split Shadow Map(PSSM)

[8] GraphicsLab Project之基于物理的着色系统(Physical based shading)-直接光照

[9] GraphicsLab Project之基于物理的着色系统(Physical based shading) - 基于图像的光照(Image Based Lighting)(Diffuse篇)

[10] GraphicsLab Project之基于物理的着色系统(Physical based shading) - 基于图像的光照(Image Based Lighting)(Specular篇)(一)

[11] GraphicsLab Project之基于物理的着色系统(Physical based shading) - 基于图像的光照(Image Based Lighting)(Specular篇)(二)

[12] GraphicsLab Project之光照贴图烘焙(一)

[13] GraphicsLab Project之光照贴图烘焙(二) - Radiosity Normal Mapping

[14] GraphicsLab Project之简易贴花系统(Decal System)

[15] GraphicsLab Project之再谈Shadow Map

截图

GraphicsLab Project学习项目的更多相关文章

  1. GitHub 上 57 款最流行的开源深度学习项目

    转载:https://www.oschina.net/news/79500/57-most-popular-deep-learning-project-at-github GitHub 上 57 款最 ...

  2. GitHub 上 57 款最流行的开源深度学习项目【转】

    GitHub 上 57 款最流行的开源深度学习项目[转] 2017-02-19 20:09 334人阅读 评论(0) 收藏 举报 分类: deeplearning(28) from: https:// ...

  3. GraphicsLab Project之辉光(Glare,Glow)效果 【转】

    作者:i_dovelemon 日期:2016 / 07 / 02 来源:CSDN 主题:Render to Texture, Post process, Glare, Glow, Multi-pass ...

  4. github上热门深度学习项目

    github上热门深度学习项目 项目名 Stars 描述 TensorFlow 29622 使用数据流图进行可扩展机器学习的计算. Caffe 11799 Caffe:深度学习的快速开放框架. [Ne ...

  5. GraphicsLab Project之Diffuse Irradiance Environment Map

    作者:i_dovelemon 日期:2020-01-04 主题:Rendering Equation,Irradiance Environment Map,Spherical Harmonic 引言 ...

  6. NET开发学习项目资源(2)

    NET开发学习项目资源 击标题链接即可下载. 目录: 1.征婚交友网站 前台交友信息和后台会员管理两大部分组成. 前台功能模块 该模块主要包括查询交友信息.显示交友信息.会员登录.会员信息管理.修改会 ...

  7. 将 project.json 项目转换为 Visual Studio 2015 解决方案

    var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...

  8. Android 创建Library Project(库项目)与引用操作

    由于在开发过程,为了实现未曾了解的某种效果与特定功能,而求助于网上优秀的开源项目,在使用过程中发现引用开源的Library Project(库项目),的确可以解决很多问题,而且也给出了一种思路,好的软 ...

  9. intellij idea - Project Structure 项目结构详解(简单明了)

    IDEA Project Structure 设置 可以点击  按钮,或者使用快捷键 Ctrl + Shift + Alt + S  打开 Project Structure .如下如所示: 项目的左 ...

随机推荐

  1. nginx+play framework +mongoDB+redis +mysql+LBS实战总结

    nginx+play framework +mongoDB+redis +mysql+LBS实战总结(一) 使用这个样的组合结构已经很久了,主要是实现web-server,不是做网站,二是纯粹的数据服 ...

  2. INAPP

    1. Login API : 接口為您提供了我們的登入服務,可以讓使用者透過facebook帳號登入我們的服務,在您呼叫此API後,可以得到 使用者的UUID(Unique UID為使用者在平台的唯一 ...

  3. C#json数据的序列化和反序列化(将数据转换为对象或对象集合)

    引用 System.Runtime.Serialization.Json

  4. PHP内核探索:内存管理开篇

    内存是计算机非常关键的部件之一,是暂时存储程序以及数据的空间,CPU只有有限的寄存器可以用于存储计算数据,而大部分的数据都是存储在内存中的,程序运行都是在内存中进行的.和CPU计算能力一样, 内存也是 ...

  5. HDU 1398 Square Coins(母函数或dp)

    Square Coins Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tota ...

  6. HDU 5344 MZL's xor (多校)[补7月28]

    MZL's xor Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total S ...

  7. OpenStack源码系列---nova-compute

    nova-compute运行的节点为计算节点,虚拟机运行于计算节点上.例如对于创建虚拟机请求,nova-api接收到客户端请求后,经过nova-scheduler调度器调度,再将请求发送给某个选定的n ...

  8. java的多态以及重载,重写,前期绑定,后期绑定

    多态的定义: 一个类实例的相同方法在不同情形有不同表现形式.多态机制使具有不同内部结构的对象可以共享相同的外部接口.这意味着,虽然针对不同对象的具体操作不同,但通过一个公共的类,它们(那些操作)可以通 ...

  9. 关于用HOOK拦截键盘的一些问题

    因为MSDN上说要这样做,所以我就这样做的,读懂MSDN是关键,下面来仔细阅读一下MSDN,看它到底是怎样描述的.阅读的时候我先给出原文,再进行自己的一些翻译或描述. 先看回调函数KeyboardPr ...

  10. Java网络编程知识点(1)

    怎样将一个String对象转换成InputStream对象? ByteArrayInputStream inputStream = new ByteArrayInputStream(str.getBy ...