0

Let's say I have 5 models that I am drawing (using the same shader program, different uniform values) in 5 draw calls.

What is faster?

A. Have 5 VBOs, one for each of the 5 draw calls.

B. Aggregate the VBOs into one larger buffer, and then 5 times, draw a specific sub-range from that.

In case it matters: models are small, and target is OpenGL-ES3.

Nicol Bolas
  • 449,505
  • 63
  • 781
  • 982
Bram
  • 7,440
  • 3
  • 52
  • 94
  • The rule of dump is "test both cases, better in several hardwares". As a rough estimation, if the driver does not need to change the memory it's reading from (one large buffer), it may be slightly faster. Anyhow, there are many other factors in speed-equation. – Ripi2 Jun 07 '18 at 16:25

1 Answers1

0

The better option would generally be "Aggregate the VBOs and make a single draw call". Draw calls are relatively expensive, so batching is often wise ...

solidpixel
  • 10,688
  • 1
  • 20
  • 33