我剛開始着色器編程(GLSL),並用RenderMonkey創建了一些。現在我想在我的java代碼中使用這個着色器。有沒有我如何做的簡單例子?Jogl着色器編程
7
A
回答
7
我發現了一個很簡單的例子
int v = gl.glCreateShader(GL.GL_VERTEX_SHADER);
int f = gl.glCreateShader(GL.GL_FRAGMENT_SHADER);
BufferedReader brv = new BufferedReader(new FileReader("vertexshader.glsl"));
String vsrc = "";
String line;
while ((line=brv.readLine()) != null) {
vsrc += line + "\n";
}
gl.glShaderSource(v, 1, vsrc, (int[])null);
gl.glCompileShader(v);
BufferedReader brf = new BufferedReader(new FileReader("fragmentshader.glsl"));
String fsrc = "";
String line;
while ((line=brf.readLine()) != null) {
fsrc += line + "\n";
}
gl.glShaderSource(f, 1, fsrc, (int[])null);
gl.glCompileShader(f);
int shaderprogram = gl.glCreateProgram();
gl.glAttachShader(shaderprogram, v);
gl.glAttachShader(shaderprogram, f);
gl.glLinkProgram(shaderprogram);
gl.glValidateProgram(shaderprogram);
gl.glUseProgram(shaderprogram);
3
我沒有我自己,但是如果我遇到這方面的問題,我經常會發現3D編程的最佳位置,而且Java的建議已在JavaGaming.org - 我還沒有去過一段時間,但它總是一個有幫助和知識淵博的社區。
3
JOGL的新版本增加了作爲一個實用程序着色器加載/編譯和統一設置/獲取通話。看看API的選擇方法。
0
相關問題
- 1. 嘗試使用jogl加載和初始化着色器
- 2. 使用自定義着色器在世界風的Java/JOGL
- 3. JOGL崩潰的着色器初始化,在glLinkProgram
- 4. SharpDX編譯着色器
- 5. 使用OpenGL着色器語言編寫簡單的着色器
- 6. 着色器程序到節點+片段着色器
- 7. 着色器編譯器如何工作?
- 8. 如何編寫通用GLSL着色器來着色對象
- 9. GLSL:頂點着色器無片段着色片段着色器
- 10. JOGL白色紋理?
- 11. OpenGL着色器?
- 12. 編譯DirectX11着色器文件
- 13. GLSL頂點着色器編譯錯誤
- 14. GLFW - 無法編譯片段着色器
- 15. 未能在swift中編譯着色器
- 16. LWJGL GLSL着色器沒有編譯
- 17. 編譯着色器是否合適?
- 18. 編程着色,支持向量
- 19. 什麼時候應該使用統一的着色器編程?
- 20. 爲什麼不在後臺線程上編譯着色器?
- 21. SCN着色器金屬修改器 - 通過統一着色器
- 22. 使用VS2012着色器設計器創建XNA着色器
- 23. 着色器附件錯誤。無論是無效的程序或着色器
- 24. 使用着色器
- 25. 着色器與pygtkglext
- 26. Molehill的着色器
- 27. 着色器限制
- 28. OpenGL VBO着色器
- 29. 視差着色器
- 30. 着色器在QML
鏈接不再有效 – thecoshman 2011-11-29 10:44:44