Intermediate Three.js Tutorial: Make a Globe with Custom Shaders

แชร์
ฝัง
  • เผยแพร่เมื่อ 4 ก.พ. 2025

ความคิดเห็น • 146

  • @RobertWildling
    @RobertWildling ปีที่แล้ว +1

    Two years after the tutorial's initial release - and I feel so incredibly well informed now thanks to you, Chris! All these in-depth explanations and the careful step-by-step progressions make this tutorial invaluable (for me, at least)!
    And the result? What was once a black box of unknown complexity that I was afraid of even trying to learn, now seems to be easily manageable. Thank you very much!

  • @Brioshie
    @Brioshie ปีที่แล้ว +1

    One of the most complete tutorials I've ever found. Helped me more than I expected!

  • @OneAndOnlyMe
    @OneAndOnlyMe 3 ปีที่แล้ว +21

    This is the best GL shader lesson! Thank you. I've been wanting to learn shader programming for some time but find the lack good documentation frustrating.

  • @christianlechner5673
    @christianlechner5673 3 ปีที่แล้ว +9

    This is by far the best shader tutorial ou there. Period! Thank you very much for this!

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +3

      Wow, thanks! Glad you like it homie 💫

  • @user-mahmoudWalid
    @user-mahmoudWalid ปีที่แล้ว +1

    I have no words to describe how amazing this video is. Really thank you⭐

  • @srikanthharmony
    @srikanthharmony ปีที่แล้ว +1

    Best tutorial by a country mile buddy.. thank you for your detailed explanation

  • @dr.adam.nielsen
    @dr.adam.nielsen 2 ปีที่แล้ว +9

    I would recommend to set x,y coordinats of mouse default to (0,0) and not undefined, other wise you get the blue ball (as in 01:09:46) on start screen, instead of the globe

    • @garrettmarsh1102
      @garrettmarsh1102 2 ปีที่แล้ว

      life saver! thank you! I've been a bit stumped on this. Completely fixed it for me.

    • @zubinchadha6489
      @zubinchadha6489 2 ปีที่แล้ว

      mousemove isn't working for me

  • @animatedzombie64
    @animatedzombie64 3 ปีที่แล้ว +2

    your editing is dope and i can see orbit shots in the middle

  • @chaitanyajharbadem-1740
    @chaitanyajharbadem-1740 3 ปีที่แล้ว +8

    I was trying to make a solar system using three js this going to help me a lot thanks man

  • @Lorth-zr1yt
    @Lorth-zr1yt ปีที่แล้ว

    wow this is a reaaallyy good tutorial, it really enlighten me. I've been strugling to understand glsl and how it works but by the glimpse of it in this tutorial I started to understand bcs u are comparing it to how it's done if it were writen in JAVA. wow bravo you are really helping me thanks a lot dude!!

  • @evaninadgn
    @evaninadgn 3 ปีที่แล้ว +4

    I don't have the words to describe how incredible your course is.
    Thanks so much!!!!!!

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +1

      You're very welcome! Thanks for watching, glad you enjoyed it!

  • @jasonkarjadi4034
    @jasonkarjadi4034 3 ปีที่แล้ว +4

    Thanks for the three js tutorials, man
    Been digging it

  • @fannanoking6865
    @fannanoking6865 3 ปีที่แล้ว

    One of the best course in the youtube. We will be happy if you make the advance three js course further.

  • @leamon9024
    @leamon9024 3 ปีที่แล้ว +1

    Thanks Chris. Best explanation of shaders ever.

  • @megatronreaction
    @megatronreaction 4 หลายเดือนก่อน

    Most devs bragging about how difficult css was, they're not yet come across GLSL coding. I really have no idea over what I'm looking at. Really admire thus who can code GLSL.

  • @madelinemapping
    @madelinemapping 2 ปีที่แล้ว +1

    Omg this is exactly what I need. Thank you!!

    • @madelinemapping
      @madelinemapping 2 ปีที่แล้ว

      Gonna take my webGIS to the NEXT LEVEL with all your vids omg I'm so excited.

  • @chiragkumar1968
    @chiragkumar1968 3 ปีที่แล้ว +9

    🤯🤯 Just what I was looking for ❤️❤️

  • @ugljesavojvodic3384
    @ugljesavojvodic3384 3 ปีที่แล้ว

    Thanks a lot for lesson. This helps really a lot to understand shaders and how it all works. Really like all comments during the tutorial, all are helpful.

  • @jabarlew
    @jabarlew 3 ปีที่แล้ว

    You really shine here again bro... awesome tut

  • @techrurallivining9417
    @techrurallivining9417 2 ปีที่แล้ว

    Complete beginner and understood everything!! thnak you!!

  • @MoayadAlMoghrabi
    @MoayadAlMoghrabi 2 ปีที่แล้ว +1

    This is awesome. Thank you man!

  • @mitzurugiii
    @mitzurugiii 3 ปีที่แล้ว

    Love the detailed tutorial. Thanks a lot for this, I was able to have a good start on familiarizing Three.js. Cheers!

  • @bimalpandey9736
    @bimalpandey9736 3 ปีที่แล้ว +4

    You just broke my computer, I'm billing you for it.

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +2

      Should have your payment sometime tmmr 💰

  • @jspies2020
    @jspies2020 2 ปีที่แล้ว

    Bro you explain this stuff like a boss. Thanks a lot!!!!!

  • @pigloo147
    @pigloo147 2 ปีที่แล้ว

    in shaders its common practice to prefix the uniform variables with 'u' and the varyings with 'v' so you know what you're dealing with, hence 'vUV'

  • @marcorosenbaum9900
    @marcorosenbaum9900 ปีที่แล้ว

    Great video mate!
    You could use the the following to move the globe with the mouse:
    const controls = new OrbitControls(camera, renderer.domElement);
    controls.update();
    and include "controls.update()" in the animate function
    In my opinion an easier way, but I am pretty new to three.js so idk if that feature was released after your video.
    Thank you!

  • @jenshardervingaardlarsen6180
    @jenshardervingaardlarsen6180 2 ปีที่แล้ว +3

    I like the detail of the video, and I learned a lot, but... I think that if you want to share tutorials with the masses, you need standardtools. There is way to much time adjusting that Vite live server. Does Sublime not have an extension for a live server? I think you should use vs code for your videoes. Its what most people recognize.
    Also dont use css libraries. Its a video on three js, not tailwinds. It might be your favourite choice, but it confuses, when the same result could be made with simple css in the same amount of time it took you to explain and install Tailwinds.
    Tip: JS automatically creates variables for all id's from html, so you dont need the queryselector for the id you put on the canvas. Its already accesible.
    I hope you like the criticism, allthough you might not agree 😁 keep up the good work.

  • @LarceTheFox
    @LarceTheFox 2 ปีที่แล้ว

    Thanks man! IT helped me start in graphics! Best lessons!

  • @ruchanadguzel1237
    @ruchanadguzel1237 2 ปีที่แล้ว

    I watched your three js video and looks like i gonna dig you channel

  • @EricMalek
    @EricMalek ปีที่แล้ว

    nice work man! Thank you for your contribution.

  • @ieoie
    @ieoie 11 หลายเดือนก่อน

    Amazing, thank you... adding a bumpmap ???

  • @jasonkarjadi4034
    @jasonkarjadi4034 3 ปีที่แล้ว

    Looking forward to the upcoming videos

  • @kaissoune
    @kaissoune 3 ปีที่แล้ว +1

    I should try that one,
    Amazing

  • @greeffer
    @greeffer 2 ปีที่แล้ว

    Very informative! I learned something new! Nice job! 💥💯🤟

  • @레까-j7h
    @레까-j7h 5 หลายเดือนก่อน

    It seems interesting that u (v) is commonly referred as the velocity of x (y)-direction.

  • @cylam9188
    @cylam9188 3 ปีที่แล้ว

    Very detailed and easy to understand

  • @vaibhavthapliyal5958
    @vaibhavthapliyal5958 2 ปีที่แล้ว

    Thanks bro, for enhancing the skill

  • @codybontecou
    @codybontecou 3 ปีที่แล้ว +3

    Just finished this video and it was easy to follow along, thank you.
    A few notes:
    - The stars are squares and occasionally render large and look odd.
    - When we split the width of the content in half, we also only have the stars on half of the screen.
    - The content is not responsive. It would have been great going into making the globe responsive with device sizes.

    • @_ap__
      @_ap__ 3 ปีที่แล้ว

      How did you achieve the third one? the responsiveness

  • @arhitbosetagore2939
    @arhitbosetagore2939 3 ปีที่แล้ว

    Wonderful effort! Learnt a lot. 😊

  • @InverserPro
    @InverserPro 2 ปีที่แล้ว

    Amazing video! Thank u, bro!

  • @gameplaywithbilal
    @gameplaywithbilal 2 ปีที่แล้ว

    please more videos on shaders and math applied on it

  • @TheOmfg02
    @TheOmfg02 3 ปีที่แล้ว

    Dude, you’re a damn hero!

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +1

      Shaders were a pain in the ass to learn initially since no one taught them 😂
      Glad I could help out a bit!

  • @activistwebprogramming
    @activistwebprogramming 2 ปีที่แล้ว

    Thanks sir, you're amazing

  • @mayaahmed
    @mayaahmed 11 หลายเดือนก่อน

    Amazing. Thanks.

  • @ShukurAlRawi
    @ShukurAlRawi 3 ปีที่แล้ว

    Great tutorial video about threejs

  • @millerwang5772
    @millerwang5772 ปีที่แล้ว +1

    Using the new version of vite, you don't need to use the plugin to support string output, you just use it like below
    `import vertexShader from './your/path/vertex.glsl?raw';`

  • @fahdalabrah3776
    @fahdalabrah3776 3 ปีที่แล้ว +1

    This Is Fantastic

  • @dan-gu1ty
    @dan-gu1ty 2 ปีที่แล้ว

    45:00
    1:15:00

  • @refrefwgwgwegew
    @refrefwgwgwegew 3 ปีที่แล้ว

    great great explanation sir. Subbed!

  • @EmpereurRouge-o2v
    @EmpereurRouge-o2v 5 หลายเดือนก่อน

    please i have an issue, i am trying to put the canvas in the div but everytime i launch the code and inspect, it appears to be out of the div.. due to that the flex property is not applied to that

  • @twjr4547
    @twjr4547 ปีที่แล้ว

    This is a great resource but where is the GLSL notes file. The link leads to a server error.

  • @Irpsc
    @Irpsc 2 ปีที่แล้ว

    Hello
    Great .
    Should we put the open street map on this map as well?
    Like Google Earth.
    There is also a zoom feature.

  • @DaniyalTayyab-r4z
    @DaniyalTayyab-r4z ปีที่แล้ว

    Thanks for this wonderful tutorial. I have a question, if I want to add two planets like earth and mars how can I do that?

  • @LaurieKnight1969
    @LaurieKnight1969 3 ปีที่แล้ว +2

    I wondered why at the end with the html content you did the thing with putting the canvas on the right, rather than just moving the planet within the canvas. Then I found out, the shaders go weird if the planet is off center. (Also the sphere goes out of shape if it goes too far off center!). Is this something covered in the more advanced courses on your site?
    Thanks for all your youtube stuff btw, excellent tutorials, finally getting to grips with canvas thanks to those!!

    • @yincognito
      @yincognito 2 ปีที่แล้ว +2

      Not really an expert in the field, but yeah, he's careful not to break stuff, for example, he didn't add a mouse scroll zooming effect either, because the way he wrote the shaders, the transition between full color and transparent in the radial gradient simulation from the atmosphere will happen faster as you zoom in, essentially not happening at all if the camera is very close to the planet.
      As for shaders going weird if the planet is off center (or even if it starts rotated, say around the y axis, which is my case), they don't - it's just that he used hardcoded (aka plain) values in certain places, in the shaders (maybe for simplicity?) instead of having values that automatically adjust to the other variables in the scene. A simple example is the vec3(0.0, 0.0, 1.0) in the intensity formula, which is supposed to represent the normalized (aka from 0 to 1) camera position in a centered view, corresponding to x = 0, y = 0, z = 1. Obviously, if the planet is off center, that vector will also change accordingly, e.g. if you place the planet to the right, x will become negative and so on. Normally, that vector should have been replaced with the proper camera coordinates in view space (I think), by using the built in cameraPosition vec3 (which stands for camera position in world space) and translating it into view space, like (this is for my rotation case, not sure if it'll work for you, but you can try):
      Vertex Shader:
      ...
      varying vec3 cameraViewPosition;
      ...
      void main()
      {
      ...
      cameraViewPosition = normalize(mat3(viewMatrix) * cameraPosition);
      ...
      }
      Fragment Shader:
      ...
      varying vec3 cameraViewPosition;
      ...
      void main()
      {
      ...
      float intensity = ... - dot(vertexNormal, cameraViewPosition) ...;
      ...
      }
      Or something along these lines - basically what he did for the vertexNormal, but in the case of the camera. Hopefully this helps.

  • @trithea2882
    @trithea2882 2 ปีที่แล้ว

    Perfect tutorial, just wondering how can you add several different models inside div. just like how sketchlab showcases their models

  • @Dardasha_Studios
    @Dardasha_Studios 2 ปีที่แล้ว +1

    Server Error!!
    Hello Chris, I tried accessing the code since I got stuck at the stars and they are not appearing. Checking code by code is not helping. I want to copy and paste and see if I missed something. When opening the link it says server error.

  • @harrythehacker
    @harrythehacker หลายเดือนก่อน

    What's that todo plugin you're using?

  • @sanzhar.danybayev
    @sanzhar.danybayev 3 ปีที่แล้ว +16

    Flat earthers be like 🗿 😂

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +11

      Flat earthers going to be using the PlaneGeometry instead of Sphere 😂

    • @sanzhar.danybayev
      @sanzhar.danybayev 3 ปีที่แล้ว +1

      @@ChrisCourses 😂

  • @amn9822
    @amn9822 3 ปีที่แล้ว +1

    when i do it with live server i cant load shaders in javascript it throws an error how to tackle this? please someone help ToT

  • @amanguptadev
    @amanguptadev 3 ปีที่แล้ว +1

    Hey I am creating glsl in react but I am getting compilation error please share me how can I setup this in react

  • @animedreamz2009
    @animedreamz2009 3 ปีที่แล้ว +1

    Why not align the mesh to the div size and use canvas fullscreen?

  • @ItachiUchiha-w5h
    @ItachiUchiha-w5h 11 หลายเดือนก่อน

    Heyy can someone help me with this..
    In the value property of globetexture Im loading an image..
    But that image is not showing.
    And globetexture.value is showing to be 'undefined' in the console..

  • @alvarobyrne
    @alvarobyrne 2 ปีที่แล้ว

    Isn't v for varying instead than for vertex ? Anyways : excellent tutorial!!!!!!!!!!!!!

  • @moathahmed2360
    @moathahmed2360 2 ปีที่แล้ว

    thank you its good

  • @Krawcu_
    @Krawcu_ 2 ปีที่แล้ว

    Server error
    An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.

  • @SantiagoBatracio
    @SantiagoBatracio 10 หลายเดือนก่อน

    Hi I'm having a problem installing tailwind in 2024. It doesn't create a tailwind.css file, it creates it in node modules but its content is different from the one in the video. Can someone help me? I'm a noob :(

  • @in2minutesorless64
    @in2minutesorless64 3 ปีที่แล้ว +1

    Hi Chris, great series on three js. When I created the vertex.glsl file, nothing happens when I follow your code. Dumb question...but is there certain sofware that I should install?! I can't get a clear answer from the web.

    • @supremeintel
      @supremeintel 3 ปีที่แล้ว

      th-cam.com/video/C8Cuwq1eqDw/w-d-xo.html

  • @romanchhaque3668
    @romanchhaque3668 3 ปีที่แล้ว +1

    Why I cannot create a glsl file? when ever I try to create a shaders.glsl it show as plain text ..help me

    • @supremeintel
      @supremeintel 3 ปีที่แล้ว

      th-cam.com/video/C8Cuwq1eqDw/w-d-xo.html

  • @nongtruongfc
    @nongtruongfc 2 ปีที่แล้ว

    Can you update GLSL file link please ? it is erroring. Thank you!

  • @padahibaba4173
    @padahibaba4173 3 ปีที่แล้ว

    this was the best

  • @mfpears
    @mfpears 3 ปีที่แล้ว

    The vector normal is in coordinates from the perspective of the viewer, with z going in our direction. It is a normalized vector, so no coordinate will be > 1. The dot product measures the commonality between 2 vectors, so taking the dot product of the normal and a vector that's facing straight towards us will tell us how much the vector normal is facing us. If it's 100% in our direction, we want intensity to be 0. If it's completely to the side and z is 0, we want it to be its highest. Hence we are subtracting that dot product from 1.05. The most the dot product will be is 1, when the normal is facing us completely, and even then the intensity is 0.05. So the atmosphere is slightly tinting everything, even at the center of the globe. I'm not 100% sure on this, because this is the first time I've learned about shaders.
    Edit: Now I'm later in the video and I have no idea why rotating the globe has anything to do with the atmosphere. Is it the additive blending? In that case, it seems to me that the problem is the back side of the globe, not the atmosphere. And you would take the absolute value of the dot product before subtracting it from 1.05. Normalized vectors can have negative coordinates. That's fine. But I'm concerned because apparently the shader doesn't get new normals when the globe is rotated? Right, you can see the globe's shader on the right side of the globe the light is receding. So if you fix the globe's shader, the original edges of light on the globe should rotate and that will look weird. Wait, is there a way to make the shader re-render after the rotation? Then it would get the new normals.
    Okay, I see that you pasted the normalize code into both shaders. It's only the globe shader that matters I think. And the normal is already normalized, so what you're doing is basically absolute value. normalMatrix * normal is somehow similar to squaring, so that makes it positive and then you renormalize it and that's like square root.
    Alright, I think I understand this. Wait. Why did that fix it when before the shader was rotating with the sphere? And we didn't call an re-renders or anything special to get the shader to re-render with the new normal values? Is it actually getting the up to date normals always?
    I looked up normalMatrix and I think this is what's happening. If I understand right, the normals are not given in our coordinate system like I thought, but in the coordinate system of the sphere itself, but normalMatrix is what converts it into our coordinate system. It's nothing to do with absolute value. If you somehow could see the other side of the sphere, it would still be shaded bright. But the shader will now always use normalMatrix to account for our perspective.
    I think I'll watch more shader videos (if there are any) and come back if I find out I'm wrong.

    • @yincognito
      @yincognito 2 ปีที่แล้ว +1

      You are more or less right. A bit new to this too, but one thing he didn't do is to set the vec3(0.0, 0.0, 1.0), aka camera position in view space, in a way that automatically adjusts if by any chance the globe is not centered or it starts rotated. This also has to be normalized and translated from position in world space to position in view space. For example, adding the correspoding varyings in the shaders and using cameraViewPosition = normalize(mat3(viewMatrix) * cameraPosition); instead of the hardcoded vector above. Some adjustments could be made to the gradient not happening when very close to the planet as well, but that's another story.
      That being said, you won't find that many information sources on shaders and the GLSL language, unfortunately. The Book of Shaders he mentioned and asking on StackOverflow are your best bets, since it seems most folks are doing a lot of guess work to figure out what is what, in the absence of extensive documentation.

  • @Xyzzzz307
    @Xyzzzz307 3 ปีที่แล้ว

    Sir I couldn't find the quick setup video of yours to have faster project setups.
    I also want to go with the "mkcanv"
    setup.
    Can you please tell which one is it?

  • @barrymulrooney1983
    @barrymulrooney1983 3 ปีที่แล้ว +1

    hi great video! Is there another way to load the image used in the texture? I've tried import the image as an import statement and then set it to new THREE.Texture and passed it as a uniform. No errors in the shader but it appears black.
    Which is not ideal.

    • @DiegoXCI
      @DiegoXCI 2 ปีที่แล้ว

      Did you ever find a fix for this? I'm having the same results.

  • @flosty
    @flosty 3 ปีที่แล้ว +2

    Hi Chris, thanks for the tutorial. I see that your bundlesize is over 500kb and I'm curious if it's possible through three-shaking (version 128 should be able to have three shaking as I onderstand) to get the threejs related stuff far below 500kb. I haven't managed to get that done and I'm not sure if it's impossible to get the bundle any smaller or if the bundler config isn't right. Maybe you have some insights or a example of a bundler config that results in smaller bundlesize.

    • @codybontecou
      @codybontecou 3 ปีที่แล้ว +2

      He does an import * from threejs which is importing EVERYTHING from threejs. It's probably more efficient simply importing what you need.

  • @eotikurac
    @eotikurac 3 ปีที่แล้ว

    my texture is a png where the oceans are transparent. when using shader material it makes it black. if i put zero value for alpha the black goes away but i cannot see the other side of the sphere. how can i fix this?

  • @billcolak5253
    @billcolak5253 2 ปีที่แล้ว

    did he delete a bunch of stuff from this video like water reflection?

  • @hunnysingh4100
    @hunnysingh4100 3 ปีที่แล้ว

    please help me how i download package.json in your sine waves video i can't understand

  • @martin_j_ward1871
    @martin_j_ward1871 ปีที่แล้ว

    anyone know what that todo list extension in his vs code is?

  • @akshatsingh4891
    @akshatsingh4891 3 ปีที่แล้ว +1

    Hey Chris can you tell me what is that todo thing I want that badly!

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +1

      Hey Akshat, that would be the Sublime Text plugin PlainTasks. You can check it out here: github.com/aziz/PlainTasks

    • @akshatsingh4891
      @akshatsingh4891 3 ปีที่แล้ว

      @@ChrisCourses thanks a lot bud!I actually use VS Code but thanks nevertheless you are the reason of my progress in Three.js Props to you man!

  • @sanjanakaur4410
    @sanjanakaur4410 3 ปีที่แล้ว

    Could you send the URL for complete course for Create a Globe with Custom Shaders

  • @alexnijs76
    @alexnijs76 2 ปีที่แล้ว

    Would you help me make an iridescent shader for my 3D model on my website lol, it’s impossible for me

  • @darkphotonllc
    @darkphotonllc 2 ปีที่แล้ว

    Thanks for this amazing tut, one question I have is are there any options for loading the glsl files into a non vite framework? I'm mainly using MUI components

    • @BenSmallwood
      @BenSmallwood ปีที่แล้ว +1

      You don't have to create glsl files. You can just put their content into `` brackets at the top of your JS file and set it as a variable and use that. Ex:
      const vertexShader = `
      varying vec2 vertexUV;
      varying vec3 vertexNormal;
      void main() {
      vertexUV = uv;
      vertexNormal = normal;
      gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0); // x, y, z, transform
      }
      `;
      Then instead of importing it into your JS file you can just use the variable as normal.

  • @joaopaulomirandadossantos7006
    @joaopaulomirandadossantos7006 3 ปีที่แล้ว

    hello chris, it would be possible to make a hot reload video with webpack and php (Codeigniter 4)

  • @User-w8t4t
    @User-w8t4t 2 ปีที่แล้ว

    I think we can build a bloom ball behind the earth by using unrealbloompass. It seems more easy

  • @Xyzzzz307
    @Xyzzzz307 3 ปีที่แล้ว

    Hey buddy! How are you?
    Can you make a vanilla javascript tutorial for Snake Game? I haven't got an impressive tutorial

  • @infinitecmdz
    @infinitecmdz 3 ปีที่แล้ว

    is there a way to retrieve\get a shader from a Mesh?

  • @computerscience1152
    @computerscience1152 3 ปีที่แล้ว +1

    Awesomeeeeee...

  • @ThilakReddy-zf1tz
    @ThilakReddy-zf1tz 3 ปีที่แล้ว

    it only renders earth image on mouse hover on desktop and does not even load image on mobile, your demo also does not show image please help

    • @diegoruiz4544
      @diegoruiz4544 2 ปีที่แล้ว

      It's because the three.js library only runs on the browser, not in mobile devices

  • @harmeepatel
    @harmeepatel 3 ปีที่แล้ว

    what editor is that!? great tutorial💯

  • @baliyachtservices7505
    @baliyachtservices7505 2 ปีที่แล้ว

    you rock!

  • @sandaparthysailaxmanakarth9045
    @sandaparthysailaxmanakarth9045 3 ปีที่แล้ว

    three.module.js:16343 WebGL: INVALID_OPERATION: drawElements: no valid shader program in use

  • @janineairamagayanes1543
    @janineairamagayanes1543 2 ปีที่แล้ว

    is it possible to use react instead?

  • @sandaparthysailaxmanakarth9045
    @sandaparthysailaxmanakarth9045 3 ปีที่แล้ว

    getting this error what to do

  • @abuzeralaca
    @abuzeralaca 3 ปีที่แล้ว

    Love Your videos. It was a shame I found you now.

  • @mikerogers2047
    @mikerogers2047 3 ปีที่แล้ว

    Can this be done using html css java script

  • @mikerogers2047
    @mikerogers2047 3 ปีที่แล้ว

    kindly teach how to make this using html css please...

  • @tanjilshorts797
    @tanjilshorts797 3 ปีที่แล้ว

    How to create half looking earth??

  • @ishkapoor7931
    @ishkapoor7931 3 ปีที่แล้ว

    Error
    TypeError: starGeometry.setAttribute is not a function
    Please help!

    • @ishkapoor7931
      @ishkapoor7931 3 ปีที่แล้ว

      Quick fix: Change 'setAttribute' to "addAttribute". This error occurred due to bcoz of versioning.

  • @rainbowsandhorizons7994
    @rainbowsandhorizons7994 3 ปีที่แล้ว

    Behold the next bruno simon

    • @ChrisCourses
      @ChrisCourses  3 ปีที่แล้ว +2

      Hah I wish, dude is a beast!

  • @holderstown643
    @holderstown643 ปีที่แล้ว

    what language is this? python?