FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Une autre façon de terminer une application.
par Francis-mr Aujourd'hui à 12:07

» Compilateur FBPano
par jean_debord Aujourd'hui à 10:09

» Copier / coller du texte à partir de la fenêtre de commandes
par jean_debord Aujourd'hui à 9:46

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par papydall Aujourd'hui à 5:01

» Mettre en windows en veille
par papydall Aujourd'hui à 4:15

» Stretch_on ne stretch plus...
par papydall Hier à 15:22

» Pb 18 (en analyse): RESTORE_LABEL avec DATA à la fin
par Jack Hier à 13:21

» Problème de traitement des opérateurs avec le compilateur.
par Pedro Alvarez Sam 19 Aoû 2017 - 20:01

» Pb 17 (résolu): ITEM_SELECT ne fonctionne pas
par Jack Jeu 17 Aoû 2017 - 19:26

» un nouveau editeur panobasic
par Jean Claude Jeu 17 Aoû 2017 - 10:18

» Le compilateur.
par Pedro Alvarez Jeu 17 Aoû 2017 - 8:36

» Pb 16 (résolu): ON_CLOSE plante à l'exécution
par Jack Mer 16 Aoû 2017 - 20:00

» Pb 15 (résolu): TIMER_ON plante à l'exécution
par Jack Mer 16 Aoû 2017 - 19:58

» KGF_dll - nouvelles versions
par Yannick Dim 13 Aoû 2017 - 17:35

» probleme d'outil
par Yannick Dim 13 Aoû 2017 - 17:32

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2017
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 Titrage - génériques

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : 1, 2  Suivant
AuteurMessage
Marc37



Nombre de messages : 443
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Titrage - génériques   Lun 30 Jan 2017 - 16:43

Bonjour à tous !

Je vous livre les quelques essais de titrage (génériques) que j'ai fait dimanche.

Maintenant, je vais me changer les idées en allant voir le Puissance 4 en 2D en cours de développement sur le forum. Very Happy

Code:
WIDTH 0, 800
HEIGHT 0, 500
LEFT 0,(screen_x-800)/2
TOP 0,(screen_y-500)/2

LABEL Quitter

DIM x,y,z

DIM h,w
    w = WIDTH_CLIENT(0)
    h = HEIGHT_CLIENT(0)

ON_CLOSE 0, Quitter

espace_sideral()

generic_part_1()
generic_part_2()
generic_part_3()
generic_part_4()
generic_part_5()

