I have my own engine and do all my personal projects on it. As a growth experience its the best thing ever, but I dont have the balls to recommend it business wise. The productivity is definitely not the same. Everything else is better (control, performance, pleasure of coding, no cost/royalties) but productivity is a huge thing, games are big projects. I dont doubt ppl like jonathan blow can get the same or more productivity from it, but these guys are the top of a very hard to climb mountain. The important thing is to enjoy the journey, dont "sacrifice" anything for the end result, the result is not guaranteed.
That’s really cool. However, why would your engine be more performant than, say, Godot? (Which is just as free and doesn’t carry royalties)? Genuinely curious, not trying to bash you and your work.
@@marcelslofstra2157 an custom engine is always more performant(given you have the expertise and time) because it allows you to fine tune every aspect of code, and construct your game perfectly matching what you need. the solutions that game engines like godot/unity or unreal bring often bring some sort of overhead/limitation for what you want, which you may not have with your own solution. in general the lower level you go in terms of programming, the higher the amount of optimization you can do.
@@marcelslofstra2157 Yeah I was about to say, despite the control you have, anyone starting an engine from scratch especially without any experience would need to educate themselves on the common optimization techniques and beyond. I think the uplift just comes from the overhead being removed when it to moving from an off the shelf engine. In the end all that overhead being removed can essentially just take the fall for all the optimizations that aren't present, not to mention some of the optimization techniques that only kick in when it comes to certain scenarios.
@@marcelslofstra2157 The issue Godot/Unity/Unreal/etc run into is their code base is written to be very generic/flexible. There is a runtime cost to enabling the breadth of stuff they do. If you custom build an engine for your specific use case, it allows you to optimize for that. Simple example, if you know exactly how many megs/gigs of textures you will always need, you could just pre allocate that space and do shenanigans to use that without needing to regularly reallocate the memory.
tbh though jonathan's output rate for games is incredibly slow. Compare that to someone like jonas tyroller who heavily leverages unity and spends a lot of time researching and designing games.
I went from professionally building custom engines to professionally using unity for a longtime to building a custom engine again 🙂. Couldn't be any happier.
People on the internet greatly overestimate how difficult it is to write an engine. When they hear "engine," they're thinking a large generalized engine like Unity and Unreal. Writing a large generalized engine like that is insanely harder than writing the underlying engine for a specific game that is intimately connected to that game. Is it hard? Yeah, especially if you've never written something systemic like that before. But it's not the impossible Herculean feat that people on the internet pretend it is. I mean, I'm sure it's impossible for them, but that's because learning and applying yourself is blasphemy to them. If there's not a very specific youtube tutorial for every single thing they need to do, they become helpless and lost.
I've been making a game with a custom engine for almost two years now and no regrets, it made me realise I definitely want to not only finish my game but further pursue engine and graphics programming. It also seems to have been the right choice as my game relies heavily on physics simulation and lots of joints so having direct access to the physics engine proved useful.
I'm so happy to see a talk like this. I keep finding myself thinking back to when I was young and everyone HAD to make their own engine. They'd make a whole multiplayer mode as a side project and just throw it in there. Now you got games like Cyberpunk2077, that made promises of "multiplayer at a later date" but then backpedaled because "they couldn't figure out how to do it in their engine" and I'm like "but you built it tho." I know it's more nuanced than all that, and everything is more complicated, and multiplayer requiring a network component makes it harder, but I can't help but think that our reliance of pre-packaged "so easy to use you don't need to understand how it works" things coupled with the trend of programmers being more specialized, has lead to some pretty significant knowledge/skill gaps.
@@Argletroughdo you or anyone in history have the skills to write something as capable as UE on your own in less than a decade? Maybe these people are more interested in making games people want to play than trying to convince others of their superiority? Wow, you know how to code. No one cares. In 5 years a high schooler and AI will be more capable than you are now.
You get that way after 30 years of listening to newbies exclaim they’re going to write their own engine and then make no progress and never make a game
I've been to WASD and Pocketgamer connect and heard a lot of the talks and the panel by large has pushed for not working on your own tech when there are engines to use and it left me scratching my head because how can that be a consensus in an industry that has programming at it's core? leaving all the innovation and knowledge on systems to the game engine companies just feels strange. I'm currently doing a thesis on ML and making my own C++ game environment for training so this this talk has been a nice boost, it's really reaffirming thanks Rez
And now those engines are pushing for tech that sacrifices real optimisations for blurry smears to hide the frame gen and low framerate Because they have no idea what game you're making. How could they ever optimise for you?
what baffles me is that so many people see Unity and Unreal as *the* standards, when in reality... No? Stardew valley uses monogame, Balatro and Hades uses Lua, most big studios use proprietary tools and engines. Some engines don't allow certain types of games. For instance, Unity can export to HTML5 but online casino game devs couldn't make gambling games with Unity. So they went with web game frameworks (like Phaser) Certain games are too hard/complicated to make with Unity or Unreal such as terraria. Unreal is hell to make like a simple 2D Game for mobile. There's literally no single perfect engine but somehow, people want to make you think Unity & Unreal is enough to do every single type of game. And that's just on the game themselves. Different teams/game types need special tools or workflows and thus need custom tools to make things work properly and fast.
I started creating my own "engine" many years ago (I think it was 2015). Now I've worked 2 years full-time professionally on another project (not a game) and I come back at look at the forcefully separated code, basically exaggerating with inheritance, interfaces and stuff. (Like, just the physics part was a mess, because it was NOT coupled with the animation system. Something I did by design. However that lead to having to do weird workarounds to determine if the character is now actually standing this frame or not. Just checking y velocity == 0 isn't the way to go) I ported the same "engine" to the GBA using a framework, no portability intended, just straight-up limiting myself to only that platform (over the old engine, that used to work with Wii, PSP and PC). And I've been able to create a somewhat playable game within 1 week. (Granted, using the old code to copy and paste parts) I've learned, that it's more important to find the path of least resistance and if that means cutting out-code and copy&pasting it when necessary, then I do so now. What matters is, if the result is stable and achieves it's goal, anything else at how clean it is only matters if someone else is working with you. While back then I used to want and create a foundation of modules that can be tied together in an understandable way, I now want to create utility functions, that are self-explanatory and that encourages re-use. (Reusable code portions over reusable modules, because the complexity of the modules will increase, while reusable functions will unlikely increase in complexity) I can copy&paste them to other projects that way and not worry about them fitting together (or not), plus I know very well what they do. That's why I think that frameworks are the way to go, however I haven't heard of any decent frameworks in regard to game development. (I knew back then XNA was a thing, that is now having a replacement with MonoGame, but I really really don't like the performance. For simple 2D games I'd rather prefer just SDL). I've heard of bevy, if you want Rust, however I really don't feel productive with Rust. And I've heard of Panda3D, which I haven't tried out yet. For the GBA, there's butano, which is exactly what I mean, with how it should be done. (It calls itself an engine, but it's really not, it's something better, which is a framework). Just give me all of this stuff 11:25 please, without making it a requirement to use all of them together.
I have my own game engine. Speaking on technical innovation I support Android without native libraries. This allows my deployments to be smaller and/or have less builds since I don't need to worry about CPU architecture. I do this while still supporting Windows and the Browser.
I use Unity, also familiar with raylib little bit. But most of the time I used to think that people who make engines mostly use graphic APIs like opengl, directx, vulkan etc? I think these are the hardest stuff to learn. He didn't mention any of that.
20:34 Using "your own tech" is not the same as using "your own custom engine" and not one game from Jon Blow lol 24:52 cost savings comes from lifetime sales and 3rd party engines may receive royalties from selling the business/IP, as it's generated income.
Part of the cost savings is if you have to redo a system in an existing engine becasue it doesnt fit your needs then you essentially make it twice as hard as if you had a custom engine that you can just integrate directly without the work of ripping out the other one and replacing it everywhere etc.
I spent 7 straight weeks writing the engine for a simple rpg. While its fun in the beginning, unfortunately there is not much game to show. And I burnt myself out for accomplishing so much...without resting enough. This was 10 years ago during winter break
Most jams are requiring versions that work in browser... I'm not at the point i can build something with Webgl so I'm stuck with the design paradigms enforced by engines.
That's way I dislike "game jam" culture. It's all about making quick and disposable experiences, rather than making something good. What do you mean, I have to make a web browser version to participate? I don't want to participate! I'm better than that! Lol.
4:00 - hunh- I always thought what distinguished a framework from a library, is that a framework generates a prescribed code base that you start from, but a library is something you write all the connector code to, in your own way. I’ve been coding since the early 80’s. I’d never call tkinter a “framework,” but Django certainly is.
13 วันที่ผ่านมา +2
Yes, a framework will inpose some sort of limitations, rules or "layout" for your code imo.
@@scottcastle9119 Can't have it all. Free stuff = low quality. corporate stuff = good quality. People prefer quality and the average gamer doesnt't care what technology you used to achieve the end goal.
@SnakeEngine that's just a black and white take. If you can develop your own software with ease then why would you use unity or unreal. You just build an engine that works for your game without the other bloat. No license, no fees other than AI which is like 20 bucks a month.
@@scottcastle9119 Unity better because you don't want to write dozen of backends for multiplat support and so on, and you want to release more than 2 games within 50 years. Essentially, you don't want to repeat the mistake that Jonathan Blow is making.
Personally you can have your own engine, if you know how to manage it and develop it and use it for your own needs. The point where you sell it is when you use it for your projects, you will know it's drawbacks if there is any and what area it needs more effort to be put on more code to be written, so as you progress throwing at it different scenarios. The. You reach a point where it ticks all the boxes. Also none of the game engines we have in the market currently, comes with a 100 percent everything works well banner. There are bugs and some flaws, but that's managed by Regular updates and patches to it. So why no if one is interested, then one must pursue development of an engine.
our problem is not unambitious or stupid newcomers it is the fact that 90% of people are struggling to pay the bills, nobody has the time to invest in these things. Even if you are making a game out of the passion of it, the bills need paying.
@AllanSavolainen Yes I pass in arguments. Although after I load the rendered world into I display certain parameters which can be tuned from the rendered world, can be changed from cmd as well.
I build my own engines. So I agree with this before watching. Also I was an XNA enjoyer and still a user of frameworks based on it like MonoGame, FNA, and Raylib.
He's right btw... tokyospliff and sudo love me baby both made pseudo engines, slmb works for egosoft now apparently, tokyo has a game he likes... I made a full engine so nobody need bother again
lol, I'm currently working on it and my code is like old, based C and uses Milkshape3d for 3d models and animation. But I think it's doable, For some reasons I utterly HATE Engines, it doesn't give freedom I want in a game project
It is unfair for this disgruntled insider to give false hope to the hapless and uninitiated yet to enter the industry... Morpheus: "Everyone, everyone who has confronted the father of the API developers has died, Neo!! You are The One! Unlike us, however, they are bound by rules we are free to ignore...!"
I feel like a lot of it has been rooted in ego and many points contradict themselves. Don't use X game engine because of bloat and unnecessary features, but don't forget to import all of those library's your going to need to get a level editor working and not use 90% of it. Your not trying to build the next best game engine but its definitely going to be more performant. There's no monopoly on the market but tread as if there was one. Personally I feel the best argument ever put across for this is. Take the steps necessary to achieve whatever you set out to achieve. If you want to make a game, use an engine like unity, godot etc. If you want to build an engine, build an engine. Don't just build an engine for the sake of it. If the game demands its own engine then go for it.
The Witness, The Talos Principle, Minecraft, No Man's Sky, Space Engineers, Elite:Dangerous, Total War series, Dreams, Teardown. These all use custom engines.
@@Capewearer This is a talk given at the independent games summit. I'm not sure the Total War series (EA/Activision/Sega) or Dreams (Sony) are development models that indies should be looking to emulate.
On the other hand. Is building your engine easier than fighting/extending unreal/unity for what you need? The cases where building your own engine makes sense are extremely scarse. All the games on his list of custom engines could have 100% been made on unreal/unity... If you're tempted to build your own engine, really really think about if you really need to.
Definitely depends on what you are trying to sell and what your team is, if it's an art-heavy narrative experience where there's more than 1 artist, an engine would help. If you are building new tech that needs to run fast with no gotchas, a custom engine is a place to start. Ideally a custom engine can be abstracted from the rendering and input into a new framework, even if it needs to be plugged into Unity at the last minute for cross compatibility
I would rather rewrite the network layer of Unreal and get all the other modules than start an engine from scratch. Unless you are an established AAA studio with deep pockets, it makes no sense to build a game engine.
Depends if you want to compete with the big AAA boys. Then even Carmack cannot compete anymore. But for a 2D game or a 3D game that doesn't need a cutting edge renderer and stuff, you can roll your engine just fine, using some helper libs here and there.
@@froge4300 That's right. You only need to slap together asset serialization, dynamic loading, replication, physics, AI, navmesh navigation, sound, rendering, shader compilation, animation, localization, cinematics, video, resource management, security, input, networking, cooking, source control, CI/CD, auto tests, anti-tempering, console support, an editor, maybe a few tools. Then maybe you can start working on your game. Easy peasy.
@@gnatinator physics will definitely not kill you, you just integrate a physics engine like Physx or jolt, rendering is more complex and can't say much about platform support especially consoles
Lol, 3D rendering technology has been around long before Unity and Unreal. It has never been easier to get into graphics programming. All the resources are available for free, you do NOT need to reinvent the wheel, and so the only one who would make this claim that "IT WILL KILL YOU TO MAKE ANYTHING BEYOND BASIC 3D" has never even tried and is only speaking from a place of personal insecurity and incompetence.
I have my own engine and do all my personal projects on it. As a growth experience its the best thing ever, but I dont have the balls to recommend it business wise. The productivity is definitely not the same.
Everything else is better (control, performance, pleasure of coding, no cost/royalties) but productivity is a huge thing, games are big projects.
I dont doubt ppl like jonathan blow can get the same or more productivity from it, but these guys are the top of a very hard to climb mountain.
The important thing is to enjoy the journey, dont "sacrifice" anything for the end result, the result is not guaranteed.
That’s really cool. However, why would your engine be more performant than, say, Godot? (Which is just as free and doesn’t carry royalties)?
Genuinely curious, not trying to bash you and your work.
@@marcelslofstra2157 an custom engine is always more performant(given you have the expertise and time) because it allows you to fine tune every aspect of code, and construct your game perfectly matching what you need. the solutions that game engines like godot/unity or unreal bring often bring some sort of overhead/limitation for what you want, which you may not have with your own solution. in general the lower level you go in terms of programming, the higher the amount of optimization you can do.
@@marcelslofstra2157 Yeah I was about to say, despite the control you have, anyone starting an engine from scratch especially without any experience would need to educate themselves on the common optimization techniques and beyond.
I think the uplift just comes from the overhead being removed when it to moving from an off the shelf engine.
In the end all that overhead being removed can essentially just take the fall for all the optimizations that aren't present, not to mention some of the optimization techniques that only kick in when it comes to certain scenarios.
@@marcelslofstra2157 The issue Godot/Unity/Unreal/etc run into is their code base is written to be very generic/flexible. There is a runtime cost to enabling the breadth of stuff they do. If you custom build an engine for your specific use case, it allows you to optimize for that. Simple example, if you know exactly how many megs/gigs of textures you will always need, you could just pre allocate that space and do shenanigans to use that without needing to regularly reallocate the memory.
tbh though jonathan's output rate for games is incredibly slow. Compare that to someone like jonas tyroller who heavily leverages unity and spends a lot of time researching and designing games.
I went from professionally building custom engines to professionally using unity for a longtime to building a custom engine again 🙂. Couldn't be any happier.
I have more fun rolling my own. But when I collaborate, I use whatever the team wants to use.
That's the way
People on the internet greatly overestimate how difficult it is to write an engine. When they hear "engine," they're thinking a large generalized engine like Unity and Unreal. Writing a large generalized engine like that is insanely harder than writing the underlying engine for a specific game that is intimately connected to that game. Is it hard? Yeah, especially if you've never written something systemic like that before. But it's not the impossible Herculean feat that people on the internet pretend it is. I mean, I'm sure it's impossible for them, but that's because learning and applying yourself is blasphemy to them. If there's not a very specific youtube tutorial for every single thing they need to do, they become helpless and lost.
I've been making a game with a custom engine for almost two years now and no regrets, it made me realise I definitely want to not only finish my game but further pursue engine and graphics programming. It also seems to have been the right choice as my game relies heavily on physics simulation and lots of joints so having direct access to the physics engine proved useful.
I'm so happy to see a talk like this. I keep finding myself thinking back to when I was young and everyone HAD to make their own engine. They'd make a whole multiplayer mode as a side project and just throw it in there. Now you got games like Cyberpunk2077, that made promises of "multiplayer at a later date" but then backpedaled because "they couldn't figure out how to do it in their engine" and I'm like "but you built it tho." I know it's more nuanced than all that, and everything is more complicated, and multiplayer requiring a network component makes it harder, but I can't help but think that our reliance of pre-packaged "so easy to use you don't need to understand how it works" things coupled with the trend of programmers being more specialized, has lead to some pretty significant knowledge/skill gaps.
It's interesting how aggressively hostile some people are to some people choosing to write their own tech. >_
Insecurity that they don't have the skills to do it? ;)
Jealousy is a powerful emotion lol
They are the same people who will never release a game.
@@Argletroughdo you or anyone in history have the skills to write something as capable as UE on your own in less than a decade? Maybe these people are more interested in making games people want to play than trying to convince others of their superiority? Wow, you know how to code. No one cares. In 5 years a high schooler and AI will be more capable than you are now.
You get that way after 30 years of listening to newbies exclaim they’re going to write their own engine and then make no progress and never make a game
4:25 he means "RenPy" here when he says "pygame" just in case anyone misunderstands
The first guy asking his question sounds like Acerolla. He does a bunch of game dev explanations.
I've been to WASD and Pocketgamer connect and heard a lot of the talks and the panel by large has pushed for not working on your own tech when there are engines to use and it left me scratching my head because how can that be a consensus in an industry that has programming at it's core? leaving all the innovation and knowledge on systems to the game engine companies just feels strange. I'm currently doing a thesis on ML and making my own C++ game environment for training so this this talk has been a nice boost, it's really reaffirming thanks Rez
And now those engines are pushing for tech that sacrifices real optimisations for blurry smears to hide the frame gen and low framerate
Because they have no idea what game you're making. How could they ever optimise for you?
Most junior devs can't code and create whole games via blueprints - that's why most AAA Unreal games are slops that run like sh*t.
what baffles me is that so many people see Unity and Unreal as *the* standards, when in reality... No? Stardew valley uses monogame, Balatro and Hades uses Lua, most big studios use proprietary tools and engines. Some engines don't allow certain types of games. For instance, Unity can export to HTML5 but online casino game devs couldn't make gambling games with Unity. So they went with web game frameworks (like Phaser)
Certain games are too hard/complicated to make with Unity or Unreal such as terraria. Unreal is hell to make like a simple 2D Game for mobile.
There's literally no single perfect engine but somehow, people want to make you think Unity & Unreal is enough to do every single type of game. And that's just on the game themselves. Different teams/game types need special tools or workflows and thus need custom tools to make things work properly and fast.
Im just saying... pretty much all my favorite games run on their own engines.
I started creating my own "engine" many years ago (I think it was 2015).
Now I've worked 2 years full-time professionally on another project (not a game)
and I come back at look at the forcefully separated code,
basically exaggerating with inheritance, interfaces and stuff.
(Like, just the physics part was a mess, because it was NOT coupled with the animation system.
Something I did by design. However that lead to having to do weird workarounds to determine if the character is now actually standing this frame or not. Just checking y velocity == 0 isn't the way to go)
I ported the same "engine" to the GBA using a framework,
no portability intended, just straight-up limiting myself to only that platform
(over the old engine, that used to work with Wii, PSP and PC).
And I've been able to create a somewhat playable game within 1 week.
(Granted, using the old code to copy and paste parts)
I've learned, that it's more important to find the path of least resistance
and if that means cutting out-code and copy&pasting it when necessary,
then I do so now. What matters is, if the result is stable and achieves it's goal,
anything else at how clean it is only matters if someone else is working with you.
While back then I used to want and create a foundation of modules that can be tied together in an understandable way,
I now want to create utility functions, that are self-explanatory and that encourages re-use.
(Reusable code portions over reusable modules, because the complexity of the modules will increase, while reusable functions will unlikely increase in complexity)
I can copy&paste them to other projects that way and not worry about them fitting together (or not),
plus I know very well what they do.
That's why I think that frameworks are the way to go, however I haven't heard of any decent frameworks in regard to game development.
(I knew back then XNA was a thing, that is now having a replacement with MonoGame, but I really really don't like the performance.
For simple 2D games I'd rather prefer just SDL).
I've heard of bevy, if you want Rust, however I really don't feel productive with Rust.
And I've heard of Panda3D, which I haven't tried out yet.
For the GBA, there's butano, which is exactly what I mean, with how it should be done.
(It calls itself an engine, but it's really not, it's something better, which is a framework).
Just give me all of this stuff 11:25 please, without making it a requirement to use all of them together.
Check out the vendor library that Odin supports. Tons of stuff.
I have my own game engine. Speaking on technical innovation I support Android without native libraries. This allows my deployments to be smaller and/or have less builds since I don't need to worry about CPU architecture. I do this while still supporting Windows and the Browser.
I use Unity, also familiar with raylib little bit. But most of the time I used to think that people who make engines mostly use graphic APIs like opengl, directx, vulkan etc? I think these are the hardest stuff to learn. He didn't mention any of that.
20:34 Using "your own tech" is not the same as using "your own custom engine"
and not one game from Jon Blow lol
24:52 cost savings comes from lifetime sales and 3rd party engines may receive royalties from selling the business/IP, as it's generated income.
And Don't Starve was twice in the list by accident :)
Part of the cost savings is if you have to redo a system in an existing engine becasue it doesnt fit your needs then you essentially make it twice as hard as if you had a custom engine that you can just integrate directly without the work of ripping out the other one and replacing it everywhere etc.
"Cost" is not only money tho. Cost includes a lot of things like productivity, etc
X series of games from Egosoft are all rolled on custom built engine, made especially for their game series.
I spent 7 straight weeks writing the engine for a simple rpg. While its fun in the beginning, unfortunately there is not much game to show. And I burnt myself out for accomplishing so much...without resting enough. This was 10 years ago during winter break
Always worth watching him speak!
Most jams are requiring versions that work in browser... I'm not at the point i can build something with Webgl so I'm stuck with the design paradigms enforced by engines.
I've had issues with that as well because I wrote my engine for Vulkan. I have used WebGL but I'm not willing to port to that just for jams.
You can use HTML canvas for a quick prototype if you don't require fancy shader effects.
If you use frameworks like SDL or Raylib, there are ways to set up a build to use emscription to compile to web assembly, which runs in browser.
@PomuLeafEveryday apparently it's not easy to do with Odin because of reasons. Importing the core library is an issue or something.
That's way I dislike "game jam" culture. It's all about making quick and disposable experiences, rather than making something good. What do you mean, I have to make a web browser version to participate? I don't want to participate! I'm better than that! Lol.
14:25 can anyone post a link to this talk? Thanks!
4:00 - hunh- I always thought what distinguished a framework from a library, is that a framework generates a prescribed code base that you start from, but a library is something you write all the connector code to, in your own way. I’ve been coding since the early 80’s. I’d never call tkinter a “framework,” but Django certainly is.
Yes, a framework will inpose some sort of limitations, rules or "layout" for your code imo.
I wasn't expecting this in my recommendations but a welcome surprise
i needed to hear this. I always have much less friction developing on my own tech than using an engine
Creating your own tech will be huge in the future.
How so? Is Unreal and Unity going down or what?
@SnakeEngine people don't like using products from big tech let's be real. We tolerate it because these programs are good.
@@scottcastle9119 Can't have it all. Free stuff = low quality. corporate stuff = good quality. People prefer quality and the average gamer doesnt't care what technology you used to achieve the end goal.
@SnakeEngine that's just a black and white take. If you can develop your own software with ease then why would you use unity or unreal. You just build an engine that works for your game without the other bloat. No license, no fees other than AI which is like 20 bucks a month.
@@scottcastle9119 Unity better because you don't want to write dozen of backends for multiplat support and so on, and you want to release more than 2 games within 50 years. Essentially, you don't want to repeat the mistake that Jonathan Blow is making.
Thank you so much for this video! This is awesome! I hope one day I could make a living doing programming with C/C++ tweaking the game engine
4:08 loved this chart
add *O3DE* under generic 4:03
Personally you can have your own engine, if you know how to manage it and develop it and use it for your own needs. The point where you sell it is when you use it for your projects, you will know it's drawbacks if there is any and what area it needs more effort to be put on more code to be written, so as you progress throwing at it different scenarios. The. You reach a point where it ticks all the boxes. Also none of the game engines we have in the market currently, comes with a 100 percent everything works well banner. There are bugs and some flaws, but that's managed by Regular updates and patches to it. So why no if one is interested, then one must pursue development of an engine.
to build to all platforms and avoid using unreal or unity use haxe or castle engine
our problem is not unambitious or stupid newcomers it is the fact that 90% of people are struggling to pay the bills, nobody has the time to invest in these things. Even if you are making a game out of the passion of it, the bills need paying.
funny I get this video, I just started making my own game engine.
I have my own engine, but not because I don't want to rely on another company like Unity or Epic, but because I'm a control freak.
XNA is officially dead since 2013, but there is MonoGame and FNA :P
My game engine don't even have an UI. You don't need that.
How does the user interact with the game if there is no user interface? Command line arguments?
@AllanSavolainen Yes I pass in arguments. Although after I load the rendered world into I display certain parameters which can be tuned from the rendered world, can be changed from cmd as well.
How do you handle editing levels without a UI?
@@rayecast Why do you need levels? :)
@rayecast I use Blender obj.
I build my own engines. So I agree with this before watching. Also I was an XNA enjoyer and still a user of frameworks based on it like MonoGame, FNA, and Raylib.
So the case is: you have simple engine demands that fit your game. Nothing else was actually said. Saved you 30 min.
He's right btw... tokyospliff and sudo love me baby both made pseudo engines, slmb works for egosoft now apparently, tokyo has a game he likes... I made a full engine so nobody need bother again
all the lumen and nanite apologists should see this talk 🤣
lol, I'm currently working on it and my code is like old, based C and uses Milkshape3d for 3d models and animation.
But I think it's doable, For some reasons I utterly HATE Engines, it doesn't give freedom I want in a game project
Shoutout to Raylib for Android/other mobile exports.
28:25 😂
my own tech ✋
Sacrifice a chicken… 😂😂😂
It is unfair for this disgruntled insider to give false hope to the hapless and uninitiated yet to enter the industry...
Morpheus: "Everyone, everyone who has confronted the father of the API developers has died, Neo!! You are The One! Unlike us, however, they are bound by rules we are free to ignore...!"
Hugely representative thumbnail....
AlmondEngine
If there's one thing to take away from this talk it's that the major "build your own engine" success stories of the last decade fit on a single slide
I feel like a lot of it has been rooted in ego and many points contradict themselves.
Don't use X game engine because of bloat and unnecessary features, but don't forget to import all of those library's your going to need to get a level editor working and not use 90% of it.
Your not trying to build the next best game engine but its definitely going to be more performant.
There's no monopoly on the market but tread as if there was one.
Personally I feel the best argument ever put across for this is. Take the steps necessary to achieve whatever you set out to achieve. If you want to make a game, use an engine like unity, godot etc. If you want to build an engine, build an engine. Don't just build an engine for the sake of it. If the game demands its own engine then go for it.
The Witness, The Talos Principle, Minecraft, No Man's Sky, Space Engineers, Elite:Dangerous, Total War series, Dreams, Teardown. These all use custom engines.
@@Capewearer This is a talk given at the independent games summit. I'm not sure the Total War series (EA/Activision/Sega) or Dreams (Sony) are development models that indies should be looking to emulate.
There’s also a talk on designing your own chipset for your next game engine for your next game if you don’t want to use x86.
are you familiar with the term, bigotry of low expectations?
Unironically good idea if idea is very difficult to implement in nowadays hardware.
he did not make a good argument for not using a game engine this is just babbling
On the other hand. Is building your engine easier than fighting/extending unreal/unity for what you need? The cases where building your own engine makes sense are extremely scarse.
All the games on his list of custom engines could have 100% been made on unreal/unity... If you're tempted to build your own engine, really really think about if you really need to.
If you have a game like Noita, yeah, you pretty much save time by writing an engine from scratch. Otherwise, there's no need, just go with UE and Cpp.
Definitely depends on what you are trying to sell and what your team is, if it's an art-heavy narrative experience where there's more than 1 artist, an engine would help. If you are building new tech that needs to run fast with no gotchas, a custom engine is a place to start. Ideally a custom engine can be abstracted from the rendering and input into a new framework, even if it needs to be plugged into Unity at the last minute for cross compatibility
30+ minutes and said nothing. Now I remember why I quit watching gdc talks.
Who made the thumb of this vid? Can you take this seriously?
I would rather rewrite the network layer of Unreal and get all the other modules than start an engine from scratch. Unless you are an established AAA studio with deep pockets, it makes no sense to build a game engine.
What? You can build an engine for free.
Depends if you want to compete with the big AAA boys. Then even Carmack cannot compete anymore. But for a 2D game or a 3D game that doesn't need a cutting edge renderer and stuff, you can roll your engine just fine, using some helper libs here and there.
game engines really arent as complex as they're made out to be
@@froge4300 That's right. You only need to slap together asset serialization, dynamic loading, replication, physics, AI, navmesh navigation, sound, rendering, shader compilation, animation, localization, cinematics, video, resource management, security, input, networking, cooking, source control, CI/CD, auto tests, anti-tempering, console support, an editor, maybe a few tools. Then maybe you can start working on your game. Easy peasy.
unless it will increase my profits i don’t see the point
Misleading. Fine for 2D games but for anything beyond basic 3D: the renderer, platform support and physics are things which will kill you.
Vulkan is a serial killer for sure
@@gnatinator physics will definitely not kill you, you just integrate a physics engine like Physx or jolt, rendering is more complex and can't say much about platform support especially consoles
Missed the point. Nobody is making their own renderer/physics engine - that’s what libraries are for.
Lol, 3D rendering technology has been around long before Unity and Unreal. It has never been easier to get into graphics programming. All the resources are available for free, you do NOT need to reinvent the wheel, and so the only one who would make this claim that "IT WILL KILL YOU TO MAKE ANYTHING BEYOND BASIC 3D" has never even tried and is only speaking from a place of personal insecurity and incompetence.
@@rayecast It's the stuff associated with the 3D stack, not the actual 3D. Been doing 3D games in OpenGL/SDL since you were in your mums womb.