Opentk/Source/Bind/Specifications/Docs/glScissorIndexed.xml

137 lines
6.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
"http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glScissorIndexed">
<refmeta>
<refmetainfo>
<copyright>
<year>2010</year>
<holder>Khronos Group</holder>
</copyright>
</refmetainfo>
<refentrytitle>glScissorIndexed</refentrytitle>
<manvolnum>3G</manvolnum>
</refmeta>
<refnamediv>
<refname>glScissorIndexed</refname>
<refpurpose>define the scissor box for a specific viewport</refpurpose>
</refnamediv>
<refsynopsisdiv><title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glScissorIndexed</function></funcdef>
<paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>GLint <parameter>left</parameter></paramdef>
<paramdef>GLint <parameter>bottom</parameter></paramdef>
<paramdef>GLsizei <parameter>width</parameter></paramdef>
<paramdef>GLsizei <parameter>height</parameter></paramdef>
</funcprototype>
<funcprototype>
<funcdef>void <function>glScissorIndexedv</function></funcdef>
<paramdef>GLuint <parameter>index</parameter></paramdef>
<paramdef>const GLint *<parameter>v</parameter></paramdef>
= </funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title>
<variablelist>
<varlistentry>
<term><parameter>index</parameter></term>
<listitem>
<para>
Specifies the index of the viewport whose scissor box to modify.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>left</parameter></term>
<term><parameter>bottom</parameter></term>
<listitem>
<para>
Specify the coordinate of the bottom left corner of the scissor box, in pixels.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>width</parameter></term>
<term><parameter>height</parameter></term>
<listitem>
<para>
Specify ths dimensions of the scissor box, in pixels.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>v</parameter></term>
<listitem>
<para>
For <function>glScissorIndexedv</function>, specifies the address of an array containing the left, bottom, width and height of each
scissor box, in that order.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 id="description"><title>Description</title>
<para>
<function>glScissorIndexed</function> defines the scissor box for a specified viewport.
<parameter>index</parameter> specifies the index of scissor box to modify.
<parameter>index</parameter> must be less than the value of <constant>GL_MAX_VIEWPORTS</constant>.
For <function>glScissorIndexed</function>, <parameter>left</parameter>, <parameter>bottom</parameter>,
<parameter>width</parameter> and <parameter>height</parameter> specify the left, bottom, width
and height of the scissor box, in pixels, respectively.
For <function>glScissorIndexedv</function>, <parameter>v</parameter> specifies the address of an
array containing integers specifying the lower left corner of the scissor box, and the width and
height of the scissor box, in that order.
</para>
<para>
To enable and disable the scissor test, call
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry> and <citerefentry><refentrytitle>glDisable</refentrytitle></citerefentry> with argument
<constant>GL_SCISSOR_TEST</constant>. The test is initially disabled for all viewports.
While the test is enabled, only pixels that lie within the scissor box
can be modified by drawing commands.
Window coordinates have integer values at the shared corners of
frame buffer pixels.
<code>glScissor(0,0,1,1)</code> allows modification of only the lower left
pixel in the window, and <code>glScissor(0,0,0,0)</code> doesn't allow
modification of any pixels in the window.
</para>
<para>
When the scissor test is disabled,
it is as though the scissor box includes the entire window.
</para>
</refsect1>
<refsect1 id="errors"><title>Errors</title>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater than or equal to
the value of <constant>GL_MAX_VIEWPORTS</constant>.
</para>
<para>
<constant>GL_INVALID_VALUE</constant> is generated if any width or height specified in the array <parameter>v</parameter> is negative.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title>
<para>
<citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_SCISSOR_BOX</constant>
</para>
<para>
<citerefentry><refentrytitle>glIsEnabled</refentrytitle></citerefentry> with argument <constant>GL_SCISSOR_TEST</constant>
</para>
</refsect1>
<refsect1 id="seealso"><title>See Also</title>
<para>
<citerefentry><refentrytitle>glEnable</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glScissor</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glScissorArray</refentrytitle></citerefentry>
</para>
</refsect1>
<refsect1 id="Copyright"><title>Copyright</title>
<para>
Copyright <trademark class="copyright"></trademark> 2010 Khronos Group.
This material may be distributed subject to the terms and conditions set forth in
the Open Publication License, v 1.0, 8 June 1999.
<ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.
</para>
</refsect1>
</refentry>