java - Offsets for per vertex data interleaved in OpenGL ES on Android -



java - Offsets for per vertex data interleaved in OpenGL ES on Android -

is possible utilize per vertex info interleaved in opengl es on android?

i'm unable right offset pointers normal , color members.

in c++ this:

struct coloredvertexdata3d{ vertex3d vertex; vector3d normal; colorrgba color; }; const coloredvertexdata3d vertexdata[] = { { {0.0f, 0.5f, 0.8f}, // vertex | {0.0f, 0.4f, 0.6f}, // normal | vertex 0 {1.0f, 0.0f, 0.0f, 1.0f} // color | }, { {0.8f, 0.0f, 0.5f}, // vertex | {0.6f, 0.0f, 0.4f}, // normal | vertex 1 {1.0f, 0.5f, 0.0f, 1.0f} // color | }, // ... more vertexes. }; const int stride = sizeof(coloredvertexdata3d); glvertexpointer(3, gl_float, stride, &vertexdata[0].vertex); glcolorpointer(4, gl_float, stride, &vertexdata[0].color); glnormalpointer(gl_float, stride, &vertexdata[0].normal);

is same thing possible on android in java? got:

bytebuffer vertexdata = ...; int stride = 40; gl.glvertexpointer(3, gl10.gl_float, stride, vertexdata); // doesn't work. ------------v gl.glcolorpointer(4, gl10.gl_float, stride, &vertexdata[0].color); gl.glnormalpointer(gl10.gl_float, stride, &vertexdata[0].normal);

the basic thought phone call duplicate() on bytebuffer, creates new bytebuffer shares underlying storage allows start @ different position.

here's worked me:

floatbuffer verticesnormals; // ... code initialize verticesnormals ... // verticesnormals contains 6 floats each vertex. first 3 // define position , next 3 define normal. gl.glvertexpointer(3, gl.gl_float, 24, verticesnormals); // create buffer points 3 floats past beginning. floatbuffer normaldata = mverticesnormals.duplicate(); normaldata.position(3); gl.glnormalpointer(gl.gl_float, 24, normaldata);

java android opengl-es

Comments

Popular posts from this blog

java - How to set log4j.defaultInitOverride property to false in jboss server 6 -

c - GStreamer 1.0 1.4.5 RTSP Example Server sends 503 Service unavailable -

Using ajax with sonata admin list view pagination -