COMP4300 - Game Programming - Lecture 05 - Intro to ECS

preview_player
Показать описание
Memorial University - Computer Science 4300 - Fall 2022
Intro to Game Programming

This is a course for students interested in learning the fundamentals of game programming and game engine architecture. Topics include an introduction to: vector math for games, rendering, animation, and artificial intelligence, collision detection, game physics, and user-interfaces. Students will be writing fully functional games using an ECS (Entities, Components, Systems) architecture, using the C++ programming language and the SFML graphics library.

Course Assignments / Files will not be released publicly
Рекомендации по теме
Комментарии
Автор

The intro lead-in video said COMP 3200, but it is indeed COMP4300. Oops!

DaveChurchill
Автор

This is insane. I love you. Thank you so much for these. You are awesome teacher, and I'm not a native english speaker. Lecture is super comfy, insightful and easy to understand for non english speakers as well! Keep up the good work, I'd love to watch similar stuff towards mobile apps development, or electronics!

CykPykMyk
Автор

thank you for sharing this university class

mokalux
Автор

Really informative, and the chaining functionality is really sweet

aakarshanraj
Автор

It is so amazing that you are providing all of this to be rewatched!

Also, the introduction you give about ECS is kind of funny. I totally agree that it's better. However, I agree that it's better under the premise that ECS is to OOD, what C++ is to C. Since, components are essentially compartment objects for your entities and systems.

DeepFriedOreoOffline
Автор

i just took a course in data structures and algorithms (cpp and/or c#) and stumbled upon your course after it. I have two notes so far:
1. Your teaching process is great, making "mistakes" to move towards a better approach is definitely my style.
2. It's really unfortunate that you have to re-iterate what the chat is for. Hope this is something you can resolve if you are publicly sharing in the future. chat rules or having a 'students only' chat maybe?

tl:dr; great course, sorry about the answer spam.

nite_owl_was_here
Автор

Love the videos!. At 9:00 vs 11:00 It might be good to highlight the UML design notation: OOP flow focuses on inheritence (open arrow) where as ECS uses composition (closed diamonds)...OOP has generalisations..."dynamic" is more general than "player", etc. Whereas ECS talks about a player "has" or "contains" position.

rrad
Автор

You can consolidate your preemptive rebuttals to: "crawl, walk, run. If you run, don't tell me how to teach someone to crawl."
1:06:40 Busted! Someone is using clang not gcc O_O (=default is a clang compiler warning)

ngrader
Автор

fascinating stuff... <3
Loved it !

x-byugsheladia
Автор

I really appreciate you making this course available! Just wanted to let you know the volume is a bit low on these videos, though still audible.

billyquack
Автор

After looking back at this regarding the components section, how is best to set up a Shape component that could potentially store a Rectangle or Circle? Is it better just just separate out these components? Having them clog up the Entity with another potential pointer seems not the best solution.

Bopek
Автор

56:30 видеоигры entity manager mem management

udarue
Автор

You should check out David Hart's "Don't Model the Problem" video. Its not about ECS vs OOD, but is about functional vs OOD programming. He makes a good case why functional programming can be a better choice over OOD for solving certain problems.

rosendom
Автор

Objectively, ECS is better for keeping modern hardware fed, unless you have a fetish for cache misses from unsorted data and bad performance.

ReoL_
Автор

Ecs is best because it's flexible and also it's used in Unreal and Unity 😼

youtubemofi
Автор

Done with assignment 1. Centering the text is really tricky hahahaha.

MONDRICH-
visit shbcf.ru