I Created My Own Custom 3D Graphics Engine

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 พ.ย. 2024

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

  • @SZvenM
    @SZvenM 3 หลายเดือนก่อน +308

    "or if you've never learned linear algebra, think back to after you watched this section". That sentence alone was worth watching this video for. Great video!

  • @Chloedasher
    @Chloedasher 3 หลายเดือนก่อน +398

    "I don't wana include a 3d model for every letter, number, and symbol. That would be ridiculous"
    Later...
    "I'll need to add a 3d model for each letter number and symbol"

    • @spin4team4096
      @spin4team4096 8 วันที่ผ่านมา +1

      But those are different, that's just because the game needs those models, but a different game made in this engine obviously won't need a 3D texture for every letter because they probably won't use flying letters as projectiles.

  • @98ahni
    @98ahni 3 หลายเดือนก่อน +87

    I made my own 3D game engine as part of my education. The feeling of making something from nothing is truly unique!

    • @InkboxSoftware
      @InkboxSoftware  3 หลายเดือนก่อน +24

      It's a great feeling for sure

  • @YaBoiKerpal
    @YaBoiKerpal 3 หลายเดือนก่อน +213

    So you're telling me that an American Company had a project called the Manhattan Project aimed to destroy the Japanese hold on the gaming market? Hmmm...

    • @RobinThePaladin
      @RobinThePaladin 3 หลายเดือนก่อน +7

      Hmmm...

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

      Hmmm...

    • @Neelesh144
      @Neelesh144 3 หลายเดือนก่อน +3

      is that what known as illuminati lol

    • @MS-LOL
      @MS-LOL 2 หลายเดือนก่อน +1

      ​@@Neelesh144 The la li lu le lo!

    • @reeman2.0
      @reeman2.0 หลายเดือนก่อน +1

      @@MS-LOL ra ri ru re ro*

  • @joaquinvanhouten
    @joaquinvanhouten 3 หลายเดือนก่อน +248

    I don't know a damn thing about programming. I didn't understand a damn thing he said. I did have a great time.

    • @JoeyCoco2024
      @JoeyCoco2024 3 หลายเดือนก่อน +13

      Glad I’m not the only one..had no clue about what he was on about but the knowledge is impressive!!!

    • @juanmacias5922
      @juanmacias5922 3 หลายเดือนก่อน +10

      I know programming. I didn't understand a damn thing he said. I did have a great time. :D

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

      my 10 year old sister can understand this.

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

      @@juanmacias5922 real

    • @leonlysak4927
      @leonlysak4927 3 หลายเดือนก่อน +5

      Then you would likely become a great programmer. Get after it homie. It's fun!

  • @BananaMan6763
    @BananaMan6763 3 หลายเดือนก่อน +108

    I'm really surprised with how you can just jump around doing different types of things involving programming games. Like, coding nes games in 6502 assembly, coding gbc games with 6502 assembly as well I believe, coding an mmo game using angular, and now coding a 3d game from scratch with DirectX!

    • @starleaf-luna
      @starleaf-luna 3 หลายเดือนก่อน +6

      GBC is incompatible with 6502 assembly. you're thinking of SM83.

    • @jajoothecoolman
      @jajoothecoolman 3 หลายเดือนก่อน +1

      He is too smart.

    • @RedstonekPL
      @RedstonekPL 2 หลายเดือนก่อน +1

      thats what recreational programming is all about tbh
      just messing around in whatever you want

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

      Gameboy is z80

    • @skyeplaysgames4598
      @skyeplaysgames4598 25 วันที่ผ่านมา

      @@instantlymeatified Gameboy is SM83, as someone above you already said

  • @xenotiic8356
    @xenotiic8356 3 หลายเดือนก่อน +36

    My brain is melting trying to understand the math, but it's still really cool!

    • @TheIndigoShine
      @TheIndigoShine 3 หลายเดือนก่อน +4

      Just... calculus of points and data make funny shapes on screen yee!

  • @Innuya
    @Innuya 3 หลายเดือนก่อน +18

    Man, the project is cool and all but your presentation is A++, incredible work dude.

  • @modlich_303
    @modlich_303 3 หลายเดือนก่อน +76

    8 BIT Minecraft.
    Like how a widow looks into the sea. Knowing that her beloved has been taken by it, but still waiting, for his return.
    I too look into this channel, hopelessly awaiting 8BM's return. Although I know it's fate, I still await it's return, feeding myself lies with every breath i take.

    • @MengoOfficial
      @MengoOfficial 3 หลายเดือนก่อน +7

      2 weeks....

    • @j-w-8
      @j-w-8 3 หลายเดือนก่อน

      Still waiting after 10 months and still no 8bm. I wonder if Inbox decided the game was done

    • @MengoOfficial
      @MengoOfficial 3 หลายเดือนก่อน +1

      @@j-w-8 he said 8BM was just on hiatus in another comment.

  • @ryanbeatty5478
    @ryanbeatty5478 3 หลายเดือนก่อน +5

    This is an absolutely amazing breakdown of the graphics pipeline

  • @FastDuckProgrammer
    @FastDuckProgrammer 2 หลายเดือนก่อน +2

    This is so calming but also explaining really hard things easly without cutting anything out or saying something that changes like ho many buffers direct x has!11!1!

  • @daviddelgado5553
    @daviddelgado5553 3 หลายเดือนก่อน +2

    Thank you for consistently proving us with subtitles even though I may not understand everything you talk about. :)

  • @Justinjaro
    @Justinjaro 3 หลายเดือนก่อน +5

    Yo to help with the floor rendering, add a UV multiplier into your base shader and you can gain back a lot of the performance from just using a single plane like you did previously, and scaling the floor UV texture.

  • @DemonixTB
    @DemonixTB 3 หลายเดือนก่อน +12

    9:30 No. A CPU does do SIMD. They have registers of sizes up to 512 bits now (with MTX extensions coming that'll have 1024 or 2048 in the future), and instructions that operate on them as though they were packs of 64/32/16/8 bit registers, in a way it is similar to what GPUs do, but on a far fewer number of, but far larger and more pipelined, and completely out of order, predictive, highly optimized cores. Instead, GPUs use SIMT, Single Instruction Multiple Threads. A GPU is made up of (in nvidia's terms, every vendor calls them something else) many GPC's (General Processing Cluster) that contain many SMs (Streaming multiproccesors) that contain Thread Blocks made up of two Thread Warps, which are basically a pack of 32 execution units that can do memory, floating point or integer related instructions, but no decisions, those are made by the SM controller, and all do waves of the same instruction (or they need to stall if not all of the threads are meant to take the same execution path).

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

      I have no clue what i read but it seems smart so have a like lol

    • @user-tk5gj2cz5q
      @user-tk5gj2cz5q หลายเดือนก่อน

      this you? 🤓

  • @boody8844
    @boody8844 3 หลายเดือนก่อน +18

    I've always been curious and interested about how all of this works on a lower-level software speaking. It is kinda interesting that software engineers do not have to worry about things like this anymore and can just use frameworks but for some reason it doesn't sit right with me.

    • @another3997
      @another3997 3 หลายเดือนก่อน +10

      Underneath, they are clearly very complicated tools, but it's the same as you or I 'building' a computer... you don't need to know anything about electronics. It's like putting together Lego tricks. Writers and artists don't need to understand how paper, ink and paint are made, they just use them. Bricklayers building houses don't have to understand the chemistry of bricks or the physics of adhesion. Car drivers don't need to understand rubber compounds, the physics of steering or the chemistry of petroleum or diesel in order to drive a car. 😉

    • @boody8844
      @boody8844 3 หลายเดือนก่อน +2

      @@another3997 That does make sense, should be left to computer engineers to worry about 😅

    • @TheIndigoShine
      @TheIndigoShine 3 หลายเดือนก่อน +1

      ​@@another3997
      Consumer is the end user. That how things are. There are so much complex stuff we aren't supposed to worry! For all of this comes out of human cooperation and good labor. Components for tools, tools to assemble creations or products to please a need. And now tools combine. We combine vehicles with radio and speakers, now we add computers and cameras, illumination and even sturdier crafted glass materials. To make things better and to evolve.

    • @lukeskywalker2
      @lukeskywalker2 3 หลายเดือนก่อน +1

      @@another3997 Abstracting away all the complicated engine work has allowed so many individuals to create their dream game they never would have otherwise but devs nowadays tend to take it for granted combined with how powerful computers are so long gone are the days of clever optimizations and now we have the standard 500gb aaa game

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

      @@lukeskywalker2 They can and likely want to make it smaller, but they don't have the time or money for that.
      Why? Because the stupid shareholders demand more, more, more profits.

  • @totoshampoin
    @totoshampoin 3 หลายเดือนก่อน +42

    Well, rendering hundreds of cubes bellow you as one giant floor is kind of a bad idea
    What you could do instead is make a single quad which's UV coords go higher than 1, and make sure its texture is set to repeating

    • @InkboxSoftware
      @InkboxSoftware  3 หลายเดือนก่อน +17

      Good idea, I'm sure I could write a shader for that

    • @aspectreishauntingeurope
      @aspectreishauntingeurope 3 หลายเดือนก่อน +16

      ​@@InkboxSoftware you don't need any shader for that, you just need to configure the sampler differently...

    • @soryabuscompany
      @soryabuscompany 3 หลายเดือนก่อน +1

      ​@@aspectreishauntingeurope wouldn't you need to edit the code in the shader to do that then?

    • @aspectreishauntingeurope
      @aspectreishauntingeurope 3 หลายเดือนก่อน +4

      @@soryabuscompany no, samplers are created on the cpu.

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

      @@soryabuscompany Nah, theres some "Hints" or w/e its called that you could have repeating texture, clamp texture or just a single texture.

  • @morgan0
    @morgan0 2 หลายเดือนก่อน +3

    right now i am working on writing my own like, not game engine, but kinda the graphics side of a game engine, mainly for very fancy uis for my use case. i have not gotten to the stage of it being able to draw anything, except drawing pain into my mind. i am certain that it will need significant revisions for it to be useful for someone that isnt me lmao

  • @Will-zv1tm
    @Will-zv1tm 2 หลายเดือนก่อน +1

    This was so great, and you really did a fantastic job explaining the CS concepts in the video.
    I’m going to say the next thing purely because I want to see this channel continue to grow, but you might want to consider getting a slightly better mic or teaching yourself to speak with more inflections and pauses. It would really help with some of the humor in the video and would enhance the learning experience.

  • @cambocontent6732
    @cambocontent6732 2 หลายเดือนก่อน +1

    I definitely need to keep revisiting this video, you are doing great work just creating educational videos like these! Very informative.

  • @soryabuscompany
    @soryabuscompany 3 หลายเดือนก่อน +9

    Wow, that game was really realistic

  • @bengoodwin2141
    @bengoodwin2141 3 หลายเดือนก่อน +37

    I gotta be honest, that 3d UI thing you did seems cursed.

    • @aspectreishauntingeurope
      @aspectreishauntingeurope 3 หลายเดือนก่อน +8

      it is indeed incredibly cursed and stupid lol

    • @lazerpie101
      @lazerpie101 3 หลายเดือนก่อน +3

      the more you dig into the workings of a computer, the more horrific things you find.

    • @aspectreishauntingeurope
      @aspectreishauntingeurope 3 หลายเดือนก่อน +3

      @@lazerpie101 nah not really tho the grease sits atop

    • @RADkate
      @RADkate 2 หลายเดือนก่อน +6

      wait till you find out about the full screen quad and its even more cursed cousin the full screen tri

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

      @@RADkate that doesn't sound that bad as long as it's just one polygon. Still weird though

  • @MilesLabrador
    @MilesLabrador 3 หลายเดือนก่อน +1

    This is absolutely stunning!

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

    Oh my god that outro music brought back memories....
    That's a really good choice for an outro track

  • @ferenccseh4037
    @ferenccseh4037 2 หลายเดือนก่อน +2

    Many people pointed out the floor, so I'll say this instead:
    Instead of sending an image for each color for the enemies, you can send a single, grayscale image and tint it by multiplying by a color based on their health.
    Sending data to the GPU is usually the biggest bottleneck, so this should speed things up a bit.

  • @LobotomyTC
    @LobotomyTC 2 หลายเดือนก่อน +4

    2:49 "and several DirectX boxes later..."
    Opportunity to throw a picture of the Dreamcast in that lineage, missed. I don't know why people always forget it was the first DirectX box.

  • @J4y_boi
    @J4y_boi 3 หลายเดือนก่อน +20

    Just started the video, I’ll predict that it’s sponsored by Brilliant

  • @Junkman
    @Junkman 3 หลายเดือนก่อน +4

    Instead of using a bunch of cubes for the floor, just make one large cube and set the UV map to > 1 so the texture will repeat

  • @ret-si
    @ret-si 2 หลายเดือนก่อน

    20:34 okay that was smoother than my brain, totally subscribed, maybe i'll get smarter!

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

    I absolutely love your mic, it reminds me of a video from 2015, please keep it 😭🙏

  • @InkboxSoftware
    @InkboxSoftware  3 หลายเดือนก่อน +33

    To try everything Brilliant has to offer-free-for a full 30 days, visit brilliant.org/Inkbox/ . You’ll also get 20% off an annual premium subscription.

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

      Thanks for great review! Please tell about skeletal animation.

    • @AWIRE_onpc
      @AWIRE_onpc 3 หลายเดือนก่อน +1

      no

    • @cerulity32k
      @cerulity32k 3 หลายเดือนก่อน +2

      This video is great! I have one tip though: The ground can really just be one big square. If you use a wrapping texture and multiply the UV coordinates, the texture will be repeated across the entire square.

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

      scam

    • @DivyaNagar-ek3yo
      @DivyaNagar-ek3yo 3 หลายเดือนก่อน +1

      Bro is this your only sponser

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

    Great video! This is so fun! You've done great! Would be cool to see more of this!

  • @BaldiReycaster
    @BaldiReycaster 3 หลายเดือนก่อน +272

    At this time, it is impossible to have watched the entire video, because it was released 3 minutes ago.

    • @xronium
      @xronium 3 หลายเดือนก่อน +29

      watched it at 9x speed nerrrrd

    • @BaldiReycaster
      @BaldiReycaster 3 หลายเดือนก่อน +1

      Wrooooooooooong!@@xronium

    • @TheKdcool
      @TheKdcool 3 หลายเดือนก่อน +5

      An LLM could!

    • @NerdCloud-IT
      @NerdCloud-IT 3 หลายเดือนก่อน +5

      nuh uh just watch it at 2x speed

    • @minirop
      @minirop 3 หลายเดือนก่อน +5

      youtube counts a view after a mere 30s.

  • @cloudy772
    @cloudy772 3 หลายเดือนก่อน +16

    6:28 oops typo. Should be “fragments”

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

    Well done! ❤ Next steps: animation and shadows.

  • @BananaMan6763
    @BananaMan6763 2 หลายเดือนก่อน +1

    I just realized that you have been able to make a lot of games with different programming languages, and I remembered today that when it comes to programming you need to focus more on being a great problem solver rather than remembering syntax, and I believe that will help you be able to learn any programming language. I learn't about this from Fireship's video, how to learn to code - 8 hard truths.
    Do you ever have any difficulties with making new games with different programming languages? And if not, do you think there's a reason?

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

      All high level languages are basically the same, so it really comes down to what platform do you want to write a program for. Windows, c#, c++. Web, javascript. Linux, c, c++. Just want it to work and don't care how: python. But of course the most fun: assembly.

  • @clarkecreates
    @clarkecreates 3 หลายเดือนก่อน +1

    You'll probably never see this but thank you this was a very fun watch, I've always wanted to do this process myself but I'm extraordinarily lazy and probably never will.

  • @AdamFahn
    @AdamFahn 3 หลายเดือนก่อน +1

    Pure genius!

  • @Nada-nonexistent
    @Nada-nonexistent 3 หลายเดือนก่อน +2

    i really hate to say this type of stuff, but where 8bit Minecraft update
    i don't want to put pressure i just really like this concept and i admire the effort you put into it and id hate to see it all go to waste

    • @InkboxSoftware
      @InkboxSoftware  3 หลายเดือนก่อน +5

      2 more weeks

    • @Nada-nonexistent
      @Nada-nonexistent 3 หลายเดือนก่อน

      @@InkboxSoftware yippie 👍
      I also want to add that I don't really mind the time it takes. In the sense that If gave devs take time for their mental health it will end up into better and more fun results. so take your time, no pressure

  • @CoolJosh3k
    @CoolJosh3k 3 หลายเดือนก่อน +7

    Instead of a different texture for each colour, you could have used vertex colours.

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

    I can't wait for Inkbox to discover SDF for 2d Text rendering^^

  • @skydivertyler
    @skydivertyler 3 หลายเดือนก่อน +1

    I learned so much in this short time wow

  • @j-w-8
    @j-w-8 หลายเดือนก่อน

    Love the cheese icon in 19:20

  • @skylark.kraken
    @skylark.kraken 3 หลายเดือนก่อน +6

    0:09 I have never plugged a monitor into any Raspberry Pi I've owned, if it would make it cheaper (no HDMI licencing fees) I'd like them without any graphical capabilities

    • @cool-person1161
      @cool-person1161 3 หลายเดือนก่อน +2

      Better to have it and not need it, than need it and not have it

    • @skylark.kraken
      @skylark.kraken 3 หลายเดือนก่อน

      @@cool-person1161 Well, I own 17, the 16 that are in a cluster don't need any display out, I may as well keep display out on the 17th (I may actually use it one day, if making a game I can check on the worst case scenario hardware-wise)

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

      i ❤ tty over usb

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

      Arduino?

    • @skylark.kraken
      @skylark.kraken 3 หลายเดือนก่อน

      @@SSukram_ I need something more powerful than that and cheaper

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

    7 minutes in and my mind is blown. Depth buffer is the smartest thing I've heard in a while.

  • @Generlc_Human
    @Generlc_Human 3 หลายเดือนก่อน +2

    WOOOOOOO NEW INKBOX VIDEO FUCK YEAHH LETS GOOOOOOOO

  • @cerulity32k
    @cerulity32k 3 หลายเดือนก่อน +1

    Hell yeah! I'm making my own game engine with wgpu, I love custom-made engines!

  • @SEGACD32XMODEL1
    @SEGACD32XMODEL1 2 หลายเดือนก่อน +4

    I misread “from Scratch” as in the programming language “Scratch”

    • @shango4651
      @shango4651 หลายเดือนก่อน +3

      That would still be absolutely fucking epic

  • @Capi_sigma_pro_coder
    @Capi_sigma_pro_coder 2 หลายเดือนก่อน +4

    I’m surprised you didn’t use vulkan

    • @chromosoze
      @chromosoze 2 หลายเดือนก่อน +1

      i would have been surprised if they _had_ used vulkan. the amount of boilerplate you need to write to get basic rendering is significantly much more than that of D3D11 or OpenGL.

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

      @@chromosoze open gl is old and bad 🥱, vulkan is open source and not more compatible but definitely an alternate, it interacts with the computer system way better, open gl is limited becuase it’s old and needs to keep its compatibility

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

    Very cool video! Now do a triangle rasterizer yourself and do a complete software renderer ;)
    (Also you don't need to create many objects for the ground, you can just repeat the texture on a single ground plane, by providing sufficiently large UV values and setting the texture clamping value)
    (Also you don't need to have non-static geometry for text, you could just as well use uniforms in your shader to get texture coordinates for your letters)

  • @AngelicDirt
    @AngelicDirt 3 หลายเดือนก่อน +3

    I feel like he foreshadowed this by asking us to not ask whether the OLED watch could play Doom before. Unlikely, but still. 🤔

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

    these games are getting really realistic!

  • @detectivepyro6963
    @detectivepyro6963 3 หลายเดือนก่อน +3

    Please never quit youtube

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

    If you re-compile the video in parts and change it a bit, you can explain the 101 of reverse-engineering 3d game files 😉 all these files contain is vertex and index buffers ❤️

  • @Lampe2020
    @Lampe2020 2 หลายเดือนก่อน +2

    21:50 Wasn't that exactly what you tried to avoid by putting written characters on a texture instead of 3D-modeling them?

  • @Macko_z_Bogdanca
    @Macko_z_Bogdanca 3 หลายเดือนก่อน +4

    Since you programmed in gameboy and now 3d maybe it's time for 3d software renderer on gba? 😅
    Great video!

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

      There are bunch of those! Look up the Super Mario 64 GBA version some guy is making, it's incredible. Oh and the Tomb Raider one

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

    When creating the sphere guys, whyd yolu give them a texture? Wouldnt it be much more efficient to have vertex colored them? Or even just create a 4×4 texture with all the colors you need in the different pixels, then scale the uvs for the faces down to 0 and position them on the pixel that you want instead of creating a diffuse map for the whole thing

  • @21_electro
    @21_electro 2 หลายเดือนก่อน

    i feel so smart watching these 🔥🔥

  • @Gauley_
    @Gauley_ 3 หลายเดือนก่อน +4

    Video starts at 4:50

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

      How so

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

      The intro is clearly axed on giving viewers a basic knowledge that most don't have for the rest of the vid,is this some sort of new trend where people do their best to discard intros and context in the videos because of their ever shortening attention span

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

      Thank you lil bro 🙏

    • @seamo-vt
      @seamo-vt 2 หลายเดือนก่อน +1

      @@Sunrymoonprobably to skip the sponsor segment

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

      It actually starts at 0:00, like every video. Hope this helps! 🥰

  • @bvonline
    @bvonline 2 หลายเดือนก่อน +1

    Unreal is nothing against this! Call of Duty needs to be done with that realistic game engine.

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

    Wow that sponsor transition was smooth

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

    you made 90's bowling alley animations into a game

  • @a.j.outlaster1222
    @a.j.outlaster1222 2 หลายเดือนก่อน

    This was awesome!

  • @iO-Sci
    @iO-Sci 3 หลายเดือนก่อน

    Serene ! this is a serene and cubical 3-D Game Engine
    고요하고 입체적인 3-D 게임 엔진입니다

  • @GamerMan3.14
    @GamerMan3.14 2 หลายเดือนก่อน

    At this time, it is completely possible to have watched the entire video, because it was posted 3 weeks ago.

  • @titaniumtomato7247
    @titaniumtomato7247 3 หลายเดือนก่อน +1

    For the HUD elements can't you just ignore the projection and modelview matrices? Doesn't that put it directly in front of the screen? sorry if thats idiotic

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

      Yes. Not sure why he thought he had to “undo” the movement. Your hud coordinates are just screen space coordinates. Or if you want to be fancy and screen size invariant your hud coordinates are from 0-1 as a percentage of screen size then you only need to multiply by 2 and subtract 1 to put it into NDC in the vertex shader.

  • @briarwentling5435
    @briarwentling5435 3 หลายเดือนก่อน +1

    crazy that 3D rendering is just... how it works.

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

    I never done any DirectX stuff but I don't think you need any matrix (orthographic or perspective) to render 2D stuff. You can just use a different shader with only 2 values for position, and hardcode z coord in there. At least that's what I do in OpenGL/Vulkan

  • @DerKlemm-Crafter
    @DerKlemm-Crafter 3 หลายเดือนก่อน

    This is insane. I don't understand much of it, but who cares? I still enjoy it

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

      People who do care, care

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

      it's really not that insane

    • @DerKlemm-Crafter
      @DerKlemm-Crafter 3 หลายเดือนก่อน

      @@bosballl I guess I'm just stupid

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

      @@DerKlemm-Crafter No

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

    "But I don't want to add every 3D render of every single letter and symbol into the game"
    *does it anyway

  • @Benethen_
    @Benethen_ 3 หลายเดือนก่อน +3

    What's the chiptune music at the start of the video called?

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

    I did not understand much but you're underrated

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

    “Bill Gates, you never cease to amaze the rock” sounds like a quote from a wattpad fanfic

  • @ETK_800
    @ETK_800 3 หลายเดือนก่อน +4

    now make your own rendering engine

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

    cheddar video dude!

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

    Why Windows, Inkbox? I would never go back, despite the nostalgia

  • @janikarkkainen3904
    @janikarkkainen3904 3 หลายเดือนก่อน +1

    oh god, DX11. How many factories do you need to use to get stuff working? :D ...so much boilerplate

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

      "So much boilerplate"
      Vulkan: "Hold my VkInstance, VkPhysicalDevice, VkQueueFamilyProperties, VkDevice, VkQueue's, VkSurface, ..."

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

    A masterpiece of a video game

  • @aspectreishauntingeurope
    @aspectreishauntingeurope 3 หลายเดือนก่อน +10

    why use the proprietary directX, especially for hobbyist purposes, when there is OpenGL / Vulkan?

    • @InkboxSoftware
      @InkboxSoftware  3 หลายเดือนก่อน +6

      Had to start somewhere, and if you have Windows, you have DirectX

    • @aspectreishauntingeurope
      @aspectreishauntingeurope 3 หลายเดือนก่อน +11

      @@InkboxSoftware just as you have opengl ;-)

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

      why don't you install Gentoo?

    • @0tter501
      @0tter501 2 หลายเดือนก่อน +2

      ​@@InkboxSoftware but vulkan works anywhere (techinaclly directx does too but thats only because the directx to vulkan layer works anywhere)

    • @MS-LOL
      @MS-LOL 2 หลายเดือนก่อน

      I think it's because directX is the most popular set of APIs for rendering.

  • @windestruct
    @windestruct 3 หลายเดือนก่อน +4

    When I saw the thumbnail it was 2 views 34 seconds ago, never been that early for a long time

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

    Clearly a fan of Duke Nukem. I'd love to see this engine fully fleshed out and open sourced, if only to add to the competition for game engines. Although, I do wonder why DirectX instead of OpenGL or Vulkan, since those are far more cross platform.

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

    I love this channel

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

    super mario land's ending song as an outro? 10/10

  • @user-nd7rg5er5g
    @user-nd7rg5er5g 2 หลายเดือนก่อน

    17:15 Me who understands zero percent of computer science: Ahh, rookie mistake.

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

    I tried learning graphics programming once, but I wasn't able to absorb much other than the bare minimun to render a single triangle.
    When I think of all the math background seemingly required to do all the stuff you do, specially with my next to LITERAL ZERO math knowledge, to the point where I can't even multiply or divide, it makes me feel very hopeless on that front.
    To be fair, I was learning OpenGL, not DirectX, but I doubt that would have made any difference, the pipeline seems to be pretty much the same.

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

    Protecting the cheese from aliens?
    Wallace & Gromit FPS shooter

  • @guyguy467
    @guyguy467 3 หลายเดือนก่อน +1

    To quote Ryan George: Wow wow wow... wow

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

    Inkbox please make this a tutorial step by step so that we can make our own 3d directx engine PLEASE!

  • @elcucumber2847
    @elcucumber2847 วันที่ผ่านมา

    windows pinball music goes hard :3

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

    thats probably why i like programming. U can literally create everything from nothing.

    • @poleve5409
      @poleve5409 12 วันที่ผ่านมา

      it's not exactly nothing, there's the IDE, OS, libraries and limitations include performance and size considerstions

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

    The way unity handles UI is to rendering it on a plane and stick it too the camera and use orthogonal view on it, rather than another ortho gfx pipeline... it renders faster UI being the worst fps hog to begin with. it also transfers CPU to GPU for some calculations.. also UI libs just need a renderer.. and you can get away with only windows buttons and text fields and editboxes with nothing else

  • @diaryofagamer-gl1bz
    @diaryofagamer-gl1bz หลายเดือนก่อน

    briliant is taking over

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

    couldnt you have set the uv coordnates to more than 1 for it to tile? or is it not how that works in raw d3d?

  • @MrMaxiDPM
    @MrMaxiDPM 3 หลายเดือนก่อน +1

    El Doby 🔥

  • @stevep9177
    @stevep9177 3 หลายเดือนก่อน +1

    I'm a big fan of graphics

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

    the goAT

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

    Gltf is 3d wraped in json it should be quite easy to unpack and use in your code

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

    Bill Gates in DOOM with a leather trenchcoat and shotgun is CRAZYYYY

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

    this guy made a 3d engine FROM SCRATCH

  • @jag-ar-inte-rolig
    @jag-ar-inte-rolig 3 หลายเดือนก่อน

    nice man

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

    I understand none of this but am still watching it.