Marcel Stockli

  • Content count

  • Joined

  • Last visited

Community Reputation

167 Neutral

About Marcel Stockli

  • Rank
  1. Hi, I am trying to "port" my game engine/videogame on an Intel HD 4000, almost everything is working but it crash when I load the third level map. I am using gDEBugger and it says that the game never exceeds 200 mb but when it crash I get the "Out of memory" message in gDEBugger.   Is there a way to query the video memory with opengl and Intel HD 4000? I can get the used video memory with a Nvidia and ATI card but I can't find a way to do it with an Intel (and I don't know if the gDebugger memory measure is correct).   Is there another reason to get "Out of memory" if my program is not exceeding the video memory limit?   Thanks
  2. LogLUV conversion now working

    No problem! Cool you fixed it, that kind of errors are very annoying.
  3. Reconstructing World Position from Depth

    You can use both (far and near plane), but you need to transform the depth in a different way for each one. If CameraRay is a normalized vector then you can use any one.       vec3 WorldPosition = CameraPosition + ( CameraRay * (LinearDepth*ViewClipFar ) ) ;   You have (LinearDepth*ViewClipFar ) so I think LinearDepth is in [0,1] and (LinearDepth*ViewClipFar ) should be in [0,ViewClipFar], then CameraRay needs to be a normalized vector. (I don't know if it is)   Did you checked if FrustumPoints are correct? You can also unproject them if you have the model matrix and projection matrix (an easy way to do it
  4. LogLUV conversion now working

    Did you checked the matrix order? (row major, column major). Your matrix constructor should have the same order than the HLSL Matrix constructor because the code you are usin, originally was HLSL. The same with the vector-matrix multiplication.
  5. Reconstructing World Position from Depth

    Hi Davidtse, your scene is projected on the near quad but you are computing the far quad: FrustumPoints[0] = cml::normalize(FarCenterPosition - Right*(FarWidth/2) - Up*(FarHeight/2)); FrustumPoints[1] = cml::normalize(FarCenterPosition - Right*(FarWidth/2) + Up*(FarHeight/2)); FrustumPoints[2] = cml::normalize(FarCenterPosition + Right*(FarWidth/2) - Up*(FarHeight/2)); FrustumPoints[3] = cml::normalize(FarCenterPosition + Right*(FarWidth/2) + Up*(FarHeight/2)); It should be:     FrustumPoints[0] = cml::normalize(NearCenterPosition - Right*(NearWidth/2) - Up*(NearHeight/2)); FrustumPoints[1] = cml::normalize(NearCenterPosition- Right*(NearWidth/2) + Up*(NearHeight/2)); FrustumPoints[2] = cml::normalize(NearCenterPosition+ Right*(NearWidth/2) - Up*(NearHeight/2)); FrustumPoints[3] = cml::normalize(NearCenterPosition+ Right*(NearWidth/2) + Up*(NearHeight/2));   I am not sure if you have more errors but this one is an important error, don't forget to add the cameraPosition at the end (not substract).
  6. Hi all! I just started to write in a blog about my work in Attractio (our game), this is my first post, it is about my work with the Attractio Walls.  It use some POM and deferred terms.   Feedbacks are highly welcomed!       About GameCoder Studios. We are 3 B.C.S students trying to finish our game before finish the school. We developed an engine (GC Engine) first and now we are developing Attractio our first videogame with GC Engine . Attractio is almost complete so we´ll try to release it in the first half of this year.    
  7. Help: Blending issue

    Hi all, I am trying to recover a particle system that I programmed some time ago. The main difference between "some time ago" and "now" in my engine is that now I render all transparent objects in a different buffer. This buffer is a multi render target (2 buffers) of 64 bits per pixel each buffer. I do this because I use one buffer for color and the another one for displacement. I have an issue with the blending, I use the standar blending new*alfa+old*(1-alfa) (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA) and with 30,000 particles I have this: [img][/img] The expected result should be be different, something like this: [img][/img] This pictures has only 1,000 particles because I use new+old blending (GL_ONE,GL_ONE) for this screenshot. It's only to exemplify the expected result, but of course is wrong, with more particles everything will become white. Any idea of why I am getting this behavior with GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA? I am not sure if the problem is the multi render target or the 64 bits buffers. Thanks