texture_stack.py :  » Game-2D-3D » PyOpenGL » PyOpenGL-3.0.1 » OpenGL » GL » MESAX » Python Open Source

Home
Python Open Source
1.3.1.2 Python
2.Ajax
3.Aspect Oriented
4.Blog
5.Build
6.Business Application
7.Chart Report
8.Content Management Systems
9.Cryptographic
10.Database
11.Development
12.Editor
13.Email
14.ERP
15.Game 2D 3D
16.GIS
17.GUI
18.IDE
19.Installer
20.IRC
21.Issue Tracker
22.Language Interface
23.Log
24.Math
25.Media Sound Audio
26.Mobile
27.Network
28.Parser
29.PDF
30.Project Management
31.RSS
32.Search
33.Security
34.Template Engines
35.Test
36.UML
37.USB Serial
38.Web Frameworks
39.Web Server
40.Web Services
41.Web Unit
42.Wiki
43.Windows
44.XML
Python Open Source » Game 2D 3D » PyOpenGL 
PyOpenGL » PyOpenGL 3.0.1 » OpenGL » GL » MESAX » texture_stack.py
'''OpenGL extension MESAX.texture_stack

This module customises the behaviour of the 
OpenGL.raw.GL.MESAX.texture_stack to provide a more 
Python-friendly API

Overview (from thespec import 
  
  There are a number of circumstances where an application may wish to
  blend two textures out of a larger set of textures.  Moreover, in some
  cases the selected textures may vary on a per-fragment basis within
  a polygon.  Several examples include:
  
     1. High dynamic range textures.  The application stores several
     different "exposures" of an image as different textures.  On a
     per-fragment basis, the application selects which exposures are
     used.
  
     2. A terrain engine where the altitude of a point determines the
     texture applied to it.  If the transition is from beachsandto import 
     grass to rocks to snow, the application will store each texture
     in a different texture map, and dynamically select which two
     textures to blend at run-time.
  
     3. Storing short video clips in textures.  Each depth slice is a
     single frame of video.
  
  Several solutions to this problem have been proposed, but they either
  involve using a separate texture unit for each texture map or using 3D
  textures without mipmaps.  Both of these options have major drawbacks.
  
  This extension provides a third alternative that eliminates the major
  drawbacks of both previous methods.  A new texture target,
  TEXTURE_2D_STACK, is added that functions identically to TEXTURE_3D in
  all aspects except the sizes of the non-base level images.  In
  traditional 3D texturing, the size of the N+1 LOD is half the size
  of the N LOD in all three dimensions.  For the TEXTURE_2D_STACK target,
  the height and width of the N+1 LOD is halved, but the depth is the
  same for all levels of detail. The texture then becomes a "stack" of
  2D textures.  The per-fragment texel is selected by the R texture
  coordinate.
  
  References:
  
      http://www.opengl.org/discussion_boards/cgi_directory/ultimatebb.cgi?ubb=get_topic;f=3;t=011557
      http://www.opengl.org/discussion_boards/cgi_directory/ultimatebb.cgi?ubb=get_topic;f=3;t=000516
      http://www.opengl.org/discussion_boards/cgi_directory/ultimatebb.cgi?ubb=get_topic;f=3;t=011903
      http://www.delphi3d.net/articles/viewarticle.php?article=terraintex.htm

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/MESAX/texture_stack.txt
'''
from OpenGL import platform,constants,constant,arrays
from OpenGL import extensions,wrapper
from OpenGL.GL import glget
import ctypes
from OpenGL.raw.GL.MESAX.texture_stack import *
### END AUTOGENERATED SECTION
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.