<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>

<!--This is an automatically generated file. DO NOT EDIT THIS FILE DIRECTLY. Rather, use the _ref.xml files found in the 'edits' folder.-->
<c74object name="jit.gl.cubemap" module="jit" category="Jitter OpenGL">
	<digest>
		Manage a cubemap texture target
	</digest>
	<description>
		Maintains a cubemap texture target in an OpenGL context. It has 6 inputs -- one for each face of the cube. Cubemaps are typically used to map an environment for material effects such as reflection and refraction.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Jitter
		</metadata>
		<metadata name="tag">
			Jitter OpenGL
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				Positive X Matrix
			</digest>
			<description>
				Sets the cube face on the positive X side of the cube.
			</description>
		</inlet>
		<inlet id="1" type="INLET_TYPE">
			<digest>
				Negative X Matrix
			</digest>
			<description>
				Sets the cube face on the negative X side of the cube.
			</description>
		</inlet>
		<inlet id="2" type="INLET_TYPE">
			<digest>
				Positive Y Matrix
			</digest>
			<description>
				Sets the cube face on the positive Y side of the cube.
			</description>
		</inlet>
		<inlet id="3" type="INLET_TYPE">
			<digest>
				Negative Y Matrix
			</digest>
			<description>
				Sets the cube face on the negative Y side of the cube.
			</description>
		</inlet>
		<inlet id="4" type="INLET_TYPE">
			<digest>
				Positive Z Matrix
			</digest>
			<description>
				Sets the cube face on the positive Z side of the cube.
			</description>
		</inlet>
		<inlet id="5" type="INLET_TYPE">
			<digest>
				Negative Z Matrix
			</digest>
			<description>
				Sets the cube face on the negative Z side of the cube.
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				matrix output if enabled
			</digest>
			<description>
				This outlet is not used by <o>jit.gl.cubemap</o> 
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				dumpout
			</digest>
			<description>
				Outputs the results of 'get' messages.
			</description>
		</outlet>
	</outletlist>
	<objarglist>
		<objarg name="OBJARG_NAME" optional="0" type="OBJARG_TYPE">
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</objarg>
	</objarglist>
	<!--OB3D-->
	<OB3D />
	<!--MESSAGES-->
	<methodlist>
		<method name="bind">
			<arglist />
			<digest>
				Bind cubemap to texture geometry
			</digest>
			<description>
				Sets binding of the cubemap to texture geometry.
			</description>
		</method>
		<method name="panorama_matrix">
			<arglist />
			<digest>
				Load a panorama formatted matrix
			</digest>
			<description>
				Load a matrix formatted in a cross shape containing every face of the cubemap. The panorama matrix layout is a cross shape holding the 6 faces of the cube.  The faces are in a 4x3 grid where the rows are formatted as follows:
				<ol>
					<li>
						** py ** **
					</li>
					<li>
						nx pz px nz
					</li>
					<li>
						** ny ** **
					</li>
				</ol>
			</description>
		</method>
		<method name="read">
			<arglist />
			<digest>
				Read in a panorama formatted image file.
			</digest>
			<description>
				TEXT_HERE
			</description>
		</method>
		<method name="unbind">
			<arglist />
			<digest>
				Unbind the cubemap
			</digest>
			<description>
				Unbinds the cubemap after a bind operation.
			</description>
		</method>
	</methodlist>
	<jittermethodlist>
		<jittermethod name="bang" />
		<jittermethod name="anim_grow" />
		<jittermethod name="anim_move" />
		<jittermethod name="anim_reset" />
		<jittermethod name="anim_turn" />
		<jittermethod name="draw" />
		<jittermethod name="drawimmediate" />
		<jittermethod name="drawraw" />
		<jittermethod name="exportattrs" />
		<jittermethod name="exportsummary" />
		<jittermethod name="getattributes" />
		<jittermethod name="getstate" />
		<jittermethod name="jit_matrix" />
		<jittermethod name="importattrs" />
		<jittermethod name="summary" />
		<jittermethod name="update_node" />
	</jittermethodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="adapt" get="1" set="1" type="int" size="1">
			<digest>
				Adapt
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Adapt" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="onoff" />
			</attributelist>
		</attribute>
		<attribute name="bordercolor" get="1" set="1" type="float" size="4">
			<digest>
				Texture border color
			</digest>
			<description>
				Sets the texture bordercolor
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Border Color" />
			</attributelist>
		</attribute>
		<attribute name="edge_length" get="1" set="1" type="int" size="1">
			<digest>
				Cube edge length
			</digest>
			<description>
				The length in pixels of a cube edge. Each face of the sube will be edge_length*edge_length in dimension.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Edge Length" />
			</attributelist>
		</attribute>
		<attribute name="file" get="1" set="1" type="symbol" size="1">
			<digest>
				Sets an image file to read that is in panorama format
			</digest>
			<description>
				TEXT_HERE
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="File" />
			</attributelist>
		</attribute>
		<attribute name="filter" get="1" set="1" type="symbol" size="1">
			<digest>
				Texture filter
			</digest>
			<description>
				Filter applied to the texture.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Filter" />
			</attributelist>
		</attribute>
		<attribute name="matrix_name" get="1" set="0" type="symbol" size="6">
			<digest>
				Named matrix
			</digest>
			<description>
				The named matrix to access (default = none)
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Matrix Name" />
			</attributelist>
		</attribute>
		<attribute name="mipmap" get="1" set="1" type="symbol" size="1">
			<digest>
				Texture mipmap style
			</digest>
			<description>
				Texture mipmap style.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Mipmap" />
			</attributelist>
		</attribute>
		<attribute name="wrap" get="1" set="1" type="symbol" size="3">
			<digest>
				Texture wrapping mode
			</digest>
			<description>
				Texture wrapping mode.
			</description>
			<attributelist>
				<attribute name="basic" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Wrap" />
			</attributelist>
		</attribute>
	</attributelist>
	<jitterattributelist>
		<jitterattribute name="anchor" />
		<jitterattribute name="anim" />
		<jitterattribute name="animmode" />
		<jitterattribute name="automatic" />
		<jitterattribute name="axes" />
		<jitterattribute name="dest_dim" />
		<jitterattribute name="drawto" />
		<jitterattribute name="enable" />
		<jitterattribute name="filterclass" />
		<jitterattribute name="inherit_all" />
		<jitterattribute name="inherit_color" />
		<jitterattribute name="inherit_depth" />
		<jitterattribute name="inherit_fog" />
		<jitterattribute name="inherit_material" />
		<jitterattribute name="inherit_poly" />
		<jitterattribute name="inherit_texture" />
		<jitterattribute name="inherit_transform" />
		<jitterattribute name="layer" />
		<jitterattribute name="material" />
		<jitterattribute name="name" />
		<jitterattribute name="position" />
		<jitterattribute name="shader" />
	</jitterattributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example img="jit.gl.cubemap.png" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		TEXT_HERE
	</seealsolist>
	<discussion>
		This object requires one argument: the name of a drawing context. A named drawing context is a named instance of a <o>jit.window</o>, <o>jit.pwindow</o>, or <o>jit.matrix</o> object that has an instance of the <o>jit.gl.render</o> object associated with it. Additionally it can reference the name of a <o>jit.gl.node</o> sub-context. This value may also be set via the OB3D <at>drawto</at> attribute. If no argument is present, the object is implicitly added to the first valid drawing context or sub-context found in the current patch or by searching up the patcher hierarchy.
	</discussion>
</c74object>
