Fwog
3d-game-shaders-for-beginners
Fwog | 3d-game-shaders-for-beginners | |
---|---|---|
3 | 12 | |
116 | 17,083 | |
- | - | |
7.5 | 0.0 | |
19 days ago | 11 months ago | |
C++ | C++ | |
MIT License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Fwog
-
OpenGL is not dead, long live Vulkan
Yup. I love how easy it is to use OpenGL, and I've even spent time making a "modern" wrapper for it, but I'm still bitten by its quirks on a regular basis.
- Really struggling with understanding tinygltf
-
Low-level OpenGL abstractions
In fact, I wrote my own wrapper that attempts to fix as many fundamental problems (that I see) with OpenGL as possible, taking inspiration from explicit APIs like Vulkan and D3D12, while maintaining the simplicity OpenGL is known for. And before you call me out for shilling my thing, note that it is incomplete and unoptimized (lots of duplicated state calls!). Consider it a proof-of-concept at best.
3d-game-shaders-for-beginners
-
The Book of Shaders
This is a great series if you’re looking for a tutorial. https://lettier.github.io/3d-game-shaders-for-beginners/inde...
- Random Code Inspiration Volume 2
- 3D game shaders for beginners: step-by-step guide to SSAO, lighting, and more
- Beginner friendly tutorial
-
Ask HN: What is your new year's resolution?
Sort of.
1. I want to start with working through applying shaders to a 3d scene using the Panda3d library (https://github.com/panda3d/panda3d) . This repo covers that: https://github.com/lettier/3d-game-shaders-for-beginners.
2. Create a simple, custom, graphics-only (no collisions / physics) game engine using Entt (https://github.com/skypjack/entt) and Panda3d. The engine would rely mostly on simple inputs, like mouse clicks, and 3d graphics.
3. Configure clangd to warn on features outside C++11 then refactor both projects (1 & 2)
4. Run experiments on the game engine while working through the Vulkan book: https://raw.githubusercontent.com/Overv/VulkanTutorial/maste...
-
Where to find shader resources?
Book of Shaders 3D Game Shaders for Beginners Martin Donald Freya Holmer
-
Game Engine From Scratch
Some tutorials I have looked at (well nor originally, as I learned the basics when we were still at DX9 :D): - https://lettier.github.io/3d-game-shaders-for-beginners/index.html
- Are there any resources on Post processing effects like Bloom HDR rendering tone mapping etc..
-
OpenGL engine - testing omnidirectional shadow maps with Sponza
Thanks! What feature would you add next? I've been thinking of implementing some of the shaders here
- 3D Game Shaders for Beginners
What are some alternatives?
glbinding - A C++ binding for the OpenGL API, generated using the gl.xml specification.
godot-psx-style-demo - Demo project featuring a collection of PS1 style shaders and materials for Godot engine.
ssgl - single source shaders for opengl
tinyrenderer - A brief computer graphics / rendering course
filament - Filament is a real-time physically based rendering engine for Android, iOS, Windows, Linux, macOS, and WebGL2
julia-set-with-shaders - Julia set render with GLSL shaders and P5.js library
SHADERed - Lightweight, cross-platform & full-featured shader IDE
Granite - My personal Vulkan renderer
LearnOpenGL - Code repository of all OpenGL chapters from the book and its accompanying website https://learnopengl.com
OpenSubdiv - An Open-Source subdivision surface library.
glTF-Sample-Models - glTF Sample Models
reshade - A generic post-processing injector for games and video software.