code: function create( gl, opts ){
    // create a basic Fbo and replace his attachment by extended one
    var fbo = new Fbo( gl, opts );
    if( fbo.attachment.flags & 1 ) {
      var att = fbo.attachment;
      fbo.attachment = new DepthStencilAttachment( fbo, fbo.attachment.flags | T_FLAG );
      att.dispose();
    }
    return fbo;
  }
docs: Create a classic nanogl Fbo, with depth texture as depth attachment, take same param as Nanogl Fbo.
  If opts.depth  is false Fbo is untouched
  @param {WebGLRenderingContext} gl      the webgl context this Fbo belongs to
  @param {Object} [opts]
  @param {boolean} [opts.depth=false] if true, a depth renderbuffer is attached
  @param {boolean} [opts.stencil=false] if true, a stencil renderbuffer is attached
  @param {GLenum|GLenum[]} [opts.type=GL_UNSIGNED_BYTE] the pixel type of the Fbo, can be gl.UNSIGNED_BYTE, gl.FLOAT, half.HALF_FLOAT_OES etc. you can also provide an array of types used as cascaded fallbacks
  @param {GLenum} [opts.format=GL_RGB] the internal pixel format.