The render function should be reformatted to render the in the following order: DrawOpague DrawTransparent DrawrParticles DrawSkybox Each of these can be split out of the main DrawScene function.