Material Draw calls reducer

source: line: 226 GPU draw calls: ’ + api.count

The author doesn’t realize by moving the camera, the number of objects in frustum can change thus the number of draw calls.
For this kind of test, it’s best not to have camera control.

This mesh has 1074 faces and 2 materials. How the material index is applied, can change the number of calls. The "0 1 0 1 " button produces the most calls which is the total number of faces.

To get 20k calls click on "Add Mesh " button (duplicates mesh 19 times) and then the "0 1 0 1 " button.
You want more calls, edit the file and change for( var i = 1, mesh; i < 20; i++ ).
Warning: too high of draw calls and browser crash.

Video

Model MI.html (93.5 KB)

1 Like

so 20K calls and still 60 fps. looks like gpu does not care that much :sweat_smile:

1 Like

The amount of draw calls doesnt matter that much. If I only use a basic shader that fills every pixel with a solid color, my old crappy laptop can run 150k draw calls per frame without a sweat. If I write a gigantic complex shader, I can let my RTX 2080 Ti choke on a single draw call. It all depends what kind of shaders you’re using on your meshes.

Top row at 2 draw calls
Bottom row at 21k draw calls

FireFox 91 not doing as well as Chrome 92. Almost 1/3.

Summary

Summary