Titles and Text question - jit.gl.text2d

Valentin's icon

Hi All,

I am working on a patch (attached) which is for doing titles using OpenGL. It was easy enough to use jit.gl.text2d to create titles over video planes. I then decided that I wanted to do a blur/fade for every line of text, and used a jit.gl.node to capture the 2D text to a texture and then slabs to blur and fade. Works fine.

The problem is that I then have my text on a videoplane which obscures the video on the videoplane behind it. I can use another slab to key that out and get titles with blur over video, but is there a better way to do this?

Is there another way to blur the text2D objects as-is without capturing to a texture and then using a slab (and then keying the rest of the video plane?)

Alternatively, is there a better method for displaying the resulting texture over the video behind , having just the text showing?

Max Patch
Copy patch and select New From Clipboard in Max.

Thanks so much. Just want to be sure I use the best looking, most efficient method to accomplish this effect.

Valentin

Valentin's icon

Still no thoughts? - lol I guess most people are more excited about physics and all the new features rather than silly 'ol text and titles.

Hopefully someone has some ideas. =)

V

Rob Ramirez's icon

i can think of two solutions for this.
you first want to make sure you have @blend_enable 1 and @depth_enable 0 on your videoplanes, and control the draw order with the @layer attribute.

Max Patch
Copy patch and select New From Clipboard in Max.

you can then use a gl.slab or gl.pix to create an alpha channel based on the luminance value of the texture coming out of gl.node.
the following gen patch is one way:

alternatively, you can use gl.text3d instead of 2d. this allows you to set the @erase_color alpha value of your gl.node to 0, and the captured texture will no longer have an opaque background.

gl.text2d doesn't allow this because of the way it renders text to a texture, instead of gl.text3d, which draws the text as a mesh.