Jump to content
  • Advertisement

Misiu

Member
  • Content count

    19
  • Joined

  • Last visited

Community Reputation

152 Neutral

About Misiu

  • Rank
    Member
  1. seems like I’ve made some progress, I was rendering without buffers in gles, seems like I cant do that in gl.   thanks for your help all.
  2.   yes nothing from glGetProgramInfoLog.       color = Vector4f(1.0f, 1.0f, 1.0f, 1.0f);   yes those read and set the location of the Uniforms   and heres the locations set for the attributes. shader = Resource::Instance()->GetAssetShader(L"textureshader"); shader->BindAttribLocation(0, "vPosition"); shader->BindAttribLocation(1, "vTexCoord"); shader->Link();
  3. opengl logs dont show any shader errors, ive made changes but still nothing. #version 410 in vec4 vPosition; in vec2 vTexCoord; out vec2 fTexCoord; uniform mat4 mpv; uniform vec4 color; void main() { gl_Position = vPosition * mpv; fTexCoord = vTexCoord; } #version 410 //precision mediump float; in vec2 fTexCoord; out vec4 output_color; uniform sampler2D intexture; uniform vec4 color; void main() { output_color = (texture(intexture, fTexCoord) * color).rgba; } thanks.
  4. I'm trying to port a game of mine from android to the pc(linux), the following code is used to draw a 2d sprite, and works in android,   this is the render code, shader is a wrapper class for shader handling. GLfloat verts[] = { position.x, position.y + size.y, 0.0f, src.left, src.bottom, position.x, position.y, 0.0f, src.left, src.top, position.x + size.x, position.y + size.y, 0.0f, src.right, src.bottom, position.x + size.x, position.y, 0.0f, src.right, src.top }; GLushort indices[] = {0, 2, 1, 1, 2, 3}; Matrix4f p; if(rotation != 0.0f) { Matrix4f rotmat, trans; trans.Translate(Vector3f(-rotpos.x, -rotpos.y, 0.0f)); rotmat.RotationZ(RAD(rotation)); rotmat = trans * rotmat; trans.Translate(Vector3f(rotpos.x, rotpos.y, 0.0f)); p = trans * rotmat; } Matrix4f mpv = Graphics::GetOrtho(); p = mpv * p; shader->Use(); int loc = shader->GetUniformLocation("intexture"); texture->Use(); shader->Uniform1i(loc, 0); loc = shader->GetUniformLocation("mpv"); shader->UniformMatrix(loc, p); loc = shader->GetUniformLocation("color"); shader->UniformVec4(loc, color); glBindBuffer(GL_ARRAY_BUFFER, 0); glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); glEnableVertexAttribArray(0); glEnableVertexAttribArray(1); glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, sizeof(float) * 5, verts); glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, sizeof(float) * 5, &verts[3]); glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_SHORT, indices); vertex shader #version 410 attribute vec4 vPosition; attribute vec2 vTexCoord; varying vec2 fTexCoord; uniform mat4 mpv; uniform vec4 color; void main() { gl_Position = vPosition * mpv; fTexCoord = vTexCoord; } fragment shader #version 410 //precision mediump float; varying vec2 fTexCoord; uniform sampler2D intexture; uniform vec4 color; void main() { gl_FragColor = texture2D(intexture, fTexCoord) * color; } Any help would be gratefull. Thanks.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!