「第40回 Ruby/Rails勉強会@関西」の発表資料的なもの

 結構日にちが立ちましたが、日本Rubyの会 公式Wiki - 第40回 Ruby/Rails勉強会@関西での
発表資料的なものを記載しておこうと思います。
って言うか、会場にいらっしゃった方は分かると思いますが、コードは有っても、資料は無しw;



 で、以下オープニングで使ったruby-processingのデモ。

 こっちが、"arith01_front.gif"。
判りにくいですが背景の白いところは透明です、透過gifです。

 こっちが、"arith01_back.gif"。
判りにくいですが人物の白いところは透明です、透過gifです。

 一応言っておくと、透過gifで透明部分が透けますよってデモでした。
別に大事なことじゃないですけど、もう一度言っておきますね。

透明部分が透けますよってデモでした。

 発表のデモで言い忘れていたので、ココで2回言っておきます。


 以下、コードです。
OpenGLの透過テクスチャーが普通に使えました。


 processingのOpenGL周りの*1デフォルト設定については、
processing.jarのコード参照してください。
綺麗なコードなので、私が説明するよりわかりやすいです。

load_libraries :opengl
include_package "processing.opengl"

#full_screen

def setup
  @front = load_image "arith01_front.gif"
  @back =  load_image "arith01_back.gif"
  size @front.width,@front.height,OPENGL
  frame_rate 5

  #@gl = g.gl
  #@glu = g.glu
  #p @gl
  #p @glu
end

def draw
  background 0
  def show_texture img
    beginShape
      texture(img)
      vertex(0,        0,0,         0,0)
      vertex(img.width,0,0,         img.width,0)
      vertex(img.width,img.height,0,img.width,img.height)
      vertex(0,        img.height,0,0,img.height)
    endShape
  end

  show_texture @front
  offset = 110
  push_matrix
  translate 0,(@back.height-offset),0
  rotx = -((mouse_y.to_f / height) * Math::PI)
  rotate_x rotx
  translate 0,(-@back.height+offset),0
  show_texture @back
  pop_matrix
end


 あとは、以下Bezier曲線について、
20分クッキングです。


 processingのbezier関数を使わず、、
自前でbezier関数を実装するデモをしました。
詳細はwikipediaのアニメーションを
ruby-processingで実装です。



 まあ、以上ですε=( ̄。 ̄;)
第41回が始まる前に区切りつけれましたんw

*1:透過テクスチャー等