Introduction to Phong Lighting

  Рет қаралды 12,116

Suboptimal Engineer

Suboptimal Engineer

Күн бұрын

In this GLSL shader tutorial, we will go over the basics of Phong lighting. We start off by understanding the importance of lighting in computer graphics. Then we will look at the intuition behind the Phong lighting equation. Finally, we add ambient, diffuse, and specular lighting to our GLSL fragment shader.
📖 Code - github.com/SuboptimalEng/shad...
🐦 Twitter - / suboptimaleng
💻 GitHub - github.com/SuboptimalEng
🌎 Website - suboptimaleng.com
== [ Resources ] ==
Inigo Quilez’s Articles - iquilezles.org/articles
The Book of Shaders - thebookofshaders.com
Simon Dev’s Shader Course - simondev.teachable.com
VS Code GLSL Shader Setup Guide - • How to Write GLSL Shad...
== [ Timestamps ] ==
00:00 Intro to GLSL Shaders
01:12 What is Phong Lighting?
01:45 Ambient vs Diffuse vs Specular
03:02 Ambient Lighting
04:16 Diffuse Lighting
05:57 Specular Lighting
08:26 Phong Lighting Demos
== [ Tags ] ==
#suboptimal #glsl #shaders

Пікірлер: 34
@Byynx
@Byynx 10 ай бұрын
It seems the best lightning tutorial so far.
@JackLeiLing
@JackLeiLing Ай бұрын
Liked and subscribed! The most clearer explanation for this difficult topic. Super helpful. Many thanks
@SuboptimalEng
@SuboptimalEng Ай бұрын
I made the video because I was learning phong lighting and struggled to understand it. Glad it helped!
@ksalarang
@ksalarang 10 ай бұрын
Exactly what I was looking for, thanks. Keep up the good work
@OrgStinx
@OrgStinx 7 ай бұрын
Thanks, I appreciate this.
@justanotherhotguy
@justanotherhotguy 10 ай бұрын
Tomorrow exam in real time computer graphics, thank you very much!
@SuboptimalEng
@SuboptimalEng 10 ай бұрын
Good luck!
@Iridium.
@Iridium. 5 ай бұрын
You can use a halfway vector instead of reflect for better performance
@calderarox
@calderarox 8 ай бұрын
this is a really good video! thanks
@pingwinek_1337
@pingwinek_1337 Жыл бұрын
your voice is so soothing oh my gawddd
@SuboptimalEng
@SuboptimalEng Жыл бұрын
Guess I’ll have to start an ASMR channel now jk… unless 🤔😂
@pingwinek_1337
@pingwinek_1337 Жыл бұрын
@@SuboptimalEng UNLESS
@nebuladevelopments
@nebuladevelopments Жыл бұрын
awesome!
@nexusplus4960
@nexusplus4960 Жыл бұрын
Hi when I import model in three js. model load with light what should I do??
@thesituation5315
@thesituation5315 Жыл бұрын
Hi. I've been trying to learn how lighting works, and I'm having a really hard time with this. I understand the base of the whole idea, but the part I'm having a hard time with is how to make it work in 2D. I was wondering if you know how to port it to two dimensions? I can't really find anything online specifically regarding 2D phong shading.
@OrgStinx
@OrgStinx 7 ай бұрын
Do you mean lighting in 2D world (e.g. for 2d games) or how to cast 3D world to 2D screen?
@MrMariozzz78
@MrMariozzz78 Ай бұрын
i use opegl in dev c++ gl library i guess it pre 2.0 so it dont use GLSL ...can i use phong light with 2.0 pre.version?
@diddy_dante
@diddy_dante 8 ай бұрын
If fragment shaders work on a pixel by pixel basis, does the rasterizer also give eye-direction vector values for each pixel? I can't understand how else you could pull off specular lighting.
@SuboptimalEng
@SuboptimalEng 8 ай бұрын
I fake the eye direction in the code, setting it to -1 in the Z axis.
@javifontalva7752
@javifontalva7752 Жыл бұрын
Wonderful vid!! Can you make more vida on shaders?
@SuboptimalEng
@SuboptimalEng Жыл бұрын
That’s the plan!
@kevinto8955
@kevinto8955 Жыл бұрын
Yes more shaders! Curious, what was your roadmap for learning all this? I'm reading through the book of shaders, but once I'm off it, I feel totally lost :(
@SuboptimalEng
@SuboptimalEng Жыл бұрын
I started with the book of shaders and got stuck as well. Good to hear I’m not the only one who felt this way tbh. SimonDev’s GLSL shader course helped me learn a lot more quickly! I’ve talked about this more extensively on Twitter. And yep, I plan to make more videos on shaders 😊
@janreinsch9725
@janreinsch9725 2 ай бұрын
So, what I found confusing is that the vector is named lightSource... Isn't this actually the lightDirection and the lightSource is at a point infinitely far away, so that all light rays hit the scene at the same angle?
@SuboptimalEng
@SuboptimalEng Ай бұрын
Yea that’s a good question. I think a better name for the variable would be direction to light source from origin.
@janreinsch9725
@janreinsch9725 Ай бұрын
@@SuboptimalEng Thanks for your answer! I named it relativeLightPos in my exercises, because that gives me the intuition that the light is always coming from the same direction for all objects of the scene
@SuboptimalEng
@SuboptimalEng Ай бұрын
@@janreinsch9725 That's great to hear! Happy to help a fellow graphics enthusiast.
@janreinsch9725
@janreinsch9725 Ай бұрын
@@SuboptimalEng Thank you for these tutorials!
@konigsberg72
@konigsberg72 Жыл бұрын
what's the song? 00:00
@alberoDiSpazio
@alberoDiSpazio 8 ай бұрын
There's a Monopoly Game app that has that duck, fully shaded.
@AllianceHalifax
@AllianceHalifax Жыл бұрын
where is the duck model in the code?
@SuboptimalEng
@SuboptimalEng Жыл бұрын
The duck model is included in the VS Code extension! I made a video explaining how to set it up 🙂
@ku16610
@ku16610 5 ай бұрын
Yes but not explaining how to show the duck model ...... @@SuboptimalEng
@ku16610
@ku16610 5 ай бұрын
Click on the glslCanvas left most icon at bottum to change object
Introduction to Signed Distance Fields
9:00
Suboptimal Engineer
Рет қаралды 22 М.
ASMR - Magic Lights ✨
1:01
Daniela Emmanuel Oficial
Рет қаралды 3,8 МЛН
Тяжелые будни жены
00:46
К-Media
Рет қаралды 5 МЛН
NO NO NO YES! (50 MLN SUBSCRIBERS CHALLENGE!) #shorts
00:26
PANDA BOI
Рет қаралды 102 МЛН
FOOTBALL WITH PLAY BUTTONS ▶️ #roadto100m
00:29
Celine Dept
Рет қаралды 75 МЛН
Computer Graphics Tutorial - PBR (Physically Based Rendering)
13:40
Victor Gordan
Рет қаралды 30 М.
Three.js Tutorial on Shaders (beginners)
12:44
SimonDev
Рет қаралды 72 М.
What Are Shaders?
6:24
TheHappieCat
Рет қаралды 195 М.
I made a better Ray-Tracing engine
17:38
NamePointer
Рет қаралды 243 М.
fun ubuntu terminal commands
6:42
Coolkid09
Рет қаралды 1,1 М.
Introduction to Ray Marching
10:57
Suboptimal Engineer
Рет қаралды 14 М.
Introduction to shaders: Learn the basics!
34:50
Barney Codes
Рет қаралды 275 М.
Modern OpenGL Tutorial - Compute Shaders
11:27
Victor Gordan
Рет қаралды 53 М.
An introduction to Shader Art Coding
22:40
kishimisu
Рет қаралды 907 М.
Xiaomi Note 13 Pro по безумной цене в России
0:43
Простые Технологии
Рет қаралды 2 МЛН
Will the battery emit smoke if it rotates rapidly?
0:11
Meaningful Cartoons 183
Рет қаралды 1,8 МЛН
iPhone 15 Pro vs Samsung s24🤣 #shorts
0:10
Tech Tonics
Рет қаралды 10 МЛН
Цифровые песочные часы с AliExpress
0:45