Jump to content

  • Log In with Google      Sign In   
  • Create Account


Member Since 23 Jan 2006
Offline Last Active Dec 07 2013 12:40 PM

Topics I've Started

Elementacular - Real-time volumetric cloud and rock creation

26 November 2013 - 01:48 PM

We have just released some videos showcasing our upcoming plugin for Autodesk Maya.


The project partners has undertaken the task of developing plug-ins for off-the-shelf visual effects software using state-of-the-art technology in physical-based rendering and procedural content generation - instead of the parameters-based simulation that is heavily used in the industry today. By using a high-quality real-time raymarcher coupled with a strong procedural core we are able to deliver a platform where the artist can directly manipulate the end result - All in real-time.


We call this concept "Result-oriented design".


Come take a look at how the tool is used and how you can take part in the beta starting out soon.




This was all made possible only using cutting edge OpenGL / GLSL programming. Please take your time to leave us some feedback.






GPU voxelization - Conservative rasterization issue.

27 December 2012 - 01:59 PM

While implementing the technique outlined in Crassins / Greens work found in OpenGL insights I've run into some issues.


To get proper voxel coverage I need to dilate the triangles before they are sent off to rasterization. As written in the article they are using an older technique found in GPU Gems 2 on conservative rasterization.


My issue is that the my geometry shader projects the triangles using orthographic projections where the conservative rasterization technique only works when using perspective. As far as I can tell.


Anyone here had any experience with implementing the technique? And if so please help me out here.


Event handling - Lifetime management

18 November 2012 - 03:00 PM

Been looking into introducing delegates in my code base and I've run into some lifetime problems I was hoping to get solved.
Currently I'm using fastdelegates for my dispatching.

My problem is the following:

- Object A can raise an event (It contains a delegate)
- Object B registers a method to the delegate in A.
- Object A raises an event and method gets called in B.

Now this can go wrong in two ways:

- Object B is killed and A tried to raise the event. Crash. This is easily solved by making B unregister from A when it dies.
- Object A is killed and B is killed. When B is killed it tries to unregister from A which is no longer there!

The second is giving me problems and I was hoping someone could point me to a proper solution.

AMD / ATI cards - Clearing volume texture

26 August 2011 - 05:29 AM

I've been implementing the SSLPV method using a ATI/AMD graphicscard, but I'm having some issues clearing a volume texture.

Whenever I try it ends up clearing only the selected layer and I cannot find a way to clear the entire texture. Is this, like on Nvidia hardware, even possible? If so please enlighten me on how.

The way I normally do it on Nvidia hardware is to bind a texture to a framebuffer object using "glFramebufferTexture" instead of explicitly targeting a layer using "glFramebufferTexture3D / Layered".

Z-prepass issues

17 June 2011 - 03:21 PM

I'm having some issues getting z-prepass working in OpenGL. For some reason I cannot avoid getting z-fighting issues on the shading pass.

I perform the prepass as following:

z-prepass pass:
- Disable colormask
- Enable depth test
- Depth func lessEq
- Enable depth mask

Shading pass:
- Enable colormask
- Enable depth test
- Depth func lessEq
- Enable depth mask

Posted Image

Any ideas on what I'm doing wrong?