OGLplus 0.9.0

すっかり忘れていたんですが、いつの間にか OGLplus が 0.9.0 になっていました。


あと破壊的な変更点があったのでいくつか。

Matrix4f と Matrix4d の名前が変更

名前が変更されました。

Matrix4f → Mat4f
Matrix4d → Mat4d


なんで変わったんだろう。

Uniform がクラステンプレートに変更

今まで Set に渡していた型がテンプレート引数で受け取るようになったみたい。

[befor]

glp::Uniform<glp::Mat4f>(prog, "CameraMatrix").SetMatrix(
    glp::CamMatrixf::Orbiting(
        glp::Vec3f(0.0f, 10.0f, 0.0f),
        14.5,
        glp::Degrees(0.0),
        glp::Degrees(0.0)
    )
);

glp::Uniform(prog, "LightPos").Set(glp::Vec3f(1.0f, 2.0f, 3.0f));

[after]

glp::Uniform<glp::Mat4f>(prog, "CameraMatrix").Set(
    glp::CamMatrixf::Orbiting(
        glp::Vec3f(0.0f, 10.0f, 0.0f),
        14.5,
        glp::Degrees(0.0),
        glp::Degrees(0.0)
    )
);

glp::Uniform<glp::Vec3f>(prog, "LightPos").Set(glp::Vec3f(1.0f, 2.0f, 3.0f));


あとヘルパ関数として SetUniform も追加されいました。
ただし、Matrix の場合はキャストしないとうまく動きませんでした。

glp::SetUniform(prog, "CameraMatrix").Set(
    glp::Mat4f(glp::CamMatrixf::Orbiting(
        glp::Vec3f(0.0f, 10.0f, 0.0f),
        14.5,
        glp::Degrees(0.0),
        glp::Degrees(0.0)
    ))
);

glp::SetUniform(prog, "LightPos", glp::Vec3f(1.0f, 2.0f, 3.0f));


その他の変更点は下記のサイトを参照して下さい。