Forums Développement Multimédia

Aller au contenu

Animer dans une fenêtre

Director

5 réponses à ce sujet

#1 rems81

    Ceinture Blanche

  • Members
  • Pip
  • 8 messages

Posté 11 December 2009 - 11:55 AM

Bonjour,

Je génère deux type de projection pour la même application : une projection plein écran, une autre projection dans une fenêtre déplaçable.
Je me retrouve donc avec deux EXE : "FullScreen" et "InAWindow".

Chacun de ces fichiers appelle ensuite un "A000" dans lequel se trouve des boutons appelants "B000", "C000", etc.

Pour "InAWindow", je n'arrive à trouver le bon paramétrage pour faire en sorte que "A000", puis "B000" etc. s'affichent bien au même endroit que "InAWindow". Précisons : je lance "InAWindow" qui m'appelle directement "A000". Je déplace la fenêtre, en bas de mon écran par exemple, puis je clique sur le bouton qui m'appelle "C000". Là, la fenêtre se replace au centre de l'écran.

J'ai bien essayé de cocher ou de décocher l'option "Centré" dans "Modèle d'affichage" de "InAWindow.
J'ai essayé aussi les combinaisons d'options dans "Paramètres de publication", mais je n'arrive pas à trouver...

Je crois me souvenir que dans des versions plus anciennes de Director, il y avait une notion de récupération des paramètres de la projection pour les autres animations du projet, mais je ne retrouve pas cette notion dans Director 11.

Vous avez une idée sur la question ?

Bonne journée à tous,
Rémy.

Modifié par rems81, 11 December 2009 - 11:55 AM.


#2 glurp

    Modérateur

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1260 messages

Posté 11 December 2009 - 21:19 PM

Salut rems81,

Une idée comme ça (purement théorique, je n'ai pas testé) ; en jouant sur le rect de la fenêtre, n'y a-t-il pas moyen de placer celle-ci à un endroit précis ?

Lingo


-- Capturer le rect de la deuxième fenêtre --
tRect = (the windowlist)[2].rect


#3 Leedoriden

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 4350 messages

Posté 12 December 2009 - 16:16 PM

Hello

Yes avec le rect c'est possible

script d'animation Fen 1
global gWinRect

on prepareframe
  gWinRect = _player.windowlist[1].rect  
end

on capture dans la variable globale la position de la fenêtre 1, si je déplace Fen 1 vers le bas ou autre posistion et que je lance l'animation ( Fen 2 ), Fen 2 prend la position de la Fen 1

dans la fenêtre 2, on récupère la valeur de cette variable

script d'animation Fen 2

global gWinRect

on preparemovie
  _player.activewindow.rect = gWinRect
end

script à adapter selon les besoins

#4 rems81

    Ceinture Blanche

  • Members
  • Pip
  • 8 messages

Posté 13 December 2009 - 18:25 PM

Bonjour et merci pour vos réponses et suggestions.

J'ai testé la solution de Leedoriden, ça fonctionne pour le positionnement, mais on a un scratch à chaque entrée dans un movie.
En fait, le nouveau movie s'affiche d'abord au centre, puis il est replacé aux valeurs du rect transmises..
.
Je suis très étonné de ne rien avoir à ce sujet dans la doc de Director.
Les pages parlant de la génération de projection me semblent bien simplistes, j'ai le sentiment que qq chose m'échappe !?!

Bonne journée à tous,
Rémy.

#5 glurp

    Modérateur

  • Moderateur
  • PipPipPipPipPipPipPipPip
  • 1260 messages

Posté 14 December 2009 - 11:58 AM

Hello rems81,

Bizarre, le prepareMovie() est sensé avoir lieu avant l'affichage du movie... Tu es sûr de ne pas avoir utilisé startMovie() à la place (qui lui a lieu juste après) ?

Pour passer de movie à movie, tu utilises bien go to movie("nom") ?

Je sais que c'est un peu bateau comme question, mais qu'est-ce qui semble t'échapper (la gestion de projet, la génération de projector, l'utilisation de plusieurs fenêtre, ...) ?

#6 rems81

    Ceinture Blanche

  • Members
  • Pip
  • 8 messages

Posté 14 December 2009 - 12:48 PM

Salut Glurp,

C'est bien dans le prepareMovie que je lance le script, et j'utilise bien go to movie.
Mais par contre, j'avais oublié de préciser, la plupart de mes changement de movie sont appellés à partir de SWF.
Les boutons dans les SWF appellent une fonction "vaAuMovie" qui est définie dans Director.

Le plus étonnant est qu'il semblerait que les coordonnées gardées soient celle de la position du DÉBUT du movie :
Je suis sur mon A000, je déplace la fenêtre vers mon écran 2, je clique sur un bouton, je déplace ma fenêtre sur mon écran 1 et je clique sur un bouton => un flash sur mon écran 2, puis ma fenêtre apparait sur mon écran 1.

Alors j'ai bien essayé d'utiliser le stopMovie, le prepareFrame et ma fonction vaAuMovie pour enregistrer le rect, mais rien n'y fait...

Cela-dit, au test-utilisateur ce n'est pas si gênant.
L'utilisateur place la fenêtre là où elle ne le dérange pas en début de présentation.
Au premier changement de movie on a un beau scratch, puis tout se passe plutôt bien par la suite.

Étrange quand même...

Ce qui semble m'échapper : je suis quasi-certain que dans des versions ultérieures de Director (8.5 par exemple), on n'avait pas ce souci. Si on décochait la case "centrer la scène sur l'écran", on avait le résultat que je recherche, sans avoir à travailler sur le rect.
Mais bon, je ne vais pas couiner outre-mesure là-dessus, la version 11 est bien agréable à travailler, et Director reste largement efficace à mon sens, surtout en comparaison de Flash, avec lequel j'ai beaucoup de mal, manque d'expérience sans doute ???

Merci encore à vous tous pour vos réactions,
Rémy.



1 utilisateur(s) li(sen)t ce sujet

0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)

authorised training centre

Centre de Formation Mediabox - Adobe et Apple Authorised Training Center.

Déclaré auprès de la Direction du Travail et de la Formation Professionnelle

Mediabox : SARL au capital de 62.000€ - Numéro d'activité : 11 75 44555 75 - SIRET : 49371646800035

MEDIABOX, 23, rue de Bruxelles, 75009 PARIS

FFP