TERMINATE
end
' ------------------------------------------------------------------------------
SUB generic_part_1()
DIM_LOCAL i
    FONT_NAME 10,"arial"
    FONT_SIZE 10,30
    FONT_BOLD 10
    FONT_COLOR 10,0,160,40 : ' couleur des textes
    SPRITE_TEXT 1," Une Production "
    SPRITE_TEXT 2,"  MARC Limited "
    SPRITE_POSITION 1, 250,170
    SPRITE_POSITION 2, 250,220
    FOR i = 1 to 25
        deplace()
        pause 50
    NEXT i
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    FOR i = 1 to 10
        deplace()
        pause 50
    NEXT i
    FOR i = 0 to -70 STEP -1
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        deplace()
        pause 50
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_2()
DIM_LOCAL i
    FONT_NAME 10,"arial"
    FONT_SIZE 10,25
    FONT_BOLD 10
    FONT_COLOR 10,0,200,250 : ' couleur des textes
    SPRITE_TEXT 1," Il y a  quelque  temps, naissait "
    SPRITE_TEXT 2," un langage simple et convivial,"
    SPRITE_TEXT 3," très convivial… "
    SPRITE_POSITION 1, 150,150
    SPRITE_POSITION 2, 150,200
    SPRITE_POSITION 3, 150,250
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    SPRITE_SHOW 3
    FOR i = 1 to 10
        deplace()
        pause 50
    NEXT i
    FOR i = 0 to -25 STEP -1
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        SPRITE_BRIGHTNESS 3, i
        deplace()
        pause 25
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
    SPRITE_HIDE 3
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_3()
DIM_LOCAL i,j
    FONT_NAME 10,"arial"
    FONT_SIZE 10,50
    FONT_COLOR 10,240,240,127 : ' couleur des textes
    FONT_BOLD_off 10
    SPRITE_TEXT 1," Le langage "
    FONT_BOLD_OFF 10
    FONT_SIZE 10,60
    SPRITE_TEXT 2," PANORAMIC "
    SPRITE_POSITION 1, 200,140
    SPRITE_POSITION 2, 130,240
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    FOR i = 1 to 10
        deplace()
        pause 50
    NEXT i
    FOR i = 0 to 250 step 2
       SPRITE_POSITION 1,200+i,140-i
       deplace()
    NEXT i
    FOR i = 0 to -25 STEP -1
        SPRITE_BRIGHTNESS 2, i
        deplace()
        pause 25
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_4()
    DIM_LOCAL i,j,k
    FONT_NAME 10,"arial"
    FONT_SIZE 10,24
    FONT_BOLD_OFF 10
    FONT_COLOR 10,240,250,50 : ' couleur des textes
    SPRITE_TEXT 1,"PANORAMIC  est un  langage simple"
    SPRITE_TEXT 2,"et  convivial  utilisant   la   syntaxe  du"
    SPRITE_TEXT 3,"célèbre  langage  Basic. Il a été étudié"
    SPRITE_TEXT 4,"pour      être       simple     d'utilisation."
    SPRITE_TEXT 5,"Ce   logiciel   s'appelle   PANORAMIC"
    SPRITE_TEXT 6,"parce   qu'il  a   un  très  large  champ"
    SPRITE_TEXT 7,"d'activités  :  objets   systèmes,   sons"
    SPRITE_TEXT 8,"musiques,    images,   films,   dessins"
    SPRITE_TEXT 9,"en 2D,  mondes 2D  avec  gestion  de"
    SPRITE_TEXT 10,"SPRITES, mondes 3D avec objets 3D"
    SPRITE_TEXT 11,"caméra 3D,  lumière 3D, fichiers texte"
    SPRITE_TEXT 12,"pilotage d'EXCEL, etc, etc."
    FOR i = 1 to 12
        SPRITE_POSITION i, 135,-500+(38*i)
        SPRITE_SHOW i
    NEXT i
    k=1
    FOR i = 450 to -500 STEP -1
        FOR j = 1 to 12
           SPRITE_POSITION j, 135,i+(j*38)
           DISPLAY
        NEXT j
    NEXT i
    FOR i = 1 to 12
        SPRITE_HIDE i
    NEXT i
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_5()
    DIM_LOCAL i ,j
    FONT_NAME 10,"arial"
    FONT_SIZE 10,80
    FONT_BOLD 10
    FONT_COLOR 10,250,250,250 : ' couleur des textes
    SPRITE_TEXT 1," F "
    SPRITE_TEXT 2, " I "
    SPRITE_TEXT 3, " N "
    SPRITE_POSITION 1, 770,170
    SPRITE_POSITION 2, 350,170
    SPRITE_POSITION 3, -100,170
    FOR i = 1 to 3
    SPRITE_SHOW i
    NEXT i
    FOR j = 500 to 0 STEP -2
        SPRITE_POSITION 1,270+j,170
        SPRITE_POSITION 3,400-j,170
        DISPLAY
        deplace()
    NEXT j

    FOR i = 1 to 10
        deplace()
        pause 50
    NEXT i
    FOR i = 0 to -50 STEP -1
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        SPRITE_BRIGHTNESS 3, i
        deplace()
        Pause 50
    NEXT i
    SPRITE_HIDE 1
    FOR i = 0 to -50 STEP -2
        FOR j = 20 to 23
            SPRITE_BRIGHTNESS j, i
            deplace()
            pause 50
        NEXT j
    NEXT i
END_SUB
' ------------------------------------------------------------------------------
SUB Espace_sideral()
    DIM_LOCAL i%
    PICTURE 1
    FULL_SPACE 1
    COLOR 1,0,0,0
    2d_target_is 1
    2d_pen_color 255,255,255
    for i%=1 to 250
        2d_point int(rnd(w)),int(rnd(h))
    next i%
    for i%=1 to 25
        2d_circle int(rnd(w)),int(rnd(h)),2
    next i%
    IMAGE 2
    2D_IMAGE_COPY 2,0,0,w,h
    CLS
    COLOR 1,0,0,0
    2d_target_is 1
    2d_pen_color 255,255,255
    for i%=1 to 250
        2d_point int(rnd(w)),int(rnd(h))
    next i%
    for i%=1 to 10
        2d_circle int(rnd(w)),int(rnd(h)),3
    next i%
    IMAGE 3
    2D_IMAGE_COPY 3,0,0,w,h
    SCENE2D 10
    FULL_SPACE 10
    SPRITE_CREATE_HIDE
    FOR i% = 1 to 12
        SPRITE i%
    NEXT i%
    FOR i% = 20 to 23
        SPRITE i%
    NEXT i%
    SPRITE_IMAGE_LOAD 20,3
    SPRITE_IMAGE_LOAD 21,3
    SPRITE_IMAGE_LOAD 22,2
    SPRITE_IMAGE_LOAD 23,2
    x=0
    y=0
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    SPRITE_POSITION 22,x,z-h
    SPRITE_POSITION 23,x,z
    FOR i% = 20 to 23
        SPRITE_SHOW i%
    NEXT i%
