# Studying Plan of Oleksandr [**Studying repository**](https://github.com/FairlyBet/CG-learning) ## πŸ” [LearnOpenGL](https://learnopengl.com/Getting-started/OpenGL) * βœ… Matrix transformations * βœ… Camera * βœ… Basic textures * βœ… Mesh rendering * βœ… Blinn-Phong light model * βœ… Offscreen rendering * βœ… Basic PostFX * βœ… Texture buffer * βœ… Cubemaps * βœ… Deferred shading * πŸ” PBR lighting model * ❌ Shadow mapping * ❌ SSAO ## [Intro to CG](https://www.youtube.com/playlist?list=PLplnkTzzqsZTfYh4UbhLGpI5kGd5oW_Hh) * βœ… Introducion & Math * βœ… Raster images * βœ… Transformations * βœ… WebGL * βœ… Curves * βœ… Surfaces & Meshes * βœ… Textures * βœ… Shading * βœ… Shading transformations * βœ… Rendering equation * βœ… Rendering algorithms * βœ… Ray Tracing * βœ… Shadows & Reflection * βœ… Sampling * βœ… Signal processing * βœ… Animation * βœ… Physics based Animation * βœ… Simulation ## [Interactive CG](https://www.youtube.com/playlist?list=PLplnkTzzqsZS3R5DjmCQsqupu43oS9CFN) * βœ… Intro * βœ… Images & transformation * βœ… Textures * βœ… Textures on the GPU * βœ… Triangular meshes * βœ… Rendering algorithms * βœ… Windowing API * βœ… Modern OpenGL * βœ… GLSL & OpenGL extensions * βœ… Lights & Shading * βœ… Rendering equation * βœ… Environment mapping * βœ… Reflections * βœ… Lights & Shadows * βœ… Shadow Mapping * βœ… Geometry Shaders * βœ… Tesselation shaders * βœ… Bump, Normal, Displacement and Parallax Mapping * βœ… Compute & Mesh shader * βœ… Deffered, Variable-rate, Addaptive shading * βœ… Global Illumination * βœ… Ambient occlusion & Soft shadows * βœ… Refractions, Transparency, Blending, & Alpha Testing * βœ… Volume rendering * βœ… GPU ray-tracing ## [WebGL](https://www.youtube.com/playlist?list=PLPbmjY2NVO_X1U1JzLxLDdRn4NmtxyQQo) * βœ… Uniforms * βœ… Attributes * βœ… `drawArrays` vs `drawElements` * βœ… Objects, Targets, Bindings * βœ… Textures & Mipmaps * βœ… VAOs * βœ… Framebuffer Objects * βœ… Instanced Drawing * βœ… Matrix Attributes * βœ… Transparency & Depth * βœ… Cameras & Perspective * βœ… Lights * βœ… Creating binary model files * βœ… Uniform Buffer Objects * βœ… Arrays & Uniforms * βœ… Hardware Bugs, UBOs & Arrays * βœ… Transform Feedback * βœ… Deferred rendering * βœ… Object Picking * βœ… Texture atlases & arrays ## [ThreeJS journey](https://threejs-journey.com/) * βœ… Intro and first project * βœ… Transform object * βœ… Animations * βœ… Cameras * βœ… Fullscreen resizing * βœ… Geometries * βœ… Debug UI * βœ… Textures * βœ… Go Live * βœ… Lights * βœ… Shadows * βœ… Haunted House * ❌ 3D text ## Probability book * πŸ” First chapter * ❌ Second chapter ## Read/Watch * ❌ [Real-Time Polygonal-Light](https://eheitzresearch.wordpress.com/415-2/) * ❌ [Cube camera](https://github.com/mrdoob/three.js/blob/master/src/cameras/CubeCamera.js) * ❌ [Volume rendering](https://webgpu.github.io/webgpu-samples/?sample=volumeRenderingTexture3D#volume.wgsl) * ❌ [Valve text rendering](https://steamcdn-a.akamaihd.net/apps/valve/2007/SIGGRAPH2007_AlphaTestedMagnification.pdf) * ❌ [Mesh shader](https://www.youtube.com/watch?v=CFXKTXtil34) * ❌ [Blender course](https://www.youtube.com/watch?v=4haAdmHqGOw) * ❌ [Shader course](https://simondev.teachable.com/p/glsl-shaders-from-scratch) * ❌ [Real-Time Fluid Dynamics for Games](https://www.dgp.toronto.edu/public_user/stam/reality/Research/pdf/GDC03.pdf) * ❌ [Outline shader](https://www.youtube.com/watch?v=P7C9R9YDTgc&ab_channel=chrisbiscardi) * ❌ [Wave Function Collapse algorithm](https://www.youtube.com/watch?v=2SuvO4Gi7uY&list=WL&index=70) * ❌ [PBR Book](https://pbr-book.org/4ed/contents) * ❌ [GPU architecture](https://developer.nvidia.com/content/life-triangle-nvidias-logical-pipeline) * ❌ https://google.github.io/filament/Filament.html#materialsystem/energyconservation * ❌ https://jcgt.org/published/0002/02/09/paper.pdf * ❌ https://www.youtube.com/watch?v=t0qkieYME6E&ab_channel=Gamelogic * ❌ https://natureofcode.com/cellular-automata/ * ❌ https://simondev.teachable.com/p/glsl-shaders-from-scratch ## Useful links * [WebGL2 fundamentals](https://webgl2fundamentals.org/) * [GPU Gems](https://developer.nvidia.com/gpugems/gpugems/contributors) https://www.youtube.com/watch?v=rSKMYc1CQHE