2016-06-17, 19:45
Hello,
I'm using Rapier 10.2.0 with last Krypton build but I found a problem using ArtistSlideshow + visualisation.
actually, it works fine if you use "Spectrum" or "Waveform" but if you want to use another one like "shadertoy" it is not working well as you see only the visualisation.
I thought that it is related to the visualisation that isn't transparent at all an I tried to find a way to fix it and here is the solution.
I'm not sure this is the most elegant way but it works fine for me.
First we need to modify the declaration order between background and visualisation inside "MusicVisualisation.xml" file like this:
Before:
After:
This is not finish as now this is the opposite only the Artist Slideshow is displayed.
We just need to add some transparency for this background inside "includes_Backgrounds.xml" file like this:
That's it using this modification you can use all visualisation with artist slideshow...
@Gade: Do you think that it could be possible to add this modification to your skin in order to not have to modify it on every update?
See you.
Petitdroud
I'm using Rapier 10.2.0 with last Krypton build but I found a problem using ArtistSlideshow + visualisation.
actually, it works fine if you use "Spectrum" or "Waveform" but if you want to use another one like "shadertoy" it is not working well as you see only the visualisation.
I thought that it is related to the visualisation that isn't transparent at all an I tried to find a way to fix it and here is the solution.
I'm not sure this is the most elegant way but it works fine for me.
First we need to modify the declaration order between background and visualisation inside "MusicVisualisation.xml" file like this:
Before:
Code:
<control type="group">
<depth>DepthBackground</depth>
<include condition="[[Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + !Skin.HasSetting(EnableArtistFanartSlideshow)]
| [[Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + !System.HasAddon(script.artistslideshow)]">MusicPlayingArtistFanart</include>
<include condition="System.HasAddon(script.artistslideshow) + [Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + Skin.HasSetting(EnableArtistFanartSlideshow)">MusicPlayingArtistFanartSlideshow</include>
<control type="image">
<include>BackgroundSize</include>
<texture background="true">views/fanart-dim.png</texture>
<animation effect="fade" end="35" condition="true">Conditional</animation>
<visible>Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)</visible>
</control>
</control>
<control type="visualisation" id="2">
<description>Visualization</description>
<depth>DepthContent</depth>
<include>ScreenSize</include>
<visible>!Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)</visible>
</control>
After:
Code:
<!-------------------------- PetitDroud visualisation moved on Top -->
<control type="visualisation" id="2">
<description>Visualization</description>
<depth>DepthContent</depth>
<include>ScreenSize</include>
<visible>!Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)</visible>
</control>
<!------------------------------------------------------------------->
<control type="group">
<depth>DepthBackground</depth>
<include condition="[[Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + !Skin.HasSetting(EnableArtistFanartSlideshow)]
| [[Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + !System.HasAddon(script.artistslideshow)]">MusicPlayingArtistFanart</include>
<include condition="System.HasAddon(script.artistslideshow) + [Skin.HasSetting(UseFanartForMusicPlayingBG) | Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)] + Skin.HasSetting(EnableArtistFanartSlideshow)">MusicPlayingArtistFanartSlideshow</include>
<control type="image">
<include>BackgroundSize</include>
<texture background="true">views/fanart-dim.png</texture>
<animation effect="fade" end="35" condition="true">Conditional</animation>
<visible>Skin.HasSetting(UseVisualizationAndFanartForMusicPlayingBG)</visible>
</control>
</control>
This is not finish as now this is the opposite only the Artist Slideshow is displayed.
We just need to add some transparency for this background inside "includes_Backgrounds.xml" file like this:
Code:
<include name="MusicPlayingArtistFanartSlideshow">
<control type="multiimage">
<include>BackgroundSize</include>
<imagepath>$INFO[Window(Visualisation).Property(ArtistSlideshow)]</imagepath>
<!---------------------- Petitdroud mod adding transparency for using with all visualisation-->
<colordiffuse>99FFFFFF</colordiffuse>
<!-------------------------------------------------------------------------------------------->
<aspectratio>scale</aspectratio>
<timeperimage>10000</timeperimage>
<fadetime>BackgroundCrossfadeTime</fadetime>
<randomize>true</randomize>
<visible>!String.IsEmpty(Window(Visualisation).Property(ArtistSlideshow.ArtworkReady))</visible>
<animation effect="fade" start="0" end="100" time="300">VisibleChange</animation>
<include condition="Skin.HasSetting(AnimateFanartMusicPlayingBG)">BackgroundAnim</include>
</control>
That's it using this modification you can use all visualisation with artist slideshow...
@Gade: Do you think that it could be possible to add this modification to your skin in order to not have to modify it on every update?
See you.
Petitdroud