END_SUB
' ------------------------------------------------------------------------------
SUB deplace()
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    pause 10
    SPRITE_POSITION 22,x,z-h
    SPRITE_POSITION 23,x,z
    y=y+1
    z=z+1
    pause 10
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    y=y+1
END_SUB
' ------------------------------------------------------------------------------
Quitter:
   TERMINATE
RETURN
' ------------------------------------------------------------------------------


Dernière édition par Marc37 le Lun 30 Jan 2017 - 18:32, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7975
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Lun 30 Jan 2017 - 18:09

cheers Génial Marc37 !

Même si le défilement est un peu lent, les effets sont superbes.
Je vais regarder ton code de près et je le garde dans quelques octets de ma clef mémoire.
Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc37



Nombre de messages : 443
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Re: Titrage - génériques   Lun 30 Jan 2017 - 18:16

Merci Ygeronimi,

Ce n'est que du brouillon écrit en vrac pour tester les possibilités.

Mais il est vrai que Panoramic de base est assez lent. Crying or Very sad

Il faudrait un super compilateur turbo Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jjn4

avatar

Nombre de messages : 1594
Date d'inscription : 13/09/2009

MessageSujet: +++   Lun 30 Jan 2017 - 18:29

Joli !
On dirait une publicité à la télé.
(D'ailleurs, c'est là qu'on devrait l'y trouver) Laughing
Amusante prestation !
cheers alien flower
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://jjn4.e-monsite.com
Yannick

avatar

Nombre de messages : 7975
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Lun 30 Jan 2017 - 18:33

si tu boucles avec for tu peux accélérer avec step...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Lun 30 Jan 2017 - 19:26

Effectivement, c'est assez spectaculaire et bien fait.

On peut peut-être accélérer (un peu) en mettant les 'pause' au minimum.
On peut aussi en jouant sur les step comme dit ygeronimi, en mettant par exemple -2 au lieu de -1, mais ça devient un peu saccadé et moins fluide.

En tout cas, bravo Marc !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 4989
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Titrage - génériques   Lun 30 Jan 2017 - 22:55

Excellent travail ! cheers

On se croirait dans Pangine2D !

@Jack,
Tu nous a dit que tu comptais intégrer Pangine2D à Panoramic, l'essai de Marc prouve qu'il y aura des utilisateurs... Very Happy


Bravo Marc !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Mar 31 Jan 2017 - 0:23

Super boulot. Ça peut clairement servir pour les intros
Pour moi par contre le texte défilant sur 12 lignes, c'est le seul qui ne me convainc pas. Je pense que tu devrais plutôt chercher une autre solution comme de mettre le texte sur une picture avec les 12 lignes et charger un sprite avec ces 12 lignes. Je pense que ce sprite devrait être plus rapide à faire scroller vers le haut.

J'ai fais quelques modifs pour voir et proposer des idées dont tu te serviras peut être si tu en trouves bonnes certaines
Code:
WIDTH 0, 800
HEIGHT 0, 500
LEFT 0,(screen_x-800)/2
TOP 0,(screen_y-500)/2

LABEL Quitter

DIM x,y,z

DIM h,w
    w = WIDTH_CLIENT(0)
    h = HEIGHT_CLIENT(0)

ON_CLOSE 0, Quitter

espace_sideral()

generic_part_1()
generic_part_2()
generic_part_3()
generic_part_4()
generic_part_5()

