AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le deal à ne pas rater :
Cartes Pokémon : la prochaine extension Pokémon sera EV6.5 Fable ...
Voir le deal

 

 camera style zelda

Aller en bas 
+2
Adamo
Arkin
6 participants
AuteurMessage
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 17:58

Bonjour!, je m'amuse a creer un zelda style oracle of, le soucis est que creer room par room pour faire un donjon n'est pas la meilleur chose... Sachant que je commence seulement a apprendre le language GML je n'y connais rien gnii et je voulais savoir si on pouvait faire plusieurs petite rooms dans une seule grande room (style zelda oracle of): je m'explique happy1
Ex: je creer une room 500x500, la camera qui vise le player est de 160x144, est ce possible d'empecher la camera du player de bouger, sauf au moment où le player quitte la camera là elle le suivrai en faisant en effet. Pour etre plus clair, je parle du meme systeme de camera que la serie oracle of. Voila happy1 je sollicite votre aide!
Revenir en haut Aller en bas
Adamo
Utilisateur confirmé: Rang ***
Adamo


Messages : 681
Localisation : Quebec

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 18:33

Passer tout de suite au 2. si ta pas envie de lire ca pour rien et que t'es décider a le faire sur 1 seul room Surprised

1.)
Oui c'est possible de crée plusieurs map dans une seul room mais c'est moin bien pour les map a grosseur non fixe et les monstres et autres qui vont être global donc jamais respawn a la sortie de la piece ect, je te conseillerais plutot d'utiliser plusieurs room déja pour la performance aussi avoir 50000 objet par exemple dans une même room est pas l'idéal non plus

jai plus GM d'installer je vien de formaté lol :/ mais en gros un system comme ca serais mieux :
#1 2 3
A* * *
B* * *
C* * *
RoomA1 // Room en haut a gauche
RoomA2 // Room en haut milieu
RoomA3
RoomB1 //Room a gauche milieu
RoomB2
RoomB3
RoomC1
RoomC2 //Room en bas au milieu
RoomC3

et si le joueur sort d'un coté ou l'autre si la room existe bah il change.

2.)

Bon déja la camera dois être fixe a la "fausse room" quel ce trouve sinon pour le changement de zone ca va vraiment être dur d'avoir un bel effet de camera

la manière la plus simple je trouve serais de placer un objet dans le centre de chaque room ! essai ca :
creer un objet : "camera_point"
place en 1 dans chaque milieu de tes "fausse room"

ensuite met ce script dans ton objet perso :
view_object[0] = instance_nearest(x,y,camera_point)

et teste voir si ca marche (jai pas GM donc je suis pas sur a 100%)
Revenir en haut Aller en bas
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 19:40

j'ai lus tes 2 hypothèse et je pense que je vais utiliser la 1 qui est moin comlpliqué je pense gnii Je te remercis bcp pour tes reponses
Une derniere chose je voudrais pas t'embeter avec ca mais pourrais tu m'expliquer en detail ton systeme, ou un systeme plus simple pour moi comme le simple faite de changer de room au contact d'un objt
( tj avec les codes biensur^^ meme si j'y connais trop rein!) et qu'il y est un effet au changement de room. ( pour les effets je pense que ca doit etre dans les evenements room transition). Voila si tu peux me depanner une derniere fois je t'en remercie! rire
Te casse pas la tête si tu te souvien plus vu que ta formaté ton pc=)
Revenir en haut Aller en bas
Adamo
Utilisateur confirmé: Rang ***
Adamo


Messages : 681
Localisation : Quebec

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 21:55

Je te propose un truc simple entre plusieurs rooms si c'est ce que tu veut avec un ds_grid (un tableau 2D),

A mettre dans le create d'un objet par exemple au menu de ton jeu ou un objet qui va être détruit par la suite
global.rooms = ds_grid_create(20,20) // Avec cette ligne tu creer un tableau de 20case par 20 case qui va contenir tes room

ds_grid_add(global.rooms,0,0,roomA1) // Cette ligne sert a ajouter tes rooms au tableau je l'ajoute a la position 0,0 pour A1
Voir image :
camera style zelda  1163520968

