Flowmap in OpenGL | OpenGL中Flowmap水面

笔试的时候有这么一道题,讲模拟水面,用FlowMap。当时没有太懂,就随便回答的,正好这次图形学大作业有机会来实现一下。 FlowMap是用来解决水面流动方向单一问题的方法,SIGGRAPH2010上有篇文章讲的V社做Portal2时使用Flowmap的方法,见此。V社官网上也有一篇文章讲水面内容相似。他们做好场景以后用Houdini做了一个Flowmap,也是蛮厉害的。还有一篇博客,不过讲的不是很清楚,没说FlowMapOffset0和FlowMapOffset1怎么算。 注:以下代码是GLSL version 3.3 最朴素的scrolling diffuse map,就是根据时间改变uv坐标了。 ... in vec2 uv; out vec4 color; uniform vec4 tiling; uniform vec2 direction; uniform floa...
Read More

OpenGL Getting Started!

最近一周开始学OpenGL。因为选了图形学的课,有不少作业呀,比如写个简单的物理引擎、写个简单的地形引擎、实现某篇论文等等。 科班出身的大概都是从OpenGL开始接触的图形学吧,像我这种野路子进阶路线比较诡异。最开始当然接触的是Rhino,不过Rhino里面都是固定渲染管线,只是熟悉了一些Nurbs和Mesh的几何特性。后来写了些Processing,相当于一个简化的JAVA封装版OpenGL。Processing 2.0大约是OpenGL 2.0,3.0就对应3.0。当时学写的时候用的2.0。  再之后过了一遍乐乐学姐的UnityShader入门精要,基本上是入门Shader的同时完整入门了下图形学的知识。在之后就是翻书突击图形学了。像我这种先写过Shaderlab再学OpenGL的应该不多吧。 图形学的课居然教的还是OpenGL 1.1/2.0,用Nehe Tutorial。这TM...
Read More