element buffer == index buffer.
different names in different apis.
the general rule is to have as few 'draw calls' (whatever that is in your api) as is possible.
like glDrawArrays or glDrawElements etc.
this means that any texture, vbo, or uniform changes will be separate batches, but nothing else should be.
'temporal coherance' means algorithms that depend upon things that don't change very much with time. pvs is an example - you can easily cache the ebos from one frame to the next, so long as the view leaf does not change.
you can usually get away with using the previous frame's pvs until the ebo for the current view leaf has been generated. such cases are temporally incoherant, and that's fine because it only lasts for a single frame and you probably used quake's fatpvs thing anyway.
different names in different apis.
the general rule is to have as few 'draw calls' (whatever that is in your api) as is possible.
like glDrawArrays or glDrawElements etc.
this means that any texture, vbo, or uniform changes will be separate batches, but nothing else should be.
'temporal coherance' means algorithms that depend upon things that don't change very much with time. pvs is an example - you can easily cache the ebos from one frame to the next, so long as the view leaf does not change.
you can usually get away with using the previous frame's pvs until the ebo for the current view leaf has been generated. such cases are temporally incoherant, and that's fine because it only lasts for a single frame and you probably used quake's fatpvs thing anyway.
Comment