donc en gros tu ajoutes tout tes room dans le ds_grid d'autre exemple :
ds_grid_add(global.rooms,3,2,roomD3)
donc tout ca tu met ca au create de ton objet (preferable un objet dans un menu) sinon au pire tu le met dans l'event Game Start
et ajoute aussi 5 autres variable global dans le meme objet qui au game start :
global.perso_x = 32 //Position de depart du perso x
global.perso_y = 32 //Position de depart du perso y
global.face = 0; //Direction du personnage (sont sprite en fait) donc remplace le 0 par le nom de ton sprite qui regarde vers le bas
global.map_x = 0; //Va servir a savoir dans quel room X le personnage ce trouve (remplacer 0 par la room X de depart voulu)
global.map_y = 0; //Va servir a savoir dans quel room Y le personnage ce trouve (remplacer 0 par la room Y de depart voulu)

bon ensuite, apres avoir ajouter tout tes room dedans la ds_grid
il te faut juste quelque code très simple a comprendre dans ton objet perso :

Au create -
Code:

x = global.perso_x; // On place le perso a la position sauvegarder de lancienne room ou du depart
y = global.perso_y; // On place le perso a la position sauvegarder de lancienne room ou du depart
Au step -
Code:

if x > room_width //Si le personnage sort de la room vers la droite
{
if room_exists(ds_grid_get(global.rooms,global.map_x+1,global.map_y))
{
global.map_x+=1 //On augmente la map_x de 1 parceque on sort vers la droite
global.perso_y = y//on enregistre la position Y du perso pour le repositionner sur lautre map
room_goto(ds_grid_get(global.rooms,global.map_x,global.map_y))//on change de room
}
}

if x < 0 //Si le personnage sort de la room vers la gauche
{
if room_exists(ds_grid_get(global.rooms,global.map_x-1,global.map_y))
{
global.map_x-=1 //On reduit la map_x de 1 parceque on sort vers la gauche
global.perso_y = y//on enregistre la position Y du perso pour le repositionner sur lautre map
room_goto(ds_grid_get(global.rooms,global.map_x,global.map_y))//on change de room
}
}

if y > room_height //Si le personnage sort de la room vers le bas
{
if room_exists(ds_grid_get(global.rooms,global.map_x,global.map_y+1))
{
global.map_y+=1 //On augmente la map_y de 1 parceque on sort vers le bas
global.perso_x = x//on enregistre la position X du perso pour le repositionner sur lautre map
room_goto(ds_grid_get(global.rooms,global.map_x,global.map_y))//on change de room
}
}
if y < 0 //Si le personnage sort de la room vers le haut
{
if room_exists(ds_grid_get(global.rooms,global.map_x,global.map_y-1))
{
global.map_y+=1 //On reduit la map_y de 1 parceque on sort vers le bas
global.perso_x = x//on enregistre la position Y du perso pour le repositionner sur lautre map
room_goto(ds_grid_get(global.rooms,global.map_x,global.map_y))//on change de room
}
}

Revenir en haut Aller en bas
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 22:43

Super explication merci bcp! compress
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 22:56

Heu perso je te conseille beaucoup plus simple.
Tu fait ta map normalement, et tu code un ptit script qui modifie la view_xview et la view_yview quand tu passe d'une salle a une autre.
Pour le passage d'une salle a une autre, une collision par bounding box suffiras, sinon pour connaitre en 'cases' la position actuelle, suffit de faire:
posX = x div largeurSalle
posY = y div hauteurSalle

Tu peut ensuite aviser quand posX change (déplacement horizontal de la vue) ou posY est modifié (verticalement donc).

Bref va au plus simple, c'est en général la meilleur solution.
Si tu t'en sort pas je pourrais toujours te faire un exemple entre 2 lignes de code Smile

_________________
camera style zelda  Runningpotato1camera style zelda  TvF6GED camera style zelda  MdetltS
Revenir en haut Aller en bas
Adamo
Utilisateur confirmé: Rang ***
Adamo


Messages : 681
Localisation : Quebec

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 23:16

Ouais j'avoue mais ce qui est ****** d'utiliser une seul room tout les instance utiliser ce réinitialise pas, et si ta beaucoup d'objet sourtout avec collision dans ta room tu va le sentir passer au final, et sinon la methode de room/tableau permet aussi d'avoir des room plus large aussi comme exemple dans zelda a link to the past ou tu peut te deplacer dans une room qui fait par exemple 2x la taille dune room normale
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptyVen 28 Sep 2012 - 23:24

Jvois pas le soucis pour réinitialiser tes instances.
Suffit d'utiliser quelques variables. Tu fait un objet parent, avec genre sx, sy qui récupèrent les coordonnées lors du 'room start event', tu met un event user ou les position/états sont restaurés et tu l'utilise quand il faut. Par contre faut pas supprimer les instances (pour ce qui peut être détruit), mais les désactiver.
Sinon pour la taille des salles, ben rien de sorcier non plus, variables again. Tu peut même créer un objet spécial qui prend pas en compte la transition.

