Java教程

《the book of shader——图形学书籍简介》

本文主要是介绍《the book of shader——图形学书籍简介》,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

《the book of shader——图形学书籍简介》

计算机图形学丛书简要介绍

一本关于 片段着色器 的入门指南,由浅入深的介绍了用Shader的用法。下面是综述每一章的主要知识点及使用面。 本书虽然暂未完全写完,但是前几章的知识点足够初学者入门。

1.开始

Shader

Shader的存在意义,他与并行计算的联系,以及编写Shader为什么相对困难等;下面两张图展现了CPU与GPU运行架构的区别

cpugpu

Hello World

最简单的Shader程序,介绍片段着色器最简单的框架

    #ifdef GL_ES
    precision mediump float;
    #endif

    uniform float u_time;

    void main() {
        gl_FragColor = vec4(1.0,0.0,1.0,1.0);
    }

hello world

GLSL语法

GLSL基本语法介绍

#ifdef GL_ES
precision mediump float;
#endif

uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform float u_time;

void main() {
	vec2 st = gl_FragCoord.xy/u_resolution;
	gl_FragColor = vec4(st.x,st.y,0.0,1.0);
}

uniform

运行平台

介绍了本套丛书在不同的编辑器(Blender、Three.js、Processing等)上面的使用方式;

2.算法创作

函数

介绍了着色器中常用的函数,以及不同的实用工具来编辑曲线,以便后续更加顺手的编写shader代码

函数
Grapher:Mac中实用的函数曲线工具
GraphToy:一款在线的GLSL函数可视化工具
Shadershop:想PS一样编辑函数曲线的在线工具

颜色

简单介绍了颜色的混合,比如两种颜色的线性插值等。由此延伸到HSB颜色空间,介绍了其物理意义以及极坐标下的HSB颜色空间。

HSB

形状

这里主要介绍通过Shader来绘制不同的物理形状,比如矩形、三角形、圆形等,最后引出距离场,介绍了通过距离场来雕刻更加复杂的图形。

SDF

矩阵

矩阵变化在平移、缩放、旋转时的用途,以及如何将其应用在上一章介绍的SDF中。

图案模式

应用前几章的知识设计出更加复杂的不同图案,比如偏移图案、Truchet瓷砖等

pattern

3.程序化生成设计

随机数

主要讲解如何从原始的三角函数来构造随机数的生成

random

噪声

一步一步的描述了从随机数-噪声-梯度优化噪声-perlin噪声-simplex噪声的产生原理及过程

simplex

细胞状噪声

介绍了另外一种常用的噪声Worley噪声,并相应的介绍了跟他密切相关的Voronoi算法。

worley

分形布朗运动

通过不断衰减振幅、提高频率的噪声叠加来产生分形效果的噪声

fbm

分形

TODO


在线阅读


如果你需要更多图形学相关书籍,可以前往图形学系列丛书

这篇关于《the book of shader——图形学书籍简介》的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!