ODBIERZ TWÓJ BONUS :: »

Errata książki

Drogi Czytelniku! Poniżej zamieszczona jest errata do książki:

"OpenGL. Programowanie gier"

Jest to lista błędów znalezionych po opublikowaniu książki, zgłoszonych i zaakceptowanych przez naszą redakcję. Pragniemy, aby nasze publikacje były wiarygodne i spełniały Twoje oczekiwania. Zapoznaj się z poniższą listą. Jeśli masz dodatkowe zastrzeżenia, możesz je zgłosić pod adresem: ebookpoint.pl/user/erraty

Strona Linia Jest Powinno Zgłaszający
43 43 BeginPaint(hwnd, &ps);
EndPaint(hwnd, &ps);
BeginPaint(hwnd, &paintStruct);
EndPaint(hwnd, &paintStruct);
Olek B
55 1. w ramce MSDrN MSDN Andrzej Płuciennik
55 ramka, 4 wiersz http://msdn.nicrosoft.com http://msdn.microsoft.com Michał Mally
68 5. od góry memset(&dmScreenSettings,0,sizeof(dmScreenSettings)); memset(&devModeScreen,0,sizeof(devModeScreen)); Andrzej Płuciennik
68 6. od góry devModeScreen.dmSize = sizeof(dmScreenSettings); devModeScreen.dmSize = sizeof(devModeScreen); Andrzej Płuciennik
74 19 A.B>0, jeśli kąt pomiędzy wektorami A i B jest większy od 90 stopni A.B<0, jeśli kąt pomiędzy wektorami A i B jest większy od 90 stopni Janusz Lisiecki
76 4 i 5 od dołu C = k * M = 2 * | 1 3 | = |(2*1) (2*3) | = | 2 6 |
|(2*2) (2*0) | | 4 0 |
C = k * M = 2 * | 1 3 | = |(2*1) (2*3) | = | 2 6 |
| 2 0 | |(2*2) (2*0) | | 4 0 |
Piotr
78 1 wiersz |n00 n01 n02| jest umieszczony jako pierwszy wiersz macierzy M powinien to być pierwszy wiersz macierzy N Paweł Stankowski
81 2 M_OZ = |cos(fi) -sin(fi) 0 0|
|sin(fi) cos(fi) 0 0|
|0 0 0 1|
|0 0 0 1|
M_OZ = |cos(fi) sin(fi) 0 0|
|-sin(fi) cos(fi) 0 0|
|0 0 0 1|
|0 0 0 1|
Wojciech Handzlik
94 1. od góry void geGetBooleanv(GLenum pname,GLboolean *params); void glGetBooleanv(GLenum pname,GLboolean *params); Andrzej Płuciennik
94 2. od góry void geGetDoublev(GLenum pname,GLdouble *params); void glGetDoublev(GLenum pname,GLdouble *params); Andrzej Płuciennik
94 3. od góry void geGetFloatv(GLenum pname,GLfloat *params); void glGetFloatv(GLenum pname,GLfloat *params); Andrzej Płuciennik
94 4. od góry void geGetIntegerv(GLenum pname,GLint *params); void glGetIntegerv(GLenum pname,GLint *params); Andrzej Płuciennik
107 6-8 od dołu glVertex(-2.0, -1.0, 0.0);
glVertex(3.0, 1.0, 0.0);
glVertex(0.0, 3.0, 0.0);
glVertex3f(-2.0, -1.0, 0.0);
glVertex3f(3.0, 1.0, 0.0);
glVertex3f(0.0, 3.0, 0.0);
Adrian Stanisławski
116 3. od dołu glRotatef(roll, 1.0f, 0.0f, 0.0f); glRotatef(pitch, 1.0f, 0.0f, 0.0f); Mateusz Kłos
117 5 od dołu (5, 4,33) (4,3) Paweł Stankowski
131 9 od dołu hwnd = CreateWindowEx(NULL, hwnd = CreateWindowEx(dwExStyle, Paweł Stankowski
150 18 normal[0] = vector1[1]*vector2[2] - vector1[2]*vector2[2] normal[0] = vector1[1]*vector2[2] - vector1[2]*vector2[1] Paweł Stankowski
150 4 z wierzchołka P2 z wierzchołka P1 Paweł Stankowski
160 2. pod tabelą 6.3 glLightfv(GL_LIGHT0, GL_ATTENUATION, 4.0f); glLightfv(GL_LIGHT0, GL_CONSTANT_ATTENUATION, 4.0f); Andrzej Płuciennik
163 10 od dołu void glMaterialf(GLenum face, GLenum pname, TYPE param); void glMaterialfv(GLenum face, GLenum pname, TYPE param); Adrian Stanisławski
165 10 od dołu glLightModel(GL_LIGHT_MODEL_AMBIENT, ambientLightModel);
glLightModelfv(GL_LIGHT_MODEL_AMBIENT, ambientLightModel); Adrian Stanisławski
165 9, 10 void glLightModel[if](GLenum pname, TYPE param);
void glLightModel[if]v(GLenum pname, TYPE *param);
void glLightModelf(GLenum pname, TYPE param);
void glLightModelfv(GLenum pname, TYPE *param);
Jakub Wróbel
190 18 od dołu BITMAPFILEHEADERbitmapFileHeader; BITMAPFILEHEADER bitmapFileHeader; Michał Mally
190 29 unisgned chartempRGB; unisgned char tempRGB; Adrian Stanisławski
191 24 for (imageIdx = 0; imageIdx < bitmapInfoHeader->biSizeImage; imageIdx+=3)

tempRGB = bitmapImage[imageIdx];
bitmapImage[imageIdx] = bitmapImage[imageIdx + 2];
bitmapImage[imageIdx + 2] = tempRGB;
for (imageIdx = 0; imageIdx < bitmapInfoHeader->biSizeImage; imageIdx+=3)

tempRGB = bitmapImage[imageIdx];
bitmapImage[imageIdx] = bitmapImage[imageIdx];
bitmapImage[imageIdx] = tempRGB;
Paweł Olaszek
193 2 od dołu wartoœść 0 x 00 = 24 bity, wartoœść 0 x 08 = 32-bity wartoœść 0x00 = 24 bity, wartoœść 0x08 = 32 bity Michał Mally
208 22. od góry Parametr param reprezentuje Parametr target reprezentuje Andrzej Płuciennik
209 10. od góry a parametr pname wartość GL_TEXTURE_ENV, która a parametr pname wartość GL_TEXTURE_ENV_MODE, która Andrzej Płuciennik
209 10,11 GL_TEXTURE_ENV, a parametr pname wartoœść GL_TEXTURE_ENV GL_TEXTURE_ENV, a parametr pname wartoœść GL_TEXTURE_ENV_MODE Adrian Stanisławski
213 4 od dołu glBuild2DMipmaps gluBuild2DMipmaps Adrian Stanisławski
218 5 for( xIdx = 35; xIdx >=0; xIdx--) for( xIdx = 35; xIdx >0; xIdx--) Paweł Stankowski
227 9-6 od dołu #define MAP_X32
#define MAP_Z32
#define MAP_SCALE20.0f
#define PI3.14159
#define MAP_X 32
#define MAP_Z 32
#define MAP_SCALE 20.0f
#define PI 3.14159
Michał Mally
242 6 od dołu PI 3.14195 PI 3.14159 Paweł Stankowski
259 4 od dołu texture_t *LoadTextureFile(char *filename) texture_t *LoadLightMap(char *filename) Paweł Stankowski
269 6 od dołu istnieją efektywniejsze polecenia obsługi tekstu, które
omówione zostaną wkrótce).
istnieją efektywniejsze polecenia obsługi tekstur, które
omówione zostaną wkrótce).
Michał Mally
273 6 od dołu glNewList(g_cube, GLCOMPILE); glNewList(g_head, GLCOMPILE); Paweł Stankowski
281 4 od dołu GLuint g_indexArray[MAP_X*MAP_Z*6] GLuint g_indexArray[MAP_X*MAP_Z-1)*2] Paweł Stankowski
286 6 od dołu glBaseList() glListBase() Paweł Stankowski
289 10 glColor2f() glColor3f() Paweł Stankowski
322 13 glRotatef(objectAngle, 1.0f, 1.0f, 0.0f); glRotatef(objectAngle, 1.0f, 0.0f, 0.0f); Paweł Stankowski
337 3 od dołu funkcja x funkcja f(x) Paweł Stankowski
526 4 od dołu A*x + B*y + C*z - D = 0 A*x + B*y + C*z + D = 0 -

Poniżej znajduje się lista błędów znalezionych przez czytelników, ale jeszcze nie potwierdzonych przez Redakcję:

Strona Linia Jest Powinno Zgłaszający
162 18 od góry glLightfv(GL_LIGHT0, GL_DIFFUSE, ambientLight); glLightfv(GL_LIGHT0, GL_DIFFUSE, diffuseLight); -
Sposób płatności
Zabrania się wykorzystania treści strony do celów eksploracji tekstu i danych (TDM), w tym eksploracji w celu szkolenia technologii AI i innych systemów uczenia maszynowego. It is forbidden to use the content of the site for text and data mining (TDM), including mining for training AI technologies and other machine learning systems.