我的场景中有几个对象。我只想将着色器应用于其中的一个。环境:OpenGL 2.0,C++,GLUT,GLEW。如何将着色器应用于特定对象
3
A
回答
6
着色器程序只有在安装时才有效。只有在程序安装时绘制的调用将使用着色器。您必须安装着色器,绘制对象,然后卸载着色器。
编辑:通过“安装”着色器我的意思是使用glUseProgram
与你的着色器的句柄。通过“卸载”我的意思是安装另一个着色器或调用glUseProgram
与参数0
。请参阅glUseProgram。我的“安装/卸载”术语来自那里。
2
在您的绘图调用中绘制该着色器的对象,并在没有它的情况下绘制其他对象;不能真的比这更简单; P您可以在对象类中使用枚举,您可以在其中指定启用的着色器对于该对象,只有当它们应该穿过该着色器时...当然,如果它是全屏像素着色器,那么当它处理每个像素并呈现新的图像时,您都遇到麻烦。除非你有一种将对象作为参数传递的方法,并且只有在该对象的位置上应用变更。
相关问题
- 1. 如何将Phaser着色器隔离到特定对象/形状?
- 2. 如何编写通用GLSL着色器来着色对象
- 3. 如何“将片段着色器应用于GLSurfaceView/TextureView”?
- 4. iOS + SceneKit:如何将纹理着色器应用于纹理?
- 5. 如何将着色器应用于画布(javascript)
- 6. 如何将Three.js着色器应用于节点
- 7. 将着色器应用于framebuffer对象以获得鱼眼效果
- 8. 着色对象
- 9. 如何创建一个能够自动将着色器应用于模型中对象材质的代码?
- 10. 如何使用WebGL着色器剪切对象?
- 11. 如何将CSS应用于console.log自动着色
- 12. 如何判断HLSL着色器代码对于给定的着色器版本是否有效?
- 13. opengl:glsl着色器中的镜像对象
- 14. WebGL - getAttribLocation:无对象,着色器问题
- 15. 从着色器操纵OpenGL对象
- 16. 将不同着色器应用于网格
- 17. 如何将函数应用于R中的特定类别的对象
- 18. 着色特定行ActiveAdmin
- 19. 如何才能将richTextBox特定文本以黄色和红色一次着色?
- 20. 如何用着色器添加色带
- 21. 着色网格bezier对象
- 22. 着色ACF ggplot对象
- 23. Android - 可绘制,将颜色过滤器应用于特定颜色
- 24. 着色器vs着色器材质,papervision特定,一般洞察力欢迎
- 25. Three.js - 应用着色器模糊几何
- 26. 如何使用固定颜色对树节点着色?
- 27. 将颜色应用于Fragment着色器中的OpenGL ES 2.0 Point Sprite纹理?
- 28. THREE.JS对象的自定义Phong着色器
- 29. 如何使用着色器将一个3D对象变形为另一个3D对象?
- 30. 如何将统一缓冲区对象的数组加载到着色器中?
呃你在说什么?安装?卸载?你对着色器的定义究竟是什么? – 2010-04-26 17:47:54
如何卸载着色器?通过glDetachShader?是否有与glUseProgram - > glDontUseProgram相反的东西? – Andrey 2010-04-26 17:48:02
@Jonas,@Andrey,我的“安装”/“卸载”术语来自'glUseProgram'的文档。我编辑了我的回复以澄清。 – 2010-04-26 17:52:36