public CameraFrustum() { // Reset the model matrix to the identity Matrix.SetIdentityM(ModelMatrix, 0); // Load the vertices into a vertex buffer ByteBuffer byteBuf = ByteBuffer.AllocateDirect(mVertices.Length * 4); byteBuf.Order(ByteOrder.NativeOrder()); mVertexBuffer = byteBuf.AsFloatBuffer(); mVertexBuffer.Put(mVertices); mVertexBuffer.Position(0); // Load the colors into a color buffer ByteBuffer cByteBuff = ByteBuffer.AllocateDirect(mColors.Length * 4); cByteBuff.Order(ByteOrder.NativeOrder()); mColorBuffer = cByteBuff.AsFloatBuffer(); mColorBuffer.Put(mColors); mColorBuffer.Position(0); // Load the vertex and fragment shaders, then link the program int vertexShader = RenderUtils.loadShader(GLES20.GlVertexShader, sVertexShaderCode); int fragShader = RenderUtils.loadShader(GLES20.GlFragmentShader, sFragmentShaderCode); mProgram = GLES20.GlCreateProgram(); GLES20.GlAttachShader(mProgram, vertexShader); GLES20.GlAttachShader(mProgram, fragShader); GLES20.GlLinkProgram(mProgram); }
public Grid() { // Reset the model matrix to the identity Matrix.SetIdentityM(ModelMatrix, 0); // Allocate a vertex buffer ByteBuffer vertexByteBuffer = ByteBuffer.AllocateDirect((GRID_RANGE_M * 2 + 1) * 4 * 3 * BYTES_PER_FLOAT); vertexByteBuffer.Order(ByteOrder.NativeOrder()); mVertexBuffer = vertexByteBuffer.AsFloatBuffer(); // Load the vertices for the z-axis grid lines into the vertex buffer for (int x = -GRID_RANGE_M; x <= GRID_RANGE_M; x++) { mVertexBuffer.Put(new float[] { x, -1.3f, (float)-GRID_RANGE_M }); mVertexBuffer.Put(new float[] { x, -1.3f, (float)GRID_RANGE_M }); } // Load the vertices for the x-axis grid lines into the vertex buffer for (int z = -GRID_RANGE_M; z <= GRID_RANGE_M; z++) { mVertexBuffer.Put(new float[] { (float)-GRID_RANGE_M, -1.3f, z }); mVertexBuffer.Put(new float[] { (float)GRID_RANGE_M, -1.3f, z }); } // Load the vertex and fragment shaders, then link the program int vertexShader = RenderUtils.loadShader(GLES20.GlVertexShader, sVertexShaderCode); int fragShader = RenderUtils.loadShader(GLES20.GlFragmentShader, sFragmentShaderCode); mProgram = GLES20.GlCreateProgram(); GLES20.GlAttachShader(mProgram, vertexShader); GLES20.GlAttachShader(mProgram, fragShader); GLES20.GlLinkProgram(mProgram); }
public PointCloud(int maxDepthPoints) { mAverageZ = 0; int vertexShader = RenderUtils.loadShader(GLES20.GlVertexShader, sVertexShaderCode); int fragShader = RenderUtils.loadShader(GLES20.GlFragmentShader, sFragmentShaderCode); mProgram = GLES20.GlCreateProgram(); GLES20.GlAttachShader(mProgram, vertexShader); GLES20.GlAttachShader(mProgram, fragShader); GLES20.GlLinkProgram(mProgram); Matrix.SetIdentityM(ModelMatrix, 0); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final int buffers[] = new int[1]; int[] buffers = new int[1]; GLES20.GlGenBuffers(1, buffers, 0); mVertexVBO = buffers[0]; }
public Trajectory(int lineWidth) { mLineWidth = lineWidth; // Reset the model matrix to the identity Matrix.SetIdentityM(ModelMatrix, 0); // Allocate a vertex buffer ByteBuffer vertexByteBuffer = ByteBuffer.AllocateDirect(MAX_VERTICES * BYTES_PER_FLOAT); vertexByteBuffer.Order(ByteOrder.NativeOrder()); mVertexBuffer = vertexByteBuffer.AsFloatBuffer(); // Load the vertex and fragment shaders, then link the program int vertexShader = RenderUtils.loadShader(GLES20.GlVertexShader, mVertexShaderCode); int fragShader = RenderUtils.loadShader(GLES20.GlFragmentShader, mFragmentShaderCode); mProgram = GLES20.GlCreateProgram(); GLES20.GlAttachShader(mProgram, vertexShader); GLES20.GlAttachShader(mProgram, fragShader); GLES20.GlLinkProgram(mProgram); }