We will use two modules: pyopengl and pygame.
Modules can import other modules.
Each module is only imported once per interpreter session.
>>> import pygame >>> import OpenGL
The imports are taken in the local symbol table, so we need to do this:
>>> from pygame import * >>> from OpenGL import * >>> from OpenGL.GL import * >>> from OpenGL.GLUT import *
The next thing you must do is call the function glutInit.
>>> glutInit() ['foo']
And now use pygame to create window.
>>> pygame.init() (6, 0) >>> pygame.display.set_mode((10,10),OPENGL|DOUBLEBUF)
Note:If we not create the window the next commands will not work.
About the beautiful glGetString function, we know.
This return a string describing the current GL connection.
You can use dir() and help() functions to see more.
But we see bellow, some example:
>>> dir(glGetString) ['__call__', '__class__', '__ctypes_from_outparam__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__name__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_b_base_', '_b_needsfree_', '_flags_', '_objects', '_restype_', 'argtypes', 'errcheck', 'restype'] >>> dir(glGetString()) ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']
Now, the parameters of this function are :
glGetString(GL_VERSION) glGetString(GL_VENDOR) glGetString(GL_RENDERER) glGetStringi(GL_EXTENSIONS, i)
Bellow, we see how we use these parameters:
>>> glGetString(GL_VERSION) '2.1.2 NVIDIA 173.14.22' >>> glGetString(GL_VENDOR) 'NVIDIA Corporation' >>> glGetString(GL_RENDERER) 'GeForce FX 5200/AGP/SSE/3DNOW!'
Because the GL_EXTENSIONS is a space-separated list of supported extensions to GL, we can use these commands:
>>> print glGetString(GL_EXTENSIONS)
Or you can format this result, see bellow
>>> print glGetString(GL_EXTENSIONS).split() ['GL_ARB_depth_texture', 'GL_ARB_fragment_program', ...
This is all.
0 comments:
Trimiteţi un comentariu