Interface needs to much cpu

hi there,

i’m tryin to build my first interface and i guess i’m doing some things quite wrong as it already needs 50 percent of 1,5 gig ram :D all of this without any functions on the buttons, those are all still quads, some with very small textures (64x64 px).

i’ve made one “component” of my interface to a node. this component consists of some spreaded quads and some single quads (in sum about 60), all connected to the same transform in pin, to place and size it right in the interface later, and all connected to the same group out pin. now i want to use this component 12 times in my interface and place it in a way the cross node would do it (4x3); but i can’t spread the node i’ve made as it got spreads of length different to 12 in it, the length of one spread in the component node is even changing.
so this can’t be solved by not spreading those quads in the components mode, as i don’t know the no. of slices of all of the spreads before…

what i’m doing right now is 12 times the component next to each other and stalloning what comes out of the cross node into every x/y coordinate. but this seems to be very “ugly” to me and as i said i end up using 50% cpu. if this helps i could cons all transform values in my component node before they are connected to a transform pin, resulting in only 1 quad and 1 transform in the components node (would this help?), but still i would have to copy the node 12 times…

what can i do/what am i doing wrong/interface with dx9-yes or no?

thank you

hm, can you supply a small patch showing what you’re basically doing?

in the meantime, maybe this patch (done by tonfilm and lost in the recent vvvviki crash) gives you some idea on managing multiple transformations…

howtoGroupTransforms2.v4p (7.5 kB)

Check out the userpage off:

Woei, Sanch or elektromeier to find some ready to use graphic user interface (GUI) modules, and see how they did it.

vvvv’s power is spreads, so you don’t have to copy the same node 12 times.

PS I can’t open/download the patch Diki attached… is it me (firefox) or something else?

Do you have a MainLoop node in your patch to limit the number of frames per second vvvv renders?
If you don’t, vvvv will render as much frames as it possibly can, resulting in 100% (or 50% on a dual-core/hyperthreading machine) CPU usage
Try limiting the ‘maximum foreground fps’ to about 30 and see if it’ll still use a lot of cpu power

i reworked my patch and concatenated all coordinates and values before using the transform node, and it works much better now; i also used tonfilms example to spread it, thanks diki. i do have between 15 and 25% cpu usage now, which is ok, but i guess it could be done even better/is still too much…
would it be less power consuming to use woeis button, which as far as i can see is done with shaders (i don’t know those yet), or is my approach with quads ok? i can’t just change my quads into woeis buttons, because some of my quads should become sliders (which would mean for me to split my concatenated spread again), and some react to more than left/right click, e.g. shift-click…i can’t really see how this is done with the shader version, nor how it’s look can actually be changed…maybe i’ll get it, will try.

and no i have mainloop node yet, so i definitely will use that…

i attached my patch, which now is quite simple to overview. all x/y positions and the scale values of all interface elements are concatenated and connected to one transform pin…if you got time let me know what you would do better/ how you’d do the slider button thing…thx

interface_layer_v2.v4p (79.4 kB)

oh, maybe it works with sanch’s gui elements…will have a look right now. thanks

would it be less power consuming to use woeis button, which as far as i can see is done with shaders (i don’t know those yet), or is my approach with quads ok?

quads are ok.

i can’t just change my quads into woeis buttons, because some of my quads should become sliders (which would mean for me to split my concatenated spread again), and some react to more than left/right click, e.g. shift-click…i can’t really see how this is done with the shader version, nor how it’s look can actually be changed.

i don’t see any difference there. quad or shader is only a question for outputting (means displaying) which doesn’t affect the "input"logic (shift-click etc.)

if you got time let me know what you would do better/ how you’d do the slider button thing

basically you have twelve times the same complex interface.
what about having only one of them and e.g. twelve buttons to swap between?

kalle: hm, i need to see all of the elements that are in use, but i could start with none of these elements and create only those i 'll use. but i like your idea as well, as it would save me a lot of space on my screen, i might use it to make the single elements easier.
and yes i already found that it’s quite easy to adapt the gui elemenst to my needs,

thanks