BobLChen / Vulkandemos
Licence: mit
Some simple vulkan examples.
Stars: ✭ 413
Projects that are alternatives of or similar to Vulkandemos
Vulkust
An engine for Vulkan in Rust, tries to implement modern graphic features. (suspended for now)
Stars: ✭ 64 (-84.5%)
Mutual labels: engine, 3d, vulkan
3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+2732.45%)
Mutual labels: 3d, glsl, vulkan
SFE-Engine
A real time renderer based on Vulkan(LWJGL).
Stars: ✭ 20 (-95.16%)
Mutual labels: engine, vulkan, glsl
VulkanRenderer
Personal repo for learning the vulkan graphics api
Stars: ✭ 42 (-89.83%)
Mutual labels: vulkan, glsl
3D-Engine-OpenGL-4
3D Graphics Engine For Games | C++ OpenGL 4.1
Stars: ✭ 19 (-95.4%)
Mutual labels: engine, 3d
Bansheeengine
Modern C++14 game engine with Vulkan support, fully featured editor and C# scripting
Stars: ✭ 2,906 (+603.63%)
Mutual labels: engine, vulkan
MoravaEngine
2D/3D graphics engine written in C++ language. It currently supports the following graphics APIs: OpenGL 3.3+, Vulkan 1.2, DirectX 11. Its current purpose is to experiment with various CG concepts and techniques.
Stars: ✭ 129 (-68.77%)
Mutual labels: vulkan, glsl
Gameplay
Open-source, cross-platform, C++ game engine for creating 2D/3D games.
Stars: ✭ 3,429 (+730.27%)
Mutual labels: engine, vulkan
makma
Makma is a deferred Vulkan renderer written in C++.
Stars: ✭ 77 (-81.36%)
Mutual labels: vulkan, glsl
CLUSEK-RT
Vulkan based C++ ray-tracing game engine.
Stars: ✭ 24 (-94.19%)
Mutual labels: engine, vulkan
a-minimalist-guide
Walkthroughs for DSL, AirSim, the Vector Institute, and more
Stars: ✭ 37 (-91.04%)
Mutual labels: ubuntu, tutorials
Webgl Fundamentals
WebGL lessons that start with the basics
Stars: ✭ 3,315 (+702.66%)
Mutual labels: 3d, glsl
Romaniancoderexamples
Java / SpringBoot / Angular examples for the Romanian Coder YouTube channel
Stars: ✭ 353 (-14.53%)
Mutual labels: examples, tutorials
Tesseract
A set of libraries for rapidly developing Pipeline driven micro/macroservices.
Stars: ✭ 20 (-95.16%)
Mutual labels: examples, tutorials
简要
Vulkan Samples
码云
说明
按照序号的顺序开始看,例如从2_Triangle、3_DemoBase一直到最后一个。Demo一步一步的展示了如何对Vulkan进行简单的封装以使得更加易用,如果从较高的序号开始阅读可能出现由于封装过度从而导致阅读理解困难。每一个Demo都会尽量配一个粗浅的文档,文档里面会大致说明该Demo的意图。
环境要求
Windows
- CMake 3.13.0:下载安装最新版本即可。
- Visual Studio 2017 (64位):比它高的应该也没问题。
- VulkanSDK:https://www.lunarg.com/vulkan-sdk/
MacOS
- CMake 3.13.0:下载安装最新版本即可。
- XCode 10:比它高应该也没什么问题。
- macOS 10.11 or iOS 9:因为Vulkan在苹果那边没有得到官方支持,是通过对Metal进行的封装,因此需要10.11系统以上。
Linux
- CMake 3.13.0:下载安装最新版本即可。
- Ubuntu 18.04:目前我使用的是Ubuntu 18.04系统,其它版本的没有尝试。
- VSCode:Ubuntu下我使用了VSCode作为开发环境,VSCode下Configure(Task),Build(Task),Debug我都配置好了,但是需要安装VSCode C++插件,插件名称:C/C++。
Window环境搭建
Ubuntu环境搭建
MacOS环境搭建
Android环境搭建
Introduction
Vulkan Examples
Requirements
Windows
- CMake 3.13.0
- virtual studio 2017
- VulkanSDK:https://www.lunarg.com/vulkan-sdk/
MacOS
- XCode 10
- CMake 3.13.0
- macOS 10.11 or iOS 9
Linux
- CMake 3.13.0
Android
- Android Studio 3.2
- NDK r16b
Usage
Command line
- git clone https://github.com/BobLChen/VulkanDemos.git
- cd VulkanDemos
- mkdir build
- cd build
- cmake ..
CMake-GUI
- git clone https://github.com/BobLChen/VulkanDemos.git
- Open CMake-GUI
- Where is the source code : VulkanDemos
- Where to build the binaries : VulkanDemos/build
- Click Configure button
- Choose your generator
- Click Generate button
Example
2_Triangle
3_DemoBase
4_OptimizeBuffer
5_OptimizeCommandBuffer
6_ImageGUI
7_UniformBuffer
8_OptimizeVertexIndexBuffer
9_LoadMesh
10_Pipelines
11_Texture
12_PushConstants
13_DynamicUniformBuffer
14_TextureArray
15_Texture3D
16_OptimizeShaderAndLayout
17_InputAttachments
18_SimpleDeferredShading
- Albedo:VK_FORMAT_R8G8B8A8_UNORM
- Normal:VK_FORMAT_R16G16B16A16_SFLOAT
- Position:VK_FORMAT_R16G16B16A16_SFLOAT
19_OptimizeDeferredShading
- Albedo: VK_FORMAT_R8G8B8A8_UNORM
- Normal: VK_FORMAT_R8G8B8A8_UNORM
- Position: Reconstructing world space position from depth buffer
20_Material
21_Stencil
22_RenderTarget(30 Filter)
23_OptimizeRenderTarget
24_EdgeDetect
25_Bloom
26_SkeletonMatrix4x4
27_SkeletonPackIndexWeight
- Pack 4 bone index(uint32) to 1 UInt32
- Pack 4 bone weight(float) to 2 UInt32 Reduce 5 float per vertex
28_SkeletonQuat
29_VertexTextureSkin
- Store skeleton datas in texture and used in vertex shader.
30_InstanceSkin
31_MSAA
32_FXAA
33_InstanceDraw
34_SimpleShadow
35_PCFShadow
36_OmniShadow(Multiview)
37_CascadedShadow
38_IndirectDraw
39_OcclusionQueries
40_QueryStatistics
41_ComputeShader
42_OptimizeComputeShader
43_ComputeParticles
44_ComputeRaytracing
45_ComputeFrustum
46_GeometryHouse
47_DebugNormal
48_GeometryOmniShadow
49_SimpleTessellation
50_PNTessellation
51_Pick
52_HDRPipeline
53_SSAO
54_ThreadedRendering
55_PBR_DirectLighting
56_PBR_IBL
57_GodRay
58_Imposter
59_MotionBlur
60_DepthPeeling
61_CPURayTracing
62_RTXRayTracingBasic
63_RTXRayTracingMesh
64_RTXRayTracingSimple
65_RTXRayTracingReflection
66_RTXRayTracingHitGroup
67_RTXRayTracingMonteCarlo
68_RTXPathTracing
69_TileBasedForwardRendering
70_SDFFont
71_ShuffleIntrinsics
72_MeshLOD
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].