home *** CD-ROM | disk | FTP | other *** search
/ ST-Computer Leser-CD 2001 January / LCD_01_2001.iso / develop / tinylib041 / tiny / limitati.on < prev    next >
Encoding:
Text File  |  1999-04-10  |  4.4 KB  |  206 lines

  1.  
  2. Here are listed the functions that TinyGL understands with the known
  3. limitations. The non mentionned functions are *not* implemented and
  4. must not be used.
  5.  
  6.  
  7. ************ glEnable / glDisable
  8.  
  9. - The following flags are handled:
  10.  
  11. GL_CULL_FACE, GL_LIGHTING, GL_COLOR_MATERIAL, GL_TEXTURE_2D, GL_NORMALIZE,
  12. GL_LIGHTx, GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_POINT,
  13. GL_POLYGON_OFFSET_LINE
  14.  
  15.  
  16. - GL_DEPTH_TEST is accepted, but it *cannot* be disabled. The
  17. DepthMode is hardcoded as GL_LESS (OpenGL default).
  18.  
  19. ************ glShadeModel
  20.  
  21. OK.
  22.  
  23. ************ glCullFace
  24.  
  25. OK.
  26.  
  27. ************ glPolygonMode
  28.  
  29. OK.
  30.  
  31. ************ glBegin
  32.  
  33. No tests are performed to prevent some functions of being executed
  34. between glBegin/glEnd.
  35.  
  36. ************ glEnd
  37.  
  38. OK.
  39.  
  40. ************ glVertex
  41.  
  42. Some prototypes are not implemented.
  43.  
  44.  
  45. ************ glColor
  46.  
  47. Some prototypes are not implemented.
  48.  
  49. ************ glNormal
  50.  
  51. Some prototypes are not implemented.
  52.  
  53. ************ glTexCoord
  54.  
  55. - Some prototypes are not implemented.
  56.  
  57. - The Matrix transformation is not applied yet.
  58.  
  59. ************ glEdgeFlag
  60.  
  61. OK. The edge handling has to be tested, although it is not much useful
  62. in TinyGL.
  63.  
  64. ************ glMatrixMode / glLoadMatrixf / glLoadIdentity / glMultMatrixf /
  65.              glPushMatrix / glPopMatrix / glRotatef / glTranslatef / glScalef /
  66.              glFrustum
  67.  
  68. - The prototypes with doubles are not implemented.
  69.  
  70. ************ glViewport
  71.  
  72. GlViewport calls a function pointers to tell glx (or another display
  73. system) to resize the Z buffer and the ximage. Made optional in
  74. version 0.2.
  75.  
  76. ************ glGenLists / glIsList / glNewList / glEndList / glCallList
  77.  
  78. OK.
  79.  
  80. ************ glClear / glClearColor / glClearDepth
  81.  
  82. The whole zbuffer and the colors are cleared in any case. The clear color
  83. can be redefined, by *not* the initial z value.
  84.  
  85. ************ glRenderMode
  86.  
  87. Only the modes GL_RENDER and GL_SELECT are implemented.
  88.  
  89. ************ glSelectBuffer / glInitNames / glPushName / glPopName / glLoadName
  90.  
  91. OK.
  92.  
  93. ************ glGenTextures / glDeleteTextures / glBindTexture 
  94.  
  95. OK. These functions should be used to get the maximum performance with
  96. TinyGL. 
  97.  
  98. ************ glTexImage2D
  99.  
  100. The function accepts only RGB UNSIGNED_BYTES bitmaps. They are
  101. internally resized to 256x256 so you'd better use that size. No
  102. mipmapping is implemented although it will come if asked. No borders
  103. are implemented.
  104.  
  105. ************ glTexEnvi
  106.  
  107. The only supported mode is GL_DECAL, although others are planned if
  108. asked.
  109.  
  110.  
  111. ************ glTexParameteri
  112.  
  113. The other prototypes are not implemented. Only the follwing mode are
  114. implemented:
  115.  
  116.   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
  117.   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
  118.   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
  119.   glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
  120.  
  121. ************ glPixelStorei
  122.  
  123. The pixels are alware byte aligned.
  124.  
  125. ************ glMaterialfv / glMaterialf / glColorMaterial
  126.  
  127. OK.
  128.  
  129.  
  130. ************ glLightfv / glLightf / glLightModeli / glLightModelfv
  131.  
  132. OK. The OpenGL lightening is implemented but not optimized.
  133.  
  134.  
  135. ************ glFlush
  136.  
  137. Ignored.
  138.  
  139. ************ glHint
  140.  
  141. Ignored.
  142.  
  143. ************ glGetIntegerv
  144.  
  145. - only GL_VIEWPORT, GL_MAX_MODELVIEW_STACK_DEPTH, 
  146. GL_MAX_PROJECTION_STACK_DEPTH, GL_MAX_LIGHTS, GL_MAX_TEXTURE_SIZE,
  147. GL_MAX_TEXTURE_STACK_DEPTH
  148.  
  149. ************ glGetIntegerv
  150.  
  151. - only GL_TEXTURE_MATRIX, GL_PROJECTION_MATRIX, GL_MODELVIEW_MATRIX,
  152. GL_LINE_WIDTH, GL_LINE_WIDTH_RANGE, GL_POINT_SIZE, GL_POINT_SIZE_RANGE
  153.  
  154. ************ glPolygonOffset
  155.  
  156. - only API implemented.
  157.  
  158. ************ glEnableClientState, glDisableClientState,
  159.              
  160. - No support for GL_INDEX_ARRAY_POINTER or GL_EDGE_FLAG_ARRAY_POINTER
  161.  
  162. ************ glVertexPointer, glNormalPointer, 
  163.              glColorPointer, glTexureCoordPointer
  164.  
  165. - OK
  166.  
  167. ------------------------------------------------------------------------------
  168.  
  169. TinyGL GLX emulation:
  170.  
  171.  
  172. ************ glXQueryExtension
  173.  
  174. Returns always True
  175.  
  176. ************ glXChooseVisual
  177.  
  178. Only 8 bit Pseudocolor or 16 bit Truecolor Visual are accepted. The
  179. attribute list is ignored.
  180.  
  181. ************ glXCreateContext
  182.  
  183. The sharing is not implemented although the code could handle it.
  184.  
  185. ************ glXDestroyContext
  186.  
  187. OK.
  188.  
  189. ************ glXMakeCurrent
  190.  
  191. Not all the syntax is supported yet, in particular with the 'NULL' or
  192. 'None' parameters.
  193.  
  194.  
  195. ************ glXSwapBuffers
  196.  
  197. OK.
  198.  
  199. ************ glXWaitGL / glXWaitX
  200.  
  201. Ignored.
  202.  
  203.  
  204. See README.BEOS for BeOS limitations.
  205.  
  206.