Alors dans le dossier krpanotools
dans le dossier "templates"
sont tous les fichiers de configuration correspondants aux dropplets, j'ai édité "normal.config" avec un éditeur de texte et changé la ligne entourée de rouge
et rajouté ces quelques lignes
Code : Tout sélectionner
xmltemplate_additional_file=templates/xml/skin/defaultskin.xml
xmltemplate_additional_file=templates/xml/skin/buttons.png
xmltemplate_additional_file=templates/xml/skin/qtvr-cursors.png
xmltemplate_additional_file=templates/xml/skin/drag-cursors.png
donc je viens de lui demander de rajouter des fichiers au xml principal qui seront ma navigation personnalisée, il donc possible de rajouter tous les fichiers que vous voulez, plugins, hotspots, etc..., il faut bien sûr rajouter ces fichiers dans le dossier "template/xml/skin"
dans ce dossier "template/xml/skin"
je vais maintenant éditer les boutons d'origine "buttons.png"
et les transformer avec photoshop (pour info mes nouveaux boutons sont à la taille de 36pix X 36pix)
il me reste à éditer le fichier "defaultskin.xml" pour enlever ce qui ne me servira plus et rajouter tout ce que vous avez rajouter dans le "normal.config", càd, les logos, plugins, hotspots, etc...
Code : Tout sélectionner
<krpano version="1.0.8">
<!-- default quality settings -->
<display flash10="on" movequality="LOW" stillquality="HIGH" movequality10="HIGH" stillquality10="HIGH" />
<!-- events: set the custom cursor on start and fullscreen events for button changes -->
<events onxmlcomplete="action(setuppano);"
onenterfullscreen="set(plugin[openfs].visible,false); set(plugin[closefs].visible,true);"
onexitfullscreen ="set(plugin[openfs].visible,true); set(plugin[closefs].visible,false);"
/>
<!-- button showtext() style -->
<textstyle name="buttonstyle" font="Arial" fontsize="12" bold="true" italic="true"
textcolor="0x000000" background="false" border="false"
blendmode="layer" effect="glow(0xFFFFFF,0.85,4,4);dropshadow(2,45,0x000000,4,1);"
origin="cursor" edge="bottom" xoffset="15" yoffset="-5" showtime="0.1" fadeintime="0.1" fadetime="0.1"
/>
<style name="button" url="%SWFPATH%/skin/buttons.png" keep="true" />
<!-- some default buttons (zooming, direction, hotspots on/off, fullscreen) -->
<plugin name="in" align="bottom" x="-160" y="10" style="button" crop="160|0|40|40" onovercrop="160|40|40|40" ondowncrop="160|80|40|40" ondown="set(fov_moveforce,-1);" onup="set(fov_moveforce,0);" />
<plugin name="out" align="bottom" x="-120" y="10" style="button" crop="200|0|40|40" onovercrop="200|40|40|40" ondowncrop="200|80|40|40" ondown="set(fov_moveforce,+1);" onup="set(fov_moveforce,0);" />
<plugin name="left" align="bottom" x="-80" y="10" style="button" crop= "0|0|40|40" onovercrop= "0|40|40|40" ondowncrop= "0|80|40|40" ondown="set(hlookat_moveforce,-1);" onup="set(hlookat_moveforce,0);" />
<plugin name="right" align="bottom" x="-40" y="10" style="button" crop= "40|0|40|40" onovercrop= "40|40|40|40" ondowncrop= "40|80|40|40" ondown="set(hlookat_moveforce,+1);" onup="set(hlookat_moveforce,0);" />
<plugin name="up" align="bottom" x="+0" y="10" style="button" crop= "80|0|40|40" onovercrop= "80|40|40|40" ondowncrop= "80|80|40|40" ondown="set(vlookat_moveforce,-1);" onup="set(vlookat_moveforce,0);" />
<plugin name="down" align="bottom" x="+40" y="10" style="button" crop="120|0|40|40" onovercrop="120|40|40|40" ondowncrop="120|80|40|40" ondown="set(vlookat_moveforce,+1);" onup="set(vlookat_moveforce,0);" />
<plugin name="quality" align="bottom" x="+80" y="10" style="button" crop="240|0|40|40" onovercrop="240|40|40|40" ondowncrop="240|80|40|40" onhover="showtext(Toggle Quality, buttonstyle);" onclick="switch(display.flash10,on,off);invalidatescreen();" />
<plugin name="dragmode" align="bottom" x="+120" y="10" style="button" crop="400|0|40|40" onovercrop="400|40|40|40" ondowncrop="400|80|40|40" onhover="showtext(Change Controlmode, buttonstyle);" onclick="action(dragcursor);" visible="true" />
<plugin name="movemode" align="bottom" x="+120" y="10" style="button" crop="360|0|40|40" onovercrop="360|40|40|40" ondowncrop="360|80|40|40" onhover="showtext(Change Controlmode, buttonstyle);" onclick="action(qtvrcursor);" visible="false" />
<plugin name="openfs" align="bottom" x="+160" y="10" style="button" crop="280|0|40|40" onovercrop="280|40|40|40" ondowncrop="280|80|40|40" onhover="showtext(Fullscreen, buttonstyle);" onclick="set(fullscreen,true);" visible="true" />
<plugin name="closefs" align="bottom" x="+160" y="10" style="button" crop="320|0|40|40" onovercrop="320|40|40|40" ondowncrop="320|80|40|40" onhover="showtext(Exit Fullscreen,buttonstyle);" onclick="set(fullscreen,false);" visible="false" />
<!-- right-click context menu to change the viewing settings -->
<contextmenu>
<item caption="KRPANO" />
<item caption="FULLSCREEN" />
<item caption="normal view" onclick="action(view_normal);" separator="true" />
<item caption="fisheye view" onclick="action(view_fisheye);" />
<item caption="architectural view" onclick="action(view_architectural);" />
<item caption="stereographic view" onclick="action(view_stereographic);" />
<item caption="pannini view" onclick="action(view_pannini);" />
<item caption="little planet view" onclick="action(view_littleplanet);" />
</contextmenu>
<!-- actions to change the mouse cursor -->
<action name="dragcursor">
set(plugin[dragmode].visible, false);
set(plugin[movemode].visible, true);
set(control.mousetype, drag2D);
set(cursors.url, %SWFPATH%/skin/drag-cursors.png);
set(cursors.type, drag);
set(cursors.move, 2|0|30|32);
set(cursors.drag, 37|0|30|32);
</action>
<action name="qtvrcursor">
set(plugin[dragmode].visible, true);
set(plugin[movemode].visible, false);
set(control.mousetype, moveto);
set(cursors.url, %SWFPATH%/skin/qtvr-cursors.png);
set(cursors.type, 8way);
set(cursors.move, 0|0|16|16);
set(cursors.drag, 16|0|16|16);
set(cursors.arrow_u, 32|0|16|16);
set(cursors.arrow_d, 48|0|16|16);
set(cursors.arrow_l, 64|0|16|16);
set(cursors.arrow_r, 80|0|16|16);
set(cursors.arrow_lu, 96|0|16|16);
set(cursors.arrow_ru, 112|0|16|16);
set(cursors.arrow_rd, 128|0|16|16);
set(cursors.arrow_ld, 144|0|16|16);
</action>
<!-- actions for view changing -->
<action name="view_normal">
tween(view.fovmax, 150.0, distance(179, 1.00), easeoutquad);
tween(view.architectural, 0.0, distance(1.0, 0.45), easeoutquad);
tween(view.fisheye, 0.0, distance(1.0, 0.45), easeoutquad, set(view.stereographic,false); set(view.pannini,false); set(display.flash10,on); );
</action>
<action name="view_fisheye">
set(display.flash10,off);
tween(view.architectural, 0.0, distance(1.0, 0.30), easeoutquad);
tween(view.fisheye, 0.0 ,distance(1.0, 0.30), easeoutquad, set(view.stereographic,false); set(view.pannini,false); set(view.fovmax,179); tween(view.fisheye, 0.35, distance(1.0,1.25)); );
</action>
<action name="view_architectural">
tween(view.fovmax, 150.0, distance(179, 1.00), easeoutquad);
tween(view.architectural, 1.0, distance(1.0, 0.45), easeoutquad);
tween(view.fisheye, 0.0, distance(1.0, 0.45), easeoutquad, set(view.stereographic,false);set(view.pannini,false);set(display.flash10,on); );
</action>
<action name="view_stereographic">
set(display.flash10,off);
tween(view.architectural, 0.0, 0.25);
set(backtonormalfirst,false);
if(view.pannini == true, set(backtonormalfirst,true) );
if(view.stereographic == false, set(backtonormalfirst,true) );
if(backtonormalfirst, tween(view.fisheye, 0.0 ,distance(1.0, 0.25), easeoutquad, WAIT); );
set(view.pannini, false);
set(view.stereographic, true);
set(view.fovmax, 150);
tween(view.fisheye, 1.0, distance(1.0, 0.75), easeoutquad);
</action>
<action name="view_pannini">
set(display.flash10,off);
tween(view.architectural, 0.0, 0.25);
set(backtonormalfirst,false);
if(view.pannini == false, set(backtonormalfirst,true) );
if(view.stereographic == false, set(backtonormalfirst,true) );
if(backtonormalfirst, tween(view.fisheye, 0.0 ,distance(1.0, 0.25), easeoutquad, WAIT); );
set(view.pannini, true);
set(view.stereographic, true);
set(view.fovmax, 150);
tween(view.fisheye, 1.0, distance(1.0, 0.75), easeoutquad);
</action>
<action name="view_littleplanet">
set(display.flash10,off);
tween(view.architectural, 0.0, 0.25);
tween(view.vlookat, 90, distance(179, 1.50), easeoutquad);
set(backtonormalfirst,false);
if(view.pannini == true, set(backtonormalfirst,true) );
if(view.stereographic == false, set(backtonormalfirst,true) );
if(backtonormalfirst, tween(view.fisheye, 0.0 ,distance(1.0, 0.25), easeoutquad, WAIT); );
set(view.pannini, false);
set(view.stereographic, true);
set(view.fovmax, 150);
tween(view.fisheye, 1.0, distance(1.0, 0.75), easeoutquad);
tween(view.fov, 150, distance(179, 0.75), easeoutquad);
</action>
<!-- setup pano, will be called on the onxmlcomplete event -->
<action name="setuppano">
<!-- set qtvr cursor -->
action(qtvrcursor);
<!-- hide the other view settings in the context menu on partial panos -->
if(ispartialpano === true, set(showviewitems,false), set(showviewitems,true));
set(contextmenu.item[2].visible, get(showviewitems));
set(contextmenu.item[3].visible, get(showviewitems));
set(contextmenu.item[4].visible, get(showviewitems));
set(contextmenu.item[5].visible, get(showviewitems));
set(contextmenu.item[6].visible, get(showviewitems));
set(contextmenu.item[7].visible, get(showviewitems));
</action>
</krpano>
Code : Tout sélectionner
<krpano version="1.0.8">
<!-- default quality settings -->
<display flash10="on" movequality="LOW" stillquality="HIGH" movequality10="HIGH" stillquality10="HIGH" />
<!-- events: set the custom cursor on start and fullscreen events for button changes -->
<events onxmlcomplete="action(qtvrcursor);"
onenterfullscreen="set(plugin[openfs].visible,false); set(plugin[closefs].visible,true);"
onexitfullscreen ="set(plugin[openfs].visible,true); set(plugin[closefs].visible,false);"
/>
<!-- button showtext() style -->
<textstyle name="buttonstyle" font="Arial" fontsize="12" bold="true" italic="true"
textcolor="0x000000" background="false" border="false"
blendmode="layer" effect="glow(0xFFFFFF,0.85,4,4);dropshadow(2,45,0x000000,4,1);"
origin="cursor" edge="bottom" xoffset="15" yoffset="-5" showtime="0.1" fadeintime="0.1" fadetime="0.1"
/>
<style name="button" url="%SWFPATH%/skin/buttons.png" keep="true" />
<!-- some default buttons (zooming, direction, hotspots on/off, fullscreen) -->
<plugin name="in" align="bottom" x="-160" y="10" style="button" crop="160|0|37|37" onovercrop="160|37|37|37" ondown="set(fov_moveforce,-1);" onup="set(fov_moveforce,0);" onhover="showtext(Zoom +,buttonstyle);" />
<plugin name="out" align="bottom" x="-120" y="10" style="button" crop="200|0|37|37" onovercrop="200|37|37|37" ondown="set(fov_moveforce,+1);" onup="set(fov_moveforce,0);" onhover="showtext(Zoom -,buttonstyle);"/>
<plugin name="left" align="bottom" x="-80" y="10" style="button" crop= "0|0|37|37" onovercrop= "0|37|37|37" ondown="set(hlookat_moveforce,-1);" onup="set(hlookat_moveforce,0);" onhover="showtext(Vers la gauche,buttonstyle);"/>
<plugin name="right" align="bottom" x="-40" y="10" style="button" crop= "40|0|37|37" onovercrop= "40|37|37|37" ondown="set(hlookat_moveforce,+1);" onup="set(hlookat_moveforce,0);" onhover="showtext(Vers la droite,buttonstyle);"/>
<plugin name="up" align="bottom" x="+0" y="10" style="button" crop= "80|0|37|37" onovercrop= "80|37|37|37" ondown="set(vlookat_moveforce,+1);" onup="set(vlookat_moveforce,0);" onhover="showtext(Vers le bas,buttonstyle);"/>
<plugin name="down" align="bottom" x="+40" y="10" style="button" crop="120|0|37|37" onovercrop="120|37|37|37" ondown="set(vlookat_moveforce,-1);" onup="set(vlookat_moveforce,0);" onhover="showtext(vers le haut,buttonstyle);"/>
<plugin name="rotation" align="bottom" x="+80" y="10" style="button" crop="240|0|37|37" onovercrop="240|37|37|37" onhover="showtext(Rotation, buttonstyle);" onclick="switch(autoratate.enabled);" />
<plugin name="sound" align="bottom" x="+120" y="10" style="button" crop="400|0|37|37" onovercrop="400|37|37|37" onhover="showtext(Son, buttonstyle);" onclick="" />
<plugin name="info" align="bottom" x="+200" y="10" style="button" crop="360|0|37|37" onovercrop="360|37|37|37" onhover="showtext(Informations, buttonstyle);" onclick="" />
<plugin name="openfs" align="bottom" x="+160" y="10" style="button" crop="280|0|37|37" onovercrop="280|37|37|37" onhover="showtext(Plein écran, buttonstyle);" onclick="set(fullscreen,true);" visible="true" />
<plugin name="closefs" align="bottom" x="+160" y="10" style="button" crop="320|0|37|37" onovercrop="320|37|37|37" onhover="showtext(Sortir du plein écran,buttonstyle);" onclick="set(fullscreen,false);" visible="false" />
<plugin name="help" align="bottom" x="-200" y="10" style="button" crop="440|0|37|37" onovercrop="440|37|37|37" onhover="showtext(Aide,buttonstyle);" onclick="" />
<action name="qtvrcursor">
set(plugin[dragmode].visible, true);
set(control.mousetype, moveto);
set(cursors.url, %SWFPATH%/skin/qtvr-cursors.png);
set(cursors.type, 8way);
set(cursors.move, 0|0|16|16);
set(cursors.drag, 16|0|16|16);
set(cursors.arrow_u, 32|0|16|16);
set(cursors.arrow_d, 48|0|16|16);
set(cursors.arrow_l, 64|0|16|16);
set(cursors.arrow_r, 80|0|16|16);
set(cursors.arrow_lu, 96|0|16|16);
set(cursors.arrow_ru, 112|0|16|16);
set(cursors.arrow_rd, 128|0|16|16);
set(cursors.arrow_ld, 144|0|16|16);
</action>
</krpano>
Il ne vous reste qu'à entrer un équirectangle dans le dropplet "MAKE PANO( NORMAL)" pour qu'automatiquement tous les fichiers se créent
et voici le résultat
En conclusion vous avez dans les fichiers créés 6 faces de cube, les cubes tablet, les cubes mobile, j'ai choisi ce dropplet car je ne fais de multirules, mais il est possible de le faire avec n'importe quel dropplet de krpanotools
N'oubliez pas de sauvegarder le fichier "template", sinon à la prochaine mise à jour, vous risquez de tout perdre...