It's not hard to make games in C++

It's not hard to make games in C++

Low Level Game Dev

1 месяц назад

91,266 Просмотров

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


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

@hammadnadeemx
@hammadnadeemx - 06.12.2024 12:54

I agree. I miss the old days when every game studio had their own game engine !

Ответить
@hannahlamond7710
@hannahlamond7710 - 06.12.2024 13:29

I feel like the reason why people think you're wrong for not using something like unity or godot, is because they're thinking of it in the context of just "making a game" and not learning how rendering works and not learning the many great techniques and skills you learn from doing it at a lower level and implementing your own optimisations and stuff

Ответить
@isaiah3613
@isaiah3613 - 06.12.2024 17:14

This is why i like using pygame i definitely learned more when i was using that instead of godot but man i just really needed a good way way to get into multiplayer development and godot's got a really decent multiplayer integration with steam

Ответить
@isaiah3613
@isaiah3613 - 06.12.2024 17:17

I will never regret not starting game dev learning without an engine

Ответить
@andyschannel687
@andyschannel687 - 06.12.2024 18:01

As a web developer I can totally relate to this. So many web developers insist on using frameworks like React or Vue. Using a web framework is like using a game engine and it has lots of cool features, but I just like building things in vanilla JavaScript. To me using a framework or a game engine is just taking all the fun parts out of development and leaving the boring and mundane things in.

Ответить
@gruntaxeman3740
@gruntaxeman3740 - 07.12.2024 01:30

I have no problem to write game engine or write code in graphics API. It isn't that hard.

But I'm curious to know, if I made game in C++ with own engine top of SDL and wrapping graphics API, can I outsource game porting to consoles?

What I mean is that is there capability of any company that ports game to consoles, to use custom engines. Sure I know how to make sure that C++ compiles (I do have tricks to ensure that), I can use rendering framework to get multiple rendering backends, I can document game engine but.. I don't know what the porting companies answer I don't use some "established" game engine like Unreal Engine, Godot or Unity.

If custom engine requires porting & testing myself, that is issue.

Ответить
@lukebierbaum
@lukebierbaum - 07.12.2024 07:46

Super valuable advice. Good managers would hire someone who has built a game using an engine, but great managers hire people who have built their own game engine (even if more simple) from scratch.

It just means you understand what goes into the game engine, rather than just being able to use one. Then when you run into problems just using one, you understand the background processes and could likely debug way faster.

Ответить
@araa5184
@araa5184 - 07.12.2024 18:59

People who say learning or using something that is fundamental or foundational useless, are usually useless themselves lmao.

Ответить
@keras1618
@keras1618 - 08.12.2024 00:19

I may be being annoying but I'll comment anyway, as a big C fan and a C++ hater I recommend that you do your projects in Rust. Yes, the language can be very difficult to master the more advanced concepts but it is possible to use just with the basics. And there is nothing more satisfying than writing code and being sure that no unforeseen issues will occur at runtime because the compiler guaranteed that the code is bug-free. 100% of your time will be focused on the project and not on hunting down mysterious bugs.

Ответить
@sushiConPorotos
@sushiConPorotos - 08.12.2024 20:07

The good thing of knowing how things work under the hood is that when you use high level langs/frameworks you really understand what you are doing, you are a much better programmer. People who do not know the math involved here and/or the low level implementation details have no a clue what they are doing.

Ответить
@CastleRene
@CastleRene - 08.12.2024 23:57

I know this feeling so bad, though! If someone would just kindly tell me what I need to know, I could make wonderful things.

Ответить
@Gigasharik5
@Gigasharik5 - 09.12.2024 02:24

dont listen to him, just use odin + raylib for the joy of programming

Ответить
@desnerger6346
@desnerger6346 - 09.12.2024 06:51

Why brain-cancering with C++'s UBs when there's Ziglang already? Rust had / has the inferior C API interop, that's why we avoid it, but Zig doesn't have that Achilles heel of Rust. Why suffering like our ancestors, debugging one's knowledge of a programming language instead of debugging of actual programs? Even after years of C++ experience there are very, very few people on this planet who can actually claim they know the language fully and thoroughly, and those people usually aren't the "useful" applied gamedev programmers we talk about here. Why would I wanna waste myself trying to learn something both as unknowable and artificial as C++? Better spend one's years somewhere else. Plain C served the community well, but the party couldn't last forever: it's almost 2025 already, the safety and productivity standards got higher; it's time to move on.

Ответить
@LionKimbro
@LionKimbro - 09.12.2024 09:18

Utterly bizarre to me that people would be opposed to writing game engines, and making them in C++. Our industry is so dogmatic, it burns.

Ответить
@TryboBike
@TryboBike - 09.12.2024 23:10

I am 60k loc of C++ into my own game engine I wrote in raw vulkan. That includes my own matrix algebra lib and a functional windowed UI. Doing it is like accelerating freight train - at first it is hard and progress is slow, but as features and systems get added, it starts to take shape pretty quickly. After a year from writing 'main' I now have a complete content editor and now am implementing actual game systems.

