renderbuffer: base implementation