TERMINATE
end
' ------------------------------------------------------------------------------
SUB generic_part_1()
DIM_LOCAL i
    FONT_NAME 10,"arial"
    FONT_SIZE 10,30
    FONT_BOLD 10
    FONT_COLOR 10,0,160,40 : ' couleur des textes
    SPRITE_TEXT 1," Une Production "
    SPRITE_TEXT 2,"  MARC Limited "
    SPRITE_POSITION 1, 250,170
    SPRITE_POSITION 2, 250,220
    FOR i = 1 to 15
        deplace()
        PAUSE 20
    NEXT i
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    FOR i = 1 to 15
        deplace()
        PAUSE 20
    NEXT i
    FOR i = 0 to -70 STEP -2
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        deplace()
        PAUSE 20
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_2()
DIM_LOCAL i
    FONT_NAME 10,"arial"
    FONT_SIZE 10,25
    FONT_BOLD 10
    FONT_COLOR 10,0,200,250 : ' couleur des textes
    SPRITE_TEXT 1," Il y a  quelque  temps, naissait "
    SPRITE_TEXT 2," un langage simple et convivial,"
    SPRITE_TEXT 3," très convivial… "
    SPRITE_POSITION 1, 150,150
    SPRITE_POSITION 2, 150,200
    SPRITE_POSITION 3, 150,250
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    SPRITE_SHOW 3
    FOR i = 1 to 10
        deplace()
        PAUSE 20
    NEXT i
    FOR i = 0 to -25 STEP -1
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        SPRITE_BRIGHTNESS 3, i
        deplace()
        PAUSE 20
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
    SPRITE_HIDE 3
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_3()
DIM_LOCAL i,j
    FONT_NAME 10,"arial"
    FONT_SIZE 10,50
    FONT_COLOR 10,240,240,127 : ' couleur des textes
    FONT_BOLD_off 10
    SPRITE_TEXT 1," Le langage "
    FONT_BOLD_OFF 10
    FONT_SIZE 10,60
    SPRITE_TEXT 2," PANORAMIC "
    SPRITE_POSITION 1, 200,140
    SPRITE_POSITION 2, 130,240
    SPRITE_SHOW 1
    SPRITE_SHOW 2
    FOR i = 1 to 10
        deplace()
        PAUSE 20
    NEXT i
    FOR i = 0 to 250 step 4
      SPRITE_POSITION 1,200+i,140-i
      deplace()
      PAUSE 20
    NEXT i
    FOR i = 0 to -25 STEP -1
        SPRITE_BRIGHTNESS 2, i
        deplace()
        PAUSE 20
    NEXT i
    SPRITE_HIDE 1
    SPRITE_HIDE 2
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_4()
    DIM_LOCAL i,j,k
    FONT_NAME 10,"arial"
    FONT_SIZE 10,24
    FONT_BOLD_OFF 10
    FONT_COLOR 10,240,250,50 : ' couleur des textes
    SPRITE_TEXT 1,"PANORAMIC  est un  langage simple"
    SPRITE_TEXT 2,"et  convivial  utilisant  la  syntaxe  du"
    SPRITE_TEXT 3,"célèbre  langage  Basic. Il a été étudié"
    SPRITE_TEXT 4,"pour      être      simple    d'utilisation."
    SPRITE_TEXT 5,"Ce  logiciel  s'appelle  PANORAMIC"
    SPRITE_TEXT 6,"parce  qu'il  a  un  très  large  champ"
    SPRITE_TEXT 7,"d'activités  :  objets  systèmes,  sons"
    SPRITE_TEXT 8,"musiques,    images,  films,  dessins"
    SPRITE_TEXT 9,"en 2D,  mondes 2D  avec  gestion  de"
    SPRITE_TEXT 10,"SPRITES, mondes 3D avec objets 3D"
    SPRITE_TEXT 11,"caméra 3D,  lumière 3D, fichiers texte"
    SPRITE_TEXT 12,"pilotage d'EXCEL, etc, etc."
    FOR i = 1 to 12
        SPRITE_POSITION i, 135,-500+(38*i)
        SPRITE_SHOW i
        PAUSE 5
    NEXT i
    k=1
    FOR i = 450 to -500 STEP -4
        FOR j = 1 to 12
          SPRITE_POSITION j, 135,i+(j*38)
        NEXT j
        deplace()
        DISPLAY
    NEXT i
    FOR i = 1 to 12
        SPRITE_HIDE i
        PAUSE 5
    NEXT i
