# Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics

[Home] [Tutorials] [All Classes] [Grouped Classes]

Public Member Functions | Public Attributes

# vl::TexGen Class Reference

RenderState wrapping the OpenGL function glTexGen(), see also http://www.opengl.org/sdk/docs/man/xhtml/glTexGen.xml for more information. More...

`#include <Shader.hpp>`

Inheritance diagram for vl::TexGen:

List of all members.

## Public Member Functions

| TexGen ()
| The eye and object planes are not transformed by any matrix (unlike usually with OpenGL), which means that the object plane is specified in object coordinates and that, the eye plane is specified in camera coordinates.
virtual ERenderState | type () const
virtual void | apply (int index, const Camera *, OpenGLContext *ctx) const
| The parameter cameara is NULL if we are disabling the state, non-NULL if we are enabling it.
void | setEyePlaneS (fvec4 plane)
void | setObjectPlaneS (fvec4 plane)
void | setGenModeS (ETexGenMode mode)
fvec4 | eyePlaneS () const
fvec4 | objectPlaneS () const
ETexGenMode | genModeS () const
void | setEyePlaneT (fvec4 plane)
void | setObjectPlaneT (fvec4 plane)
void | setGenModeT (ETexGenMode mode)
fvec4 | eyePlaneT () const
fvec4 | objectPlaneT () const
ETexGenMode | genModeT () const
void | setEyePlaneR (fvec4 plane)
void | setObjectPlaneR (fvec4 plane)
void | setGenModeR (ETexGenMode mode)
fvec4 | eyePlaneR () const
fvec4 | objectPlaneR () const
ETexGenMode | genModeR () const
void | setEyePlaneQ (fvec4 plane)
void | setObjectPlaneQ (fvec4 plane)
void | setGenModeQ (ETexGenMode mode)
fvec4 | eyePlaneQ () const
fvec4 | objectPlaneQ () const
ETexGenMode | genModeQ () const
virtual ref< RenderState > | clone () const

## Public Attributes

fvec4 | mEyePlaneS
fvec4 | mObjectPlaneS
fvec4 | mEyePlaneT
fvec4 | mObjectPlaneT
fvec4 | mEyePlaneR
fvec4 | mObjectPlaneR
fvec4 | mEyePlaneQ
fvec4 | mObjectPlaneQ
ETexGenMode | mGenModeS
ETexGenMode | mGenModeT
ETexGenMode | mGenModeR
ETexGenMode | mGenModeQ

## Detailed Description

RenderState wrapping the OpenGL function glTexGen(), see also http://www.opengl.org/sdk/docs/man/xhtml/glTexGen.xml for more information.

Note:
  A TexParameter defines a set of variables associated to a Texture while TexGen and TexEnv define a set of variables associated to a TextureSampler.

See also:
  Shader, TextureSampler, Texture, TexGen, TexParameter, Effect, Actor

Definition at line 1682 of file Shader.hpp.

## Constructor & Destructor Documentation

TexGen::TexGen | ( | ) |

The eye and object planes are not transformed by any matrix (unlike usually with OpenGL), which means that the object plane is specified in object coordinates and that, the eye plane is specified in camera coordinates.

Definition at line 978 of file Shader.cpp.

References mEyePlaneQ, mEyePlaneR, mEyePlaneS, mEyePlaneT, mGenModeQ, mGenModeR, mGenModeS, mGenModeT, mObjectPlaneQ, mObjectPlaneR, mObjectPlaneS, mObjectPlaneT, vl::TGM_DISABLED, and VL_DEBUG_SET_OBJECT_NAME.

## Member Function Documentation

virtual ERenderState vl::TexGen::type | ( | ) | const`[inline, virtual]`

Reimplemented from vl::RenderState.

Definition at line 1689 of file Shader.hpp.

References vl::RS_TexGen.

void TexGen::apply | ( | int | index,
|  | const Camera * | camera,
|  | OpenGLContext * | ctx
| ) |  | const`[virtual]`

The parameter cameara is NULL if we are disabling the state, non-NULL if we are enabling it.

Implements vl::RenderState.

Definition at line 995 of file Shader.cpp.

References vl::Log::bug(), eyePlaneQ(), eyePlaneR(), eyePlaneS(), eyePlaneT(), genModeQ(), genModeR(), genModeS(), genModeT(), objectPlaneQ(), objectPlaneR(), objectPlaneS(), objectPlaneT(), vl::TGM_DISABLED, vl::TGM_EYE_LINEAR, vl::TGM_NORMAL_MAP, vl::TGM_OBJECT_LINEAR, vl::TGM_REFLECTION_MAP, VL_CHECK, VL_CHECK_OGL, VL_MAX_TEXTURE_UNITS, and VL_TRAP.

void vl::TexGen::setEyePlaneS | ( | fvec4 | plane ) | `[inline]`

Definition at line 1692 of file Shader.hpp.

void vl::TexGen::setObjectPlaneS | ( | fvec4 | plane ) | `[inline]`

Definition at line 1693 of file Shader.hpp.

void vl::TexGen::setGenModeS | ( | ETexGenMode | mode ) | `[inline]`

