[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-71541":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":10,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":46,"readmeContent":47,"aiSummary":48,"trendingCount":16,"starSnapshotCount":16,"syncStatus":49,"lastSyncTime":50,"discoverSource":51},71541,"3d-game-shaders-for-beginners","lettier\u002F3d-game-shaders-for-beginners","lettier","🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.","https:\u002F\u002Flettier.github.io\u002F3d-game-shaders-for-beginners\u002Findex.html",null,"C++",19692,1473,412,17,0,15,54,107,45,44.51,false,"master",true,[26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],"3d","3d-graphics","game-development","gamedev","glsl","glsl-shader","glsl-shaders","godot","graphics","graphics-programming","hlsl","indiedev","opengl","panda3d","shader","shaders","unity","unity3d","vulkan","webgl","2026-06-12 02:02:53","\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002Fx8rtGr4.gif\" alt=\"3D Game Shaders For Beginners\" title=\"3D Game Shaders For Beginners\">\n\u003C\u002Fp>\n\n# 3D Game Shaders For Beginners\n\nInterested in adding\ntextures,\nlighting,\nshadows,\nnormal maps,\nglowing objects,\nambient occlusion,\nreflections,\nrefractions,\nand more to your 3D game?\nGreat!\nBelow is a collection of shading techniques that will take your game visuals to new heights.\nI've explained each technique in such a way that you can take what you learn here and apply\u002Fport it to\nwhatever stack you use—be it Godot, Unity, Unreal, or something else.\nFor the glue in between the shaders,\nI've chosen the fabulous Panda3D game engine and the OpenGL Shading Language (GLSL).\nSo if that is your stack, then you'll also get the benefit of learning how to use these\nshading techniques with Panda3D and OpenGL specifically.\n\n## Table Of Contents\n\n- [Setup](sections\u002Fsetup.md)\n- [Building The Demo](sections\u002Fbuilding-the-demo.md)\n- [Running The Demo](sections\u002Frunning-the-demo.md)\n- [Reference Frames](sections\u002Freference-frames.md)\n- [GLSL](sections\u002Fglsl.md)\n- [Render To Texture](sections\u002Frender-to-texture.md)\n- [Texturing](sections\u002Ftexturing.md)\n- [Lighting](sections\u002Flighting.md)\n- [Blinn-Phong](sections\u002Fblinn-phong.md)\n- [Fresnel Factor](sections\u002Ffresnel-factor.md)\n- [Rim Lighting](sections\u002Frim-lighting.md)\n- [Cel Shading](sections\u002Fcel-shading.md)\n- [Normal Mapping](sections\u002Fnormal-mapping.md)\n- [Deferred Rendering](sections\u002Fdeferred-rendering.md)\n- [Fog](sections\u002Ffog.md)\n- [Blur](sections\u002Fblur.md)\n- [Bloom](sections\u002Fbloom.md)\n- [SSAO](sections\u002Fssao.md)\n- [Motion Blur](sections\u002Fmotion-blur.md)\n- [Chromatic Aberration](sections\u002Fchromatic-aberration.md)\n- [Screen Space Reflection](sections\u002Fscreen-space-reflection.md)\n- [Screen Space Refraction](sections\u002Fscreen-space-refraction.md)\n- [Foam](sections\u002Ffoam.md)\n- [Flow Mapping](sections\u002Fflow-mapping.md)\n- [Outlining](sections\u002Foutlining.md)\n- [Depth Of Field](sections\u002Fdepth-of-field.md)\n- [Posterization](sections\u002Fposterization.md)\n- [Pixelization](sections\u002Fpixelization.md)\n- [Sharpen](sections\u002Fsharpen.md)\n- [Dilation](sections\u002Fdilation.md)\n- [Film Grain](sections\u002Ffilm-grain.md)\n- [Lookup Table (LUT)](sections\u002Flookup-table.md)\n- [Gamma Correction](sections\u002Fgamma-correction.md)\n\n## License\n\nThe included license applies only to the software portion of 3D Game Shaders For Beginners—\nspecifically the `.cxx`, `.vert`, and `.frag` source code files.\nNo other portion of 3D Game Shaders For Beginners has been licensed for use.\n\n## Attributions\n\n- [Kiwi Soda Font](https:\u002F\u002Ffontenddev.com\u002Ffonts\u002Fkiwi-soda\u002F)\n\n## Copyright\n\n(C) 2019 David Lettier\n\u003Cbr>\n[lettier.com](https:\u002F\u002Fwww.lettier.com)\n","该项目是一个面向初学者的3D游戏着色器逐步指南，涵盖了从基础纹理到高级效果如SSAO、景深、光照、法线贴图等实现方法。它使用C++编写，并结合Panda3D游戏引擎与OpenGL着色语言(GLSL)，提供了丰富的教程内容，包括但不限于Blinn-Phong光照模型、Fresnel因子、边缘光、卡通渲染等多种技术。无论是Godot、Unity还是Unreal用户都能从中受益，因为其讲解方式易于理解和移植到其他开发环境中。特别适合希望提升自己作品视觉质量的游戏开发者或对图形编程感兴趣的学习者参考使用。",2,"2026-06-11 03:38:26","high_star"]