By Developers, For Developers
| PDF Pg | Paper Pg | Type | Description | Fixed on | Comments |
|---|---|---|---|---|---|
| 16 | ERROR | Inside box “Rendering in a background thread” “[…] we can also configure the surface view to render only on request by calling GLSurfaceView.setRenderMode(), with GLSurfaceView.RENDERMODE_CONTINUOUSLY as the argument.” I think to render on request only the argument should read | 2013-02-07 | Thank you, this is a good catch. :) | |
| 2 | SUGGEST | Chapter “Installing the JDK and Android SDK”. You recommend using JDK 6. Is there any reason for not using JDK 7? JDK 6 reaches its end of life this month. See: www.oracle.com/technetwork/java/eol-135779.html. | 2013-02-07 | Google currently specifies JDK 6 in the system requirements, and the dex tools don't accept class files targeting later JDKs. I'll update the text to mention this. | |
| 98 | TYPO | page 98 (epub) | 2013-02-16 | Good catch, thanks for reporting this one! | |
| 66 | 56 | TYPO | glVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, int offset) Wrong method signature, it should be: | 2013-03-20 | Very good catch -- this is the glVertexAttribPointer to use with VBOs. I'll fix this for the next release. |
| 159 | TYPO | Second line from top: Correct should be: | 2013-05-17 | Thanks, I modified the sentence a bit to add some clarification. | |
| 207 | TYPO | 3rd paragraph from the bottom: We first send the color on to the fragment shader,… Correct should be: We first send the color on to the vertex shader,… | 2013-05-17 | This is actually OK, this sentence means that this line: \n \nv_Color = a_Color; \n \nSends the color on to the fragment shader. I have alerted the editor to see if we can alter the wording a bit to make it clearer. Thanks! | |
| 240 | TYPO | First line: First, we pass on the vertex position to the fragment shader and invert the position’s Z component; this is to give the fragment shader… Correct should be: First, we pass on the vertex position to the vertex shader and invert the position’s Z component; this is to give the vertex shader… | 2013-05-17 | This is also the same idea as #51254 -- outputting to the "varying" sends it on to the fragment shader. | |
| 42 | ERROR | eclipse doesn’t like return 0 within the if block. it stops giving me an error if I place the return outside of the if block. I don’t know if its a logical error or a syntax error. final int shaderObjectId = glCreateShader(type); | 2013-05-17 | Was the error something along the lines of "function must return a value"? Please compare against the downloadable source code and let me know if this is still a problem. Also if you can send me your code by email (via http://www.learnopengles.com/contact is one avenue) I can check it out. Thanks! \n \n5/17/2013: As there's been no new activity, I will close this as fixed. Please let me know if there is anything new to report. Thanks! | |
| 1 | SUGGEST | - You don’t speak about the default coordinate system (0,0,0) in center of the screen. - You don’t speak about the default scale of coordinate (1,1,1) is the max by default (?) I haven’t finish to read the book , but i don’t find these important information at the start. | |||
| 47 | ERROR | In the validateProgram() method, call to glGetProgramInfoLog() should only be made iff InfoLogLength > 0 as illustrated below: Log.v(TAG, “Results of validating program: ” + validateStatus[0] + “\ final int[] logLen = new int[1]; | |||
| 211 | TYPO | In the last sentence of the paragraph: But it should say 1 billion, not 1 trillion. | |||
| 41 | TYPO | In the subchapter “Uploading and Compiling the Shader Source Code” the code-block “glCompileShader(shaderObjectId);” isn’t marked as the other ones. Can easily miss it, when only skimming for code. | |||
| 211 | 202 | TYPO | The text says that we have time in nanoseconds, so we need to divide by TRILLION (10 ^ 12) to get seconds. That’s clearly a mistake, as we should divide by BILLION (10 ^ 9). Later the code is shown dividing by BILLION, as expected, that confirms error earlier in text where it says TRILLION. In context: “To And code: floatcurrentTime=(System.nanoTime()-globalStartTime)/1000000000f; Hope that helps :) | ||
| 107 | ERROR | On page 104 the projection matrix is described. m[14] = -((2*f*n) / (f-n)); Best regards, | |||
| 259 | TYPO | Hi there! If you take a look at the code for Heightmap.java, when you are trying to clamp the co-ordinates to ensure that you don’t access any pixels in the image out of bounds, the width - 1 and height - 1 variables should be reversed. Specifically, the book has: This should actually be: Awesome book btw. Cheers. | |||
| 221 | TYPO | The code where you unbind the texture after we are finished, the book currently has it as glBindTexture(GL_TEXTURE_2D, 0); Because we are generating a cube map, and because the beginning binding call was glBindTexture(GL_TEXTURE_CUBE_MAP, textureObjectIds[0]);, I believe the unbinding call should be: glBindTexture(GL_TEXTURE_CUBE_MAP, 0); The example still works, but I figure for the sake of consistency, this should be correct. Thanks! | |||
| 148 | SUGGEST | Possibly modify Figure 43 to use the xz axes. The figure currently shows a unit circle in the xy plane, but in the description that follows (and in the code) the circle is orientated in the xz plane. This causes some confusion in the third paragraph, where the text says the unit circle y component maps to the y position. | |||
| 238 | ERROR | final float yPosition = it’s working with the same width and height, but it’s not working with the different length of width and height. I suggest that height should be replaced by width. final float yPosition = | |||
| 112 | SUGGEST | in page 112,the rotation matarix for round the x,the 7th element in figure is i am try write that code use figure from book,result is negative direction,i hope book can tell me why have this diffent and how to correct。 | |||
| 59 | ERROR | GLES20.GL_LINK_STATUS => GL_LINK_STATUS, since a static import is done of android.opengl.GLES20.*. | |||
| 56 | ERROR | GLES20.GL_COMPILE_STATUS => GL_COMPILE_STATUS, since static import of android.opengl.GLES20.* is done. | |||
| 110 | SUGGEST | At he point where you get to compile, you compile and I didn’t get Figure 32, that was because you don’t say in the book that you have to switch to the old Matrix, on tableVertices, it was in the code where I realised that you have then used the Matrix with the old components X, Y, R, G ,B . | |||
| air h | SUGGEST | Hello, i can’t find the error. The Table is black. No Textures |