pub fn render_surface<R>( buffer: Buffer, render: impl FnOnce(&mut Buffer, &mut DrawContext<'_>) -> R, ) -> Buffer