dglsl 0.6.0
A GLSL bridge for D.
To use this package, run the following command in your project's root directory:
Manual usage
Put the following dependency into your project's dependences section:
dglsl
このライブラリはα版であり、ほとんどの機能が未実装です。
GLSL3.3のシェーダをD言語から使いやすくするためのライブラリです。
インストール
dub.jsonに以下のように書いてください。
...
"stringImportPaths": ["./"],
"dependencies": {
"dglsl": "~>0.6.0"
}
...
stringImportPaths
の指定を忘れないようにしてください。
使い方
次のようにクラスとしてシェーダプログラムを定義します。
import dglsl;
class VertShader : Shader!Vertex {
@layout(location = 0)
@input vec3 position;
@layout(location = 1)
@input vec3 color;
@output vec3 vertColor;
@uniform mat4 projectionMatrix;
void main() {
vertColor = color;
gl_Position = projectionMatrix * vec4(position, 1.0);
}
}
class FragShader : Shader!Fragment {
@input vec3 vertColor;
@output vec3 fragColor;
void main() {
fragColor = vec3(vectColor);
}
}
次に、シェーダをコンパイルしてプログラムを作成します。
auto shader = new VertShader();
shader.compile();
auto frag = new FragShader();
frag.compile();
auto p = makeProgram(shader, frag);
glUseProgram(p.id);
p.projectionMatrix = mat4.identity;
あとは標準のOpenGL3の機能を使って描画を行うことができます。
- Registered by Tomioka Taichi
- 0.6.0 released 8 years ago
- icecocoa6/dglsl
- MIT
- Copyright © 2016, Taichi Tomioka
- Authors:
- Dependencies:
- derelict-gl3, gl3n
- Versions:
-
0.6.0 2016-Jan-18 0.5.0 2016-Jan-10 ~master 2016-Apr-15 - Download Stats:
-
-
0 downloads today
-
0 downloads this week
-
0 downloads this month
-
129 downloads total
-
- Score:
- 1.5
- Short URL:
- dglsl.dub.pm