Camera Systems | Game Engine series
Вставка
- Опубліковано 28 лип 2020
- Patreon ► / thecherno
Twitch ► / thecherno
Instagram ► / thecherno
Twitter ► / thecherno
Discord ► thecherno.com/discord
Code ► github.com/TheCherno/Hazel
Series Playlist ► thecherno.com/engine
Groups are faster than views but "own" their components. Accessing components listed inside a groups template arguments "" from another view could cause errors. To get around this, groups offer the option of listing the type inside the group constructor as (entt::get), making is accessible to other users.
Views do not have this "problem" / feature and should be the goto solution for components shared between views and systems!
Love the lighting in the background
Good job! Keep components as clean as possible :)
I appreciate that there's inevitably some hacking just to get some initial entity framework in, but with earlier videos in the engine series, I generally updated my modified version of the engine with the new tech from most videos, as the structure and interfaces were fairly clean (and you could make a game). With recent videos, it feels more like it's messing up previous engine code, or exposing that other systems now need rewritten. Are we better waiting until it's more mature and things like the Camera interface are tidied up to match?
hey cherno thanks for the video! just wanted to ask why not to have a static member in your camera class to store the "primary" camera? It would be faster to render as you won't have to iterate through all the cameras in your scene inside the OnUpdate function right?
21:08 when your preferred method backfires
Please Cherno, it's 6AM
I'm too interested in too many things related to problem solving or trial and error. No idea what you're doing. I just know its reminiscent of how I structure personal projects, or diagnose mechanical issues. I assume game development/ coding is one of those skills that once you know the basics, and the design language, the window of creativity just opens up, and everything goes from incredibly complex to sensible within a day, and than the tricks just add up over time with no ceiling. Seems very rewarding. Congratulations.
Really coming along!
20:15 you're still using a view not a group
(probably has been spotted already but I thought I'd point it out)
dude you are amazing! :)
What are you going for in terms of this engine? Like one for performance or good looks or a mix of both? I don't know much about engines, but I find this absolutely enthralling.
As far as I can tell, he writes it so it's reasonably easy to understand. There are rarely any complex optimizations (and the optimizing would be done later anyway). But he does do general best-practices like storing stuff to render in continuous memory for the entity system. I think it's still mostly made to be simple though.
Judging from the way the series is going; he's going for an educational tool to show to people wanting to make their own engines.
I could be wrong about Hazel Dev but that's locked behind Patreon, the version we're seeing on UA-cam is educational in purpose and likely won't be as performant or good-looking as it could be due to the increased complexity for both things.
Using an Entity Component System (AWESOME), creating a camera component (AWESOME)....then hardcoding a seperate, non-ECS camera system. (UHHHHHHHWAT?!?) Why do it this way, and not create an Actual System for ECS? ALL the things are Systems. ALL OF THEM! Change my mind!
u are so smart man!
We know behind the "Camera" scenes as well cherno😎
what color scheme are u using? if custom, please give a download link
Yo Cherno, In episode 25 of the Game Engine Series (Rendering and Maintenance | Game Engine series), you have a stress ball you highlight around ~19:33... what kind is that, what is it called, who makes, where do I get it, etc? Please, it looks awesome and I've been wanting one for a while now. I've searched around trying to find it but not sure the material and haven't been able to find it. Please Cherno.... you're my only hope...
heey. just a quick Question. did you planned to do like a little programm wehre you can create new Projects that names the Project files automaticly to the New Project name ?
Can you please do a follow up video on the halo gameplay I would love to see more of your take on what they did because apparently they created a whole new engine for this game.
I have a question about the entity system: When for example an NPC is build from a body and two legs and to arms and the legs and arms are moved with the body plus the movement relative to the body: Is this all one entity or more? I think in that case the arms and legs have transformations that depend on the body transformation. Is there some source code in a movement component that is responsible for such cases?
Depends entirely on how you set the character up really. If you're creating a single Mesh that is all animated, or a Sprite that cycles through different images, then yes its all one entity. If its something like Rayman where his body is separated then you can either deal with it as separate MeshComponents in a single Entity or several separate Entities. It really would depend on how YOU make the character, since you're making the engine yourself.
Everyone is like,
Do this, Do that
React to this, React to that
thanks!
The ultimate challenge could be to add 3d to this engine, you see but that could be seriously cool.
Hi Cherno,please tell me how to change my visual studio theme,to have code color like yours.
Today i was laid off work, i will wake up from now doing great work. Well corona is horrible to work systems is it not. Saw your first video 1 year ago saying it is general to use in different systems cool.
I saw you commit that on GitHub ;)
Where is the next video for data structures?
Rather than looking for the primary camera each frame, that camera should register itself as the primary camera on initialisation.
Man i wish i could make games ive had a few ideas, based on my Alaskan native lore and legends lol
Well you can man, try Godot engine and check out GDQuest. He will teach you the basics and help you makes some games. I recommend you first get some python knowledge I recommend the book "Outomating things with python" it is free, very helpful and meant to help the very beginners.
@@eeyadsirsawy4585 have you tried making games?
@@Al45kan Yes, and with a bit of patience and some practice it can become very fun.
Godot is pretty easy to use, doesn't have a hostile or toxic community (at least not anymore, regarding the latter), and GDScript is fun to use. C# runs on desktop platforms, iOS and Android, and if the funding continues, I assume that it'll be be ported to PS4 and Xbox ONE via Mono. The Switch is a different story, though.
Plus, it's very extensible, has an active development community, and you can use C/C++ as a module, and Rust via GDNative (if you want to, for some reason).
Lastly, Godot is very future-proof.
@@Al45kan Hope you've started your journey since this comment!
You don't need to build an engine to make games, in fact very few developers do. There are plenty of commercially and freely available engines out there that handle all the heavy lifting that you see being developed here, leaving the upper layers for game developers to focus on their own game! Because they've been developed over many many years by huge teams with far more funding, they're often far greater than anything you can build from UA-cam tutorials!
I'd really like if u'd respond please. I'm going to university this year and I don't know what is better computer science or software engineering?. I want to be a game software developer. What do u recommend?.and what did u take in university?. Thank u
Computer Science tends to be a very theoretical degree. While you will have practical courses as well, you will focus on the absolute ground work. Lots of math and automaton theory for example.
Software Engineering on the other hand is usually a bit more practical. Sure, we learnt the foundations too, but we only skimmed over them to get us going, before we jumped into programming paradigms and patterns.
Personally I would choose the software engineering program as it is usually the more practical approach and will get you to building software faster.
@@pyrob2142 Very good response
@@pyrob2142 one more Question. Can software engineers do software development for games and can u learn by time game designing. I'm asking, because I want to do both. One last thing, I don't know if this is true, but do computer science learn some stuff about computer hardware, because I'm also really intrested in that too?.
@@pyrob2142 The thing is. I want to become a software developer but, if software engineering only teaches u about software. And computer science teaches u some level of computer hardware and software. I'd be a bit intrested in that. But, if they don't learn anything about hardware then software engineering it is. and can software engineers do game engines. I know its alot I'm asking but, I want to learn about everything, because I'm interested in everything game development has to offer. thank for u time.
@@saifbamadhaf Games tend to be viewed as completely separate from other software projects, because of the artistic side of it, but in the end they are software projects after all. I'm sure the Cherno is in a better position to answer this, but in my experience it's not so different compared to a larger enterprise project with milestones, deadlines and also the overall stress level.
I would go with the software engineering degree, because it gets you going faster and some even have the offer to specialize in game development. That being said I would also recommend to keep the undergrad degree broad and focus on specialization during your master's.
In my undergrad degree we learned about the theoretical concepts that drive computers such as very low level logic gates and stuff, but if you mean designing and manufacturing actual hardware, logic boards and the likes: No. I think this is better covered in an electrical engineering degree.
Until today, I never understood sportsfans when they would sit and yell at their tvs. Now, having watching someone else code, I get it :P
Also, entt seems super clunky to work with.
Yeah, I prefer Flecs, but EnTT seems pretty popular.
bababoi
Camera systemmmmmmmmssssssssssssssss
eyyyyyy im walking heahhh
@mooreslawisdead
would like to do some content with you mate.
Pls make it happen lmao would love to see that!
can u tell me how to not suck at programming ?
i kind of disagree with your structure... i think camera should be an entity, which should have a projection component a view component and a render component. i dont think the camera should be a component, as that would make a hell of a complicated component.
Hey man! Can u react to the last of us 2 i m sure other ppl also wanna see your reaction to it
React to stalker 2 strailer plZ
first
NOOO
absolutely no one cares
@@ThunderStormFortnite absolutely wrong :P