END_SUB
' ------------------------------------------------------------------------------
SUB generic_part_5()
    DIM_LOCAL i ,j
    FONT_NAME 10,"arial"
    FONT_SIZE 10,80
    FONT_BOLD 10
    FONT_COLOR 10,250,250,250 : ' couleur des textes
    SPRITE_TEXT 1," F "
    SPRITE_TEXT 2, " I "
    SPRITE_TEXT 3, " N "
    SPRITE_POSITION 1, 770,170
    SPRITE_POSITION 2, 350,170
    SPRITE_POSITION 3, -100,170
    FOR i = 1 to 3
      SPRITE_SHOW i
    NEXT i
    FOR j = 500 to 0 STEP -3
        SPRITE_POSITION 1,270+j,170
        SPRITE_POSITION 3,400-j,170
        DISPLAY
        deplace()
        PAUSE 5
    NEXT j

    FOR i = 1 to 10
        deplace()
        pause 50
    NEXT i
    FOR i = 0 to -50 STEP -5
        SPRITE_BRIGHTNESS 1, i
        SPRITE_BRIGHTNESS 2, i
        SPRITE_BRIGHTNESS 3, i
        deplace()
        PAUSE 5
    NEXT i
    SPRITE_HIDE 1
    FOR i = 0 to -50 STEP -5
        FOR j = 20 to 23
            SPRITE_BRIGHTNESS j, i
            deplace()
            PAUSE 5
        NEXT j
    NEXT i
END_SUB
' ------------------------------------------------------------------------------
SUB Espace_sideral()
    DIM_LOCAL i%
    PICTURE 1
    FULL_SPACE 1
    COLOR 1,0,0,0
    2d_target_is 1
    2d_pen_color 255,255,255
    for i%=1 to 250
        2d_point int(rnd(w)),int(rnd(h))
    next i%
    for i%=1 to 25
        2d_circle int(rnd(w)),int(rnd(h)),2
    next i%
    IMAGE 2
    2D_IMAGE_COPY 2,0,0,w,h
    CLS
    COLOR 1,0,0,0
    2d_target_is 1
    2d_pen_color 255,255,255
    for i%=1 to 250
        2d_point int(rnd(w)),int(rnd(h))
    next i%
    for i%=1 to 10
        2d_circle int(rnd(w)),int(rnd(h)),3
    next i%
    IMAGE 3
    2D_IMAGE_COPY 3,0,0,w,h
    SCENE2D 10
    FULL_SPACE 10
    SPRITE_CREATE_HIDE
    FOR i% = 1 to 12
        SPRITE i%
    NEXT i%
    FOR i% = 20 to 23
        SPRITE i%
    NEXT i%
    SPRITE_IMAGE_LOAD 20,3
    SPRITE_IMAGE_LOAD 21,3
    SPRITE_IMAGE_LOAD 22,2
    SPRITE_IMAGE_LOAD 23,2
    x=0
    y=0
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    SPRITE_POSITION 22,x,z-h
    SPRITE_POSITION 23,x,z
    FOR i% = 20 to 23
        SPRITE_SHOW i%
    NEXT i%
END_SUB
' ------------------------------------------------------------------------------
SUB deplace()
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    pause 10
    SPRITE_POSITION 22,x,z-h
    SPRITE_POSITION 23,x,z
    y=y+1
    z=z+1
    pause 10
    SPRITE_POSITION 20,x,y-h
    SPRITE_POSITION 21,x,y
    y=y+1
END_SUB
' ------------------------------------------------------------------------------
Quitter:
  TERMINATE
RETURN
' ------------------------------------------------------------------------------


J'espère que tu continueras tes travaux. C'est plus que prometteur. Les réglages sont complexes mais tu as déjà un résultat très sympas surtout avec les changement de luminosité.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
silverman

avatar

Nombre de messages : 464
Age : 45
Localisation : Picardie
Date d'inscription : 19/03/2015

MessageSujet: Re: Titrage - génériques   Mar 31 Jan 2017 - 14:46

Belle démo! Dommage que panoramic soit à genoux avec seulement 16 sprites  Mad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7975
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mar 31 Jan 2017 - 15:43

Je pense que cela ira mieux si jack arrive à intégrer le moteur de pangin 
à Panoramic.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Mer 1 Fév 2017 - 12:11

Qui sait quand ce sera intégré il refera peut être la même démo avec les bonnes fonctions pour montrer la différence de rendu ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7975
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 1 Fév 2017 - 15:32

Perso, je n' ai pas tout compris du fonctionnement de "IMAGE"
Cet "objet" n' ayant pas de dimensionnement possible, il me semble qu' il prend celle du fichier chargé.
Je pense donc que le mieux serait de charger un fichier de fond noir (0,0,0) avec les dimensions du SCENE2D
puis d'y écrire les lignes du générique et de le charge le tout dans un SPRITE défilant par SPRITE_IMAGE_LOAD.

Mais bon, je dis peut-être une bêtise... Rolling Eyes


