Skip to content

jinkman/OpenGLSamples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OpenGLSamples

项目简介

此项目是作者在校学习图形学时,制作的OpenGL案例。主要参考了LearnOpenGL代码实现。项目中主要的功能包括:

  • glfw+glad+glm相关OpenGL环境配置
  • assimp加载模型
  • opencv摄像头捕获+视频编解码
  • imgui支持
  • freetype文字相关

案例覆盖(48个案例):

  • LearnOpenGL相关案例。阴影、法线贴图、深度贴图等
  • 光线追踪
  • 后处理
  • shaderToyGLSLSandbox兼容
  • OpenCV+Imgui滤镜
  • 分形几何相关

案例

1.1-createWindow

1.2-helloTriangle

1.3-helloShader

1.4-helloTexture

1.5-helloTransform

1.6-helloCoordinateSystem

1.71-helloCamera

1.72-camera-freedom

2.1-sampleLighting

2.2-lightingTexture

2.3-castLiting

3.1-modelLoading

4.1-stencileTest

4.2-blend

4.3-translucentTexture

4.4-frameBuffer

4.5-cubeMap

4.6-geometryShader

4.7-instantiation

4.8-antiAliasing

5.1-Blinn-Phong

5.2-GammaCorrect

5.3.1-pointShadow

5.3.2-universalShadow

5.4-normalMap

5.5-parallaxMapping

5.6-HDR

5.7-Bloom

5.8-deferredShading

5.9-ssao

6.1-rayTracing

6.2-rayTracing-Scherbinski_gasket

7.1-text

案例赏析

Julia-Set

Mandelbrot-Set

Worley-Noise

fractalCloud

fractalMountain

Lorentz-Attractor

OpenGL+OpenCV

galaxy

imguiTest

rayCasting

saturn

ocean

stamp-parallaxMapping

stamp

testFilter

编译

  • 第一次拉取代码需要编译第三方库
在third-party/目录下,终端执行`build.sh`编译三方库
  • 编译工程
根目录下终端执行`build.sh Debug` or `build.sh Release` 编译工程

编译完后可执行文件在build/bin/目录下

添加案例

  • samples/下新建文件夹
  • 文件结构:myTest/src/Test.cpp
  • 文件结构:此时cmake会扫描添加Test.cpp所在目录下所有.c、.cpp、.h、.hpp文件
  • 添加完后重新编译

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published