How Rendering Graphics Works in Games!

Поділитися
Вставка
  • Опубліковано 12 січ 2025

КОМЕНТАРІ • 789

  • @josephattwell1006
    @josephattwell1006 4 роки тому +104

    The teapot was one of the first 3D objects. In 1975, Martin Newell wanted a simple object to try to render. His wife suggested a teapot, which was perfect. While fairly simple, it could cast light on itself and had an internal hole. He graphed out the shape on paper then put in each point coordinate into his computer by hand, as the computer was not powerful enough to generate the coordinates on its own. It has been dubbed the "Utah Teapot."

    • @user-unknownback
      @user-unknownback 13 днів тому

      I think the first real object was a 3d human hand it was made by modeling a real 3d hand with clay in real life then you draw all the faces, vertices and points, then you calculate the position of every x and y cordinates and then you type all of that on a computer and wait for it to render

  • @VikramBamel
    @VikramBamel 3 роки тому +75

    As a GPU hardware engineer, I’m astonished at the level of abstraction you’ve been able to achieve with your video. Concise yet very informative. Great work.

    • @abnereliberganzahernandez6337
      @abnereliberganzahernandez6337 2 роки тому +4

      where can I study gpu hardware any book? i hace already studied computer microarquitecture and the cpu, and I have been searching form a complete guide of gpu hardware but have been unable to find good resources
      please help me!
      I have a good base becouse i know how cpu works

    • @anon_y_mousse
      @anon_y_mousse Рік тому +3

      @@abnereliberganzahernandez6337 I don't know if you'll see this 9 months later or if you've already moved on, but a CPU and a GPU work in much the same way, just that a GPU is specialized to handle 3D math *nearly* to the exclusion of all else and it works parametrically on thousands of tiny calculations therein. If you can understand parallel operations then a GPU should be a snap.

    • @abnereliberganzahernandez6337
      @abnereliberganzahernandez6337 Рік тому +1

      @@anon_y_mousse yes after some months I Saw a little bit of parallel computing. This is mostly managed by they OS.
      Then every alu si doing the same operation on parallel. This arquitecture is one instruction is done on many hardware. SIMD arquitecture. This is implemented on the OS. So the OS manage the hardware.
      Opengl is the computer language used for instructions a I think and cuda C

  • @briansmith1288
    @briansmith1288 9 років тому +667

    This is my advice to any one still in high school or middle school who is interested in programing and game design: pay close attention when you first learn about matrices in algebra. These are super useful, as per the video and it will make courses like linear algebra a bit easier to swallow later.
    Great video. I should have known that transformations would factor into this. It is cool to see the math I already know (but maybe not quite remember) applied here.

    • @TheHappieCat
      @TheHappieCat  9 років тому +55

      Brian Smith Very true! I use all the math and physics I thought was totally useless every day!

    • @briansmith1288
      @briansmith1288 9 років тому +10

      TheHappieCat It is amazing how many of these concepts are deeply rooted together. And how seemingly overly complicated math can actually be much simpler in certain circumstances.
      I still remember learning about cylindrical and spherical coordinates and thinking it was stupid bullshit at first. Then instantly understanding why doing the transformations were way easier than using the normal systems.
      Quick question and completely off topic: have you considered streaming? Resident Evil 4 is pretty sick to stream... :)

    • @briansmith1288
      @briansmith1288 9 років тому +2

      TheHappieCat I have thought about getting one myself. Not that anyone would watch me do the dumb things I like to do.
      Just let us know if you get the card and the setup. A live stream of stuff would be fun.

    • @WryInk
      @WryInk 9 років тому +1

      Brian Smith FYI RE4 is on steam...

    • @briansmith1288
      @briansmith1288 9 років тому +2

      Ferrous Cantilope I don't think I knew that. I certainly didn't remember it. As much as I love that game, I doubt my PC can handle it. So I have the HD version on PS3.

  • @Bazus05
    @Bazus05 9 років тому +152

    I didn't realize how much gets put into graphics. Very informative.

    • @Allplussomeminus
      @Allplussomeminus 5 років тому +1

      It's all put behind a series of mere clicks.

  • @brendethedev2858
    @brendethedev2858 8 років тому +875

    Welcome to the matrix... there is no camera.

    • @pasionxbox360
      @pasionxbox360 7 років тому +34

      also there is no sky, just a box not affected by the camera matrix

    • @brendethedev2858
      @brendethedev2858 7 років тому +6

      Tomas Alejandro it's so wonderful to get comments on comments I made years ago :D

    • @gabrielpetit5193
      @gabrielpetit5193 6 років тому +1

      101 likes OMG

    • @kaildutey3715
      @kaildutey3715 6 років тому +10

      Welcome to the matrix... there is no matrix.

    • @namedyukinne4398
      @namedyukinne4398 5 років тому +5

      Neo.. You must believe...

  • @gigantomaquia
    @gigantomaquia 8 років тому +50

    I always feel excited and happy when I realize that the scene that I'm watching is really happening inside the PC, the 3D space is real and yes I always imagine the monitor like a window. And it is very amazing to think in all the huge quantity of data and calculations the graphic cards and processors are doing every single second. Thank for the video!

  • @sofiacruz634
    @sofiacruz634 7 років тому +4

    I am a 3d designer beginning to work on the area and I just loved your video, how you explain something rather complex to someone not in the field to be able to understand. It actually helped me to understand the process I go through when I am modeling. Subbed and liked! :)

  • @ZMike38
    @ZMike38 5 років тому +14

    This is INCREDIBLY well explained. Thank you for making this, I've always wanted to know!

  • @Hugh.Manatee
    @Hugh.Manatee 8 років тому +143

    Damn, makes me feel old, but I actually made some 3D models for a space combat game by typing vertice and triangle data in a text editor. 3D modeling software was not available for a reasonable price (let alone free), and objects with more than 20 or 30 triangles were too heavy for my 80-386 anyway. =D
    Loved the Thief: the Dark Project image by the way!

    • @Kakerate2
      @Kakerate2 8 років тому +18

      hahah thats dope af dude.

    • @Romejanic
      @Romejanic 8 років тому +14

      Well, before computers were even capable of doing realtime rasterisation (so, before OpenGL was a thing), that's how 3D modelling was done. The Utah Teapot (the one shown in the video at 2:06) was first designed on graph paper, before being written by hand as a 3D model.

    • @codythompson9973
      @codythompson9973 7 років тому +1

      Hugh Manatee
      3D programs are still hella expensive

    • @itscicada7747
      @itscicada7747 6 років тому +1

      Hugh Manatee meh ill just search for torrent

    • @abdelmadjiddahmani1617
      @abdelmadjiddahmani1617 6 років тому +3

      u should just use blender , omg
      its free and do everything an expensive 3d program do ,

  • @pixelcubed6705
    @pixelcubed6705 8 років тому +591

    What if I told you there is no camera

    • @HellishPunch
      @HellishPunch 8 років тому +10

      Pixelcubed What if I told you it'explained in the video? 3:50

    • @pixelcubed6705
      @pixelcubed6705 8 років тому +62

      What if I told you I was making a reference to the matrix "what if I told you" meme?

    • @HellishPunch
      @HellishPunch 8 років тому +6

      Didn't get it, sorry

    • @AeonX7
      @AeonX7 8 років тому +4

      its a rather well known pop culture referrence

    • @HellishPunch
      @HellishPunch 8 років тому +6

      Well I'm not english and I didn't know that. Thank you for the explanation

  • @distantignition
    @distantignition 5 років тому +1

    This is great. Man there are so many people out there misusing words related to 3D graphics and animation. I kept finding stuff about modelling because they thought that was "rendering" the model. Thanks for nailing it!

  • @ad1108am
    @ad1108am 8 років тому +230

    This should be introduction to any mathematics class...
    Teacher: Who wants to learn all about algebra?
    Class: ...
    Teacher: Ok, who wants to wants to be able to play any game you want?
    Class: Yaaaay! Me!
    Teacher: And that's how it is done with algebra :)

    • @RavianXReaver
      @RavianXReaver 8 років тому +45

      Make Studying at school great again!

    • @loginid7108
      @loginid7108 7 років тому +5

      exactly ... but some teachers are hired because they couldn't be something they had decided to become and had to choose "teacher" so that kinda is distracting

    • @GrayMimikyu
      @GrayMimikyu 6 років тому +2

      You know I am trying to make a game hopefully but I'm more of drawing these days and I know nothing about coding ... I wish my teacher had told me that games were made with math back when I was a kid and perhaps I'd of considered the class, now I'm stuck like I don't know shit in math and have to know all these numbers and letters; let's just draw.

    • @ShivamJha00
      @ShivamJha00 6 років тому +3

      @@loginid7108 lmfao I can smell India in that story xDDDDD

    •  6 років тому +7

      @@GrayMimikyu you dont need to know math to make games. what if i told you that games are made by a whole bunch of different people? some are programmers who are good at math, and some are the artists who just draw or make 3d models or animations. you make games as a team, by yourself is hard obviously.

  • @nobu9705
    @nobu9705 6 років тому +2

    Wow!! This video was ON POINT, being precise (showing the simplified matrices even!) while still light and entertaining in the production. Preparing myself for some binge-watching of this channel 👌

  • @Jobaa87
    @Jobaa87 8 років тому +462

    Yes...... I understand some of these words.

    • @mw-cf5dr
      @mw-cf5dr 8 років тому +12

      Like graphics!
      Gotta hev dem grephucks!
      xD

    • @bangerbangerbro
      @bangerbangerbro 7 років тому +2

      Jobaa87 Only some?!?!

    • @beat461
      @beat461 7 років тому +3

      such a childish thing to say.

    • @namewasstolenstresslevel2111
      @namewasstolenstresslevel2111 6 років тому +2

      the only word i understood she saying was "pussy"

    • @taylorbee4010
      @taylorbee4010 6 років тому

      I've done it for a few years at a time before at school, can explain some. Used to make games too

  • @gaiaflare
    @gaiaflare 9 років тому +6

    This video scratches an itch that is hard to fill in timely, consumable fashion. Thank you so much for this lesson! I hope you make more interesting projects.

    • @XanderHDD
      @XanderHDD 9 років тому +1

      gaiaflare "This video scratches an itch that is hard to fill in timely, consumable fashion" - Well put!

    • @codythompson9973
      @codythompson9973 6 років тому

      XanderHD "Well put!"
      - Amazingly said.

  • @JohnSmith-td7hd
    @JohnSmith-td7hd 8 років тому +163

    This brings back bad memories of math class.

    • @namedyukinne4398
      @namedyukinne4398 5 років тому +3

      Im truamatized

    • @barneyhavard7462
      @barneyhavard7462 4 роки тому

      Does 3D graphics mean the kind of 3D where you need 3D glasses

    • @immortaldev1489
      @immortaldev1489 4 роки тому +3

      @@barneyhavard7462 god no

    • @-LTUIiiin
      @-LTUIiiin 3 роки тому +2

      @@immortaldev1489 if you think about it, all glasses are 3d glasses

    • @oncagamming2405
      @oncagamming2405 Рік тому +2

      Nah bro my fav Is maths because I am Asian

  • @Generaika
    @Generaika 8 років тому +2

    I have to admit that I loved your video, its so simple and easy to understand.
    keep up the good work.

  • @skymed94
    @skymed94 9 років тому +5

    You are literally my favorite person to watch on youtube!

  • @XanderHDD
    @XanderHDD 9 років тому +6

    This was Extremely well explained. Thank you!

  • @ShivamJha00
    @ShivamJha00 6 років тому +16

    This gave me enough motivation to concentrate on my math classes.. Good that I saw this video during my school days xDdddd

  • @RavenWoodsDE
    @RavenWoodsDE 8 років тому +13

    You kidding me? It's more magical than before! o.O

  • @Clairvoyant81
    @Clairvoyant81 8 років тому +29

    Nice video!
    IMO, one thing said in the beginning is wrong, though:
    If we're talking about current real-time graphics in games, all 3D models are made up of triangles. Ages ago, quads were used sometimes, but since the triangulation of a quad can be done in two ways, a non-planar quad in a model can lead to artifacts or at least cause unnecessary headaches in modeling. Therefore, these days, everything is made up of triangles in real-time graphics.
    If we're not restricted to games and current graphics engines, a model can be made up of all sorts of surfaces or even as a combination of solids. A well-known example: Most 3D modellers these days support NURBS surfaces. Unless you're rasterizing the image, a model made up of NURBS surfaces can be rendered directly (for example, using a raytracer).
    So, IMO, it's wrong to state that all 3D models are made up of either tris or quads.
    Still, the rest was explained very nicely and to the point.

    • @Romejanic
      @Romejanic 8 років тому +7

      Eh, some 3D modelling programs still support modelling in quads. However, most 3D modelling programs and game engines automatically triangulate/tessellate the models before they're exported, because yes, quads are generally not used anymore unless you're programming the verticies directly.

    • @Mcs1v
      @Mcs1v 8 років тому +3

      At now, modern 3D apis (OpenGL x>2.0 and DirectX x>9) doesn't support quads.

    • @Mcs1v
      @Mcs1v 8 років тому +3

      Little extension:
      the gpu graphical pipelines always create triangles from quads

    • @Romejanic
      @Romejanic 8 років тому +1

      Mcs1v Yep. It's basically the same as using GL_TRIANGLE_STRIP.

    • @Clairvoyant81
      @Clairvoyant81 8 років тому +1

      Yeah, as I said: Since the triangulation of non-planar quads can lead to artifacts, they aren't used anymore. Basically, an artist has pretty much no feasible way to set which way the quad should be split into triangles and therefore cannot fully control the shape that ends up being rendered.

  • @Ricoxemani
    @Ricoxemani 4 роки тому

    This is a really good way of explaining this stuff to beginners. I'm gonna send this to anyone who doesn't understand how 3d graphics work.

  • @nil_blank
    @nil_blank 4 роки тому +1

    I'm a 2-D artist learning 3-D and coding at the same time (slowlllllyyy). These videos have been a great starting point.

  • @minhajshovon9789
    @minhajshovon9789 4 роки тому

    Searching for solution to computer problem I accidentally came across your video! This is wonderfully explained though I was not looking for this kind of video, still I have watched it with great interest. Know I know a real life application of my linear transformation class in the current semester at my University. You have got a new subscriber. Thanks for amazing quality content and blessing UA-cam.!!!

  • @hariprasadcr5936
    @hariprasadcr5936 2 роки тому

    The best explanation I have seen so far and that too within a shortest time
    Awesome work!

  • @TheDisfigure
    @TheDisfigure 9 років тому +1

    Nice video :D! Even though I learned most of this information on my first day as a game dev intern from our 3d modeler, I bet it will be helpful for many. Keep up the good work!

  • @Renegator1
    @Renegator1 2 роки тому

    Excellent explanation! Not only do you know your stuff, but you have the ability to organize and present what you know.

  • @Kouyou160
    @Kouyou160 7 років тому +3

    Great videos, very digestible information, very accessible language. Great job!

  • @shun2240
    @shun2240 8 років тому +17

    Shit should've concentrate during math class when my teacher is teaching lessons about matrices

  • @nikolaradakovic5050
    @nikolaradakovic5050 4 роки тому +1

    Extremely educative, thank you for such a high quality content

  • @BytoGeekLab
    @BytoGeekLab 8 років тому +3

    nice!! simple yet informative, love the way it is explained, couple it with a smiling face of the triangle and square and cats too :D

  • @RobinCawthorne
    @RobinCawthorne 6 років тому +4

    H😁ppyCat, thank you for breaking this down into something so easily digestible.
    To me this has been nice and informative.
    Keep up the great content.

  • @phoneix24886
    @phoneix24886 7 років тому

    I love your voice. It's so calm and soothing. it makes me listen to what you have to say :)

  • @EmmettMcMullan
    @EmmettMcMullan 8 років тому +1

    Your videos are so useful! Thank you for producing your channel

  • @Bottle502
    @Bottle502 8 років тому +2

    This is a great video. Really clear and informative. Thanks!

  • @Supernova12034
    @Supernova12034 7 років тому +1

    watched the video like 3-4 times and finally understand it! Thank you for making concepts so easy, even a caveman like me can learn them!

  • @fredriddles1763
    @fredriddles1763 6 років тому

    Thank you for the video. I need to gain a broad understanding of everything relating to game design for my career and videos like these are a big help.
    Subscribed.

  • @yojasmagic
    @yojasmagic 5 років тому +5

    All of this stuff is actually vital if you want to learn shader programming.
    This is a neat overview, especially for those trying to get into the theory behind a graphics pipeline. Well done!

  • @BABEENGINEER
    @BABEENGINEER 2 роки тому +1

    Very well explained!

  • @Noxoreos
    @Noxoreos 8 років тому +1

    One thing that I'm missing a little bit, is texture projection and what mipmapping is, as well as why it is used, as textures are usually used in the most basic games.
    Apart from that, you pointed to the least requirements to look deeper into, that one might need if she or he wanted to build a software renderer, which I would advice anyone to do if there is interest in gaining a deep understanding of the matter - it is also a fun little project (I did one myself).

  • @SkilletAvalanche
    @SkilletAvalanche 7 років тому

    Fantastic video. As a person new to this language its a lot of info all at once, but you put it all together beautifully.

  • @TheSulaimanKhaled
    @TheSulaimanKhaled 6 років тому

    You should become a professor. I didn't get this information from my professor. You are amazing

  • @Synchro-tq1mo
    @Synchro-tq1mo 3 роки тому

    Finally I found a video explaining this stuff in detail

  • @haaigsouvalian9657
    @haaigsouvalian9657 3 роки тому

    Somehow this 6 minute video was more informative than the 1 hour lecture I had about graphics.

  • @themodman1014
    @themodman1014 8 років тому

    As a game artist who now owns his own game company, I can tell you we love teapots!! also that a teapot was one of the first 3D objects to be rendered. Its one of the special objects available in 3ds Max by default.

  • @StanleyDHYoo
    @StanleyDHYoo 7 років тому +3

    Wow! Now I can wrap my head around how code turns into a game! Thanks! Maybe I'll make my own game engine one day

  • @zohaibmanzoor3173
    @zohaibmanzoor3173 Місяць тому

    So soothing way of explaination,
    Thanks ma'am ❤

  • @SkyboxMonster
    @SkyboxMonster 8 років тому

    informative, detailed explanations, pleasant voice, visual examples,....
    even if I already knew most of this stuff it was entertaining to watch. +subscribed

  • @GregLopesArt
    @GregLopesArt 8 років тому +2

    That's a very good way of explaining things. I started to learn 3D in 2004, probably, after being an illustrator for a long time. Shame I lost the interest before really "getting there." As an illustrator that tries to keep drawing today, maybe using in 3D in my illustrations would revive my interest... I dunno. I would like to try, but I am tending more to a traditionalist approach nowadays (watercolor, traditional art for nearly everything) so I dunno how I would mix the two.

  • @vish2517
    @vish2517 8 років тому +2

    Excellent video, keep up the good work

  • @mr_easy
    @mr_easy 8 років тому +8

    You are AWESOME!! You told everything just the way I like to learn. THANKS.

  • @toyama3307
    @toyama3307 3 роки тому +1

    this video has been sitting in my "watch later" for 6 years and I happened to clear up the list a week after I studied "kinematic of robots" without knowing those knowledge about matrices coordinate production is required to understand this video better lol

  • @swamihuman9395
    @swamihuman9395 8 років тому

    Excellent job. Keep up the great work...
    (FYI, I started in 3D Studio r2 back in the early 90's and had a long career modeling/animating/rendering/programming/teaching/writing!)

  • @K4MR4N1UK123
    @K4MR4N1UK123 8 років тому

    You explained something so beautifully in few minutes such camera models and world which I found hard to grasp in a thick book on 3D graphics reading pages after pages. UA-cam learning is better than books now adays. Thanks

  • @Nein01
    @Nein01 7 років тому

    Hey, I just found your channel today and subscribed after watching a couple of your videos. You're doing really great work! Clear, concise, easy to follow. And cats! I'm a fan now! Keep up the good work! Looking forward to more content :)

  • @chawkzero
    @chawkzero 9 років тому +57

    Great video! That was a nicely succinct summary of the crazy amount of computation going on behind the scenes to render graphics.
    Curious, do you work with OpenGL at your new job, or Direct3D? or something else?
    As for your tutorials in the future, will you be covering the older style immediate mode before OpenGL 2.0 or the newer stuff where you handle all your own matrices, shaders, etc?
    I love all the work you're doing. Can't wait for more!

    • @TheHappieCat
      @TheHappieCat  9 років тому +43

      chawkzero I actually just kinda... know stuff about graphics engines and OpenGL from doing random projects. Some of the foundations I learned in school. I'm working on optimizing engine stuff at work so I don't directly work on graphics, though I'm often staring at related code for many hours.
      My tutorial will just be on how to set things up and make some crude shapes with the most recent versions of OpenGL and VS.
      Thank you! :)

    • @agentgreenland
      @agentgreenland 8 років тому +4

      Your videos are awesome..:! :)

  • @superheartattack7498
    @superheartattack7498 9 років тому +11

    Great video. Thanks for posting.

  • @arcadistorias3202
    @arcadistorias3202 9 років тому +1

    Subbed, great video. Look forward to seeing more of your stuff!

  • @goyingus
    @goyingus 8 років тому

    I genuinely love your videos!

  • @datboi_gee
    @datboi_gee 4 роки тому

    I can't believe it. My assumption about this process was entirely correct.
    Granted, I am a programmer. So I had a good idea of how things are done computationally speaking. But I've never had to work with creating and managing a display matrix from scratch -- I've only ever worked with libraries.
    When creating games for Xbox, we used the XNA library on the .NET framework to allow C# to compile on an Xbox 360. And the library was rather hefty -- having all of the preset functions needed to draw sprites or models onto the display grid.
    But I only ever worked in 2D. It made significantly more sense with two dimensional assets -- having a rectangular viewport, and having anchor points / mathematic equations to translate vertices into a fully-rendered world. It's all straightforward and quite easy to understand.
    But then stepping into 3D is a whole new world of computation. And while it made sense to simply extend the math to account for another dimension, I didn't think it could possibly be as simple as it sounds. Because yes -- in theory, it makes perfect sense. If you know the exact physical location of each face in your world, and you know the exact location of the viewport / camera relative to the faces, you should theoretically be able to represent all range of motion (skew, rotate, scale, zoom, pan, etc.) mathematically. Like of course you should theoretically be able to work out how the perception of an object should warp depending on the change in perspective from frame to frame so long as you had equations accurate enough to derive such transformations. Yet this didn't seem possible on a technical level because that's tens of thousands of approximations calculated per frame. Hundreds of thousands of calculations per second. And that isn't even considering lighting effects or particle effects or animations or anything. Just the literal geometry beneath the texturing. No more.
    That's a RIDICULOUS workload. I can't believe processors don't combust instantly

  • @awdmohamed1340
    @awdmohamed1340 3 роки тому

    Funny how we engage in our world with all kinds of rendered stuff, from reality simulation to games and watching animated videos.
    While not knowing how this all made from scratch.
    I find it very fascinating.

  • @MariaMendoza-qq3pd
    @MariaMendoza-qq3pd 3 роки тому

    You are absolutely right, about teapots! It’s something magical about them.

  • @Prash1c
    @Prash1c 8 років тому +1

    Thanks so much for this! You are so knowledgeable AND are a great communicator. :) I learned a lot!

  • @Quancept
    @Quancept 4 роки тому

    Wow! All the explanation I needed in one video. Thank you cat.

  • @inconnn
    @inconnn 5 років тому +1

    3:34 you don't have to use a matrix, there are other ways which are better, such as euler angles and quaternions, though quaternions are better because euler angles can get gimbal lock which isn't too good.

  • @mr.mohagany8555
    @mr.mohagany8555 8 років тому

    Awesome job, this was easy to follow. You must understand it well to explain it that well.

  • @GeniusStudioDesigner
    @GeniusStudioDesigner 8 років тому +1

    This is great content, keep up the good work!

  • @HaelstormGaming
    @HaelstormGaming 8 років тому +77

    I have a 2 years 3d experience and i am watching this..

    • @brinckau
      @brinckau 8 років тому +13

      It can be useful if your experience is not about the inner workings of the rendering process. Some people can be very talented modelers without having a clue about what happens behind the scene in their software.

    • @HaelstormGaming
      @HaelstormGaming 8 років тому +11

      yup there's a huge difference between theory knowledge and practical work

    • @Rezirex
      @Rezirex 8 років тому +1

      Same

    • @gauravv3367
      @gauravv3367 7 років тому

      HlDlTR at which age did u start doin this? Coz m 13 i wanna merge computer programing infact game industry?

    • @progressivemusicnepal
      @progressivemusicnepal 4 роки тому +1

      @@gauravv3367 it's good if you start learning programming from early stage. I also started learning on my own, from 0 experience on programming and now I am building my own game engine. I learned all stuff on my own. When I started learning there was an awesome game engine known as "DarkBasic" it is very easy to use game engine the language is very similar to BASIC. You can grab any beginner book on darkbasic and start learning it on your own. Basically you can get game Programming books for teens too, do some research and find what best suits you. I suggest darkbasic. Build some cool game, upload it on the Internet, impress your friend on school, impress your teachers, You will also learn programming in a fun way, with this knowledge you can start learning "C++", the one I learned was C++ for programmers by daitel, side by side learn data structures, there are some good books like "data structures for game programmers" too but don't learn this book alone, learn normal data structure book side by side too, after that comes a "algorithms" these are important subjexts too just don't think that this subject is useless, I want to remind you that game development is an engineering intensive field, it's true that everyone feels like I should give up and choose other field, but don't just give up have patience and go slowly, learn every thing step by step, if you don't understand the concepts read it again, now going back to our previous topic then comes the "object orieented modeling and design" and "software engineering principles" again you will feel software engineering as a useless subjext. "Design Patterns" and software architecture will help you too. I started these subject quite later so I faced a little bit difficulty. Then you can start computer graphics, and what interests you in parallell, I recommend computer architecture, linear algebra, Calculus, System programming, Operating System.
      With these skills you can learn OpenGL easily but even with these skills you will face difficulty in learning pipelines and the Matrix transformations at first, if you pass this test then rest of the concepts goes easily. But today's 3D games contains hundreds of models in the scene and each models are made up of thousands of triangles to explain in brief there's a lot of load on both CPU and GPU if we are not carefull, so for rendering efficiecy we use one data structure "BSP". We study it in "Computational Geomerty". I can't name everything here the list is so vast, and is impossible to list here, even i am in learning stage but yeah some other the important filed in games are physics, AI, mathematics.

  • @ElonMusk-FanZone
    @ElonMusk-FanZone 6 років тому +2

    Best video!

  • @ExacoMvm
    @ExacoMvm 8 років тому

    Thats how it works:
    Assets Part:
    1) Whats explained in this video + Concept Idea
    2) Texturing
    3) Rigging ( Characters )
    4) Motion Capture ( Characters )
    5) Creating Speech / Sound FX
    Game Engine Part:
    4) Coding the engine software or using an existing one e.g. UE4 which is basically extremely optimized 3D Renderer.
    5) Building the level
    6) Coding the controls, the overall scenes, level behavior, timings etc. ( The main part )
    7) Creating User Interface and Design
    8) Testing, Testing & Testing..
    9) Releasing the game.
    10) Still fixing and testing.
    And you don't need good Math knowledge to do it all, but programming language is extremely useful.

  • @vegardertilbake1
    @vegardertilbake1 8 років тому +1

    Great video! I have a computer graphics course at my uni and I find the matrices and the math kinda hard understand. This made it easier to understand :)

  • @bruselperro458
    @bruselperro458 5 років тому +3

    I have to make a correction: in 0:35 you say “every 3D figure is made up of triangles of squares, also named quads”. That’s not true. Even if any rendering engine, realtime or not, can render any kind of polygon not depenging on the sides or vertices it has, at the time you see the result on the screen it has been converted to triangles. Why this? Because a triangle will always have a flat surface, doesn’t matter the way it’s vertices are, because the intersection plane between them is always flat. But since other figures have more than 3 vertices and the intersection plan of their vertices will not necessary result in a plat surface, this gets solved by making them internally composed by triangles. So, in fact, a quad is no other thing that two triangles stich together.
    But, by the way, even if in rendering you always see triangles, quads are much more used in modelling because quads let you set the flow of the stripes of polygons

  • @GamingMyWholeLife
    @GamingMyWholeLife 7 років тому

    I approve of such knowledgeable nerdyness. I haz subscribed :)

  • @TheDust69
    @TheDust69 8 років тому

    Very intelligent. I loved the way you explained it!

  • @gundamguy2004
    @gundamguy2004 6 років тому

    I have been struggling with matrices for years and it was because it has had no purpose. I finally have a purpose for them and this will make it so much easier and keep me motivated for finally mastering this math.

  • @saurabhsaxena8933
    @saurabhsaxena8933 6 років тому

    Awesome video. Keep up the good work!

  • @FerrumMusicVideos
    @FerrumMusicVideos 4 роки тому +1

    Thanks for the useful info. I've been working on a 3d Modelling app and this has helped me a lot.👍😁

  • @Great.Milenko
    @Great.Milenko Рік тому

    Wow anne, this video slipped me by many years ago, and is super interesting and informative.

  • @_-__-_6355
    @_-__-_6355 8 років тому

    Great stuff! Loving this channel. :)

  • @gregs6403
    @gregs6403 2 роки тому

    Great explanation of vertices. Thank you!

  • @abyss2200
    @abyss2200 4 роки тому +1

    Such a wonderful explanation,

  • @prezthompkins2111
    @prezthompkins2111 9 років тому

    This was a pretty solid breakdown. I'll try to get some friends to watch it later, since I'm coming into this with an understanding already...
    It's broken down into more digestible pieces than what I would have been able to :P

  • @440diesel9
    @440diesel9 6 років тому +1

    “Tea pods are the Hello World of graphics artists” 😂 😆 🤣 lol to that

  • @tawkinhedz
    @tawkinhedz 6 років тому +1

    And thats how yoi explain a complex subject. Kudos

  • @ethannoble8821
    @ethannoble8821 2 роки тому

    Thank you! I've been referencing this video along with my old linear algebra textbook to create a rendering engine in Java.

  • @silverchairsg
    @silverchairsg 2 роки тому

    You know what. They should use this example of how computer game graphics are rendered to provide context to and teach matrices and linear algebra. It will be 10x more exciting.

  • @DavidRaysbeefs01
    @DavidRaysbeefs01 6 років тому

    between the dark room with low lighting to your end rag doll ending in your school project.. to the warmage and control to the age of 30 you left me and so did he.. lol

  • @Jack-ht3fr
    @Jack-ht3fr 4 роки тому

    This is channel is amazing. it's kinda sad that it's abandoned.

  • @77SeaLions
    @77SeaLions 8 років тому

    This was super informative. great video

  • @AfnanStudio_
    @AfnanStudio_ 8 років тому

    you're a programmer? you just earn a new subscriber ;)

  • @felixboons
    @felixboons 8 років тому

    This video made cleared up the picture real well for me.

  • @-LTUIiiin
    @-LTUIiiin 3 роки тому

    great video. i knew of little stuff here and there about graphics but it still didnt make any sense to me. this was enlightening

  • @Gamster_007
    @Gamster_007 2 роки тому

    Hi! This was so informative and well explained. Highly useful for me as a beginner. Thank you :)

  • @overloader7900
    @overloader7900 4 роки тому

    3:03 Up is y, z is sideways(perpendicular to screen in case of screen space)

  • @iszraelschuyler3387
    @iszraelschuyler3387 4 роки тому +1

    My deepest condolences to everyone who had PTSD when Frampt showed up at the end.

  • @DjVolumeUp200
    @DjVolumeUp200 7 років тому +1

    Yeah,thanks to your explanation of the world rotating relative to the camera I'll never be able to look at a GTA game the same way ever again

  • @NizarElZarif
    @NizarElZarif 8 років тому

    Great video. Very well explained. Liked and Subscribed. Good luck with your channel

  • @БългарскиСлавянинъ
    @БългарскиСлавянинъ 8 років тому +30

    That means in another universe minecraft is triangle shape

    • @FusionFortress
      @FusionFortress 6 років тому

      Български Славянинъ no because minecraft doesn't actually uses 3D models i think, it's like a bad papercraft

    • @edk.2045
      @edk.2045 6 років тому +6

      Minecraft uses a certain kind of 3D graphics called voxels, which are cubes. While it may look blocky, that is simply because it uses very few voxels. If you use a few thousand, it can look very realistic. Many people are also saying that voxels are the future of 3D graphics, because they're cheap, and they can also be a realistic representation of atoms.

    • @alexwasdreaming9440
      @alexwasdreaming9440 4 роки тому +2

      @@edk.2045 sort of, Minecraft uses opengl which does have a quads function, but more just to simplify triangles when you write in immediate mode, Minecraft is rendered in triangles and voxels aren't really a thing, it's just easier to talk about it as voxels but it doesn't have alot to do with the actual OpenGL rendering of anything.

    • @edk.2045
      @edk.2045 4 роки тому

      @@Lalovoe not necessarily. DAGs are very useful for STORING complex geometry in a small size. Once you load it into memory along with an appropriate skeleton, you can pretty much deform it however you want, just like with polys.

  • @felixacosta
    @felixacosta 8 років тому

    Mind blown!! Pretty awesome video!! Thanks!!