PS:  Embarassed apparemment c' est une bêtise, je n' ai vu nul-part que l' on pouvait écrire dans un objet IMAGE.
JL35 le fait dans un PICTURE caché.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Mer 1 Fév 2017 - 16:45

C'est très simple (le problème étant de passer du Picture au Sprite):
- On crée l'image dans un Picture (caché éventuellement) à fond noir absolu (couleur de transparence des sprites).
- On recopie ce Picture dans un Image (qui en prend automatiquement les dimensions): 2D_IMAGE_COPY
- On charge cet Image dans le sprite: SPRITE_IMAGE_LOAD

On pourrait aussi passer par un fichier au lieu d'un Imaqe:
- sauvegarder le Picture dans un fichier bmp provisoire (FILE_SAVE)
- charger ce bmp dans le Sprite (SPRITE_FILE_LOAD), puis effacer le fichier

Mais ça me paraît plus lourd, le passage par l'Image me semble plus élégant.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Mer 1 Fév 2017 - 17:06

Oui et à mon avis, le scrolling obtenu sera et plus rapide et plus joli (moins 'saccadé' et sans effet de 'vagues' lors de la montée des lignes)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Mer 1 Fév 2017 - 17:22

Si tu te réfères à ce que j'ai dit juste au-dessus ça ne changera pas grand chose, le sprite est fabriqué d'avance, et pour le scrolling il suffit de faire varier sa position en y. Avec 1 pixel de déplacement c'est très fluide, au-delà c'est plus rapide mais d'aspect saccadé, moins agréable.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Mer 1 Fév 2017 - 17:50

Pour la fluidité peut être que Silverman nous trouvera une astuce. C'est le roi des petite exploitation technique qui change le rendu final Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Jeu 2 Fév 2017 - 13:56

Un essai de générique tout simple, pour tester les paramètres à modifier
Rien à voir avec le générique élaboré de Marc, ici c'est juste pour essais sur la vitesse de défilement;
et la sub de garnissage d'un sprite avec un  texte peut être intéressante.
( Clic dans le Scene2d pour arrêter)
Code:
' Défilement d'un générique (exemple)
LABEL Quit
DIM rc$,tx$,i%,a$,ws%,hs%
rc$ = CHR$(13)+CHR$(10)

SCENE2D 1: FULL_SPACE 1: COLOR 1,255,255,0: ON_CLICK 1,Quit
SPRITE 1
tx$ = "Au clair"+rc$+"de la lune"+rc$+rc$+"mon ami Pierrot"
Txt2Sprite(tx$,"Arial",16,0,8,1)
a$ = CLIPBOARD_STRING_PASTE$: i% = INSTR(a$,",")
ws% = VAL(LEFT$(a$,i%-1)): hs% = VAL(RIGHT_POS$(a$,i%+1))
SPRITE_POSITION 1,(WIDTH(1)-ws%)/2,HEIGHT(1)
WHILE 2>1
    FOR i% = HEIGHT(1) TO -1*hs% STEP -1
        SPRITE_Y_POSITION 1,i%
        PAUSE 10: ' à moduler...
    NEXT i%
END_WHILE
END
Quit:
TERMINATE

