#1
|
|||
|
|||
Texture ID in postprocess
When working with shaders in Vizard outside of the postprocess library I can set the Texture ID using viz.setUniformInt('texture',0).
How is this done when I define a class derived from postprocess effect library? Also at what texture ID does vizpp_InputTex sit at? Seems with the postprocess examples there's never any reference to the texture ID. I need to know what the IDs of vizpp_InputTex, redTex, greenTex, and blueTex are. Beginning of my class below class warp(vizfx.postprocess.BaseShaderEffect): def _getFragmentCode(self): return """ #version 120 uniform sampler2D vizpp_InputTex; uniform sampler2D redTex; uniform sampler2D blueTex; uniform sampler2D greenTex; etc... |
#2
|
|||
|
|||
You can add textures through the uniforms attribute of the effect class within the _createUniforms method. Here is a simple example:
Code:
class WarpEffect(vizfx.postprocess.BaseShaderEffect): def _getFragmentCode(self): return """ uniform sampler2D vizpp_InputTex; uniform sampler2D redTex; uniform sampler2D blueTex; uniform sampler2D greenTex; void main() { vec2 uv = gl_TexCoord[0].st; vec4 color = vec4(1.0); color.r = texture2D(vizpp_InputTex, texture2D(redTex, uv).rg).r; color.g = texture2D(vizpp_InputTex, texture2D(greenTex, uv).rg).g; color.b = texture2D(vizpp_InputTex, texture2D(blueTex, uv).rg).b; gl_FragColor = color; } """ def _createUniforms(self): # Create texture objects redTex = viz.addTexture(...) greenTex = viz.addTexture(...) blueTex = viz.addTexture(...) # Apply textures to effect (automatically assigns uniform IDs) self.uniforms.addTexture('redTex', redTex) self.uniforms.addTexture('greenTex', greenTex) self.uniforms.addTexture('blueTex', blueTex) Have a look at the Post-Process basics page in the documentation for more info: http://docs.worldviz.com/vizard/postprocess_basics.htm |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Texture Coordinate Generation (TexGen) using Shader | goro | Vizard | 1 | 05-31-2013 01:44 AM |
How to render a texture of the transparent object and then blur it | whj | Vizard | 1 | 09-25-2012 03:15 PM |
Avatar texture swaping | sleiN13 | Vizard | 5 | 06-24-2011 12:48 AM |
How to apply shader and render texture to an object | whj | Vizard | 0 | 04-23-2010 12:23 PM |
Randomly and Continuously Change Avatar's Face Texture | Karla | Vizard | 4 | 08-22-2008 12:14 PM |