scalaの練習にlwjglでプログラム中

pmx読み込みテスト

scalaの練習用に去年途中で放棄したのを発掘して、ぼちぼちプログラム中。
なるべくscalaのいろんな機能を使ってみる方向でコーディングしているのだが、traitでシーングラフを構築するのがなかなか面白い。

こんな感じ。

  // view
  val view=new opengl.View(100) with opengl.Perspective with device.Resizable {
    override val fovy=30.0f;
    var aspectRatio=1.0f;
    override def aspect=aspectRatio;
    override val near=1.0f;
    override val far=5000.0f;

    override def resize(w:Int, h:Int){
      if(h>0){
        aspectRatio=w.toFloat/h.toFloat;
      }
    }
  }

newするときtraitを山盛りにして、クロージャのように抽象フィールドを投入するというやり口は柔軟性が高い。
設計的にいけているのかどうかはよくわからないのだが、とりえあずwithをいっぱいつけたい。


無名クラスの合成を濫用すると、後でキャストしてその型を使いたいときに困ることが判明w


今からまたスキニングを実装する。