• Content count

  • Joined

  • Last visited

Community Reputation

131 Neutral

About Blessed

  • Rank
  1. For posterity, I found the problem. It was in the frustum setup. I have set the near plane to 0.001f and far to 10000.0f which caused some rounding errors probably. Changing the near plane to 10.0f eliminated the  problem.   Thanks!
  2.   Thanks for your reply!   If I understand it properly z-fighting takes place whenever the z values of the vertices are very close, but in my case the weird thing is that they are very well separated. Please explain me this if I'm wrong.   As per the depth test I call:     glEnable(GL_DEPTH_TEST);     glDepthFunc(GL_LEQUAL);   The EGL initialization is as follows: EGLint numConfigs = 1; EGLint eglConfigList[] = { EGL_RED_SIZE, 8, EGL_GREEN_SIZE, 8, EGL_BLUE_SIZE, 8, EGL_ALPHA_SIZE, 0, EGL_DEPTH_SIZE, 8, EGL_SURFACE_TYPE, EGL_WINDOW_BIT, EGL_RENDERABLE_TYPE, EGL_OPENGL_ES2_BIT, EGL_NONE } ; EGLint eglContextList[] = { EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE } ; eglBindAPI(EGL_OPENGL_ES_API); m_Display = eglGetDisplay((EGLNativeDisplayType)EGL_DEFAULT_DISPLAY); if (m_Display == EGL_NO_DISPLAY) return -1; if (eglInitialize(m_Display, null, null) != EGL_TRUE) return -1; if (eglChooseConfig(m_Display, eglConfigList, &m_eglConfig, 1, &numConfigs) != EGL_TRUE) return -1; if ((m_eglSurface = eglCreateWindowSurface(m_Display, m_eglConfig, (EGLNativeWindowType)m_pForm, null)) == EGL_NO_SURFACE) return -1; if ((m_eglContext = eglCreateContext(m_Display, m_eglConfig, EGL_NO_CONTEXT, eglContextList)) == EGL_NO_CONTEXT) return -1; if (eglMakeCurrent(m_Display, m_eglSurface, m_eglSurface, m_eglContext) != EGL_TRUE) return -1; return 0; Shouldn't this be enough?
  3. Hi everyone,   Recently I've been working on a page curl effect in Opengl ES 2.0 for embedded systems. I've been able to write the model and surface deformation algorithm properly, but I have problems with rendering it with a texture. I have attached three screenshots showing exactly the problem I get when rendering the curl at certain angles of the deformation cylinder (yes, the page is deformed around a cylinder). The problem is that if the angle of the cylinder is higher than PI / 2 the texture renders all perfectly, but if it's smaller I get some transparent stripes which you can see through and if you make the angle even smaller the whole bended surface seems to be transparent for the page behind.   I have checked if it's not a problem of the mathematical model (the surface crossing itself), but it's not. I have also disabled face culling and alpha blending in this case and I'm out of ideas what can be wrong. I would be very grateful if somebody gave me a hint where to start from.   The vertex shader I use is very simple:   uniform mat4 uPositionMatrix; uniform mat4 uMV; attribute vec4 aPosition; attribute vec2 aTextureCoord; varying vec4 vTextureCoord; void main() { vTextureCoord = aTextureCoord; gl_Position = uPositionMatrix * aPosition; } Fragment shader (basic one): // Fragment shader program precision highp float; varying vec2 vTextureCoord; uniform sampler2D sTexture; void main (void) { gl_FragColor = texture2D(sTexture, vTextureCoord); } I know I didn't give you a lot of details, but as I don't know where to start from I'll wait for any questions for more details.   Thanks in advance! [attachment=17955:Screen-20130920154606519612.jpg] [attachment=17956:Screen-20130920154613617023.jpg] [attachment=17957:Screen-20130920154618177095.jpg]
  4. Hey! Thanks for your really good help and answer. Now the balls dont overlapp each other and this problem is gone. But the method you gave me for collision response acts like it didn't conserve momentum. And that's not what I'm trying to achieve. After some time the balls just slow down, and it looks like kinetic energy would get lost somewhere. Is it because of the coefficient of restitution? If i set it to zero then the balls don't respond to the collision. But the bigger it is the faster the balls are loosing on speed. Oh and in addition i was rather trying to make the answer being mass dependent. Once again thank you, coz you were a great help for me! If you would just give me an answer to the second question then i would be grateful. This is my method which i was using before you answered me EDIT: I have worked it out! Now my problem is solved. Than you for your precious help. [Edited by - Blessed on June 11, 2008 11:12:11 AM]
  5. Hello Everyone! I know this topic can get boring, but there's just another guy, who can't handle these ball to ball collisions and he's pretty desperate in finding help. I've written an app in Java which was suposed to simulate ellastic collision, but I've stumped upon a problem. I tried to read a lot about collisions and so on and I know, that I need to separate two balls during collision, but that's where I get lost. I think I somehow understand what's needed to make this simulation look realistic, but I just can't find a good way to implement it. I have problems mostly with my separate method (I'll just add my source code, so everyone who's willing to help me, can see it from inside). In this method I check if two balls are colliding, I check if distance between them is smaller than their radius sum. If it is, than there is a collision and in addition they are overlapping (do I get it right?). After this collision check I try to separate them in such way: pos1 -= vel1 * dt pos2 -= vel2 * dt. And I don't know why, but it doesn't seem to behave as it should. The rest of you can see it running, I've uploaded it here: The source code is included in this jar file. And for people who have seen my app running - yes I know there is this ball, which is beeing omitted in calculations, but I'm not doing anything with it until I'm done with my separation. All your help is so much welcome! Big thanks in advance! PS. If This post is a dumb one, violates the rules, or somethin, then just please delete it and accept my apology. Regards! [Edited by - Blessed on June 11, 2008 11:02:31 AM]