| [Résolu] Nuit et lampe. | |
|
|
|
Auteur | Message |
---|
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 8:34 | |
| Bonjours à tous, J'aimerais rajouter de la nuit dans mon jeu, alors pour ça j'avais pensé à draw un rectangle noir de la taille de la view, puis modifier l'alpha suivant l'heure. Mais comment je peut faire si je veux que mon perso tienne une lanterne, ou qu'il y est des lampes dans les villages ? [TheDarkTiger] avait fait un gm6 la dessus qu'il avait poster dans un autre topic mais c'était en 2007 est donc bien sûr le lien est mort.
Dernière édition par chopsuey le Sam 4 Aoû 2012 - 0:42, édité 1 fois |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 11:40 | |
| Utilise une surface Par exemple une surface blanche que tu affiche en subtract, et la ou y a de la lumière tu dessine dessus un glow noir. Si tu trouve pas je te ferais un exemple
Dernière édition par onilink_ le Lun 30 Juil 2012 - 14:15, édité 1 fois |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 13:57 | |
| Merci de ta réponse onilink_ Je ne me sert que très rarement des fonctions draw à part pour les sprites et je n'ai jamais utiliser de surfaces, je ne savais même pas que ça existait. J'ai lu la doc et j'ai essayer d'afficher quelque chose mais pas moyen. J'ai fait:
creat: surface=surface_create(480,640)
draw: draw_surface_ext(surface,object0.x,object0.y,30,30,0,c_white,1)
Je suis un peut larguer, si tu pouvais me faire un exemple pour la nuit je pense que ça m'aiderais vraiment à comprendre. Merci d'avance. |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 14:25 | |
| http://www.host-a.net/u/onilink_/Night.gm6Bien sur il existe d'autres techniques, mais tu devras toujours user de surfaces A toi de jeter un œil dans des moteurs de lumières si ce système n'est pas a ta convenance x) |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 14:29 | |
| merci beaucoup c'est géniale. Je vois que j'ai beaucoup à apprendre sur tous ce qui concerne les draw. |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 15:21 | |
| L'effet glow sur le sprite tu l'a fait avec l’éditeur de game maker ou un autre logiciel ? Par ce que moi quand je me sert de l'outil glow ça ne me fait pas un rendu aussi dégradé. |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 16:39 | |
| Je l'ai fait sous GM. J'ai fait un disque blanc et j'ai fait 2x blur a 9.
|
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 17:08 | |
| blur à 9 ? Moi j'ai le choix entre small, medium ou large, je ne peux pas rentrer de valeurs c'est étrange. |
|
| |
onilink_ Modérateur
Messages : 9183 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 17:12 | |
| Ah ben j'ai fait ça sous GM6, ptetre que c'est plus pareil :b
|
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 17:24 | |
| ha ben ouai je pense. C'est dommage qu'ils aient modifier ça, ça laissait une plus grande liberté. |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 18:31 | |
| J'ai un petit soucie. J'aimerais que la lumière suive le personnage, et que la view suive le personnage. Mais lorsque la view ce déplace, la lumière ce décale de quelques pixels dans la direction au déplacement de la view. voici un gmk: http://www.mediafire.com/?pv9nxdc8pg2o86d |
|
| |
arthuro Utilisateur confirmé: Rang ****
Messages : 1483 Localisation : Paris Projet Actuel : Diagon https://arthursonzogni.com/Diagon
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 18:43 | |
| tu dois drawer ton ombre ici:
x=perso.x-view_xview y=perso.y-view_yview |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Lun 30 Juil 2012 - 18:54 | |
| Tu veux surement parler de la lumière et pas de l'ombre, non ?
Si c'est ça c'est déja ce que j'ai fait:
draw_sprite_ext(sprite5, 0, object0.x-view_xview[0], object0.y-view_yview[0], 2, 2, 1, c_white, 1) |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 1:49 | |
| quelqu’un aurait une idée ? |
|
| |
arthuro Utilisateur confirmé: Rang ****
Messages : 1483 Localisation : Paris Projet Actuel : Diagon https://arthursonzogni.com/Diagon
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 11:51 | |
| Oui , c'est ça que je disais.
Qu'est ce que tu entend par se déplacer de "quelques" pixel. - des décalages de 1-2 pixels. - que tu draw à la mauvaise position ( genre plus de 32 pixels) |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 12:13 | |
| Ben télécharge mon gmk tu verra ^^ Mais si t'a pas envie ou que tu ne peu pas et bien, la lumière ce décale juste de 3 à 4 pixels lorsque j’avance (en déplaçant la view) puis se replace a l'origine une fois que je m’arrête. |
|
| |
Isaki Très bonne participation
Messages : 157 Localisation : Devant mon pc Projet Actuel : euh...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 12:23 | |
| Je crois que c'est parce que, tu déplace la view dans step, et que tu affiche la lampe dans draw. Pour régler ce blem, faut que tu mette le code de déplacement dans draw (m'enfin chu pas sûr de ce que je dis) |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 13:22 | |
| Non ça ne change rien, mais merci quand même. |
|
| |
Isaki Très bonne participation
Messages : 157 Localisation : Devant mon pc Projet Actuel : euh...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 14:16 | |
| Bon dommage.. moi j'avais eu un problème du même genre et j'avais comme ça pour régler le problème.. bonne continuation pour ton jeu |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 14:41 | |
| |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 15:22 | |
| Déplace le code de lampe dans End Step ;) |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 15:52 | |
| |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 15:55 | |
| Je l'ai téléchargé, et j'ai testé ma solution, ça marche... Dans ton objet lampe, prends le code du Step et mets-le dans son End Step à la place. Cela l'exécutera après que le joueur ait incrémenté ses coordonnées (ce qui est l'utilité de End Step). |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 16:52 | |
| Ben je viens pourtant de réessayer et je ne vois aucune différence. À tu bien compris que le décalage ce fait lorsque la view ce déplace ? Modifie le sprite lampe (sprite5), genre fait un cercle blanc en plein milieu, et tu verra peut être mieux le décalage. |
|
| |
D-z Utilisateur confirmé: Rang *****
Messages : 1611 Localisation : Montpellier
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 18:20 | |
| En effet... Je ne comprends pas du tout d'où ça peut venir. Fait bien longtemps que j'ai pas touché à GM en plus :/ |
|
| |
Fogiax Très bonne participation
Messages : 159
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 22:35 | |
| Il me semble qu'une technique existe pour ce problème qui en a fait ch*er plus d'un (moi inclut). Il faut que tu fasse un code toi même pour faire déplacer la view (donc, ne pas mettre d'objet à suivre dans l'onglet view de la room) Et il faut que tu rafraichisse les coordonnée de la lumière et la surface après avoir exécuter le code qui fait déplacer la view. voilou |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Mer 1 Aoû 2012 - 23:27 | |
| voila ce que j'ai fait : objet player: event, begin step - Code:
-
view_hborder[0]=120 view_vborder[0]=120 view_object[0]=player
objet lampe: event, end step - Code:
-
surface_set_target(night.s) draw_set_blend_mode(bm_subtract) draw_sprite_ext(sprite5, 0, object0.x-view_xview[0], object0.y-view_yview[0], 2, 2, 1, c_white, 1) draw_set_blend_mode(bm_normal) surface_reset_target()
Mais rien ne change, je crois que le problème vient du positionnement de ma surface car je la draw au coordonnés de la view, mais étant donné que c'est un event draw la priorité d’affichage est supérieur aux events step si je ne me trompe pas. Voici le code. objet nuit: event, draw - Code:
-
draw_set_blend_mode(bm_subtract) draw_surface(s, view_xview[0], view_yview[0]) draw_set_blend_mode(bm_normal)
Donc vue que je ne peut placer ce code que dans un draw je ne vois pas trop comment faire. |
|
| |
arthuro Utilisateur confirmé: Rang ****
Messages : 1483 Localisation : Paris Projet Actuel : Diagon https://arthursonzogni.com/Diagon
| Sujet: Re: [Résolu] Nuit et lampe. Jeu 2 Aoû 2012 - 0:40 | |
| - chopsuey a écrit:
- Ben télécharge mon gmk tu verra ^^
Mais si t'a pas envie ou que tu ne peu pas et bien, la lumière ce décale juste de 3 à 4 pixels lorsque j’avance (en déplaçant la view) puis se replace a l'origine une fois que je m’arrête. J'ai pas Gm sous linux. Si tu ne trouve pas, j'ai la solution qui marche mais que tu ne devrait pas suivre ( du type usine à gaz) Tu fait un objet qui suit l'objet que la view suit. Tu le fais suivre avec la même vitesse que la view. On note cette objet s. Tu draw en : x=perso.x-view_xview +(perso.x-s.x) y=perso.y-view_yview +(perso.y-s.y) De cette façon tu comble le bug (mais tu ne le résoud pas) Ça me fait penser une fois, j'avais programmer un objet : "antibug" qui comblait un problème. Sauf que un jour deviner: l'objet antibug s'est mit à provoquer un autre bug. (C'est devenu la galère à ce moment là) Moral: Ne pas créer un objet AntiAntiBug mais plutôt résoudre ces problèmes avant. Sinon, la piste de la view et l'ordre des step/draw/... est sans doute la bonne. Mais même avec cela, ça me semble étrange. Tu pourrais m'envoyer le code de ton objet: (il doit y avoir maintenant un bouton : object information je crois. Il te donne l'emsemble des informations liées à l'objet. |
|
| |
chopsuey Utilisateur confirmé: Rang ***
Messages : 523 Localisation : saint etienne Projet Actuel : All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
All work and no play makes Jack a dull boy
...
| Sujet: Re: [Résolu] Nuit et lampe. Jeu 2 Aoû 2012 - 1:53 | |
| Même la technique usine à gaz ne me sort pas d'affaire. J'ai du faire une erreur quelque part. voici toute les infos de mes objets (avec ta technique) objet0, soit l'objet player: - Code:
-
Information about object: object0
Sprite: sprite0 Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite>
Create Event: execute code:
ri=0
Begin Step Event: execute code:
view_hborder[0]=120 view_vborder[0]=120 view_object[0]=object0
if ri>4 {ri=4} if ri<=0 {ri=0}
if ! keyboard_check(vk_right) && ! keyboard_check(vk_left) && ! keyboard_check(vk_up) && ! keyboard_check(vk_down) && ri !=0 {ri=0}
if keyboard_check(vk_up) { if place_free(x,y-1) {y-=ri; ri+=0.2}}
if keyboard_check(vk_down) { if place_free(x,y+1) {y+=ri; ri+=0.2}}
if keyboard_check(vk_left) { if place_free(x-1,y) {x-=ri; ri+=0.2}}
if keyboard_check(vk_right) { if place_free(x-1,y) {x+=ri; ri+=0.2}}
depth=-y
Collision Event with object object1: move in direction direction at most 2 till a contact with solid objects
l'objet nuit: - Code:
-
Information about object: night
Sprite: <no sprite> Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite>
Create Event: execute code:
s = surface_create(640, 480) surface_set_target(s) draw_clear(c_white) surface_reset_target()
Step Event: execute code:
y=view_yview[0]+600 depth=-y
surface_set_target(s) draw_clear(c_white) draw_set_blend_mode(bm_subtract) draw_sprite_ext(sprite2, 0,0,0, 1, 1, 0, c_white, 1) draw_set_blend_mode(bm_normal) surface_reset_target()
Draw Event: execute code:
draw_set_blend_mode(bm_subtract) draw_surface(s,view_xview[0],view_yview[0]) draw_set_blend_mode(bm_normal)
l'objet lampe - Code:
-
Information about object: lampe
Sprite: <no sprite> Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite>
End Step Event: execute code:
surface_set_target(night.s) draw_set_blend_mode(bm_subtract) draw_sprite_ext(sprite5, 0, object0.x-view_xview[0]+(object0.x-su.x), object0.y-view_yview[0]+(object0.y-su.y), 2, 2, 1, c_white, 1) draw_set_blend_mode(bm_normal) surface_reset_target() depth=-y
l'objet s (renommé su à cause de ma variable s) - Code:
-
Information about object: su
Sprite: <no sprite> Solid: false Visible: true Depth: 0 Persistent: false Parent: <no parent> Mask: <same as sprite>
Begin Step Event: execute code:
x=object0.x y=object0.y
|
|
| |
arthuro Utilisateur confirmé: Rang ****
Messages : 1483 Localisation : Paris Projet Actuel : Diagon https://arthursonzogni.com/Diagon
| Sujet: Re: [Résolu] Nuit et lampe. Jeu 2 Aoû 2012 - 10:58 | |
| Oublie, la méthode usine à gaz pour le moment.
Tu peux essayer plusieurs choses:
- Tu devrais réunir les deux objets lampes et lumière pour voir - dans les options de GM, enlever : interpolate color between pixels. pour voir. - Tu peux drawer ton perso en x_previous,y_previous.
Voila l'ordre des event: Begin step events Alarm events Keyboard, Key press, and Key release events Mouse events Normal step events (now all instances are set to their new positions) Collision events End step events *( peut-être mise a jour de la view: (view_xview, view_yview) Drawing events
Je pense que GM met à jour la view en * Du coup, tu travaillerais avec les nouvelles variables. Tu peux essayer de travailler avec les anciennes en : - les stockant lors de l'event step. ( vx=view_xview,...) et les utiliser dans le draw - travailler dans l'event step |
|
| |
Contenu sponsorisé
| Sujet: Re: [Résolu] Nuit et lampe. | |
| |
|
| |
| [Résolu] Nuit et lampe. | |
|