If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
refreshing problem (guru level)
4 posts
• Page 1 of 1
refreshing problem (guru level)
From what I see, if there are 2 visual modules (each with it's own mgui), one on top of the other, then if you wish to redraw one of these modules, the second one also is forced to redraw. Unfortunately this means some unplreasant consequences.
Scenario.
Top layer is refresed at 25 or 50Hz rate. Cursor playback and some interactions. Nothing very special.
Bottom layer is an envelope graph (c.a.600x400 pixesls, scaled to higher via FS zoom routines), upper and lower part vectorized from 8k points (i.e. 2 arrays per 8192 points) or less (dynamically, from other source). Envelope graph itself is not really refreshed, only once per a while.
But because of the top layer - the bottom layer is being refreshed at the same rate as the top layer, and this produces huge CPU consumption (fortunately not on the core where blue streams go, green data go through other cores via Windows routines). Graph is created by standard FS green prims.
To solve this, I tried 2 methods.
1) Resample prims. If I resampled data to (2x) 300 points - CPU consuption was not that bad. But graph, and it's relation to content - was practically unusable.
2) Bitmap replacement (get bitmap from graph once, and show it instead of vectorized graph). This could work, but... well, in scale 1:1 it looks fine, but in other scales (app resized) - looks very blurry, unusable.
3) Third method that should work is to move interaction layer below the graph, but then the visuals will be somewhat out of content.
So my question is. Is there a way to solve this? For example, to force bottom layer to be refreshed only once? Or different way (via ruby?) of getting/drawing such bitmap? Or handlig graph data via ruby?
When closing visual with such graph, CPU goes almost to zero.
I'm not posting any schematic here, because this is a general problem. Perhaps someone solved this?
Scenario.
Top layer is refresed at 25 or 50Hz rate. Cursor playback and some interactions. Nothing very special.
Bottom layer is an envelope graph (c.a.600x400 pixesls, scaled to higher via FS zoom routines), upper and lower part vectorized from 8k points (i.e. 2 arrays per 8192 points) or less (dynamically, from other source). Envelope graph itself is not really refreshed, only once per a while.
But because of the top layer - the bottom layer is being refreshed at the same rate as the top layer, and this produces huge CPU consumption (fortunately not on the core where blue streams go, green data go through other cores via Windows routines). Graph is created by standard FS green prims.
To solve this, I tried 2 methods.
1) Resample prims. If I resampled data to (2x) 300 points - CPU consuption was not that bad. But graph, and it's relation to content - was practically unusable.
2) Bitmap replacement (get bitmap from graph once, and show it instead of vectorized graph). This could work, but... well, in scale 1:1 it looks fine, but in other scales (app resized) - looks very blurry, unusable.
3) Third method that should work is to move interaction layer below the graph, but then the visuals will be somewhat out of content.
So my question is. Is there a way to solve this? For example, to force bottom layer to be refreshed only once? Or different way (via ruby?) of getting/drawing such bitmap? Or handlig graph data via ruby?
When closing visual with such graph, CPU goes almost to zero.
I'm not posting any schematic here, because this is a general problem. Perhaps someone solved this?
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
Feel free to donate. Thank you for your contribution.
- tester
- Posts: 1786
- Joined: Wed Jan 18, 2012 10:52 pm
- Location: Poland, internet
Re: refreshing problem (guru level)
Create bitmap from envelope and then recreate bitmap when you resize the app. That would be a solution.
- Youlean
- Posts: 176
- Joined: Mon Jun 09, 2014 2:49 pm
Re: refreshing problem (guru level)
This is what the Redraw node can do on Bitmap prim? When zoom options (via ExeZoom prim) are used, it creates new size of the bitmap?
Context.
I'm doing the project in some scale, and use zoomed workflow. On export, app is zoomed according to workflow. From what I see on zoomed workflow - bitmap is a bit blurry, compared to vectors.
Thus - the workflow zoom is independent from ExeZoom prim activity?
Context.
I'm doing the project in some scale, and use zoomed workflow. On export, app is zoomed according to workflow. From what I see on zoomed workflow - bitmap is a bit blurry, compared to vectors.
Thus - the workflow zoom is independent from ExeZoom prim activity?
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
Feel free to donate. Thank you for your contribution.
- tester
- Posts: 1786
- Joined: Wed Jan 18, 2012 10:52 pm
- Location: Poland, internet
Re: refreshing problem (guru level)
Sorry, I am not familiar with exezoom
- Youlean
- Posts: 176
- Joined: Mon Jun 09, 2014 2:49 pm
4 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 60 guests