Wednesday, September 25, 2013

OpenGL ES 2.0 Book Teaser

I've been making really respectable progress on the OpenGL ES 2.0 hardback representing Prags, and I'm really content with come again? I've complete so far. The hardback isn't quite as hand-holding as Beginning iPhone 3 Development was, but it's probably more hand-holding than several graphics encoding hardback I've still read. If you've got earlier experience with graphics encoding, you may well comprehend frustrated with the pace of the hardback. I'm working on Chapter 8 promptly, and I haven't even gotten to lighting yet.

Those of you who own not at all worked with a programmable pipeline engine like OpenGL ES 2.0 or own tried and been frustrated by the books and assets offered, will (I hope) be pleased about the loom I'm taking. I'm demanding to be very, very thorough. I'm demanding not to leave several questions lynching in the air. I've found, larger than the years, graphics encoding books to be frustrating in to facilitate they believe a selected level of earlier facts that's not unproblematic to find outside of college math classes. It's my goal to explain not single how to look after things, but why, and collapse next to slightest a quantity of high-level in sequence around the underlying concepts and math. My goal is to nominate graphics encoding approachable representing fill with who don't necessarily own math facts outside basic high spot train geometry and trig. I can't look after to facilitate with everything. For illustration, with projection matrices, I simply didn't think it was worth demanding to cover homogeneous coordinates, so I listening carefully on how projection vectors worked and mostly skipped the why. But that's an exception. During for the most part luggage, I'm really focusing on why we look after come again? We look after.

Writing books like this is fun, to be open. I'm learning OpenGL ES 2.0 next to a much deeper level than I previously knew and I feel respectable around the progress of the hardback. From the discussions I've had, I think there's a lot in life of fill with improbable at hand who would like to encode in OpenGL ES 2.0 so they can look after cool stuff on the iPhone and iPad, but who truly don't really know wherever to start. It's like all the cool stuff is sitting on a shelf truly improbable of touch. And that's frustrating.

I don't know yet what time the hardback will be offered. I'm hopeful to facilitate it will comprehend traditional into the beta books encode what time it's far an adequate amount along. If to facilitate happens, I'll nominate convinced to pole around it now, since followed by the hardback will be offered representing recital online or the endorsed emancipation.

Now, rejection part of the hardback is quick representing known consumption yet, but I'm departing to pole a quantity of of my code from the hardback at the moment. I know there's a lack of respectable, clean, straightforward iOS OpenGL ES 2.0 code improbable at hand, so I though I'd pole solitary of the projects from the stage I'm working on promptly representing everybody who wanted to try and suppose improbable how it all fits organized.

Although it's a a clean app, there's a trade event amount departing on. I take thought of setting up a perspective projection and a standard behold matrix to facilitate both moves and rotates the object and furthermore look after quality mapping. There's a clean vertex shader and a fragment shader to facilitate take thought of transforming the view and responsibility the quality mapping. Now, in OpenGL ES 2.0, at hand are rejection built-in functions to market several of these tasks, so it's all got to be complete manually, primarily in the shaders. There are furthermore a quantity of expedient classes and functions you may well be able to force in your own code. Much of what's in now is based on code I've posted in the precedent, but it's all been updated and tweaked representing consume in the OpenGL ES 2.0 programmable pipeline.
Screen shot 2010-07-13 at 11.24.55 PM.png
Yes, it's our old alone, the icosahedron, but all dressed up to look like a twenty-side fail. Because, you know, what's more geeky than a twenty-sided fail?

Now, this project hasn't been code reviewed. Heck, the stage it's representing hasn't even been in print yet, so I'm convinced at hand are mistakes and CBBs (could be betters). This is furthermore not particularly efficient code. I'm putting sour until soon after in the hardback a total of optimizations, as well as vectorizing the matrix and vector functions, interleaving per-vertex attributes, and using VBOs and VAOs. At this promontory, I'm much more listening carefully on clarity and concepts than on performance, so truly be aware of to facilitate or you decide to incorporate several of this code into a production project.

To the same extent until the end of time, at hand are rejection chuck placed on your consume of this code. You don't own to collapse attribution, and you don't own to be part of the cause back changes, though if you look after set-up or further something, I'd be glad to hear around it.

You can discovery the Xcode project justification now.

I've furthermore made the real thing Blender and Pixelmator annals I used to create the vertices and quality coordinates of the icosahedron as well as the quality. You can download persons now.

I am poor, but own to say to facilitate I won't be able to answer questions around the code. Between the hardback and client handiwork justification, for the most part days I'm next to my desk from 8:00 in the morning until 1:00 or 2:00 the then morning, seven days a week, so if you need explanations, you're departing to own to linger representing the hardback.

No comments:

Post a Comment