WEBVTT

00:00.150 --> 00:00.690
Hello again!

00:01.080 --> 00:04.200
In this video, we are going to start looking at SFML.

00:05.370 --> 00:08.310
This is the "Simple and Fast Multimedia Library".

00:08.910 --> 00:14.220
There are quite a lot of graphics libraries, which are written in C, or C++ which looks like C.

00:14.760 --> 00:19.020
This is actually written in idiomatic modern C++, C++ 14.

00:19.380 --> 00:23.460
So it works very well with the features that we have been learning about in this course.

00:24.240 --> 00:27.180
It is also easy to use and it is very well documented.

00:28.020 --> 00:31.950
It has a website, so let's go over and have a look at that.

00:34.200 --> 00:38.400
SFML provides an interface to the multimedia components of your computer.

00:39.090 --> 00:46.890
It works on Windows, Linux and Mac, and it is also available in C and .net, and other languages.

00:48.090 --> 00:49.290
"Et aussi en Francais"

00:51.560 --> 00:58.100
There is documentation on how to use the interface, answers to frequently asked questions, and tutorials.

00:59.690 --> 01:04.370
So these will tell you how to get started, with various compilers and operating systems.

01:05.420 --> 01:08.840
There are some system modules, which are probably not really relevant

01:08.840 --> 01:13.430
now we have C++11. Maybe they are useful if you have to use a very old compiler.

01:14.570 --> 01:21.380
Then, managing windows, interacting with events, and keyboard, mouse and joysticks. And also how to use

01:21.380 --> 01:21.680
OpenGL,

01:21.800 --> 01:25.370
if you want more control, or to do your own rendering.

01:26.480 --> 01:30.830
And then the real heart of the graphics features, and we are going to be using some of these.

01:31.910 --> 01:34.880
There is also support for audio and networking.

01:35.330 --> 01:39.080
We are not going to be using those, but they are there, if you want to investigate them.

01:42.240 --> 01:46.200
For downloading, I recommend using the latest stable version.

01:49.200 --> 01:52.110
And there are versions for Windows, Linux and Mac.

01:52.830 --> 01:56.160
Or alternatively, you can download the source code and copmile that yourself.

01:56.610 --> 02:02.310
And that should be pretty straightforward, if you are used to doing that sort of thing. For the Windows

02:02.310 --> 02:07.350
version, it is very important to make sure that you have the right binary for your compiler. Especially

02:07.350 --> 02:10.350
if you are using Visual Studio, because Microsoft keep changing

02:10.350 --> 02:12.660
their binary output format.

02:13.380 --> 02:15.000
Although they do seem to have settled down now.

02:15.510 --> 02:21.420
I have been using Visual Studio 2019 with the 2017 binaries, and there have been no problems at all.

02:22.800 --> 02:26.970
They are also ones for CodeBlocks and MinGW.

02:28.590 --> 02:33.330
If you are using Linux or one of the BSDs, then the best thing is to use the package manager.

02:33.600 --> 02:37.020
That will download the binaries and install them in a sensible place.

02:38.160 --> 02:41.610
For MacOS, I need to go back to the tutorials, briefly.

02:47.000 --> 02:47.780
There are two versions.

02:47.780 --> 02:54.050
One is dylib, which works like a Unix binary, and there is also frameworks, which you can use for doing

02:54.050 --> 02:56.380
things which are a bit more "Mac-like".

02:58.430 --> 03:00.110
Okay, so that is it for this video.

03:00.500 --> 03:04.610
In the next video, I will be showing you how to configure this for command line and IDE.

03:04.610 --> 03:07.160
But until then, keep coding!