Et le fait d'utiliser plusieurs rooms t'empêche de glisser la vue fluidement. Puis c'est un bordel monstre juste pour faire un donjon...

_________________
camera style zelda  Runningpotato1camera style zelda  TvF6GED camera style zelda  MdetltS
Revenir en haut Aller en bas
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 0:21

Heu pk pas! happy1 la technique d'amado fonctionne bien, mais je me suis pas amuser a faire une quarentaines de room^^
Oui vu mon nivo je veux bien que tu detaille 2 3 lignes de code si sa te drange pas!
Je debute avec les codes depuis 2jours seulement lol je galere comme même, je regarde les tutos que tu as fais pour expliquer le language GML, chapeau Hat sa depanne bien serieux (c'est fait pour ça en même temps gnii )
Apres a moi de voir si je veux faire une seule grande map ou faire room par room. Mais j'avou je preferais vraiment faire simple et pas me prendre la tete surtout que j'ai pas bcp de temps a consacrer a game maker.
Rien que pour les donjons c'est plus simple de les faire en une seule map, car je sais pas si vous avez remarquer dans les zelda like (je pense que oui!) mais les donjons ont tj une forme spécial qui ont un rapport avec leurs nom, bref pour le creer c'est plus simple en une seul map! tord
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 8:28

Ya pas de doute, une seule room c'est mieux gnii
Par contre quand tu dis que t'as pas beaucoup de temps à consacrer à GM, alors que tu débute, t'es dans la marde : dans n'importe quel langage, si tu fais des pauses pendant un projet, après tu comprend plus la moitié de ton code. Alors si tu comprend déjà pas grand chose au gml... Te lance pas dans un grand projet alors que t'as aucunes connaissances en gml, tu va devoir demander sans cesse de l'aide et au bout d'un mois tu va te dire que ton code est pas du tout optimisé par rapport à ce que tu sais faire maintenant, mais t'aura la flemme de tout recommencer et donc tu va abandonner ton projet...
Donc au début, tu lis les tutos, tu fais celui fourni avec GM, et tu fais un petit projet, sans t'inspirer d'un truc genre zelda. Tu t'occupe pas des sprites, sons,etc... tu fais en sorte que ton jeu marche.
Moi quand j'ai commencé GM, après avoir fait le tuto avec le fruits, j'ai fait un jeu en D&D ou il fallait sortir de la room, il fallait réupérer des clefs et les verrous se détruisaient ; la seule IA du jeu s'était un gus qui tirait un laser vers le bas toutes les secondes. Ensuite quand j'ai compris le variables, j'ai fait un autre jeu, et la le verrou se détruisait seulement si tu avait la clef et que t'était en face de lui.
Bref j'ai avancé à mon rythme et tout seul ; même quand j'ai appris l'existence de ce forum, je m'y suis pas inscrit parce qu'ensuite, tu réfléchis moins parce que tu pense que les autres pourront le faire à ta place ; bref à la fin t'as fait juste les bases et les autres membres ont fait tout le reste. Un forum c'est fait pour s'entraider, pas pour travailler la place des autres.
Je parait peut-être un peu violent, mais sache que j'ai rien contre toi et que si je dis ca c'est parce que t'as juste à regarder tous les topics créés par un des nouveaux membres : ils en font pleins et quand ils en ont marre ils abandonnent GM et le cbna.
Je te dis ca pour pas que tu finisse comme eux et que tu puisse finir ton projet par toi même ! Bonne chance !

edit : mais heureusement tous les nouveaux membres ne sont pas tous comme ca ! Pas qu'il viennent me cassser la gueule....
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 10:32

Oni, balance un exemple avec des salles à dimensions variables avec la vue qui suis le PJ et dont la caméra ne montre pas les salles d'a coté, ça m'intéresse. (flême de chercher comment faire surtout en fait)
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 10:50

J'ai pas fait variable car j'avais la flemme (et dans oos les vues fonctionnent comme ça) mais en gros ça donne ça:
http://host-a.net/u/onilink_/ZeldaOOSview.7z

Suffit d'ajouter quelques variables/conditions et ça devrais être bon.

Sinon Térence ce que tu dit est vrai pour les kéké qui se ramènent et veulent faire leur MMO de la mort qui tue sans jamais apprendre le GML.
Arkin lui a commencé par la case départ, soit lire les tutos, puis il a pas un projet non plus trop ambitieux.
Perso je pense qu'il peut arriver a sortir un bon petit truc :b

Pour arriver a terme d'un zelda je te conseillerais la chose suivante.
Tu code chaque système dont tu auras besoin dans un gm6 a part, tu essaye de le faire le plus proprement possible, que chaque objet dépende le moins possible des autres.
Par exemple:
-déplacements
-views
-interactions
-chaque IA d'ennemis
-boites de dialogues
-PNJ
etc

Et une fois que tous les éléments sont opérationnels, tu raccorde tout dans un unique engine.
Si ça marche pas modifie l'engine qui a du mal a s'intégrer.
Faut essayer de se rapprocher le plus possible de la programmation modulaire quoi, même si GM c'est assez chaud..

_________________
camera style zelda  Runningpotato1camera style zelda  TvF6GED camera style zelda  MdetltS
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 10:58

Oui Arkin a pas l'air d'être comme ca mais je pense que s'inscrire sur un forum quand on débute, c'est pas forcément la meilleure solution gnii
Après GM pourrait être modulaire, il faudrait déjà qu'on puisse faire des fonctions dédiés à certains objet (genre en vrai poo, tu fais des méthodes pour chaque objet particulier, pas pour tous les objets à la fois ; grâce à private ou protected) ; je pense que ca manque. Faudrait aussi pouvoir faire des objets vides, parce que si tu veux faire un jeu avec beaucoup d'instances....
Revenir en haut Aller en bas
Caly
Utilisateur confirmé: Rang ****
Caly


Messages : 1285
Localisation : Haute Normandie
Projet Actuel : Capturer, apprivoiser et dresser des Pokémons sauvages pour faire des spectacles de rue et en faire mon métier.

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 11:11

Cool Oni merci pour l'exemple.
Aller va coder OniDev pour Linux mnt guns
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9180
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 11:26

J'ai un peu amélioré l'exemple la, si ça t'intéresse Arkin Smile
http://host-a.net/u/onilink_/ZeldaOOSview.7z
Possibilité de ne pas bloquer le scrolling horizontalement et/ou verticalement.

Caly>
Faudrait déjà que je le code pour windows Yum!
Mais bon ça va, avant hier j'ai codé en une soirée plus que ce que je n'avais fait ces 3 mois de vacances mrgreen2
Donc bon si je continue comme ça ça devrais se booster un peu :b
En plus je bosse sur une feature qui pourrais révolutionner GM héhé, mais je n'en dirais pas plus tant que le projet ne seras pas vraiment a terme guns

Gogogo!

_________________
camera style zelda  Runningpotato1camera style zelda  TvF6GED camera style zelda  MdetltS
Revenir en haut Aller en bas
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 13:56

Merci oni c'est cool! gnii
Tkt Térence je me suis pas inscrit sur le forum pour qu'on me fasse tout sur le dos (c'est pas interréssant sinon chacun préfére que sa vienne de lui qd il créer un jeux=) je sais bien qu'il faut que je me demerde seul sinon j'y arriverais jamais )
Si je me suis inscrit sur le forum c'est pour commencer a apprendre le GML, puis l'ambiance de ce forum est cool tout le monde s'entraide clinoeuil
Après je promet rien pour l'instant j'essais d'avancer dans mon projet même si j'ai pas bcp de temps a y consacrer (le boulot avant tout j'y peut rien) ce projet là j'ai pas l'intention de le lacher! j'en ai deja abandonner pas mal avant et perdu bcp de temps. Mais pour ce projet là je vais m'y mettre avec pote donc je pense que sa pourra donner qq chose au final oui=)
Revenir en haut Aller en bas
D-z
Utilisateur confirmé: Rang *****
D-z


Messages : 1611
Localisation : Montpellier

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 14:05

Je l'aime bien ce nouveau.

_________________
 
Home is not a place, it's a feeling.
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 14:21

Moi aussi ! Bonne chance pour ton projet !
Revenir en haut Aller en bas
Arkin
Nouveau



Messages : 7

camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  EmptySam 29 Sep 2012 - 14:36

Merci!=) si sa se concrétise je vous ferais part de mon projet y a pas de soucis^^ mais sa sera pas tt de suite lol! rire
Revenir en haut Aller en bas
Contenu sponsorisé





camera style zelda  Empty
MessageSujet: Re: camera style zelda    camera style zelda  Empty

Revenir en haut Aller en bas
 
camera style zelda
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Camera 3d
» camera
» le jeu style
» D3D - La caméra (épisode 1)
» camera precise

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Entraide débutants-
Sauter vers: