I use panels in my skin to alternately show the browser, the playlists, the settings, the sampler, etc.
The switching of one panel to another used to be instantly. Now (VDJ 2024) it is with a considerable delay. Not the whole panel, mind you. Just certain (AFAICS random) graphics take longer to appear. Sometimes more than a second. Sometimes a gray background is shown before the correct graphics appear.
Is this a known problem? With a solution?
Or are there new script code requirements for panels?
The switching of one panel to another used to be instantly. Now (VDJ 2024) it is with a considerable delay. Not the whole panel, mind you. Just certain (AFAICS random) graphics take longer to appear. Sometimes more than a second. Sometimes a gray background is shown before the correct graphics appear.
Is this a known problem? With a solution?
Or are there new script code requirements for panels?
Posté Thu 19 Sep 24 @ 6:26 pm
Probably the size of the panels doesn't match the content
Posté Fri 20 Sep 24 @ 5:32 am
@Adion
I'm still looking into this.
For now, I cannot locate any graphics outside of the intended area...
I'm still looking into this.
For now, I cannot locate any graphics outside of the intended area...
Posté Fri 20 Sep 24 @ 2:25 pm
Even though you could just start your panel without adding any pos and size, you could add to help the Engine updating just that area.
<panel name="" etc >
<pos x="" y="" />
<size width="" height=""/>
... followed by your nested items ..
</panel>
and make sure the nested items are within the defined area.
Can you post your code for a panel here ?
<panel name="" etc >
<pos x="" y="" />
<size width="" height=""/>
... followed by your nested items ..
</panel>
and make sure the nested items are within the defined area.
Can you post your code for a panel here ?
Posté Fri 20 Sep 24 @ 3:10 pm
These are the panel selection buttons:
<group name="PANEL SELECTOR">
<button action="set '$MAINPANEL' 0 & var_equal '$SESSION' 1 ? browser_gotofolder 'D:\TROPICAL' & browser_sort 'artist' & browser_sort 'genre' : var_equal '$SESSION' 2 ? browser_gotofolder 'D:\CUSTOM' & browser_sort 'artist' & browser_sort 'genre' : browser_gotofolder 'D:\REGGAE' & browser_sort 'artist' & browser_sort 'genre'">
<size width="46" height="46"/>
<pos x="915" y="487"/>
<up x="915" y="487"/>
<selected x="915" y="1597"/>
</button>
<button action="set '$MAINPANEL' 1">
<size width="46" height="46"/>
<pos x="964" y="487"/>
<up x="964" y="487"/>
<selected x="964" y="1597"/>
</button>
<button action="set '$MAINPANEL' 2">
<size width="46" height="46"/>
<pos x="964" y="535"/>
<up x="964" y="535"/>
<selected x="964" y="1645"/>
</button>
<button action="set '$MAINPANEL' 3 & sideview 'sidelist'">
<size width="46" height="46"/>
<pos x="915" y="535"/>
<up x="915" y="535"/>
<selected x="915" y="1645"/>
</button>
</group>
These are the session selection buttons:
<group name="SESSION SELECTOR">
<button action="cycle '$SESSION' -3">
<size width="46" height="46"/>
<pos x="256" y="952"/>
<up x="34" y="4767"/>
<down x="1157" y="5327"/>
</button>
<button action="cycle '$SESSION' 3">
<size width="46" height="46"/>
<pos x="424" y="952"/>
<up x="202" y="4767"/>
<down x="1324" y="5327"/>
</button>
<group name="SESSION PANNELS">
<panel name="SESSION 0" visible="var '$SESSION' 0">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\REGGAE.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4707"/>
<down x="1526" y="4517"/>
<selected x="1526" y="4517"/>
</button>
</panel>
<panel name="SESSION 1" visible="var '$SESSION' 1">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\TROPICAL.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4767"/>
<down x="1526" y="4577"/>
<selected x="1526" y="4577"/>
</button>
</panel>
<panel name="SESSION 2" visible="var '$SESSION' 2">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\CUSTOM.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4827"/>
<down x="1526" y="4637"/>
<selected x="1526" y="4637"/>
</button>
</panel>
</group>
These are the panels:
<group name="MAIN PANELS">
<panel name="BROWSER" visible="var '$MAINPANEL' 0">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="2242"/>
<selected x="24" y="2242"/>
etc.
</panel>
<panel name="EFFECTS" visible="var '$MAINPANEL' 1">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="3357"/>
<selected x="24" y="3357"/>
etc.
</panel>
<panel name="SETTINGS" visible="var '$MAINPANEL' 2">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="4409"/>
<selected x="24" y="4409"/>
etc.
</panel>
<panel name="SESSION" visible="var '$MAINPANEL' 3">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="2847"/>
<selected x="24" y="2847"/>
etc.
</panel>
</group>
<group name="PANEL SELECTOR">
<button action="set '$MAINPANEL' 0 & var_equal '$SESSION' 1 ? browser_gotofolder 'D:\TROPICAL' & browser_sort 'artist' & browser_sort 'genre' : var_equal '$SESSION' 2 ? browser_gotofolder 'D:\CUSTOM' & browser_sort 'artist' & browser_sort 'genre' : browser_gotofolder 'D:\REGGAE' & browser_sort 'artist' & browser_sort 'genre'">
<size width="46" height="46"/>
<pos x="915" y="487"/>
<up x="915" y="487"/>
<selected x="915" y="1597"/>
</button>
<button action="set '$MAINPANEL' 1">
<size width="46" height="46"/>
<pos x="964" y="487"/>
<up x="964" y="487"/>
<selected x="964" y="1597"/>
</button>
<button action="set '$MAINPANEL' 2">
<size width="46" height="46"/>
<pos x="964" y="535"/>
<up x="964" y="535"/>
<selected x="964" y="1645"/>
</button>
<button action="set '$MAINPANEL' 3 & sideview 'sidelist'">
<size width="46" height="46"/>
<pos x="915" y="535"/>
<up x="915" y="535"/>
<selected x="915" y="1645"/>
</button>
</group>
These are the session selection buttons:
<group name="SESSION SELECTOR">
<button action="cycle '$SESSION' -3">
<size width="46" height="46"/>
<pos x="256" y="952"/>
<up x="34" y="4767"/>
<down x="1157" y="5327"/>
</button>
<button action="cycle '$SESSION' 3">
<size width="46" height="46"/>
<pos x="424" y="952"/>
<up x="202" y="4767"/>
<down x="1324" y="5327"/>
</button>
<group name="SESSION PANNELS">
<panel name="SESSION 0" visible="var '$SESSION' 0">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\REGGAE.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4707"/>
<down x="1526" y="4517"/>
<selected x="1526" y="4517"/>
</button>
</panel>
<panel name="SESSION 1" visible="var '$SESSION' 1">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\TROPICAL.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4767"/>
<down x="1526" y="4577"/>
<selected x="1526" y="4577"/>
</button>
</panel>
<panel name="SESSION 2" visible="var '$SESSION' 2">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<button action="browser_gotofolder 'D:\CUSTOM.vdjfolder' & browser_window 'folders' & browser_enter & playlist_load & switch_sidelist_playlist">
<size width="114" height="45"/>
<pos x="306" y="952"/>
<up x="1526" y="4827"/>
<down x="1526" y="4637"/>
<selected x="1526" y="4637"/>
</button>
</panel>
</group>
These are the panels:
<group name="MAIN PANELS">
<panel name="BROWSER" visible="var '$MAINPANEL' 0">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="2242"/>
<selected x="24" y="2242"/>
etc.
</panel>
<panel name="EFFECTS" visible="var '$MAINPANEL' 1">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="3357"/>
<selected x="24" y="3357"/>
etc.
</panel>
<panel name="SETTINGS" visible="var '$MAINPANEL' 2">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="4409"/>
<selected x="24" y="4409"/>
etc.
</panel>
<panel name="SESSION" visible="var '$MAINPANEL' 3">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
<up x="24" y="2847"/>
<down x="24" y="2847"/>
<selected x="24" y="2847"/>
etc.
</panel>
</group>
Posté Fri 20 Sep 24 @ 3:53 pm
What I get while changing the center panels (which take up to a second to fully load with the correct graphics) in my skin is random 'filler' graphics (grey) and missing lines, like this:
LOADING
LOADED
LOADING
LOADED
Posté Sat 21 Sep 24 @ 8:06 am
Here's another panel:
LOADING
LOADED
LOADING
LOADED
Posté Sat 21 Sep 24 @ 8:08 am
I'm in the process of updating and debugging this adapted older skin for use in VDJ 2024...
Posté Sat 21 Sep 24 @ 8:10 am
I was going to say, maybe it's because they're all bitmap graphics. VDJ skins now mainly use vector graphics.
Even with vectors though, that's a lot of drawing, with so many buttons, then all the outlines.
Even with vectors though, that's a lot of drawing, with so many buttons, then all the outlines.
Posté Sat 21 Sep 24 @ 8:21 am
So... you're saying VDJ 7 was graphically more powerful than VDJ 8 is?
I had no problems at all using my skin with the older software... Everything loaded instantly.
The skin is sized 1:1 to the touch screen (1920 x 1080), so no resizing is necessary, unlike vector graphics. I would think the skin is pretty basic, since the only thing changing is the center panel. No transparency used, no break lines, no fancy stuff...
I was thinking... Maybe instead of panels I should look into floating windows (never done them, but have seem them mentioned) or another way of showing different content in the same place that doesn't take up so many resources? Does anyone know the best way to do this?
I had no problems at all using my skin with the older software... Everything loaded instantly.
The skin is sized 1:1 to the touch screen (1920 x 1080), so no resizing is necessary, unlike vector graphics. I would think the skin is pretty basic, since the only thing changing is the center panel. No transparency used, no break lines, no fancy stuff...
I was thinking... Maybe instead of panels I should look into floating windows (never done them, but have seem them mentioned) or another way of showing different content in the same place that doesn't take up so many resources? Does anyone know the best way to do this?
Posté Sat 21 Sep 24 @ 8:25 am
No, I'm saying that bitmaps are old hat now, so maybe that's why you're getting glitches.
I notice some of the co-ordinates for the bitmaps are huge too, outside the skin boundaries.
Obviously the graphics capability of the computer comes into it as well (slow GPU, poor driver, VRAM).
How old is the original skin? The skin code has changed a lot over the years too.
[EDIT] I just found your "origin" post from 13 years ago here
I notice some of the co-ordinates for the bitmaps are huge too, outside the skin boundaries.
Obviously the graphics capability of the computer comes into it as well (slow GPU, poor driver, VRAM).
How old is the original skin? The skin code has changed a lot over the years too.
[EDIT] I just found your "origin" post from 13 years ago here
Posté Sat 21 Sep 24 @ 8:34 am
There's no problem using bitmaps, but the new skin engine is a bit more strict in size definitions to improve performance compared to vdj 7
Posté Sat 21 Sep 24 @ 9:06 am
@Groovin'
The original skin was made for VDJ 7.
What do you mean with coordinates outside the skin boundaries?
You mean outside of the 1920 x 1080? Any changing graphic would always and necessarily be outside of the visible area...
The original skin was made for VDJ 7.
What do you mean with coordinates outside the skin boundaries?
You mean outside of the 1920 x 1080? Any changing graphic would always and necessarily be outside of the visible area...
Posté Sat 21 Sep 24 @ 9:37 am
@ADION
"a bit more strict in size definitions"
Please elaborate. What am I doing wrong with my size defs?
"a bit more strict in size definitions"
Please elaborate. What am I doing wrong with my size defs?
Posté Sat 21 Sep 24 @ 9:39 am
I don't know, since I don't know the contents of the panel, but in general, you have for example
So in this case, all the elements inside should fit within (245, 594) -> (1672, 1075)
<panel name="SESSION" visible="var '$MAINPANEL' 3">
<size width="1427" height="481"/>
<pos x="245" y="594"/>
So in this case, all the elements inside should fit within (245, 594) -> (1672, 1075)
Posté Sat 21 Sep 24 @ 12:27 pm
Thanks @ADION for this clarification.
I'm already in the process of checking all the button, slider and panel coordinates one by one to see if anything is out of bounds...
I will leave a message here if I find the culprit (thus confirming your suggestion for the possible reason of the slow loading panels)!
I'm already in the process of checking all the button, slider and panel coordinates one by one to see if anything is out of bounds...
I will leave a message here if I find the culprit (thus confirming your suggestion for the possible reason of the slow loading panels)!
Posté Sat 21 Sep 24 @ 1:33 pm
"I just found your 'origin' post from 13 years ago..."
@Groovin'
LOL - A blast from the past!
@Groovin'
LOL - A blast from the past!
Posté Sat 21 Sep 24 @ 1:35 pm
Posté Sat 21 Sep 24 @ 7:54 pm
After a LOT of debugging and modifying, the skin now works as intended (with a few small exceptions, mainly with the "setting" command).
I have honestly no idea what exactly caused the delay in panel loading, so I cannot leave a solution here for future reference by other forum members.
It was probably something in the vein of what Adion mentioned...
I have honestly no idea what exactly caused the delay in panel loading, so I cannot leave a solution here for future reference by other forum members.
It was probably something in the vein of what Adion mentioned...
Posté Tue 24 Sep 24 @ 3:28 pm