Forum

Short freezing of Renderer (EX9)

Is there any way to prevent the short freezing of the Renderer (EX9) when doing one of the following operations (think it is all the same effect)

  • changing the input on Text (EX9.Geometry)
  • enabling/disabling a EX9.Effect-node
  • switching one input of Group (EX9) with Switch (Node Input)

Markus

lets see…

the Text (Ex9.Geometry) problem and the switching of inputs on a group-problem seem to be caused by lack of preloading. make sure that any source mesh, or texture is loaded by having them connected to an effect and drawing them in a hidden renderer. else the meshes and textures only get loaded when they get their connection “switched through” to the renderer.

for the textproblem: maybe create more Text (Ex9.Geometry) nodes and switch them. but make sure you also have them preloaded by drawing them on an other renderer!

enabling disabling an effect…i don’t know of anything that could cause a freeze there…

ah! and have an eye on Renderer (TTY) to see when resources get loaded. if you preload everything correctly you should not see any output on the tty.

Moin,

thank you for your tips … but I am not sure if they can help me.

My simple task (at least it sound simple) is to display a really smooth scrolling text from a textfile with unknown length.

Text(GDI) would be perfect, but does not really scroll smoothly.

Text(EX9) scrolls perfectly smooth, but has some (known) problems.
Text(EX9) only works up to sizes with VertexCount < 65536.
Because of this I have to split the text into a unknown number of smaller parts that form a spread … BUT Text(EX9) is not spreadable … so preloading this unknown count of texts is a kind of a problem !

Any Ideas ?

Is anybody working on this general VVVV-text-problem, that is very high on (I think almost everybodys) wishlist ?

Markus

i think you should definitely use a gdi-texture for scrolling large amount of text.

you’ll only get hickups while writing the gdi-texture in one frame. from then on you’ll get smoothest scrolling. use one large texture in which you write all the text, line by line. and then you use gridsplit on a texturetransform to scroll through all the lines.

okok. the funpart is to find a way to write an arbitrary long text to lines on the gdi-texture… but there should be ways.

Text(GDI) would be perfect, but does not really scroll smoothly.

while gdi cant render the text sub-pixel precise, the ex9 renderer can shift it smoothly.
so use frac to do the integer shifts in the gdi, and use a texturetransform to tweak the y position according to the fractional value.

another technique is having the gdi renderer in double size and use a shader to do a clean antialiased downsampling in the ex9 renderer.

i agree high quality text is a high priority issue. its kind of unlikely to find a general solution which is efficient, simple and high quality at the same time. but i am sure we can make the whole process much more easy.

actually sanch is working on another technique: have one texture with all the characters and place a quad with a fragment of that texture for each letter. for now he is reading font metrics from a text file (see
Font Metrics can help you). Crossfont or similar will help you to create the font metric file. but i agree that vvvv should have some nodes to read the font metrics directly. but that seems to be another proposed diploma thesis.

@joreg: shouldnt the Scroll node spoil the fun?

@sanch: there has been a module in the old forum that schould be very similar to what you are working on.

Do you know this ?

Text__DX9_.zip (37.7 kB)

Hi,

thanks for all your tips.

I switched from my good old system with an AGP-card to a much faster sytem with a PCI Express Nvidia6800.
On this system the above described “Reload Freeze” is so short that it is hardly noticeable.
So I think I will continue using Text(EX.9Geometry) for this scolling text, because it makes some other things much easier.

Markus

Thanks for the module MSBERGER , i have update it to the new beta with the dynamic mesh since the triangle node is a little bit buggy , so you are able to use bigger sentence , there is no vertex limitation

Text__DX9_.zip (40.4 kB)