Projet d'économiseur d'écran

13468925

Réponses

  • boris cargoboris cargo Membre
    10:16 modifié #152
    slt,
    j'ai profité de la nuit pour avancer un peu. Ca pose quand même qques problemes de faire des reflets.  Mais bon j'ai qque chose de pas trop mal. Ca demande à  etre affiné mais ça ce regarde. ;)

    Donc ouvrir le fichier avec QC, pommeF pour etre en plein écran, pommeT por avoir les parametres, jouer avec le slider pour faire reculer les fenetres... voilà 

    En tout cas c'est sur qu'il faut mettre des preferences pour permettre de tourner sur des petites machines.

    [Fichier joint supprimé par l'administrateur]
  • MoitahMoitah Membre
    10:16 modifié #153
    Génial !
    Par contre, il ne faut pas que la fenêtre puisse passer en dessous de son reflet, car en effet, c'est pas très bon.
    Je peux me lancer dans le design de l'éventuelle page web de l'économiseur ?
  • Vinc26Vinc26 Membre
    novembre 2005 modifié #154
    Yes ! Bravo ! Oui ! Youhoooooo !!!

    Il nous manque vraiment quelqu'un maintenant pour faire la partie programmation (relier la récupération de fenêtre avec l'animation 3D).

    Deux trois choses/questions :
    - Comment activer l'anti-aliasing dans QC ?
    - Je trouve toujours qu'il semble préférable de faire varier la luminosité plutôt que l'alpha.
    - Je suis hyper impressionné par la complexité du mélimélo de noeud !!! Oulllla !!! Bravo !!!
    - Comment se fait-il qu'en position la plus proche, les fenêtre soit si grande ? T'as un écran de 30" ?
    - Je viens de me dire (idée bête de quelqu'un qui y connais rien) que peut-être qu'on pourrais limiter le range de déplacement des fenêtres verticalement de manière à  ce que ça ne s'intercepte pas avec les reflets.
    - Effectivement, ça a l'air complexe pour les reflets. Mais vraiment, je sais pas ce que vous en pensez, mais ça a carrément de la gueule !!!
    - Pour faire que tout revienne en premier plan au mouvement de souris, peux-tu tout faire dans QC ?  Ou faudra-t-il passer par de la programmation ? (genre un module qui pilote l'ensemble de l'animation 3D)
    - J'ai fait une nouvelle version de la petite vidéo (que je n'arrive pas a poster sur mon site web à  cause de free...) mais bref. J'y ai rajouter l'assombrissement au fur-et-a-mesure que ça s'éloigne : c'est carément mieux. J'ai aussi fait revenir tout au premier plan en 1/2 seconde au lieu de 1 seconde : carément mieux aussi !!!

    Pour ce qui est du futur site web : c'est la seule chose sur laquelle j'aurais vraiment pu participer au projet ! C'est l'un de mes métiers... On pourra y bosser à  deux alors (c'est ton job ? t'as des choses à  me montrer ? Je suis toujours ravi de voir ce que les gens font ! Alors hésite pas à  m'envoyer des liens en message privé !)


    Encore bravo ! Et vivement qu'on retrouve quelqu'un, ou que quelqu'un revienne pour la partie programmation et récupération de fenêtre !

    Ciao !
  • boris cargoboris cargo Membre
    10:16 modifié #155

    >Il nous manque vraiment quelqu'un maintenant pour faire la partie
    >programmation(relier la récupération de fenêtre avec l'animation 3D).

    je crois que ça va etre ça le plus dur... ;)

    >Comment activer l'anti-aliasing dans QC ?

    je crois pas qu'on puisse. Ou si on peut ça va enormement dépendre de la carte video.

    > Je trouve toujours qu'il semble préférable de faire varier la luminosité plutôt que l'alpha.

    oui, j'ai pas fait encore cette modif, je me suis surtout concentré sur les reflets.

    >T'as un écran de 30" ?

    un 20'' de chez apple, avec branché dessus un macmini. c'est vrai que je pourrais faire en 800x600 pour la démo. A titre info une fois les fenetres capturées on peut en faire ce que l'on veut, soit les passer en noir/blanc, soit les rendere floues etc...

    >Je viens de me dire (idée bête de quelqu'un qui y connais rien) que peut-être
    >qu'on pourrais limiter le range de déplacement des fenêtres verticalement de
    >manière à  ce que ça ne s'intercepte pas avec les reflets.

    c'est mon calcul de la position du reflets qui n'est pas bon, en fait c'est pas un reflet c'est la même fenetre qui est dupliquée et plancée retournée.


    >Pour faire que tout revienne en premier plan au mouvement de souris, peux-tu
    >tout faire dans QC ?  Ou faudra-t-il passer par de la programmation ? (genre un
    >module qui pilote l'ensemble de l'animation 3D)

    ben je pourrais bricoler qque chose, mais l'idée c'est plutot que tout le graphisme se trouve dans QC, ensuite tous les controles des évenements se passe par programmation. Le programme doit envoyé à  QC un variable entre 0 et 1 pour éloigner les fenetres, les images à  appliquer, leurs positions, et le nombre de fenetres. Je crois pas que ça soit bien dur à  faire, encore faut-il connaitre Xcode.

    >Encore bravo ! Et vivement qu'on retrouve quelqu'un, ou que quelqu'un revienne
    >pour la partie programmation et récupération de fenêtre !

    il faudrait que je contacte celui qui avait mis un programme qui faisait ça (voir page 7), je suis pas arrivé à  le faire marcher d'ailleurs...

    Sinon, au sujet de graphisme ça serait peut etre possible de mettre d'autres choses que les fenetres des appli qui volent, non?? je sais pas des pictos ou autre chose... ???
  • gnomezerognomezero Membre
    10:16 modifié #156
    euh..rien ne se passe chez moi, j'ai bien un fond d'écran avec une fenetre safari d'ouverte. mais rien d'autre... :-\\ j'ai pourtant un 19" c'est pas si petit que ça..quoi que..
  • gnomezerognomezero Membre
    10:16 modifié #157
    Tiens tant qu'on parle de reflet, comment fait on pour inverser les coordonées d'une image? car le reflet je suis sur le bon bout, mais il me faudrais juste un "flip vertical" comme sous toshop. Quelqu'un aurais une idée?
  • Vinc26Vinc26 Membre
    10:16 modifié #158
    dans 1132224059:

    euh..rien ne se passe chez moi, j'ai bien un fond d'écran avec une fenetre safari d'ouverte. mais rien d'autre... :-\\ j'ai pourtant un 19" c'est pas si petit que ça..quoi que..


    t'as bien fait un pomme+F (plein écran) puis un pomme+T pour enfin régler la profondeur... et donc voir le résultat ?


    Apart ça... comment-va-t-on faire pour réussir à  contacter le gars qui avait pondu ce fameux code de récupération des fenêtre ??? Allllooooooooo !!!!!?????
  • GenoseGenose Membre
    10:16 modifié #159
    salut,
    vous avez pensé aux windowServer? c'est lui qui gere toutes les fenetres .

    y'a un document sur ca qui dit si je me souvient bien, que " le serveur de fenetre (windowServer) possede ses propres references aux instances de fenetres qui sont ensuite reprise par l'application ", ça vient d'un document sur  les couches grphique.

    ça doit etre pour ça que les ecran sont aussi "boderlique" quand une fentre d'une autre vous saute dessus (s'active) en plein travail.
  • gnomezerognomezero Membre
    10:16 modifié #160
    dans 1132228883:


    t'as bien fait un pomme+F (plein écran) puis un pomme+T pour enfin régler la profondeur... et donc voir le résultat ?


    :o honte à  moi. :o :o

    sinon on tiens peut-être un gagnant pour la prog.
    dans 1132231051:

    salut,
    vous avez pensé aux windowServer? c'est lui qui gere toutes les fenetres .

    y'a un document sur ca qui dit si je me souvient bien, que " le serveur de fenetre (windowServer) possede ses propres references aux instances de fenetres qui sont ensuite reprise par l'application ", ça vient d'un document sur  les couches grphique.

    ça doit etre pour ça que les ecran sont aussi "boderlique" quand une fentre d'une autre vous saute dessus (s'active) en plein travail.
  • Vinc26Vinc26 Membre
    10:16 modifié #161
    dans 1132231051:

    salut,
    vous avez pensé aux windowServer? c'est lui qui gere toutes les fenetres .

    y'a un document sur ca qui dit si je me souvient bien, que " le serveur de fenetre (windowServer) possede ses propres references aux instances de fenetres qui sont ensuite reprise par l'application ", ça vient d'un document sur  les couches grphique.

    ça doit etre pour ça que les ecran sont aussi "boderlique" quand une fentre d'une autre vous saute dessus (s'active) en plein travail.


    salut  :)

    As-tu lu le tread ? Je ne m'en rappelle plus exactement, mais il me semble que la solution windowServeur a été écarté à  un moment donné. Je ne sais plus pourquoi. Maintenant, si tu as un expérience dans le domaine : tu es le bienvenue ! si tu as aussi les compétences et surtout l'envie de te plonger dans ce qui a été pondu page 7 pour récupérer les fenêtres, n'hésite pas ! On a besoin de quelqu'un qui fasse le lien fenêtres/QuartzComposer comme expliqué plus haut.

  • GenoseGenose Membre
    10:16 modifié #162
    salut,
    j'y connais encore trop rien mais ce sont là  des recherches faites quand j'ai commencer avec cocoa.


    sinon je regarderais plus tart, mais voyait ce document si eux l'on fait alors j'y arriverais,  aprés tout j'ai bien réussi à  acceder à  tout les threads et tasks en cours d'execution dans mon appli, ce truc graphique doit pas etre plus compliquer donc !
    http://developer.apple.com/qa/qa2001/qa1236.html

    à  plus tard, je doit filer, le boulot m'appel !
  • Vinc26Vinc26 Membre
    novembre 2005 modifié #163
    >GENOSE
    Aaaaaaa !!!! J'aime ça les gens invincibles ! C'est comme ça qu'on fini par réussir à  déplacer des montagnes !!!
    Alors effectivement, si t'as une minute, ce serait cool de nous décrire ton approche du projet. selon toi, que devrions-nous pouvoir tirer du windows manager ?

    >BORIS CARGO
    Pour revenir aux essais en cours avec QC, oui, effectivement on pourrait faire voler autre chose que des fenêtres... mais j'avoue surtout espérer un jour voir cette idée d'économiseur d'écran comme une fonction "fun", qui ferai simplement voler les fenêtres quand on n'utilise pas la machine. Après, une fois le défit remporté, on pourrait rajouter dans les options de l'économiseur de faire voler autre chose... pourquoi pas... ou même, comme tu le suggère, de modifier l'apparence (noir et blanc... flou).
    D'ailleur, j'ai observé plus à  fond ta méthode pour faire voler ces fenêtres : je la trouve extremement ingénieuse ! C'est brillant ! Il semble que tu es donné un mouvement perpétuel et aléatoire au fenêtre, puis, que tu ai ajouté la notion d'éloignement, avec comme contraite, que plus elles sont éloignées, plus elles ont le mouvement perpétuel et aléatoire est ample. Bravo !

    Quand tu proposes, pour les démo, de la faire an 800x600, si je peux me permettre, je te conseillerai plutôt de la faire avec la texture telle qu'elle est actuellement, mais qui, au plus proche, serait adaptée à  la taille de l'écran sur laquelle elle est jouée. Si quelqu'un a le même écran que toi, il n'y verra que du feu ; si quelqu'un a un écran différent, l'image du bureau et des fenêtre seront un peu déformés certe, mais donneront quand même l'impression d'un bureau avec barre de menu etc... On aura moins l'impression que tout déborde. Voilà .
  • Vinc26Vinc26 Membre
    10:16 modifié #164
    Bon, je viens de faire joujou avec QC. Je commence enfin a comprendre un peu les bases. Mais attention : que ce soit bien clair : votre formules mathématique de 3D de ouf : j'y panne que dalle !!! Grrrrrrr........

    Bref : Dans le fichier attaché, j'ai modifié deux trois truc pour illustré ce que j'ai tenté d'expliquer dans mon message précédant :
    - Luma au lieu d'Alpha en fonction de la profondeur
    - Fond qui prend la taille de l'écran (ou de la fenêtre) dans lequel c'est regardé
    - pour faire joujou, j'ai remplacé l'input par le x de la souris

    Mais plus ça va, plus je me dit que ça va avoir une sacrée allure ce truc ! Bravo à  nous !!!

    [Fichier joint supprimé par l'administrateur]
  • gnomezerognomezero Membre
    10:16 modifié #165
    sinon personne n'as d'idée pour inverser une images?
    L'effet obtenu est  celui de l'image attachée...j'en suis plus très loin, ile me faut juste réussir à  retourner cette image à  la "flip vertical" dans photoshop...
    Une idée les champions?

    [Fichier joint supprimé par l'administrateur]
  • gnomezerognomezero Membre
    10:16 modifié #166
    euh désolé pour les fautes d'orthographe...je ferais plus...enfin je vais essayer!
  • boris cargoboris cargo Membre
    10:16 modifié #167
    dans 1132315721:

    sinon personne n'as d'idée pour inverser une images?
    à  la "flip vertical" dans photoshop...


    il faut que tu utilise le patch "affine transform", et dans le scaling vertical tu mets -1, mais tu peux aussi faire une rotation de 180° sur l'axe X d'un sprite, ça donne la même chose.
  • gnomezerognomezero Membre
    10:16 modifié #168
    dans 1132317630:

    dans 1132315721:

    sinon personne n'as d'idée pour inverser une images?
    à  la "flip vertical" dans photoshop...


    il faut que tu utilise le patch "affine transform", et dans le scaling vertical tu mets -1, mais tu peux aussi faire une rotation de 180° sur l'axe X d'un sprite, ça donne la même chose.



    cool je vais tester ca et je remonte le tout  o:)
  • boris cargoboris cargo Membre
    10:16 modifié #169
    >Il semble que tu es donné un mouvement perpétuel et aléatoire au fenêtre, puis, que tu ai ajouté la notion d'éloignement,

    ouais c'est le truc, je fais une animation puis je la multiplie par un chiffre qui varie de 0 à  1, ce qui donne pas d'animation quand on a 0, puis animation plein pot quand on est sur 1, avec les variation entre 0 et 1...
  • gnomezerognomezero Membre
    10:16 modifié #170
    dans 1132317630:

    il faut que tu utilise le patch "affine transform", et dans le scaling vertical tu mets -1, mais tu peux aussi faire une rotation de 180° sur l'axe X d'un sprite, ça donne la même chose.

    ca marche nickel. merci.
    Encore un chti souci et ce sera mon dernier mot JP car pour les mouvements je crois que boris tu tiens le bon bout, de mon côté je n'arrive pas (non plus) à  ajouter un gradient à  une image, j'ai testé "Multiply Blend Mode" mais ça me la met toute blanche mon image?
    Je comprends pas...
    Dès que ça marche je vous poste mes travaux.
    Une fois le tout réunis, je pense que la partie QC seras très bien avancée.
  • gnomezerognomezero Membre
    10:16 modifié #171
    Voici ou j'en suis sur la partie que je viens de commencer. Comme j'ai pas trouvé pour appliquer un gradient sur l'image 'reflet' bah j'ai triché en jouant avec l'alpha, c'est pas du tout ce que j'espèrais mais c'est pour donner un aperçu.
    Je n'ai pas utilisé de sprite mais un cube pour donner un profondeur au fenêtres. Le mouvement c'est zéro, Boris fait bien mieux, pour le reste, déchainez vous...

    [Fichier joint supprimé par l'administrateur]
  • Vinc26Vinc26 Membre
    novembre 2005 modifié #172
    Cool ! C'est beau ! J'aime beaucoup l'idée d'avoir ajouté de l'épaisseur à  la fenêtre. Mais un bon antialiasing arrangerai bien les choses quand même. Vous allez pouvoir regarder le code l'un de l'autre et ça ne pourra qu'améliorer le projet final !

    Mais : tous ceux qui ont intervenu ici ne semblent plus revenir. Je viens de tenter de les contacter directement...
    Dans le cas où ils ne reviendraient pas, vous croyez qu'on va le trouver où le gars qui va relier la récup de fenêtre et QC ??? Vous connaissez pas d'autres sites qui parlent Cocoa ? C'est trop bête d'être si près du but quand même !!!
  • gnomezerognomezero Membre
    10:16 modifié #173
    dans 1132326464:

    Mais un bon antialiasing arrangerai bien les choses quand même. Vous allez pouvoir regarder le code l'un de l'autre et ça ne pourra qu'améliorer le projet final !


    Ouais mais c'est mon premier jet. J'ai encore tout plein de choses à  apprendre. Ca viens ca viens. Promis dès que cette partie là  est proche de la version finale, je me met à  Cocoa. pis ça ferais tip-top sur le CV ça "Programmation COCOA" non?
  • Vinc26Vinc26 Membre
    novembre 2005 modifié #174
    C'est clair que ça fait très bien "Développeur Cocoa" dans un CV. (Même si je doute que ce projet te permette de faire le tour de la question...)

    Bon, j'ai encore pas pu résister a mettre les mains dans le camboui... et ça donne ce qui est en pièce jointe.

    J'arrive toujours pas a comprendre comment sont faits, et donc comment mieux régler les reflets. Ca aurait une super allure si on arrivait à  faire les reflets comme dans ton photoshop montré plus haut : c'est à  dire avec un dégradé vers du transparent. Il faudrait aussi que quelque soit le mouvement, les vraies fenêtres ne se "mangent" pas leurs propres reflet (qu'il n'y ai pas superposition). Mais là  dessus, boris, tu m'as l'air bien meilleur que moi pour solutionner le problème.

    Donc, pour utiliser ce qui est en pièce jointe, il faut utiliser les flèches gauche et droite du clavier ! A vous de jouer avec.
    J'ai en effet cherché à  faire les aller-et-retours directement dans QC parce que je pense qu'une interpolation QC sera toujours plus fluide qu'un envoi d'une séquence de valeur de 0 à  1 à  pertir du module Cocoa. (Je sais pas si vous comprenez mon langage tordu...)

    PS: je viens de déceler un défaut dans le reflet du bureau, juste au moment où il quitte lentement le premier plan : dans le cas où l'on voit le reflet (selon le mouvement perpétuel), et bien l'image n'est pas retournée ! elle se retourne plus tard... J'ai beau chercher, je panne que dalle.

    PPS: A propos des commande clavier : en toute logique, il aurait été préférable de commander le tout avec une seul touche : comme un seul interupteur (commandé par l'appli Cocoa : touche appuyée : on est en mode "vole des fenêtre" ; touche relachée : mode "tout au premier plan". SAUF QUE j'y arrive pas ! J'arrive pas a stocker la moindre variable ! Et donc, j'arrive pas a mémoriser l'état de la touche... et donc... enfin bref vous voyez. Comment faire ???

    :)

    [Fichier joint supprimé par l'administrateur]
  • gnomezerognomezero Membre
    10:16 modifié #175
    De mon coté c'est toujours l'impasse sur le fait d'ajouter un gradient au reflet...ssnif. Je tente un tas de truc sans succès. J'y arriverais! B)
  • gnomezerognomezero Membre
    10:16 modifié #176

    les vraies fenêtres ne se "mangent" pas leurs propres reflet (qu'il n'y ai pas superposition). Mais là  dessus, boris, tu m'as l'air bien meilleur que moi pour solutionner le problème.

    c'est ce que j'ai fait dans ma version, la fenêtre "reflet" viens se coller juste en dessous l'autre grâce à  un petit coup de 'math'. Le tour est joué.
  • Vinc26Vinc26 Membre
    10:16 modifié #177
    dans 1132414457:


    les vraies fenêtres ne se "mangent" pas leurs propres reflet (qu'il n'y ai pas superposition). Mais là  dessus, boris, tu m'as l'air bien meilleur que moi pour solutionner le problème.

    c'est ce que j'ai fait dans ma version, la fenêtre "reflet" viens se coller juste en dessous l'autre grâce à  un petit coup de 'math'. Le tour est joué.


    Oui, mais fais donc bouger ta fenêtre verticalement en plus de la faire tourner. Si ça marche, tu pourrais pas regarder le code de la version de boris pour tenter d'y apporter une solution pour voir ?
  • boris cargoboris cargo Membre
    10:16 modifié #178
    dans 1132404816:

    De mon coté c'est toujours l'impasse sur le fait d'ajouter un gradient au reflet...ssnif. Je tente un tas de truc sans succès. J'y arriverais! B)


    il faut que tu te serve de l'alpha pour faire ça. PLus exactement que tu crees un alpha pour ton image source. Par contre il va falloir que tu appliques une image sur tous les cotés du cube pour qu'il parte en transparence.

    Pour l'alpha regarde le fichier joint...tu peux t'en servir comme "boite noire", tu entre une image elle resort avec une transparence.

    [Fichier joint supprimé par l'administrateur]
  • boris cargoboris cargo Membre
    10:16 modifié #179
    dans 1132357446:


    J'ai en effet cherché à  faire les aller-et-retours directement dans QC parce que je pense qu'une interpolation QC sera toujours plus fluide qu'un envoi d'une séquence de valeur de 0 à  1 à  pertir du module Cocoa. (Je sais pas si vous comprenez mon langage tordu...)



    c'estpas impossible que ce soit mieux, ça éviterait d'avoir à  coder l'interpolation entre 0 et 1, puisque dans QC c'est déjà  possible d'avoir des courbes d'interpolation linéaire, cubic ou autre.
    oui, je crois que c'est mieux. avoir un interrupteur.
    Bon mais en tout cas je sais pas si ça va etre possible de faire revenir les fenetres, un screensaver ça quitte dès que tu touche qque chose, à  mieux que dans le programme on puisse fixer ça...
  • boris cargoboris cargo Membre
    10:16 modifié #180
    voilà . J'ai résolut mon problème avec les reflets, ça été un peu difficile. Les reflets ont aussi un dégradé transparent. Au niveau des controles j'ai mis un bouton luma/alpha pour voir ce qui marche le mieux, un sllider range pour voir quel niveau de transparence fonctionne.
    Il me reste à  regarder pour cette histoire d'interrupteur, et puis surtout faire voler les fenetres d'un mouvement plus sympa.
    Ps: sur mon mac mini ça tourne pas très vite, 13fps en plein écran.

    [Fichier joint supprimé par l'administrateur]
  • Vinc26Vinc26 Membre
    novembre 2005 modifié #181
    Ouahou !!! J'adore ! Le dégradé de transparance donne vraiement ! Et en effet, le probleme de position des reflets est 100% réglé ! BRAVO !!!

    Deux trois choses selon moi :
    - Pour donner un meilleur effet de vol de fenêtre, je pense qu'il faudrait donner autant de mouvement propre que de fenêtre. Alors que là , on voit nettement qu'il y a un seul mouvement global pour l'ensemble des fenêtres. (A ce propos, pourrais-tu nous expliquer ta méthode pour qu'en un seul iterator, tu ais plusieurs mouvement séparé dedans ?...)
    - Je leur ajouterai d'ailleur un mouvement de rotation lent comme dans mes ajout de la version eco5v3. Mais chaque sa propre vitesse de rotation (avec une valeur aléatoire ?)
    - Il me semble que le reflet du fond ne réagit pas pareil que ceux des fenetres : voir la pièce jointe : le reflet du fond va du 100% au 0% alors que les autres vont du 80% (a vue d'oeil) au 0%.
    - Pour info, sur mon powerbook Alu15 équipé d'une 9700 à  128Mo de ram : 60fps.
    - Pour la question de l'interupteur, je vais essayer d'y planche encore un peu cet après-midi. A moins que vous ayez des pistes.
    - A propos du fait qu'un économiseur décran quitte immédiatement au mouvement de souris : pas si sur : c'est une application ; et je vois mal le système la forcer à  quitter. A mon avis, il lui demande de quitter, et là , a cette demande, notre économiseur pourrait rapatrier toutes les fenêtres, et enfin quitter.
    - Pour le luma ou l'alpha, mon avis penche toujours pour le luma. Reste à  déterminer le range. Le luma fait plus réaliste selon moi. L'apha rend la lisibilité de l'écran moins évidente... Vous préférez quoi vous ?
    - Comment as-tu prévu le cas d'une fenêtre qui dépasserai de l'écran par le bas ?
    - Enfin, le projet de boite de gnomezero est-il incluable dans le projet de boris ? Parce que les boite, ça a de la gueulle. Mais j'y pense aussi ne risque-t-on pas de beaucoup perdre en performance sur des petites config avec des boites ?

    Voilà  : encore  o:)

    [Fichier joint supprimé par l'administrateur]
Connectez-vous ou Inscrivez-vous pour répondre.