Ответить
@peep25100
@peep25100 - 11.12.2024 19:20

What I see as a plus in C++ is that there is a lot of legacy software out there. And there will be definitely many things I can take over from making a simple game to writing a code for 20 years old industrial machine that needs a new sensor to be coded in.

Ответить
@TheWolfProd
@TheWolfProd - 11.12.2024 21:13

bro why u are in big hangar talking about making games in c++? bro blink two times if u need help

Ответить
@G.Padilla
@G.Padilla - 11.12.2024 22:20

So you're a real GameDev. Subscribed, looking forward to learning C++ from you

Ответить
@daniellindforsbernholm3682
@daniellindforsbernholm3682 - 12.12.2024 16:07

Always had an interest in DIY game dev. But after I noticed that all games made in Unreal Engine 5 is basically unplayable in my current setup (even games that looks shittier than ones made 10 years ago) I'm starting to believe more and more that we actually need developers making things from scratch to keep up the knowledge and innovation at the engine level up and to have something to compare the quality of the big engines with.

Ответить
@alvpjh
@alvpjh - 12.12.2024 20:13

C++ is the freedom to do it (easy or difficult) as much as you want

Ответить
@jp5000able
@jp5000able - 12.12.2024 23:28

I'm making my own 3d engine because I can't find an engine that can handle a universe sized environment.

Ответить
@Kruku666
@Kruku666 - 13.12.2024 01:47

yeah it's different things for different use, you want to make tools to make games on just simple games base on some tool ;).

Ответить
@TheSensei88
@TheSensei88 - 13.12.2024 03:27

This is interesting.
I'm suscribing to your channel for later!

Ответить
@kidmosey
@kidmosey - 13.12.2024 10:41

After 20 years and a few dozen times rewriting a game engine from scratch, I've gotten to the point that I struggle to make a game without creating an engine first, and it's almost always the same engine.

Now I just use Godot, but I sometimes miss just architecting the engine.

Ответить
@trentcox9239
@trentcox9239 - 13.12.2024 13:36

this perspective is right up my alley. well done mate for sticking to it. ive personally become incredibly disenfranchised with the global dev community as of late. we've become an over-glorified pack of third party junkies. just composing together a never ending pile of third party packages in the interest of shipping quickly and often we've lost sight and scope of what it meant to be a genuine problem solver. the 'why make it? library 'x' already does it' attitude is creating more lego builders and less developers in my opinion...

Ответить
@MariusSchwendtmayer
@MariusSchwendtmayer - 14.12.2024 15:27

Graphics programming and game development are two different things.
Then you got anticheat devs, low level network communication protocals devs and a bunch of artistes who draw stuff or create objects using 3d modeling software ect...

Sure you can do everything from scratch but keep in mind that you will never even come close to the skills of someone who dedicates his life to one of these fields of game development.

And that's how great games are made.

Learning how to make games from scratch with c++ is a good start, but it's not a finality.

Ответить
@hagenzwosta
@hagenzwosta - 14.12.2024 16:14

Could not agree more.

Ответить
@trungngo9169
@trungngo9169 - 14.12.2024 19:39

you want to use c++ for engine, but when creating a game using scripting language is more productive and designer friendlier

Ответить
@TheStickCollector
@TheStickCollector - 14.12.2024 20:35

My problem is that I do not have (basically) any programming knowledge outside of one college java class and general knowledge, like that it reads the data sequentially. I know of some basic workings of the computers and how it works, but unless I learn something like BASIC, then it will take a lot more dedicated study of computer hardware in general before doing anything serious in my opinion.

