やすしです。

とびつきました(^^;

From: kusano / mr-system.co.jp
Subject: [ruby-ext:00788] OpenGL module
Date: Mon, 27 Dec 1999 19:52:21 +0900

> 私が行った細かい修正の中の1つとして、OpenGLモジュールををopengl+glutに
> 分割ということをやってます。
> これで、glutがなくてもモジュールが作成出来るので、gtk上でOpenGL
> モジュールを使う人は使いやすくなるかと思います。

すばらしぃ〜。

> P.S.
> yashi / yashi.comさんの精力的な活動のおかげで、ruby-1.4.x上への移行が
> 出来ました。ありがとうございます。

rename.rbのおかがです(^^;

あと、幾つか気がついたところを‥。

extconf.rbで、

--- extconf.rb.org      Mon Dec 27 06:25:17 1999
+++ extconf.rb  Mon Dec 27 06:34:35 1999
@@ -25,8 +25,8 @@
   glu_libname = "glu32"
   glut_libname = "glut"
 else
-  $CFLAGS="-I/usr/local/include -I."
-  $LDFLAGS="-L/usr/local/lib"
+  $CFLAGS="-I/usr/local/include -I. -I/usr/X11R6/include"
+  $LDFLAGS="-L/usr/local/lib -L/usr/X11R6/lib"
   $libs = $libs + " -lX11 -lXmu"
   gl_libname = "GL"
   glu_libname = "GLU"

と、しないと、だめでした。(これは環境によるんで‥、どうでも良いかも)

あと、warningを一つつぶしました。

--- ogl.c~      Mon Dec 27 04:49:31 1999
+++ ogl.c       Mon Dec 27 06:49:01 1999
@@ -2168,7 +2168,7 @@
     GLsizei height;
     int format;
     int type;
-    const char *pixels;
+    char *pixels;
     VALUE ret;
     x = (GLint)NUM2INT(arg1);
     y = (GLint)NUM2INT(arg2);
@@ -2178,8 +2178,9 @@
     type = gltype_size(NUM2INT(arg6)) / 8;
     if (format != -1 && type != -1) {
        pixels = xmalloc(width * height * format * type);
-       if (!pixels)
-           rb_raise(rb_eRuntimeError, "glReadPixels");
+/* xmalloc should raise exception if failed */
+/*     if (!pixels) */
+/*         rb_raise(rb_eRuntimeError, "glReadPixels"); */
        glReadPixels(x,y,width,height,format,type,(GLvoid*)pixels);
        ret = rb_str_new(pixels, width * height * format * type);
        free(pixels);

ALLOCAにしようかとも思ったんですが、cygwinとかで使えるか分らないのでやめ
ときました。
--
           yashi