~ubuntu-branches/ubuntu/precise/mesa/precise-updates

« back to all changes in this revision

Viewing changes to src/gallium/docs/source/cso/velems.rst

  • Committer: Package Import Robot
  • Author(s): Robert Hooker
  • Date: 2012-02-02 12:05:48 UTC
  • mfrom: (1.7.1) (3.3.27 sid)
  • Revision ID: package-import@ubuntu.com-20120202120548-nvkma85jq0h4coix
Tags: 8.0~rc2-0ubuntu4
Drop drisearchdir handling, it is no longer needed with multiarch
and dri-alternates being removed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
.. _vertexelements:
 
2
 
 
3
Vertex Elements
 
4
===============
 
5
 
 
6
This state controls the format of the input attributes contained in
 
7
pipe_vertex_buffers. There is one pipe_vertex_element array member for each
 
8
input attribute.
 
9
 
 
10
Input Formats
 
11
-------------
 
12
 
 
13
Gallium supports a diverse range of formats for vertex data. Drivers are
 
14
guaranteed to support 32-bit floating-point vectors of one to four components.
 
15
Additionally, they may support the following formats:
 
16
 
 
17
* Integers, signed or unsigned, normalized or non-normalized, 8, 16, or 32
 
18
  bits wide
 
19
* Floating-point, 16, 32, or 64 bits wide
 
20
 
 
21
At this time, support for varied vertex data formats is limited by driver
 
22
deficiencies. It is planned to support a single uniform set of formats for all
 
23
Gallium drivers at some point.
 
24
 
 
25
Rather than attempt to specify every small nuance of behavior, Gallium uses a
 
26
very simple set of rules for padding out unspecified components. If an input
 
27
uses less than four components, it will be padded out with the constant vector
 
28
``(0, 0, 0, 1)``.
 
29
 
 
30
Fog, point size, the facing bit, and edgeflags, all are in the standard format
 
31
of ``(x, 0, 0, 1)``, and so only the first component of those inputs is used.
 
32
 
 
33
Position
 
34
%%%%%%%%
 
35
 
 
36
Vertex position may be specified with two to four components. Using less than
 
37
two components is not allowed.
 
38
 
 
39
Colors
 
40
%%%%%%
 
41
 
 
42
Colors, both front- and back-facing, may omit the alpha component, only using
 
43
three components. Using less than three components is not allowed.
 
44
 
 
45
Members
 
46
-------
 
47
 
 
48
src_offset
 
49
    The byte offset of the attribute in the buffer given by
 
50
    vertex_buffer_index for the first vertex.
 
51
instance_divisor
 
52
    The instance data rate divisor, used for instancing.
 
53
    0 means this is per-vertex data, n means per-instance data used for
 
54
    n consecutive instances (n > 0).
 
55
vertex_buffer_index
 
56
    The vertex buffer this attribute lives in. Several attributes may
 
57
    live in the same vertex buffer.
 
58
src_format
 
59
    The format of the attribute data. One of the PIPE_FORMAT tokens.