It would be nice to learn basically any C language (C for older video game consoles that use a c compiler, c# for unity, or c++ for low level or even unreal if I wanted something easier to start with), but I would ideally like to learn assembly for the compactness, 30+ year old consoles, and low-end hardware running more efficiently.

Probably helps if you have the computer knowledge but not the language experience.

Ответить
@MrAbrazildo
@MrAbrazildo - 15.12.2024 21:54

Finally somebody said everything I think about this. When I code in C++, the challenge is the project, not the language.

Ответить
@relaxthegamer
@relaxthegamer - 16.12.2024 06:28

Like it or not 3 or 4 more years programming language will not matter. The peace ai is going they will able to transpile one programming language to another

Ответить
@RPG_Hacker
@RPG_Hacker - 16.12.2024 15:20

That sentiment on game engines actually seems to be pretty widespread in the industry. I work for a company that still uses proprietary engines written in C++ to this day and has already made some great games with them, yet we still very commonly hear people ask "Why don't you use Unreal Engine 4?". By default, it seems people who don't know us yet distrust in our ability to succeed with custom engines. We've heard this question asked from some partners, but even from some government officials (upon requesting government funding). I think in the end, our games speak for themselves and prove that we're capable of achieving with our own technology what others are able to achieve with UE4.

It's not even like I deny UE4 having its advantages. Quite the opposite, there's a lot of things that just work very well out of the box in UE4. If you just want to get started on prototyping a game, using a game engine like UE4 can be quite useful. Or if you just don't have the skill set or time to create your own engine from scratch. That's why game engines are so popular among indie developers. While I would agree that (from a coder's perspective) using C++ is not a lot harder than using an existing engine, I do still think it's (on average) a lot more time-consuming.

On the other hand, custom engines written directly in C++ also have a lot of advantages that people brush aside just way too readily. First of all, they give you complete control over exactly what kind of game you're making. In existing engines, you usually won't get around using the tools that are there, even if they aren't the best suited for the job. Secondly, it's much easier to achieve great performance in your own engine written in C++. Not only because you understand it much better (and thus are more easily able to optimize code), but also because you only need to implement exactly the stuff you need for your game. Simply put, you're not paying the performance cost for features you're not going to use, anyways, which is a thing that you very commonly have to do in engines like UE4.

If you're going to target low-level hardware in particular, I feel like a proprietary engine written in C++ is the only good choice. At least if you care about quality and performance.

Ответить
@michaelhawthorne5516
@michaelhawthorne5516 - 17.12.2024 17:22

It is incorrect that all studios use unreal or unity. Many of the top studios have written their engines from scratch in C++

Ответить
@sirskylight7901
@sirskylight7901 - 18.12.2024 10:47

I’m wanting to learn C++ for my own game because Unreal Engine uses C++ and I want to make my game as optimized as possible. I’m also used to writing code over using drag-and-drop code. Plus, I’ve heard that coding an Unreal Engine game with only blueprints can lead to performance issues.

Ответить
@shardator
@shardator - 18.12.2024 18:03

People criticizing someone for not using a premade engine are basically coping. Learning engine development puts you in the highest tier of developers.

Ответить
@gorudonu
@gorudonu - 19.12.2024 16:25

I'm not a game programmer but mobile dev, I wanted to make a game but everytime I want to write it I get bored because I need to drag and drop stuff in editor which bores me...

Ответить
@d4rkmn643
@d4rkmn643 - 19.12.2024 23:13

I wanted to get started making a simple platformer in c++ with SDL2. After i got some basic character movement going, i wanted to make a test level of sorts but the only way i figured how was by manually adding boxes in specific x,y coordinares with specific scalings and stuff all in code, which quickly became boring so i ended up sidetracking and wanted to make a level editor, which ended up sidetracking to making a rudimentary but general purpose game engine, which ended up sidetracking to making a reliable and simple to use gui system to make guis with a similar thing to html. Even though the problem is interesting and i have learned a lot via this, i feel like there has to be an easier way to make levels in just raw code with no engine besides making a level editor or engine yourself, right? If so, help would be appreciated lmao

Ответить
@zockerwelt4936
@zockerwelt4936 - 20.12.2024 20:04

that's so true. I'm programming for a really long time and I still love to use scratch. It's kinda like C++ where you make the physiks by yourself, tile engine and sometimes even graffic rendering.

Ответить
@GameDevTommy
@GameDevTommy - 20.12.2024 20:51

based

Ответить
@kemsatofficial
@kemsatofficial - 21.12.2024 03:09

I kind of assumed that even if studios use UE5 they would still customize it/rewrite parts of it to fit their game. So, knowledge of both UE5 & C++ would still be required.

Ответить
@Puchibaldos
@Puchibaldos - 22.12.2024 00:37

I wanna make a game but I don't know whether to use OpenGL or Vulkan

Ответить
@emirmasinovic
@emirmasinovic - 24.12.2024 11:26

Too much skrillex or whatever in the background. Dislike

Ответить
@NBGTFO
@NBGTFO - 30.12.2024 15:01

Making a good game is what's hard. Anyone can make a shitty game and most do.

Ответить
@creepermods4641
@creepermods4641 - 31.12.2024 11:37

Yeah it's not.

Fun fact: Fixing & Finding bugs are not a joke.

Ответить
@eyesyt7571
@eyesyt7571 - 31.12.2024 17:15

The problem I have is the lack of actual comprehensive tutorials.

Ответить
@CourageToGroww
@CourageToGroww - 01.01.2025 01:39

Not using a game engine ruining your learning potential? what? You are literally expanding your programming knowledge by creating the systems game engines have created for you. Whoever said that is a moron and is ruining other people's learning potential by having such a - iq

Ответить
@witchtheer3450
@witchtheer3450 - 01.12.2024 00:35

my friend in class told me that he wants to learn in rust , by the time he told me that i was interested in C. Few months later he didnt even download the rustc compiler and i started building my engine. He asked me what am i doing after school , i told him that im working on my engine, he laughed and told me that i am not going to make next version of Unreal Engine (which lets be honest their way of doing some things is just bleh), i told him that my goal isnt to make game and publish it (even tho i would love to go away from the "dev projects" to a real shipped stuff), my goal was to just learn and do the code right, do the build system like "pack and go" type of style ( i dont download prebuilt libs, i have the source code of the libraries built along the project + i self host git with gitea in docker cuz aint no way i want my project to be in control of microsoft with github.). Then i asked him what is he going to do.... "I will go home and play dota and sleep". But i am the stupid for trying to create something i guess.

Ответить