@@ -17,7 +17,7 @@ Preliminaries
1717-------------------------------------------------------------------------------
1818
1919The main difficulty for newcomers in programming modern OpenGL is that it
20- requires to underdtand a lot of different concepts at once and then, to perform
20+ requires to understand a lot of different concepts at once and then, to perform
2121a lot of operations before rendering anything on screen. This complexity
2222implies that there are many places where your code can be wrong, both at the
2323conceptual and code level. To illustrate this difficulty, we'll program our
@@ -109,7 +109,7 @@ GL Primitives
109109 Common OpenGL rendering primitives.
110110
111111Ok, now things are getting serious because we need to actually tell OpenGL what
112- to do with the vertices, i.e. how to render them? what do they describe in term
112+ to do with the vertices, i.e. how to render them? What do they describe in term
113113of geometrical primitives? This is quite an important topic since this will
114114determines how fragments will be actually generated as illustrated on the image
115115below:
@@ -380,7 +380,7 @@ equivalent to a C `double`). So let us specify a NumPy array holding 4×2
380380 # Build data
381381 data = np.zeros((4 ,2 ), dtype = np.float32))
382382
383- Wen then create a placeholder on the GPU without yet specifying the size:
383+ We then create a placeholder on the GPU without yet specifying the size:
384384
385385.. code :: python
386386
@@ -395,7 +395,7 @@ We now need to bind the buffer to the program, that is, for each attribute
395395present in the vertex shader program, we need to tell OpenGL where to find the
396396corresponding data (i.e. GPU buffer) and this requires some computations. More
397397precisely, we need to tell the GPU how to read the buffer in order to bind each
398- value to the relevant attribute. To do this, GPU needs to kow what is the
398+ value to the relevant attribute. To do this, GPU needs to know what is the
399399stride between 2 consecutive element and what is the offset to read one
400400attribute:
401401
@@ -412,7 +412,7 @@ attribute:
412412
413413
414414 In our simple quad scenario, this is relatively easy to write because we have a
415- single attribute ("`position `"). We first requires the attribute location
415+ single attribute ("`position `"). We first require the attribute location
416416inside the program and then we bind the buffer with the relevant offset.
417417
418418.. code :: python
@@ -750,7 +750,6 @@ the quad program (see `<code/chapter-03/glumpy-quad-varying-color.py>`_):
750750
751751 .. figure :: movies/chapter-03/quad-scale.mp4
752752 :loop:
753- :autoplay:
754753 :controls:
755754 :figwidth: 35%
756755
@@ -808,7 +807,6 @@ tricks in the next chapters.
808807
809808.. figure :: movies/chapter-03/quad-scale.mp4
810809 :loop:
811- :autoplay:
812810 :controls:
813811 :figwidth: 35%
814812
@@ -830,7 +828,6 @@ Solution: `<code/chapter-03/quad-scale.py>`_
830828
831829.. figure :: movies/chapter-03/quad-rotate.mp4
832830 :loop:
833- :autoplay:
834831 :controls:
835832 :figwidth: 35%
836833
0 commit comments