Skip to content

wlxklyh/StudyOpenGLVulkanDXMetal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

74 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

图形库

Opengl(Win)

环境: https://github.com/wlxklyh/LearnOpenglEmpty

工程地址: https://github.com/wlxklyh/StudyOpenGLVulkanDXMetal/tree/master/Opengl/Win

教程: https://learnopengl-cn.github.io/

Chapter1 getting_started

1.1.hello_window

1.2.hello_window_clear

2.1.hello_triangle

2.2.hello_triangle_indexed

2.3.hello_triangle_exercise1

2.4.hello_triangle_exercise2

2.5.hello_triangle_exercise3

3.1.shaders_uniform

3.2.shaders_interpolation

3.3.shaders_class

3.4.shaders_exercise1

3.5.shaders_exercise2

3.6.shaders_exercise3

左下角是(-0.5,-0.5,0) clamp to (0.0,0.0,0.0) 所以黑色

4.1.textures

4.2.textures_combined

4.3.textures_exercise1

4.4.textures_exercise2

4.5.textures_exercise3

4.6.textures_exercise4

5.1.transformations

6.1.coordinate_systems

//省略了

6.2.coordinate_systems_depth

//省略了

6.3.coordinate_systems_multiple

用了EBO绘制 左右面 上下面的 UV是相邻的 所以看起来是被拉伸了。

7.1.camera_circle

//see 7.4.camera_class

7.2.camera_keyboard_dt

//see 7.4.camera_class

7.3.camera_mouse_zoom

//see 7.4.camera_class

7.4.camera_class

Chapter2 lighting

1.colors

2.1.basic_lighting_diffuse

2.2.basic_lighting_specular

3.1.materials

3.2.materials_exercise1

4.1.lighting_maps_diffuse_map

4.2.lighting_maps_specular_map

4.4.lighting_maps_exercise4

5.1.light_casters_directional

5.2.light_casters_point

5.3.light_casters_spot

5.4.light_casters_spot_soft

6.multiple_lights

蓝色是点光 红色是聚光灯 还有个方向灯是镜面反射比较明显的。

Chapter3.model_loading

1.model_loading

Chapter4.advanced_opengl

1.1.depth_testing

按着Q键切换

1.2.depth_testing_view

2.stencil_testing

3.1.blending_discard

没有discard opengl不知道怎么处理alpha 所以就会下面这样

discard 但是环绕模式是GL_REPEAT

GL_CLAMP_TO_EDGE

3.2.blending_sort

5.1.framebuffers

5.2.framebuffers_exercise1

6.1.cubemaps_skybox

6.2.cubemaps_environment_mapping

8.advanced_glsl_ubo

9.1.geometry_shader_houses

9.2.geometry_shader_exploding

9.3.geometry_shader_normals

10.1.instancing_quads

10.2.asteroids

10.3.asteroids_instanced

11.1.anti_aliasing_msaa

11.2.anti_aliasing_offscreen

Chapter5.advanced_lighting

1.advanced_lighting

2.gamma_correction

3.1.1.shadow_mapping_depth

3.1.2.shadow_mapping_base

3.1.3.shadow_mapping

3.2.1.point_shadows

3.2.2.point_shadows_soft

4.normal_mapping

5.1.parallax_mapping

5.2.steep_parallax_mapping

5.3.parallax_occlusion_mapping

6.hdr

7.bloom

8.1.deferred_shading

8.2.deferred_shading_volumes

9.ssao

Chapter6.pbr

1.1.lighting

1.2.lighting_textured

2.1.1.ibl_irradiance_conversion

2.1.2.ibl_irradiance

2.2.1.ibl_specular

2.2.2.ibl_specular_textured

Chapter7.in_practice

1.debugging

2.text_rendering

自己的练习

例1 例2
CPU:
Shader:
表现:

Vulkan(Win)

下载这个文件里的链接 然后解压到当前目录 就会有Lib目录出来 Vulkan\VulkanDemo\Dependency\VulkanSDK\1.3.290.0\Lib.Download

环境: TODO

已经在工程目录里
Vulkan SDK Vulkan\VulkanDemo\Dependency\VulkanSDK|
GLM Vulkan\VulkanDemo\Dependency\glm-1.0.1|
GLFW Vulkan\VulkanDemo\Dependency\glfw-3.4.bin.WIN64|
stb_image.h Vulkan\VulkanDemo\Dependency\stb_image.h

工程地址: https://github.com/wlxklyh/StudyOpenGLVulkanDXMetal/tree/master/Vulkan

教程: https://easyvulkan.github.io

Ch1 初始化

Ch1-1 创建GLFW窗口

文件 描述
Util/EasyVKStart.h Vulkan的环境 include这些
GlfwGeneral.hpp glfw创建窗口的工具
VKBase.h Vulkan相关的基本内容

GlfwGeneral.hpp 是写了一些窗口的工具函数 这页main函数调用就比较简洁。

Ch1-2 初始化流程

Ch1-3 创建VK实例与逻辑设备

Ch1-4 创建交换链

About

for study opengl vulkan directx metal

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published