Opentk/Source/Bind/Specifications/Docs/glFramebufferParameteri.xml
Stefanos A 60f971ffed Updated to the latest gl4 specs and docs
Large code-drop from Khronos upstream.
2013-11-03 12:43:50 +01:00

180 lines
9.8 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="glFramebufferParameteri">
<refentryinfo>
<copyright>
<year>2013</year>
<holder>Khronos Group</holder>
</copyright>
</refentryinfo>
<refmeta>
<refentrytitle>glFramebufferParameteri</refentrytitle>
<manvolnum>3G</manvolnum>
</refmeta>
<refnamediv>
<refname>glFramebufferParameteri</refname>
<refpurpose>set a named parameter of a framebuffer</refpurpose>
</refnamediv>
<refsynopsisdiv><title>C Specification</title>
<funcsynopsis>
<funcprototype>
<funcdef>void <function>glFramebufferParameteri</function></funcdef>
<paramdef>GLenum <parameter>target</parameter></paramdef>
<paramdef>GLenum <parameter>pname</parameter></paramdef>
<paramdef>GLint <parameter>param</parameter></paramdef>
</funcprototype>
</funcsynopsis>
</refsynopsisdiv>
<refsect1 id="parameters"><title>Parameters</title>
<variablelist>
<varlistentry>
<term><parameter>target</parameter></term>
<listitem>
<para>
The target of the operation, which must be <constant>GL_READ_FRAMEBUFFER</constant>,
<constant>GL_DRAW_FRAMEBUFFER</constant> or <constant>GL_FRAMEBUFFER</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>pname</parameter></term>
<listitem>
<para>
A token indicating the parameter to be modified.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>param</parameter></term>
<listitem>
<para>
The new value for the parameter named <parameter>pname</parameter>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 id="description"><title>Description</title>
<para>
<function>glFramebufferParameteri</function> modifies the current value of the parameter
named <parameter>pname</parameter> in the framebuffer bound to <parameter>target</parameter>.
<parameter>target</parameter> must be <constant>GL_READ_FRAMEBFUFFER</constant>,
<constant>GL_DRAW_FRAMEBUFFER</constant> or <constant>GL_FRAMEBUFFER</constant>. The
token <constant>GL_FRAMEBUFFER</constant> is treated as <constant>GL_DRAW_FRAMEBUFFER</constant>.
A non-default framebuffer must be bound to <parameter>target</parameter>.
</para>
<para>
<parameter>pname</parameter> specifies the parameter to be modified. The following symbols
are accepted in <parameter>pname</parameter>:
</para>
<variablelist>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_DEFAULT_WIDTH</constant></term>
<listitem>
<para>
<parameter>param</parameter> specifies the assumed with for a framebuffer object with no attachments. If a
framebuffer has attachments then the width of those attachments is used, otherwise
the value of <constant>GL_FRAMEBUFFER_DEFAULT_WIDTH</constant> is used for the
framebuffer. <parameter>param</parameter> must be greater than or equal to zero and less than
or equal to the value of <constant>GL_MAX_FRAMEBUFFER_WIDTH</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_DEFAULT_HEIGHT</constant></term>
<listitem>
<para>
<parameter>param</parameter> specifies the assumed height for a framebuffer object with no attachments. If a
framebuffer has attachments then the height of those attachments is used, otherwise
the value of <constant>GL_FRAMEBUFFER_DEFAULT_HEIGHT</constant> is used for the
framebuffer. <parameter>param</parameter> must be greater than or equal to zero and less than
or equal to the value of <constant>GL_MAX_FRAMEBUFFER_HEIGHT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_DEFAULT_LAYERS</constant></term>
<listitem>
<para>
<parameter>param</parameter> specifies the assumed number of layers for a framebuffer object with no attachments. If a
framebuffer has attachments then the layer count of those attachments is used, otherwise
the value of <constant>GL_FRAMEBUFFER_DEFAULT_LAYERS</constant> is used for the
framebuffer. <parameter>param</parameter> must be greater than or equal to zero and less than
or equal to the value of <constant>GL_MAX_FRAMEBUFFER_LAYERS</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_DEFAULT_SAMPLES</constant></term>
<listitem>
<para>
<parameter>param</parameter> specifies the assumed number of samples in a framebuffer object with no attachments. If a
framebuffer has attachments then the sample count of those attachments is used, otherwise
the value of <constant>GL_FRAMEBUFFER_DEFAULT_SAMPLES</constant> is used for the
framebuffer. <parameter>param</parameter> must be greater than or equal to zero and less than
or equal to the value of <constant>GL_MAX_FRAMEBUFFER_SAMPLE</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS</constant></term>
<listitem>
<para>
<parameter>param</parameter> specifies whether the framebuffer should assume identical sample locations and
the same number of samples for all texels in the virtual image. If <parameter>param</parameter> is zero,
then the implementation may vary the position or the count of samples within the virtual image from
pixel to pixel, otherwise it will use the same sample position and count for all pixels in the virtual image.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 id="errors"><title>Errors</title>
<para>
<constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not one of the accepted
framebuffer targets.
</para>
<para>
<constant>GL_INVAILD_VALUE</constant> is generated if <parameter>pname</parameter> is <constant>GL_FRAMEBUFFER_DEFAULT_WIDTH</constant>
and <parameter>param</parameter> is less than zero or greater than the value of <constant>GL_MAX_FRAMEBUFFER_WIDTH</constant>.
</para>
<para>
<constant>GL_INVAILD_VALUE</constant> is generated if <parameter>pname</parameter> is <constant>GL_FRAMEBUFFER_DEFAULT_HEIGHT</constant>
and <parameter>param</parameter> is less than zero or greater than the value of <constant>GL_MAX_FRAMEBUFFER_HEIGHT</constant>.
</para>
<para>
<constant>GL_INVAILD_VALUE</constant> is generated if <parameter>pname</parameter> is <constant>GL_FRAMEBUFFER_DEFAULT_LAYERS</constant>
and <parameter>param</parameter> is less than zero or greater than the value of <constant>GL_MAX_FRAMEBUFFER_LAYERS</constant>.
</para>
<para>
<constant>GL_INVAILD_VALUE</constant> is generated if <parameter>pname</parameter> is <constant>GL_FRAMEBUFFER_DEFAULT_SAMPLES</constant>
and <parameter>param</parameter> is less than zero or greater than the value of <constant>GL_MAX_FRAMEBUFFER_SAMPLES</constant>.
</para>
<para>
<constant>GL_INVALID_OPERATION</constant> is generated if the default framebuffer is bound to <parameter>target</parameter>.
</para>
</refsect1>
<refsect1 id="associatedgets"><title>Associated Gets</title>
<para>
<citerefentry><refentrytitle>glGetFramebufferParameteriv</refentrytitle></citerefentry>.
</para>
</refsect1>
<refsect1 id="seealso"><title>See Also</title>
<para>
<citerefentry><refentrytitle>glVertexAttribBinding</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glVertexAttribFormat</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glVertexAttribPointer</refentrytitle></citerefentry>,
<citerefentry><refentrytitle>glVertexBindingDivisor</refentrytitle></citerefentry>.
</para>
</refsect1>
<refsect1 id="Copyright"><title>Copyright</title>
<para>
Copyright <trademark class="copyright"></trademark> 2013 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>