Playing and Stopping Scenes (and Resetting) // Game Engine series

  Рет қаралды 24,628

The Cherno

The Cherno

Күн бұрын

Пікірлер: 43
@jin3121
@jin3121 3 жыл бұрын
I'm not even a gamedev but I find it relaxing to listen to coding videos, idk why.
@andreyprotsenko9855
@andreyprotsenko9855 3 жыл бұрын
There's so much more than coding in this place:) That's why everyone can enjoy his vids. This is a true software engineering, man..
@alexandermylnikov7774
@alexandermylnikov7774 3 жыл бұрын
you explain your ideas so well that i was able to just jump in a few episodes ago and i pretty much understand your entire architecture (apart from all the rendering since im assuming that was a lot earlier)
@kye2920
@kye2920 3 жыл бұрын
These are such good videos! They've given me so much inspiration
@yerngames
@yerngames 3 жыл бұрын
Love your series, keep going
@doctorwin64
@doctorwin64 2 жыл бұрын
Teacher Cherno, a huge thanks!
@Sebanisu
@Sebanisu 3 жыл бұрын
You could use a variadic template function to apply the copy function to all the different component types. In one function call. Not sure on best way to store all the template arguments for reuse in multiple functions. I think you could use an empty struct to hold the types and use template type deduction to extract the template arguments from the struct.
@AlexDanut
@AlexDanut 3 жыл бұрын
9:31, you asked... so: I think it makes more sense to have an active scene that can be switched out for an editor scene or runtime scene, just because it's more general and could easily allow for more scenarios such as having a simulator scene like Unity; you just make a variant of the runtime scene which allows for some extra features you want and maybe extend scene to allow you to specify a display mode such as "in a frame" mode which lets you view and interact with say an iPhone-looking window which you swipe up and down in to control, or maybe have a UI editor scene or whatever. The point is I think it would make more sense to have it so that a scene is a scene is a scene is a scene sort of thing, and not like oh that's the editor, that's the runtime viewer, that other thing is something else, etc.
3 жыл бұрын
Love your videos! A great inspiration for my own game engine project. Did you consider serializing the scene to a file and restoring from that when stopping the runtime? That does have some overhead, but then you wouldn’t have to have big scenes twice in memory. Both options have pros and cons.
@real1cytv
@real1cytv 3 жыл бұрын
EnTT actually has snapshot capabilities. The Example shows it working with cereal, but it also says, that it is possible to use your own serializer. Wouldn't that be a lot better to use?
@sam_is_people1170
@sam_is_people1170 2 жыл бұрын
thanks!
@autodidact7127
@autodidact7127 3 жыл бұрын
luv u cherno
@piotrt.3652
@piotrt.3652 3 жыл бұрын
Is having a custom function to copy scene really needed? From what I understand scene serialization/deserialization is already here because you can save/load scenes into the file. So can't you just after hitting play save scene -> copy its file into some temp file or virtual file whatever (maybe even skip file copying part just keep serialized scene data bytes in memory) -> load scene from this temp file and run the engine -> after hitting stop delete this temp file? I guess having this copy scene method may be useful with some other features in the future.
@zxuiji
@zxuiji 3 жыл бұрын
Sounds like something I'm already re-coding for templating purposes, seems like I'm doing the UID prep by accident
@plabanmondal3111
@plabanmondal3111 3 жыл бұрын
How do we contribute to open source projects like Godot? How much of Cpp, Opengl we need to learn so we can contribute something to that project? I really want to be a part of an open source project.
@GoldenBear01
@GoldenBear01 3 жыл бұрын
What keyboard are you using that doesn't have a '+' symbol? Just curious...
@SirChronoblaze
@SirChronoblaze 3 жыл бұрын
@@GoldenBear01 ? how is that related
@Destroyer19941995
@Destroyer19941995 3 жыл бұрын
@@SirChronoblaze Is math related to science is the real question here tho
@rorymax
@rorymax 3 жыл бұрын
@@Destroyer19941995 ???
@Kumquat57
@Kumquat57 2 жыл бұрын
@@SirChronoblaze its because they* typed cpp not c++
@Sebanisu
@Sebanisu 3 жыл бұрын
I kind of was thinking if the entities were stored differently we could use algorithms like std::transform.
@SelmirAljic
@SelmirAljic 3 жыл бұрын
Worst decision ever made by Cherno was naming the game engine series hazel and patreon hazel both hazel xD
@yigithanion
@yigithanion Жыл бұрын
I just save the active scene and deserialize it to a new scene to run.
@DanielWayota
@DanielWayota 3 жыл бұрын
Maybe I'm missing something but, I think using the serialization code would be better for cloning the editor scene. It would be more readable than the templated code XD
@Jkauppa
@Jkauppa 3 жыл бұрын
foreground scene
@Jkauppa
@Jkauppa 3 жыл бұрын
you are memorializing entity states, load saved game, save game state
@Jkauppa
@Jkauppa 3 жыл бұрын
entt should have state clone, not full clone, retaining internal references
@Jkauppa
@Jkauppa 3 жыл бұрын
or just full copy, clone
@Jkauppa
@Jkauppa 3 жыл бұрын
entt serialization
@i_sirojiddinov
@i_sirojiddinov 3 жыл бұрын
Will we also create 3d game engine (or will we change to 3D??)
@Aluminum0013
@Aluminum0013 3 жыл бұрын
The game engine series (for now) is staying 2D
@andreypfau
@andreypfau 3 жыл бұрын
49:08 - ага спалился, русский значит
@moranyt8299
@moranyt8299 2 жыл бұрын
я если честно сам афигел что он начал писать на русском
@local.interloper
@local.interloper 3 жыл бұрын
hi
@codingwithk3925
@codingwithk3925 3 жыл бұрын
std::cout
@zohichnazirro8640
@zohichnazirro8640 3 жыл бұрын
сизе)
@mandev186
@mandev186 3 жыл бұрын
sir also add a nice thing (Procedurally Lod Generation) Seamless.
@AlexFord-gp7by
@AlexFord-gp7by 3 жыл бұрын
Does 2D need LODs?
@Aluminum0013
@Aluminum0013 3 жыл бұрын
LOD doesn’t really work here.
@mandev186
@mandev186 3 жыл бұрын
I am taking about 3D. You guys are awesome
@mandev186
@mandev186 3 жыл бұрын
@@Aluminum0013 you are awesome. I want to learn something only he can teach me because he is very genius
@fudgeracoon2529
@fudgeracoon2529 3 жыл бұрын
First
@zxuiji
@zxuiji 3 жыл бұрын
Heads up all, vscode crashes your computer at leasure, it installed an update while I was programming with this vid running in the background and the whole computer froze up, had a section of the vid repeating itself so I had to force shut down the pc and reboot, I learned of the update after I reopened vscode, that was when I put 2 & 2 together, no editor should update itself during usage, worse yet this was on linux where updates should be done in the package manager only, I immediately proceeded to uninstall that s**t because, also vscode got more in my way than helped, I tried it for a couple days before this but geany was by and far better, I'll try codeblocks for a while now that seems to be some portable version of it but never again will I allow vscode on my computer, nor will I ever work for a company that thinks that s**t is worthwhile.
Camera Systems | Game Engine series
37:20
The Cherno
Рет қаралды 33 М.
Universally Unique Identifiers (UUID/GUID) // Game Engine series
41:39
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,8 МЛН
My scorpion was taken away from me 😢
00:55
TyphoonFast 5
Рет қаралды 2,7 МЛН
How Strong Is Tape?
00:24
Stokes Twins
Рет қаралды 96 МЛН
Pausing and Stepping Play Mode // Game Engine series
51:15
Cherno Unplugged
Рет қаралды 2,6 М.
PLAY BUTTON! // Hazel 2D - Game Engine series
46:20
The Cherno
Рет қаралды 32 М.
Rendering Circles in a Game Engine // Game Engine series
1:05:24
The Cherno
Рет қаралды 31 М.
Harder Drive: Hard drives we didn't want or need
36:47
suckerpinch
Рет қаралды 1,7 МЛН
Dear Game Developers, Stop Messing This Up!
22:19
Jonas Tyroller
Рет қаралды 773 М.
Building an Enigma Machine
12:10
Code Bullet
Рет қаралды 4,3 МЛН
"Clean" Code, Horrible Performance
22:41
Molly Rocket
Рет қаралды 932 М.
Textures for Entities! // Game Engine series
20:48
The Cherno
Рет қаралды 22 М.
Making the Hazelnut Editor Look Good! | Game Engine series
40:13
Гениальное изобретение из обычного стаканчика!
00:31
Лютая физика | Олимпиадная физика
Рет қаралды 4,8 МЛН