---
name: "al_draw_indexed_buffer"
section: "3alleg5"
platform: "linux"
package: "allegro5-doc"
version: "2:5.2.10.1+dfsg-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/al_draw_indexed_buffer/3alleg5"
---

# al\_draw\_indexed\_buffer(3alleg5)

Allegro 5 API

## NAME

al\_draw\_indexed\_buffer - Allegro 5 API

## SYNOPSIS

-

  ```
  #include <allegro5/allegro_primitives.h>
  int al_draw_indexed_buffer(ALLEGRO_VERTEX_BUFFER* vertex_buffer,
     ALLEGRO_BITMAP* texture, ALLEGRO_INDEX_BUFFER* index_buffer,
     int start, int end, int type)
  ```

## DESCRIPTION

Draws a subset of the passed vertex buffer. This function uses an index buffer to specify which vertices to use. Both buffers must not be locked. Additionally, to draw onto memory bitmaps or with memory bitmap textures both buffers must support reading (i.e. they must be created with the `ALLEGRO_PRIM_BUFFER_READWRITE`).

*Parameters:*

- •

  vertex\_buffer - Vertex buffer to draw

- •

  texture - Texture to use, pass NULL to use only color shaded primitves

- •

  index\_buffer - Index buffer to use

- •

  start - Start index of the subset of the index buffer to draw

- •

  end - One past the last index of the subset of the index buffer to draw

- •

  type - A member of the ALLEGRO\_PRIM\_TYPE(3alleg5) enumeration, specifying what kind of primitive to draw. Note that ALLEGRO\_PRIM\_LINE\_LOOP and ALLEGRO\_PRIM\_POINT\_LIST are not supported.

*Returns:* Number of primitives drawn

## SINCE

5\.1.8

## SEE ALSO

ALLEGRO\_VERTEX\_BUFFER(3alleg5), ALLEGRO\_INDEX\_BUFFER(3alleg5), ALLEGRO\_PRIM\_TYPE(3alleg5)
