MarioKart.js Blew My Mind (Open Source + React + ThreeJS)

  Рет қаралды 213,864

Theo - t3․gg

Theo - t3․gg

Күн бұрын

Пікірлер
@z_0968
@z_0968 10 ай бұрын
Nintendo is 100% going to DMCA this if/when they find out. My advice take a page from Palworld, instead of calling it MarioKart, with Mario the iconic Italian plumber. You call MasayoshiKart, and make him a japanese electrician.
@BooleanDev
@BooleanDev 10 ай бұрын
yeah, it was extremely dumb to use the mario kart name. its basically begging Nintendo to send a dmca
@1234minecraft5678
@1234minecraft5678 10 ай бұрын
Idk why ppl think they would cone thru. Maybe he wants the fuzz and changes it after dmca
@BooleanDev
@BooleanDev 10 ай бұрын
@@1234minecraft5678 if the dmca demands you shut it down, changing the name isnt gonna get you out of it
@eveykhan
@eveykhan 10 ай бұрын
Palrio Kart 🤝
@ermilburn02
@ermilburn02 10 ай бұрын
@@1234minecraft5678 Yes, because we saw how well that worked with Mario Royale
@anttihilja
@anttihilja 10 ай бұрын
Nintendo will take this down faster than theo can say he doesn't like Remix :)
@gilgamesh9735
@gilgamesh9735 10 ай бұрын
*Flutter
@anttihilja
@anttihilja 10 ай бұрын
@toparamennoodles9652 Shut up, Remix is great
@wlockuz4467
@wlockuz4467 10 ай бұрын
I think they have a bigger fish to fry at the moment, Yuzu.
@spageen
@spageen 10 ай бұрын
Can react fix my broken marriage?
@t3dotgg
@t3dotgg 10 ай бұрын
Only if it can render to canvas
@svict4
@svict4 10 ай бұрын
Render me like one of your french girls
@erifetim
@erifetim 10 ай бұрын
Can you try to hot reload?
@boomshakalaka656
@boomshakalaka656 10 ай бұрын
Yes the compiler can
@jaspreetmaan121
@jaspreetmaan121 10 ай бұрын
Maybe your component didn't mount
@mohammadalrefaai4377
@mohammadalrefaai4377 10 ай бұрын
After 10y, React for quantum physics
@shomriddhosworld5587
@shomriddhosworld5587 10 ай бұрын
After 20y, A Os Built With React
@t3dotgg
@t3dotgg 10 ай бұрын
jQuery is getting an operating system soon so this checks out timeline wise (more context coming soon)
@comradepeter87
@comradepeter87 10 ай бұрын
​@@t3dotggW H A T
@xetera
@xetera 10 ай бұрын
Hey reactOS technically already exists
@vegito9532
@vegito9532 10 ай бұрын
​@@t3dotgg whaaat ? How? When ? Where ?
@JinseokSeo-p8q
@JinseokSeo-p8q 10 ай бұрын
m.kzbin.info/www/bejne/gH3KpJyFgM2tb7M This guy is a genius
@seb4690
@seb4690 10 ай бұрын
Missed opportunity to say, "MarioKart.js in the Bowser"
@FroztYcle4737
@FroztYcle4737 9 ай бұрын
ha
@DaffyDuckTheWizzard
@DaffyDuckTheWizzard 10 ай бұрын
I believe we're on the cusp of a new "flash games" kinda of era
@seeibe
@seeibe 10 ай бұрын
Wasn't that the .io games?
@ADarnSmore
@ADarnSmore 9 ай бұрын
3d browser games have been a thing for a while. this is just worse.
@Raidar29
@Raidar29 9 ай бұрын
@@ADarnSmore why is this worse?
@ricardomartinhodacruz
@ricardomartinhodacruz 2 ай бұрын
you can keep believing then, nobody is playing this
@johnmagbag2711
@johnmagbag2711 10 ай бұрын
Didn't expect I'd be a game dev in 11 minutes.
@IHighscoredYourGirl
@IHighscoredYourGirl 9 ай бұрын
Don't worry, you won't
@paul_tee
@paul_tee 9 ай бұрын
@@IHighscoredYourGirl 😂
@J3R3MI6
@J3R3MI6 9 ай бұрын
@@IHighscoredYourGirlyou’re right… with AI it will take 5 mins
@ivanrenescorcia
@ivanrenescorcia 10 ай бұрын
ThreeJS is really powerful, we should give it more visibility!
@KaroLiul
@KaroLiul 10 ай бұрын
Everything that can be written in javascript, will be written in javascript
@alskidan
@alskidan 10 ай бұрын
I adore watching JS developers rediscovering scene graphs :-D
@mieszkogulinski168
@mieszkogulinski168 10 ай бұрын
Uaing React to create any type of graph, not only HTML, is actually an awesome idea
@dshappir
@dshappir 10 ай бұрын
It's always worthwhile remembering that React JSX nesting is just functional composition.
@cherubin7th
@cherubin7th 10 ай бұрын
That this changes show up in the game imminently was so awesome. I just had to tried this in Godot too, and it does this too. I didn't know that.
@TheHronar
@TheHronar 10 ай бұрын
I'd love a polished game engine made out of this. As someone who dabbled in game dev for over a decade, I could get behind this architecture for small projects.
@joshbedo8291
@joshbedo8291 10 ай бұрын
You can even take this a step further and run it in XR so you can play it on a quest in virtual reality. Could even add a new camera mode for VR so you are in the driver seat and can throw items 😄
@James.Engineer
@James.Engineer 10 ай бұрын
Amazing open source idea!
@mieszkogulinski168
@mieszkogulinski168 10 ай бұрын
Long time ago I made a project at work that uses react-three/fiber to display visualizations of scientific data. react-three/fiber is awesome, the idea of displaying 3D object as React components is great
@tanvirhasan4912
@tanvirhasan4912 10 ай бұрын
Nintendo would arm themselves with lawyers to go after 8 year olds pirating pokemon.
@wlockuz4467
@wlockuz4467 10 ай бұрын
Finally some good content that isn't about reinventing the same thing or AI. Really enjoyed this one, threejs never fails to blow my mind.
@SteelSkin667
@SteelSkin667 10 ай бұрын
I mean this is about reinventing the same thing, the novelty is that it's built with React.
@wlockuz4467
@wlockuz4467 10 ай бұрын
@@SteelSkin667 I was mainly talking about how JS frameworks have been lately lol
@Hapkumdo
@Hapkumdo 10 ай бұрын
Drei is german for Three - the more you know.... xD
@tangrumser
@tangrumser 10 ай бұрын
Zustand is also German for State. It’s super weird to hear non German speakers pronounce it like it’s just an English word 😄
@markflakezCG
@markflakezCG 10 ай бұрын
"zsuständ" xd
@SleepyPoutine
@SleepyPoutine 10 ай бұрын
So it’s react-three-three?
@minhuang8848
@minhuang8848 10 ай бұрын
@@tangrumser thank God he showed the word, I would never in a million years made the leap susstend
@jerondiovis6128
@jerondiovis6128 10 ай бұрын
Is this guy already in jail because Nintendo lawyers saw this?
@DildaarAbrahams
@DildaarAbrahams 10 ай бұрын
Nintendo should be proud of this fan as he made mario kart for the browser
@finn3163
@finn3163 9 ай бұрын
btw "zustand" translates to state from German, so that might make it a little more clear to understand
@ricky2629
@ricky2629 10 ай бұрын
Could something like this get used with Electron to make it behave more like a game with it's standalone executable?
@mattmmilli8287
@mattmmilli8287 10 ай бұрын
Yes. Many 2D games on steam are really headless browser games
@BennyS6502
@BennyS6502 10 ай бұрын
Very impressive and a great showcase for React-three-fiber! To be fair though, this has nothing to do with React being fast or slow. At the end of the day, the whole thing is rendered in a canvas element on the GPU using WebGL. As you said in the video, React-three-fiber is a wrapper around Three.js, which is a wrapper around WebGL. However, the level of abstraction and ease of use makes React-three-fiber a good choice if you want to be productive. 3D programming is hard...
@ElLevidente
@ElLevidente 10 ай бұрын
Feel like it would be a lot more accurate just to say it's made with Three.JS -- React-three-fiber is really just a wrapper to provide Reacts delcarative syntax and components structure for Three
@FrostsorrowGaming
@FrostsorrowGaming 10 ай бұрын
this is a like a new era of "flash" style games. Yea i know its way more powerful then flash, but it was the only other thing that came to mind when it comes to browser based gaming that did have some neat games for its time out there. Having full 3D space and running so smoothly is pretty great. Also the openness of it is great as well.
@igoralmeida9136
@igoralmeida9136 10 ай бұрын
does this use WebGL or WebGPU?
@idoblenderstuffs
@idoblenderstuffs 9 ай бұрын
the link on it is broken and i cant seem to find an upload of it
@EEBDivyanshgupta
@EEBDivyanshgupta 10 ай бұрын
I once read an article or something that riot games uses react to display splash screens in there games(ig it was about Valorant). Crazy to think about the potential React has!!!!
@Roboprogs
@Roboprogs 10 ай бұрын
Trivia regarding long ternary operator chains: format them like else-if’s. Cuz that’s what they are. See also: (COND …) in Lisp, or if/else/… in Ruby.
@tgoyer
@tgoyer 10 ай бұрын
I always thought of them more like complicated switch statements. But yeah, "if" is probably a better mental model.
@MdNazrulIslam-o9u2m
@MdNazrulIslam-o9u2m 9 ай бұрын
What's your VS code setup? Can you share? It's neat and I like it.
@rotoozeki
@rotoozeki 9 ай бұрын
Clear explanation👏 Didn’t understand everything cuz I’m not familiar with coding but I was enjoyed hearing your explanation.
@AndersonMancini
@AndersonMancini 10 ай бұрын
Funny to see my face and name during your code review 😅. I just worked with Fire glsl Shader but looks like I changed a lot of other things.
@geralddd.g
@geralddd.g 10 ай бұрын
What theme are you using on vs code?
@xtanion
@xtanion 10 ай бұрын
++
@mcgjk
@mcgjk 10 ай бұрын
What VSCode theme is that? It looks nice :)
@theavazov
@theavazov 10 ай бұрын
I like the idea of recreating the most lovely games from our childhood, good thing is on browser)
@TheMASTERshadows
@TheMASTERshadows 10 ай бұрын
Now do it with htmx
@smthngsmthngsmthngdarkside
@smthngsmthngsmthngdarkside 10 ай бұрын
Please leave the internet
@LajosHarangi
@LajosHarangi 10 ай бұрын
Nintendo's lawyers are writing the DMCA as we speak.
@apptsx
@apptsx 9 ай бұрын
What font does theo uses in VSCODE? 3:40
@fayenotfaye
@fayenotfaye 10 ай бұрын
Which browser do you use
@usame.cetinkaya
@usame.cetinkaya 10 ай бұрын
It's important for children to know how the physics works. Well said.
@tormado
@tormado 9 ай бұрын
OH GOD IT'S ALL COMING TOGETHER 🤯
@shafiq_ramli
@shafiq_ramli 10 ай бұрын
JS ftw 🎉
@callibor3119
@callibor3119 9 ай бұрын
We need more open source projects to help us with language learning, programming language learning and help with basic living, even. Open source is the public domain of the internet and we need all the free things we need ti bring happiness abd unity back into our lives.
@seeibe
@seeibe 10 ай бұрын
What incredible timing for this video 😂
@ewwitsantonio
@ewwitsantonio 10 ай бұрын
I love R3F. Working on a few R3F jobs right now. Super fun to work with.
@DeusEx3
@DeusEx3 9 ай бұрын
Yes, Nintendo, this video right here.
@AScribblingTurtle
@AScribblingTurtle 10 ай бұрын
While the tech is impressive, it is unfortunate they didn't adapt something like Super Tux Kart instead. Nintendo will kill this inspiring thing before you know it. They went after someone remaking a terrible 30-year-old game, that barely anyone cared about, what makes you think remaking one of their greatest cash cows would be handled with less vigor? Heck, if the Devs would have gone for a Sonic variant, they may would have even gotten a Job from Sega. Now all this will get them is a DMCA Takedown, And we all lose yet another cool piece of tech.
@aymenbachiri-yh2hd
@aymenbachiri-yh2hd 3 ай бұрын
this looks awesome
@callibor3119
@callibor3119 9 ай бұрын
We need everything free that we can safely get to help us with basic living. We needed an open source-based community since the internet became so popular around the globe. I’m tired of prices on the internet being so expensive than when you are getting groceries. You don’t need a live service to groceries and cook your own foods.
@benheidemann3836
@benheidemann3836 10 ай бұрын
I think a game engine built around React would be really cool and very approachable for a lot of web devs. Does something like this exist already?
@anonymouscommentator
@anonymouscommentator 10 ай бұрын
sorry im not a web dev and dont know react so probably im missing something but why is building a simple car game impressive? they have existed for literally decades and game engines like unity can export your game into a web environment as well for ages now.
@Fupicat
@Fupicat 10 ай бұрын
It's just fun! Front end web dev and game dev are usually very different technology-wise, so using React, a tool primarily used for websites, to make a 3D game, is a fun way to showcase what's possible with the technology, while also giving web devs a little peep into game dev using a language and concepts they understand. It's like when people make Doom run on stuff it's not supposed to, because it's a fun challenge.
@anonymouscommentator
@anonymouscommentator 10 ай бұрын
@@Fupicat i see, thanks for the explanation :)
@randerins
@randerins 10 ай бұрын
Oh nice, just like playing it on Yuzu 🙂
@1kTroopKoopas
@1kTroopKoopas Ай бұрын
Nintendo: all your code are belong to us
@Destide
@Destide 9 ай бұрын
RIP the dev enjoy the Donkey Kong themed salt mines
@haifarn7351
@haifarn7351 10 ай бұрын
what os does he use?
@aleksd286
@aleksd286 10 ай бұрын
So we all just became game developers overnight
@totalpr0st
@totalpr0st 10 ай бұрын
zustand es heißt ZUSTAND.. good video and very cool project tho
@hjewkes
@hjewkes 9 ай бұрын
Damn I just expected this to be an emscripten recompile
@gsayak
@gsayak 9 ай бұрын
Nintento Legal team gonna be all over it now :)
@rollinOnCode
@rollinOnCode 10 ай бұрын
that is hilariously awesome
@UnitCodesChannel
@UnitCodesChannel 10 ай бұрын
Nintendo right now: Call The Lawyers
@chrislanejones
@chrislanejones 10 ай бұрын
I am in the process of learing Three.js, this is great, I wonder if they used Spline library to create it.
@Kaczucha888
@Kaczucha888 10 ай бұрын
Defining game world using JSX is just dumb. You have duplicated this one box 3 more times and now you read them top to bottom and may expect that their order in JSX will accually have a meaning when in fact you just position them trough prop and JSX structure has nothing to do with that. Nesting? Cool. Structuring? Dumb. Lets stick with react for 2D UIs
@Meaticus22
@Meaticus22 10 ай бұрын
Newb question: How did you get the react program to run via terminal and not browser?
@mieszkogulinski168
@mieszkogulinski168 10 ай бұрын
There's a library named Ink that allows using React to build CLIs
@Meaticus22
@Meaticus22 10 ай бұрын
thank u@@mieszkogulinski168
@Meaticus22
@Meaticus22 10 ай бұрын
wait but how did he get the mario kart program to run via terminal instead of the browser? @@mieszkogulinski168
@DevGio
@DevGio 9 ай бұрын
"Devin, make Mario Kart 9 from Threejs and Reactjs"
@ryangamv8
@ryangamv8 10 ай бұрын
7:53 how is this better/different than just using a function
@lunakepio5387
@lunakepio5387 10 ай бұрын
It is basically a function, when you create a div with react you don't actually create a div, you call a function that create a div, it's the same
@igoralmeida9136
@igoralmeida9136 10 ай бұрын
@@lunakepio5387 he's asking "why not just use a function call instead of a react component?"
@STaSHZILLA420
@STaSHZILLA420 9 ай бұрын
Pokemon Revolution Online (fan-made pokemon mmo) made all their stuff from scratch. As a result, they can't be stopped. The same thing can happen here if they alter the name a bit.
@mistersunday_
@mistersunday_ 10 ай бұрын
This is super cool
@marcpanther8515
@marcpanther8515 10 ай бұрын
Is my assessment correct: things still look clean and declarative because most of the game logic is probably in another repo? This feels like just "initialization" codes for the game.
@ifscho
@ifscho 10 ай бұрын
So can I write a whole game and somehow compile it to a Steam deliverable? 😄(Into a native build I mean, obviously could just run it in a WebView.)
@AnnasVirtual
@AnnasVirtual 10 ай бұрын
react component as objects? that's fun that's interesting that they can do SceneGraph with react components usually you do scene.AddChild(new ItemBox(position = new Vector3(1, 2, 3)));
@molesarecoming
@molesarecoming 10 ай бұрын
you do that with the dom as well: node.appendChild(createElement("div)). react expresses imperative systems declaratively. that's why react-dom is not named react-html, it is merely a form that instructs react about the dom: divs, spans, appendChild, insertChild etc. react-three-fiber is the same for threejs, a small form that instructs react about the platform. react itself remains platform independent.
@cchrischriscris
@cchrischriscris 10 ай бұрын
Did you ditch zed?
@LanceBryantGrigg
@LanceBryantGrigg 10 ай бұрын
This is legit proof that eventually everything will be written with Javascript.
@UnitCodesChannel
@UnitCodesChannel 10 ай бұрын
Nintendo: Hold my Lawsuit
@tehArgento
@tehArgento 9 ай бұрын
Well, everybody fork it before it gets taken down XD
@KnOtoUt
@KnOtoUt 10 ай бұрын
I had done some three with vanilla js when I was on a hackthon for Space Apps, It was a 3d scene to show eclipse. Didn't win anything but being able to make a browser 3d scene when I didn't even know js well tells me it is easy to get into but damn it is hard to master
@Oscaragious
@Oscaragious 10 ай бұрын
Does this make React a game engine?
@pwall
@pwall 10 ай бұрын
something totally almost unrelated but it would be very cool if you could do a video on version fox (vfox) very cool go project for managing utils versions, the plugins are written in lua.
@AntonioBrandao
@AntonioBrandao 10 ай бұрын
No GLSL?
@xtanion
@xtanion 10 ай бұрын
There must be some
@mieszkogulinski168
@mieszkogulinski168 10 ай бұрын
I'd guess the library does it internally
@NoName-gc9tu
@NoName-gc9tu 10 ай бұрын
Yet we’re worrying about putting a form on the server…
@abdelazizlaissaoui9079
@abdelazizlaissaoui9079 10 ай бұрын
a good example to use react instead of htmx
@MrSongib
@MrSongib 8 ай бұрын
Better than Roller coaster Excel. xd
@ParthaSarathylink
@ParthaSarathylink 10 ай бұрын
Incoming ninento lawyers in 3..2..
@RobertFletcherOBE
@RobertFletcherOBE 10 ай бұрын
Nintendo wants to know your location.
@anurag476
@anurag476 10 ай бұрын
Theo - camera as an object is a very common construct in most game dev languages (or engines?) - gamemaker studio, unity, unreal, etc all have cameras as controllable objects that you can program. But yeah, seeing it in a web dev project is quite refreshing
@conceptrat
@conceptrat 10 ай бұрын
I wonder if he should pivot to using the Tuxcart assets instead. Nintendo doesn't own the idea of car/cart driving simulations. Assuming that the assets are separate from the code.
@lancemarchetti8673
@lancemarchetti8673 10 ай бұрын
Very cool!
@wlockuz4467
@wlockuz4467 10 ай бұрын
I can't wait until people optimize the heck out of it.
@rkgkjr
@rkgkjr 9 ай бұрын
TBH, as someone with a games industry background... I don't see what's particularly impressive about this demo? The guy ripped some models from the mobile Mario Kart Tour game and threw them into a 3D library and added some janky cart controls on top - this is the kind of thing that even beginner gamedev students could throw together in an afternoon using Unity. The only mildly interesting thing here is using react-three-fiber for scenegraph management, but any game project codebase inevitably ends up as a spaghetti hellhole and I feel like that would only be exacerbated by bringing JSX into the mix.
@yedeng0
@yedeng0 10 ай бұрын
oops... you don't need React to do this at all... It is so scary to look at React people wrap Three.js or Phaser.js, and code a game in a "React way" Please don't abuse React that is already unnecessarily complex enough...
@LiberaMeFromH
@LiberaMeFromH 10 ай бұрын
Nintendo getting ready to lawyer up
@Cactusman-e1d
@Cactusman-e1d 10 ай бұрын
God I give it three weeks to dcma.
@rocksalt636
@rocksalt636 9 ай бұрын
Problem with browser games is if you ever need to crouch (ctrl) and move forward (W), well…
@patrickdevaney3361
@patrickdevaney3361 10 ай бұрын
This is really cool. But I think it would be more practical to do Rust and WASM for a browser game.
@soniablanche5672
@soniablanche5672 10 ай бұрын
Theo is playing with fire by posting nintendo fan games
@lost-prototype
@lost-prototype 10 ай бұрын
Oddly inspiring! React devs have a cozy option for tinkering with their game ideas!
@NullPasha
@NullPasha 9 ай бұрын
I love this, but my brain hurts
@adrianscarlett
@adrianscarlett 10 ай бұрын
Just wait untill you see wasm with webgpu in action.
This VS Code theme is threatening people?
14:26
Theo - t3․gg
Рет қаралды 10 М.
My New Favorite Terminal Just Dropped
24:42
Theo - t3․gg
Рет қаралды 73 М.
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
It’s all not real
00:15
V.A. show / Магика
Рет қаралды 20 МЛН
Every React Concept Explained in 12 Minutes
11:53
Code Bootcamp
Рет қаралды 871 М.
The Easy Way to Design Top Tier Websites
11:54
Sajid
Рет қаралды 644 М.
Phaser Game Engine 2024 Explained
5:39
Phaser - Game Engine
Рет қаралды 10 М.
I wish I knew this before using React Three Fiber
28:23
Rabbit Hole Syndrome
Рет қаралды 130 М.
Getting a Dev Job in 2025
21:42
Theo - t3․gg
Рет қаралды 72 М.
PirateSoftware is right, this needs to stop
15:14
Theo - t3․gg
Рет қаралды 661 М.
How principled coders outperform the competition
11:11
Coderized
Рет қаралды 1,8 МЛН
Three.js Optimization - Best Practices and Techniques
17:47
Valentin's coding book
Рет қаралды 42 М.
A New Drag And Drop Library For EVERY Framework
16:02
Theo - t3․gg
Рет қаралды 175 М.
Why I focus on patterns instead of technologies
7:55
NeetCodeIO
Рет қаралды 238 М.
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН