Programming an entire game from scratch | Prime Reacts

Programming an entire game from scratch | Prime Reacts

ThePrimeTime

1 год назад

211,408 Просмотров

Ссылки и html тэги не поддерживаются


Комментарии:

skilz8098
skilz8098 - 28.11.2023 12:18

Audio driver programming will teach you the foundations needed to master languages such C/C++ and or assembly! Especially if you're below the Operating Systems API and system calls, below the what use to be the HAL (Hardware Abstraction Layer) of a system, etc... When you're down to the registers and controllers, and converters going back and forth between digital and analog manipulating individual bytes and bits... that's where the fun begins. Might want to brush up on your trig, on your understanding of FFTs. Then it's a matter of not just playback, but how the audio data is being internally represented. Is it raw? Is it compressed? Is it in a mp3 format, a wav format, or structured as a MIDI sequence? Ah yes, Audio Programming will definitely teach you to use C/C++, Assembly properly!

Ответить
skilz8098
skilz8098 - 28.11.2023 12:11

Sound Drivers... much to explore there! Takes me back to the DOS days of gaming and having to manually configure each and every game to have the correct sound / video card, that they're assigned to the right IRQ channels, setting the correct DMAs, etc. during the setup procedure after installing the game. The fun old days!

Ответить
skilz8098
skilz8098 - 28.11.2023 11:59

breaking out the baby powder ...

Ответить
skilz8098
skilz8098 - 28.11.2023 11:41

Old school DirectX - OpenGL rendering window with Windows API setup 500+ lines of code before modifying any of the pixels other than the default screen color at startup. Learning how to have Windows Procedural Callback, dealing with the Windows HANDLE's... The messaging system... then configuring your Application's main window attributes and settings such as size and position, resizing it, windowed or fullscreen resolution modes. Then having to modify or configure it's HDWC drawing commands for either DirectX or OpenGL to be the primary drawing context. The good old days of having 500+ required boilerplate code up and running for every project before you even render your first graphical triangle. Oh how we are spoiled today... That can be now done in about 4-20 lines of code pending on preferred initial setup and assigned functionalities all through the use of a a simple library.

However, it's not all fun and games... If there are any unforeseen bugs which I'm sure there are in said libraries and APIs that you're using within your projects then your applications have those same bugs. You're also at the mercy of the library / API vendor(s) for when they update or make any changes to it. If and when you migrate to their newer version(s), you have to make sure your entire code base works as expected. Of course any newer versions or releases may provide many or most of those bug fixes but more than likely they've also introduced a bunch of new ones... So there's always a tradeoff!

Roll your own and carefully manage your own internal bugs (good luck). It does take a little bit longer to get your project(s) up and running yet it also provides you with more control and flexibility towards what you want your applications to do. Otherwise you'll have to rely on some outside library or API trusting that they will do in the hopes exactly what they claim or are intended, expected to do, also (good luck). For we all know too well that bugs or badly written, badly structured, poor choice of algorithm, etc... can and will show up anywhere at any time causing invalid results, code - program crashes, or even system wide crashes; all because someone missed an edge case, or improperly accessed an invalid or dangling pointer - reference object, out of bounds indexing, off by one errors, division by zero, error in calculations from narrowing or widening a type... stack and or buffer under or overflows, page or segmentation faults, and much much more... So either way there are always trade offs and bound to be bugs, so again(Good Luck).

I guess it's time to dive into doing some Vulkan programming...

Ответить
Ashing
Ashing - 28.11.2023 00:40

When I was young and trying to learn to program I remember getting "Tricks of the Windows Game Programming Gurus" and just the function signatures for spawning a basic window turned me off programming for year. I thought I was just too dumb since I thought I had to memorize all the parameters for _everything_. Fortunately I've been in the software industry for a decade now, but I still shudder thinking back on those insane signatures.

Ответить
Nordgaren
Nordgaren - 17.11.2023 02:34

Prime preaching C being "the real mans language" while reacting to a video about Jai

Ответить
e T
e T - 11.11.2023 18:38

Watching the best doing their thing always seems easy. I think this guy is just next level.

Ответить
awokawok]]
awokawok]] - 10.11.2023 06:29

randeezNuts

Ответить
Andrew M
Andrew M - 30.10.2023 01:07

the yearly randy tries something and eventually gives up

Ответить
colkiwi
colkiwi - 29.10.2023 07:51

the amount of capital letters in directx lmaoooo hahahaha

Ответить
7Wolf77
7Wolf77 - 17.10.2023 18:01

And his editor is like.. "yeah I'm not gonna do any of that"

Ответить
Jonathan Blazquez
Jonathan Blazquez - 15.10.2023 23:21

You gota watch mizizizi hahahaha

Ответить
Andrei Miroshnik
Andrei Miroshnik - 09.10.2023 23:18

Man, I love your videos. You both hilarious and inspiring!

Ответить
Charlie
Charlie - 05.10.2023 13:10

Dude weak move to cut it early, not including the part that doesn't let you monetize the video, when this is just react content and the original creator took the hit on his actual content...

Ответить
k
k - 27.09.2023 03:05

Jai is the most joyful programming language I ever used and I tried Zig and Rust before. Nothing comes close. It's just beautifully crafted for game development and you get all the power you need + convenience and lots of built-in goodies.

Ответить
Brian Williams
Brian Williams - 25.09.2023 22:10

"Piece of piss" is British slang.

Ответить
Mart
Mart - 20.09.2023 14:19

btw if you use calloc in C instead of malloc, it get's 0 initialized

Ответить
Mart
Mart - 20.09.2023 14:14

It looks easy in his video because he only mentions the top level things to do.
e.g. make a triagle, make two of them so it's a quad, make it show a texture instead of just single colors.
There is a lot of code behind it that he is not showing.
Also, Jai makes it a lot easier to make games, etc (it was designed for game development) so it's easier to accomplish what you need.
For example, there is a library/module named Window_Creation that you can use to create a window with one line of code on Windows, Linux, and Mac.
There is also a library/module named Input, so you can just get input, without any hassle.

TL;DR: It's complicated to do stuff, but Jai makes it easier to accomplish, and he only shows milestones instead of every line of code.

Ответить
Nevo Krien
Nevo Krien - 09.09.2023 23:22

When I write c its instant legacy code

Ответить
Placeholder name
Placeholder name - 07.09.2023 11:53

As an Australian I can confirm, we are all actually form Nebraska.

Ответить
Jeff Childers
Jeff Childers - 02.09.2023 08:37

go back to the days BEFORE debuggers to solve that soul destroying bug in c.
hard times create strong men, strong men create good times, good times create weak men, and weak men create hard times

Ответить
Tropic Tiger
Tropic Tiger - 29.08.2023 14:55

Prime, please send my compliments to your editor, excellent zoom skills. very subtle and understated.

Ответить
Krunklehorn
Krunklehorn - 24.08.2023 19:58

"Piece of piss?" distant TF2 laughter

Ответить
Ryan King
Ryan King - 19.08.2023 16:30

even their headset microphones are upsidedown.

Ответить
Davidson Souza
Davidson Souza - 23.07.2023 06:16

Flip was on a strike

Ответить
obscenityib
obscenityib - 15.07.2023 04:14

"from scratch"
>uses existing libraries
>uses premade assets

too bad it was so short too, cut out all the good boring bits

Ответить
ODOL MED 3
ODOL MED 3 - 01.07.2023 18:54

Spoiler:

FLIP DIDN'T ZOOM IN, NO CANDLES, NUFFN

Ответить
Franco
Franco - 26.06.2023 14:50

serach for NITRONIC RUSH

Ответить
Rainbow Asteroids
Rainbow Asteroids - 25.06.2023 04:34

C is a real man's language because you get to see men cry

Ответить
Ory Chowaw-Liebman
Ory Chowaw-Liebman - 17.06.2023 21:04

If you just add the samples for the wave audio, the loudness increases. You have to average it out. So for two sources, halve the result... No worder his ears blew off!

Ответить
Liam Pugh
Liam Pugh - 17.06.2023 11:12

Piece of piss is a popular phrase in England too

Ответить
Eric
Eric - 16.06.2023 21:55

"When someone says that I have the building blocks to make absolutely anything; it really means, I have currently made something in which when I make something it will still take an incredible amount of time." -ThePrimeagen

That one cut me deep.

Ответить
Abdulrahman Azmy
Abdulrahman Azmy - 13.06.2023 14:00

Where the hell is flip filip

Ответить
aliensarefromspace
aliensarefromspace - 11.06.2023 03:31

you C, but you don't C# enough to spot your bugs.

Ответить
sciencedude
sciencedude - 10.06.2023 18:24

You haven't truly lived until you've built your own audio player. I have. Was it good? No. Was it streamlined? Easy to use? No. But, it was beautiful. And now when I use SDL2_mixer, I don't ask, "what in sam hell is this shit" No. I say, "Thank you based god." And as I call upon Mix_LoadMUS, our lord Gaben looks down from his throne of Steam Decks on high, and he says, "It is well my good and faithful servant." And then I run it through a profiler, and I agree it is well. Amen.

Ответить
Spencer Nold
Spencer Nold - 10.06.2023 01:35

Nature? In computer science we see the sun less than the people in Dark City do

Ответить
crcs
crcs - 06.06.2023 15:53

Time to jump into 4coder

Ответить
szeredai akos
szeredai akos - 06.06.2023 10:12

I went from windows to mac-os. MS-DoS is an advanced, highly customisable OS compared to what this piece of crap is... It does the job tho... kinda

Ответить
Miroaja
Miroaja - 06.06.2023 09:33

You gotta turn on caps lock to get anything done in dx 🥲

Ответить
ed orgel
ed orgel - 05.06.2023 18:17

Just a video just to show off his skills..

Ответить
Balduin_b
Balduin_b - 05.06.2023 12:30

why does this looks fun?

Ответить
David Reghay
David Reghay - 02.06.2023 22:01

I spat out my coffee when you said the tech lead

Ответить