SUB Txt2Sprite(txt$,fnt$,sz%,col%,enr%,Spr%)
  ' Charger un sprite Spr% (déjà existant) avec un texte txt$
  ' (lignes du texte séparées par retour chariot/interligne)
  ' Police fnt$, taille sz%, couleur col%,
  ' enrichissements enr% (Gras=1, Italiques=2, Souligné=4, Centré=8)
  ' Dimensions du sprite renvoyées en ascii dans le clipboard (forme www,hhh)
  '
  DIM_LOCAL n2d%,npt%,p%,mm%,im%,r%,g%,b%,wt%,ht%,h%,hl%,yt%,k%,rc$,a$
  n2d% = NUMBER_2D_TARGET: npt% = NUMBER_PRINT_TARGET
  rc$ = CHR$(13)+CHR$(10): ' retour chariot/interligne
  p%=900: PICTURE p%: HIDE p%: COLOR p%,0,0,0
  im%=p%+1: IMAGE im%
  mm%=im%+1: MEMO mm%: HIDE mm%: WIDTH mm%,1200: ITEM_ADD mm%,txt$
  FONT_NAME p%,fnt$: FONT_SIZE p%,sz%
  IF BIN_AND(enr%,1) = 1 THEN FONT_BOLD p%
  IF BIN_AND(enr%,2) = 2 THEN FONT_ITALIC p%
  IF BIN_AND(enr%,4) = 4 THEN FONT_UNDERLINE p%
  FOR k% = 1 TO COUNT(mm%)
      a$ = ITEM_READ$(mm%,k%): r% = TEXT_WIDTH(a$,p%): IF r%>wt% THEN wt%=r%
  NEXT k%: h% = TEXT_HEIGHT(txt$,p%): ht% = h%*COUNT(mm%)
  WIDTH p%,wt%: HEIGHT p%,ht%: ' dimensions du sprite
  r% = INT(col%/65536): g% = BIN_AND(col%,65280)/256: b% = BIN_AND(col%,255)
  IF r% = 0 AND g% = 0 AND b% = 0 THEN r% = 5: g% = 5: b% = 5
  FONT_COLOR p%,r%,g%,b%: 2D_TARGET_IS p%: COLOR p%,0,0,0: 2D_FILL_COLOR 0,0,0
  PRINT_TARGET_IS p%: yt% = 0
  FOR r% = 1 TO COUNT(mm%)
      a$ = ITEM_READ$(mm%,r%)
      IF BIN_AND(enr%,8) = 8: ' texte centré sur lui-même
          k% = TEXT_WIDTH(a$,p%)
          WHILE k%<wt%: a$ = " "+a$+" ": k% = TEXT_WIDTH(a$,p%): END_WHILE
      END_IF
      PRINT_LOCATE 0,yt%: PRINT a$: yt% = yt%+h%
  NEXT r%
  2D_IMAGE_COPY im%,0,0,wt%,ht%: SPRITE_IMAGE_LOAD Spr%,im%
  2D_TARGET_IS n2d%: PRINT_TARGET_IS npt%: DELETE p%: DELETE im%: DELETE mm%
  CLIPBOARD_STRING_COPY STR$(wt%)+","+STR$(ht%): ' dimensions du sprite -> clip
END_SUB
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7975
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Jeu 2 Fév 2017 - 15:53

La vitesse parait bonne.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Jeu 2 Fév 2017 - 16:32

En tout cas il y a des possibilités d'ajustement, avec la Pause, et éventuellement avec le step de la boucle, avec -2 ou -3 ça accélère bien sans saccader de manière trop visible.

J'ai pensé que la vitesse de défilement pouvait dépendre de la complexité de l'image de fond, mais apparemment ça ne joue pas, ça met le même temps que ce soit un fond uniforme ou une image.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Jeu 2 Fév 2017 - 19:50

