- 必要なライブラリのインストール
http://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/topic/51670/
-
- f90gl 本家
- リンカーのオプション
glut32.lib f90gl.lib f90glu.lib f90glut.lib
- 例題
ここの g95 + f03gl 用の Green Book サンプルを IVF + f90gl でw
http://www.dolfyn.net/dolfyn/f03gl_en.html
-
- 気をつけるべき点
f03gl では RESHAPE 関数の引数が value 属性の値渡しになっているけれども、f90gl では普通の参照渡しになっているなど、微妙なインターフェースの差。
一部のポインタ定義なども変わっている。
! type(C_PTR) :: ptr = c_null_ptr TYPE (GLUQuadricObj), POINTER :: ptr ptr => gluNewQuadric()
- fgl01
module callbacks contains subroutine display() use opengl_gl call glClear( GL_COLOR_BUFFER_BIT ) call glColor3f( 1.0, 0.0, 0.0) call glBegin( GL_LINES ) call glVertex2i( 180, 20) call glVertex2i( 20, 80) call glEnd() call glFlush() end subroutine display end module callbacks program fgl01 use opengl_gl use opengl_glu use opengl_glut use callbacks integer(kind=GLint) :: iwin real(kind=GLdouble) :: window(4) = (/ 0.0, 200.0, 0.0, 100.0 /) call glutInit call glutInitDisplayMode(GLUT_SINGLE + GLUT_RGB ) call glutInitWindowPosition( 50, 100) call glutInitWindowSize( 200, 100) iwin = glutCreateWindow("fgl01"//char(0)) call glClearColor( 1.0, 1.0, 1.0, 0.0) call glMatrixMode( GL_PROJECTION ) call gluOrtho2D( window(1), window(2), window(3), window(4) ) call glutdisplayfunc( display ) call glutMainLoop() end program fgl01