Definition at line 1694 of file Shader.hpp.

fvec4 vl::TexGen::eyePlaneS | ( | ) | const`[inline]`

Definition at line 1695 of file Shader.hpp.

Referenced by apply().

fvec4 vl::TexGen::objectPlaneS | ( | ) | const`[inline]`

Definition at line 1696 of file Shader.hpp.

Referenced by apply().

ETexGenMode vl::TexGen::genModeS | ( | ) | const`[inline]`

Definition at line 1697 of file Shader.hpp.

Referenced by apply().

void vl::TexGen::setEyePlaneT | ( | fvec4 | plane ) | `[inline]`

Definition at line 1699 of file Shader.hpp.

void vl::TexGen::setObjectPlaneT | ( | fvec4 | plane ) | `[inline]`

Definition at line 1700 of file Shader.hpp.

void vl::TexGen::setGenModeT | ( | ETexGenMode | mode ) | `[inline]`

Definition at line 1701 of file Shader.hpp.

fvec4 vl::TexGen::eyePlaneT | ( | ) | const`[inline]`

Definition at line 1702 of file Shader.hpp.

Referenced by apply().

fvec4 vl::TexGen::objectPlaneT | ( | ) | const`[inline]`

Definition at line 1703 of file Shader.hpp.

Referenced by apply().

ETexGenMode vl::TexGen::genModeT | ( | ) | const`[inline]`

Definition at line 1704 of file Shader.hpp.

Referenced by apply().

void vl::TexGen::setEyePlaneR | ( | fvec4 | plane ) | `[inline]`

Definition at line 1706 of file Shader.hpp.

void vl::TexGen::setObjectPlaneR | ( | fvec4 | plane ) | `[inline]`

Definition at line 1707 of file Shader.hpp.

void vl::TexGen::setGenModeR | ( | ETexGenMode | mode ) | `[inline]`

Definition at line 1708 of file Shader.hpp.

fvec4 vl::TexGen::eyePlaneR | ( | ) | const`[inline]`

Definition at line 1709 of file Shader.hpp.

Referenced by apply().

fvec4 vl::TexGen::objectPlaneR | ( | ) | const`[inline]`

Definition at line 1710 of file Shader.hpp.

Referenced by apply().

ETexGenMode vl::TexGen::genModeR | ( | ) | const`[inline]`

Definition at line 1711 of file Shader.hpp.

Referenced by apply().

void vl::TexGen::setEyePlaneQ | ( | fvec4 | plane ) | `[inline]`

Definition at line 1713 of file Shader.hpp.

void vl::TexGen::setObjectPlaneQ | ( | fvec4 | plane ) | `[inline]`

Definition at line 1714 of file Shader.hpp.

void vl::TexGen::setGenModeQ | ( | ETexGenMode | mode ) | `[inline]`

Definition at line 1715 of file Shader.hpp.

fvec4 vl::TexGen::eyePlaneQ | ( | ) | const`[inline]`

Definition at line 1716 of file Shader.hpp.

Referenced by apply().

fvec4 vl::TexGen::objectPlaneQ | ( | ) | const`[inline]`

Definition at line 1717 of file Shader.hpp.

Referenced by apply().

ETexGenMode vl::TexGen::genModeQ | ( | ) | const`[inline]`

Definition at line 1718 of file Shader.hpp.

Referenced by apply().

virtual ref<RenderState> vl::TexGen::clone | ( | ) | const`[inline, virtual]`

Implements vl::RenderState.

Definition at line 1720 of file Shader.hpp.

## Member Data Documentation

fvec4 vl::TexGen::mEyePlaneS

Definition at line 1728 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mObjectPlaneS

Definition at line 1729 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mEyePlaneT

Definition at line 1730 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mObjectPlaneT

Definition at line 1731 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mEyePlaneR

Definition at line 1732 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mObjectPlaneR

Definition at line 1733 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mEyePlaneQ

Definition at line 1734 of file Shader.hpp.

Referenced by TexGen().

fvec4 vl::TexGen::mObjectPlaneQ

Definition at line 1735 of file Shader.hpp.

Referenced by TexGen().

ETexGenMode vl::TexGen::mGenModeS

Definition at line 1736 of file Shader.hpp.

Referenced by TexGen().

ETexGenMode vl::TexGen::mGenModeT

Definition at line 1737 of file Shader.hpp.

Referenced by TexGen().

ETexGenMode vl::TexGen::mGenModeR

Definition at line 1738 of file Shader.hpp.

Referenced by TexGen().

ETexGenMode vl::TexGen::mGenModeQ

Definition at line 1739 of file Shader.hpp.

Referenced by TexGen().

The documentation for this class was generated from the following files:

- D:/VL/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vlGraphics/Shader.hpp
- D:/VL/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vlGraphics/Shader.cpp

Visualization Library v2011.09.1162 Reference Documentation
Copyright 2005-2011 Michele Bosi. All rights reserved.
Updated on Thu Jan 26 2012 00:44:53.
Permission is granted to use this page to write and publish articles regarding Visualization Library.