Merci JL35 comme tu as déjà fait 90% du boulot j'essayerais de l'adapter pour la partie texte défilant de Marc (En plus ça m'intéresse)
Et d'ailleurs, j'ai envie d'essayer un truc qui me trotte dans la tête depuis un moment et si j'y arrive je le mettrai aussi
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Jeu 2 Fév 2017 - 22:32

Ma foi... bon courage Jicehel, mais c'est vrai que c'est intéressant à explorer. Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc37



Nombre de messages : 443
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Re: Titrage - génériques   Jeu 2 Fév 2017 - 23:14

Bonsoir à tous !

Je ne pensais pas qu’un tel sujet aller susciter tant d’engouement !
Merci pour vos retours, de vos essais et de vos partages !

La fluidité des mouvements est affectée par :
- le nombre de SPRITEs  à déplacer simultanément ;
- la grandeur des SPRITEs ;
- la vélocité de l’ordinateur utilisé.

Voici ci-dessous un fond d’écran qui défile sans fin. Ce sont 3 SPRITEs qui se déplacent simultanément et qui occupent toute la surface de la fenêtre FORM 0.
Si vous réduisez la taille du FORM 0 (ligne 1 et 2), le défilement sera plus rapide, voire beaucoup plus rapide.
La position de la souris permet de changer le sens du scroll (vers le haut, vers le bas ou arrêt).

Code:
WIDTH 0, 800
HEIGHT 0, 500


LEFT 0,(SCREEN_X-800)/2
TOP 0,(SCREEN_Y-500)/2

LABEL Quitter

DIM x,y
DIM a%,b%,c%
DIM x_souris%, y_souris%

DIM h,w
    w = WIDTH_CLIENT(0)
    h = HEIGHT_CLIENT(0)

ON_CLOSE 0, Quitter

espace_sideral()

WHILE 0=0
    x_souris%= MOUSE_X_POSITION(10)
    y_souris%= MOUSE_Y_POSITION(10)

    IF y_souris%>(3/5*h) THEN y=y+1: ' vers le bas
    IF y_souris%<(2/5*h) THEN y=y-1: ' vers le haut

        IF y>10 AND y<(h-10) THEN b%=0 : a%=-1*h : c%=h

        IF y>(h+10) AND y<((2*h)-10) THEN b%=0 : a%=-1*h : c%=-1*2*h

        IF y>((2*h)+10) AND y<((3*h)-10) THEN b%=-1*3*h : a%=-1*h : c%=-1*2*h

        IF y=(3*h) THEN b%=0 : a%=-1*h : c%=h : y=0

        IF y<(-10) AND y>((-1*h)+10) THEN b%=0 : a%=-1*h : c%=h

        IF y<((-1*h)+10) AND y>((-1*2*h)+10) THEN b%=0 : a%=2*h : c%=h

        IF y<((-1*2*h)+10) AND y>((-1*3*h)+10) THEN b%=3*h : a%=2*h : c%=h

        IF y=(-1*3*h) THEN b%=0 : a%=-1*h : c%=h : y=0

        deplace()
END_WHILE
END
' ------------------------------------------------------------------------------
SUB Espace_sideral()
    DIM_LOCAL i%, j%
    PICTURE 20
    FULL_SPACE 20
    FOR j%=1 to 3
        COLOR 20,0,0,0
        2D_TARGET_IS 20
        2D_PEN_COLOR 255,255,255
        FOR i%=1 TO 500
            2D_POINT INT(RND(w)),INT(RND(h))
        NEXT i%
        FOR i%=1 TO 50
            2D_CIRCLE INT(RND(w)),INT(RND(h)),2
        NEXT i%
        FOR i%=1 TO 5
            2D_CIRCLE INT(RND(w)),INT(RND(h)),4
        NEXT i%
        IMAGE j%
        2D_IMAGE_COPY j%,0,0,w,h
        CLS
    NEXT j%
    SCENE2D 10
    FULL_SPACE 10
    SPRITE_CREATE_HIDE
    FOR i% = 1 to 3
        SPRITE i%
    NEXT i%
    FOR i% = 1 to 3
        SPRITE_IMAGE_LOAD i%,i%
    NEXT i%
    x=0
    y=0
    SPRITE_POSITION 1,x,y-h
    SPRITE_POSITION 2,x,y
    SPRITE_POSITION 3,x,y+h
    FOR i% = 1 to 3
        SPRITE_SHOW i%
    NEXT i%
    a%=-1*h
    b%=0
    c%=h
END_SUB
' ------------------------------------------------------------------------------
SUB deplace()
    SPRITE_POSITION 1,x,y+a%
    SPRITE_POSITION 2,x,y+b%
    SPRITE_POSITION 3,x,y+c%
    DISPLAY
END_SUB
' ------------------------------------------------------------------------------
Quitter:
    TERMINATE
RETURN
' ------------------------------------------------------------------------------

Je suis en train de compléter mon programme pour pouvoir se déplacer, sans fin, dans tous les sens (360°). 9 SPRITEs sont nécessaires, ce qui risque de ralentir le mouvement. Je vous livrerai mes essais dès que possible.


Dernière édition par Marc37 le Ven 3 Fév 2017 - 0:56, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5922
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Titrage - génériques   Ven 3 Fév 2017 - 0:07

Je n'avais pas envisagé le cas de sprites multiples à déplacer en même temps, évidemment dans ce cas ça complique la donne et ça doit bien ralentir...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc37



Nombre de messages : 443
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Re: Titrage - génériques   Ven 3 Fév 2017 - 1:12

JL35 : Je viens de regarder et d’essayer ton code, c’est une très bonne idée !
Je le garde sous le coude pour mes essais !
Merci !

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jicehel

avatar

Nombre de messages : 5849
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: Titrage - génériques   Ven 3 Fév 2017 - 2:30

Marc, l'effet est excellent et ça peut aussi bien servir pour une intro que pour un jeu spatial
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Titrage - génériques   

Revenir en haut Aller en bas
 
Titrage - génériques
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 2Aller à la page : 1, 2  Suivant
 Sujets similaires
-
» Comment accéder au gestionnaire de périphériques : Xp et vista
» [Tutoriel]Initiation au traitement d'images numériques
» QEEL : comment en changer les phrases génériques ?
» VO avec sous titrage VO
» comment supprimer les sous titrage

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Les inutilitaires-
Sauter vers: