COMP4300 - Game Programming - Lecture 02 - Intro to C++ (1/2)

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

Dave Churchill

Dave Churchill

Күн бұрын

Memorial University - Computer Science 4300 - Fall 2023
Intro to Game Programming
Professor: David Churchill - www.cs.mun.ca/~...
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

Пікірлер: 41
@TfYouLookinAt1
@TfYouLookinAt1 8 ай бұрын
I found gold! This course is great, I learned a lot! Thank you Prof. Churchill!
@fun_iqp
@fun_iqp 11 ай бұрын
What a marvelous domain of the language. I´m not a (direct) student of yours, but how wonderful that would be. Just hoping those young students know how lucky they are, with many poor teachers..
@bryanswaggbeast4594
@bryanswaggbeast4594 10 ай бұрын
absolutely agree
@EstebanLopez-bn9pd
@EstebanLopez-bn9pd 9 ай бұрын
Your passion for C++ is contagious. I thank you for posting this course on KZbin!
@Efebur
@Efebur 9 ай бұрын
Hello, about the vs endl - at 1:17:09 you mentioned that if you save the program's output to a file and then open the file on windows, it won't show newlines if you use , and it seems you're suggesting that with endl it will. It doesn't matter if you used or endl, it will have just LF endings with both, because you compiled and ran the program on a linux machine. Similarly if you compile on windows, will actually result in CRLF endings and so will endl. The only difference between and endl is that endl will flush the stream, while won't.
@DavidCreativeCoding
@DavidCreativeCoding 7 ай бұрын
Great intro! we are using C++ on a Intro to Computer Graphics course at KTH and this is just gold! Thanks!
@gitgudsec
@gitgudsec Ай бұрын
Thanks for deciding to list this course after all!
@jeremythibeault
@jeremythibeault 3 ай бұрын
Thank you for this class, I'm really enjoying it so far. I did manage to write the function in two lines but I will admit it's not really clean and your example changed my view of c++. I'm looking forward to watching the rest of the series, cheers! def loadFromFile(self, file): with open(file, "r") as data: self.students.extend([Student(*line.rstrip().split(" ")) for line in data.readlines()])
@VoidloniXaarii
@VoidloniXaarii 9 ай бұрын
Thank you! So much sound advice 🤗
@arjanvandenheuvel4522
@arjanvandenheuvel4522 11 ай бұрын
1:13:54 It doesn't seem like the lecture was over yet. It got cut off in the middle of a slide. 😢
@DaveChurchill
@DaveChurchill 11 ай бұрын
It cut off like 30 seconds of the end. The university lecture capture ends at a specific time and I went a bit late
@arjanvandenheuvel4522
@arjanvandenheuvel4522 11 ай бұрын
@@DaveChurchill Ooh okay. Thanks for clarifying, I was afraid much more might had gotten lost.
@Anubis10110
@Anubis10110 9 ай бұрын
When you said Define a limit .. I was like damn calculus is everywhere 😅
@RaviSingh-lc1tc
@RaviSingh-lc1tc 8 ай бұрын
All in good spirits with open(file_path, "r") as f: for one_line in f.readlines(): first, last, id_, avg =one_line.rstrip().split(" ") Student(first, last, int(id_), float(avg))
@blackcitadel37
@blackcitadel37 29 минут бұрын
is that python?
@3g9UbImZWLxSYFZjHyP0Pw
@3g9UbImZWLxSYFZjHyP0Pw 6 ай бұрын
Thank you!!!!!!!!!!!
@bryanswaggbeast4594
@bryanswaggbeast4594 10 ай бұрын
Hello Professor Dave Churchill. I am not one of your students but a viewer here on yt and I have a question regarding the unsigned int/ size_t. How come I don't get the same error as you do in 1:28:10 ? I am on visual 2022 btw.
@yiitAy
@yiitAy 10 ай бұрын
can it be a c++ version thing ? Maybe . i write so many very bad c++ code but i didnt take any errors hahahaha
@bunpasi
@bunpasi 10 ай бұрын
Perhaps you use a different compiler than gcc? If you're up for it, have a look at compiler warning levels and have a quick look at the difference between debug mode and release mode.
@Euphorya
@Euphorya 10 ай бұрын
You need to add -Wall to your compile command to have these show up as errors. `g++ main.cpp -Wall -o runme`.
@pingu2538
@pingu2538 8 ай бұрын
At 1:49:24, m_name is set to "Course". and in the public constructor below it you pass the reference to the string m_name. My question is what will happen to the string "Course" after m_name's reference has been changed to something else, will it sit in the memory till the end of the program? If so, then is it possible to run a loop to create new strings and keep changing the reference to it. What happens then?
@elvis8180
@elvis8180 9 ай бұрын
are you planning to create a c++ course only? from fundamentals to advanced levels? btw, thanks for the course.
@michaelcarey6415
@michaelcarey6415 10 ай бұрын
Hi, thankyou for sharing your lecture. At the end when you create the Student class object within the addStudent method(2:04:00), is it not necessary to assign the object a variable name as you did earlier (1:38:00) with the call to the Constructor? Thanks
@DaveChurchill
@DaveChurchill 10 ай бұрын
Since you are calling it from an instanced object, it assumes you are calling the function related to that object. It's like in python when you say self.function(), in C++ you either say this->function() or leave out the 'this' entirely
@michaelcarey6415
@michaelcarey6415 10 ай бұрын
Ok. Thanks for the quick response
@funnylife565
@funnylife565 9 ай бұрын
I am a c++ programmer doing numerical computing for ten years. I find it very difficult to get a c++ job right now comparing to java.
@felipe6040
@felipe6040 8 ай бұрын
I though C++ was good for machine learning and stuff, games as well. So it's that good to learn it nowadays?
@meenakshirai
@meenakshirai Ай бұрын
doesn't auto make C++ dynamic language? Same as swift using protocol for it's functions and makes swift dynamic language as compiler has to guess at runtime what type or which class the protocol is going to pick up, isn't C++ going to find out the same way against auto?
@DaveChurchill
@DaveChurchill Ай бұрын
@@meenakshirai no, the preprocessor just determines the type from the context, it is a compile time type inference
@mr.milk02
@mr.milk02 Ай бұрын
1:55:30
@lordofthe6string
@lordofthe6string 3 ай бұрын
I'm not a student, but it's a really helpful resource. I think the ideas so far are great and I think it's going to be a good course, but my god is c++ a garbage language. I can't wait for another low level language to take its place.
@alexanderskusnov5119
@alexanderskusnov5119 9 ай бұрын
It's not for Windows.
@DaveChurchill
@DaveChurchill 9 ай бұрын
Setup for windows is shown in assignment 1 lecture
@QueryTuner
@QueryTuner 9 ай бұрын
The story about "a.out" looks really interesting .. en.wikipedia.org/wiki/A.out Greetings from Germany.
COMP4300 - Game Programming - Lecture 03 - Intro to C++ (2/2)
1:52:05
Dave Churchill
Рет қаралды 14 М.
31 nooby C++ habits you need to ditch
16:18
mCoding
Рет қаралды 796 М.
Зу-зу Күлпаш 2. Бригадир.
43:03
ASTANATV Movie
Рет қаралды 660 М.
Зу-зу Күлпаш 2. Интернет мошенник
40:13
ASTANATV Movie
Рет қаралды 363 М.
规则,在门里生存,出来~死亡
00:33
落魄的王子
Рет қаралды 31 МЛН
Bike Vs Tricycle Fast Challenge
00:43
Russo
Рет қаралды 112 МЛН
I made the same game in Assembly, C and C++
4:20
Nathan Baggs
Рет қаралды 749 М.
you will never ask about pointers again after watching this video
8:03
Every Programming Language Ever Explained in 15 Minutes
15:29
Flash Bytes
Рет қаралды 337 М.
15 Years Writing C++ - Advice for new programmers
4:04
SyncMain
Рет қаралды 1,2 МЛН
COMP4300 - Game Programming - Lecture 05 - Intro to ECS
1:11:32
Dave Churchill
Рет қаралды 9 М.
I coded one project EVERY WEEK for a YEAR
13:13
Carter Semrad
Рет қаралды 657 М.
COMP4300 - Game Programming - Lecture 01 - Course Introduction
1:12:48
Making a Game With C++ and SDL2
8:14
PolyMars
Рет қаралды 1,7 МЛН
C++ vs Rust: which is faster?
21:15
fasterthanlime
Рет қаралды 398 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 497 М.
Зу-зу Күлпаш 2. Бригадир.
43:03
ASTANATV Movie
Рет қаралды 660 М.