| | Texture pour un cube à partir d'une tuile [Résolu par [TDT]] | |
| | Auteur | Message |
---|
Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Dim 8 Avr 2007 - 12:48 | |
| Bonjours tout le monde! Bon alors voila mon problème, j'aimerais pouvoir mettre une zone d'une tuile dans la fonction qui dessine un cube. Je me suis dis qu'il y a sans doute déjà quelqu'un ici qui a essayé (et sans doute réussi). Citation de la bible :d3d_draw_block(x1,y1,z1,x2,y2,z2,texid,hrepeat,vrepeat) Dessine un bloc avec la couleur courante aux coins opposés indiqués en utilisant la texture texid. Utilisez la valeur -1 pour ne pas utiliser de texture. hrepeat indique de combien de fois la texture doit être répétée le long du bord horizontal de chaque face. vrepeat fait la même chose pour le bord vertical. il existe déjà ceci: sprite_get_texture(spr,subimg) Retourne l'ID de la texture correspondant à la sous-image subimg du sprite mentionné. background_get_texture(back) Retourne l'ID de la texture correspondant à l'arrière-plan indiqué. Il y a t'il un moyen d'avoir un truc de ce genre tile_get_texture(coingauche,coinhaut,longeur,largeur,ind_du_background) J'espère de tout mon coeur qu'il y a t'il un moyen Edit: Ou bien sinon, on aurait puis imaginer un système du genre : je pose une tuile dans la room. Les instances cubes font une copy de la surface de la zone ou ils sont puis se servent de la surface crée dans la fonction cube... surface_create(w,h) Crée une surface de largeur et hauteur indiquées. Retourne l'ID de la surface qui devra être utilisé dans tous les appels ultérieurs de fonctions. Veuillez prendre note que la surface ne sera pas effacée. Ceci incombe à l'utilisateur de le faire délibérément (définissez-la comme une cible puis appellez la fonction d'effacement appropriée.) surface_copy_part(destination,x,y,source,xs,ys,ws,hs) Copie la partie indiquée de la surface source à la position (x,y) dans la surface de destination. (sans fondu ni mélange de couleur). sprite_get_texture(spr,subimg) Retourne l'ID de la texture correspondant à la sous-image subimg du sprite mentionné.
Dernière édition par le Dim 15 Avr 2007 - 11:05, édité 3 fois |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Lun 9 Avr 2007 - 19:36 | |
| atta , je te fait un truc EDIT : vala le script : - d3d_draw_cube_tiled a écrit:
- var xx,yy,zz,xxx,yyy,zzz,ttt,tx,ty,txx,tyy;
xx=argument0; yy=argument1; zz=argument2; xxx=argument3; yyy=argument4; zzz=argument5; ttt = background_get_texture(argument6); tx=argument7/background_get_width(argument6); ty=argument8/background_get_height(argument6); txx=argument9/background_get_width(argument6); tyy=argument10/background_get_height(argument6); d3d_primitive_begin_texture(pr_trianglelist,ttt); //gauche d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx,ty); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty); d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty+tyy); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty); //bas d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zz,tx,ty); d3d_vertex_texture(xxx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xxx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty+tyy); //fond d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx,ty); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty+tyy); //droite d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yyy,zz,tx,ty); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty+tyy); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty); //haut d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx,ty); d3d_vertex_texture(xx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty+tyy); //face d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yyy,zz,tx,ty); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty+tyy); d3d_primitive_end(); on l'utilise comme il suit : d3d_draw_cube_tiled(x1,y1,z1,x2,y2,z2,background,coin gache en pixel,coin haut en pixels,largeur en pixels,hauteur en pixels); par exemple : d3d_draw_cube_tiled(-32,-32,-32,32,32,32,Tex,128,224,32,32); ENJOY |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Mar 10 Avr 2007 - 17:51 | |
| |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Mar 10 Avr 2007 - 19:06 | |
| de rien Topaze22, le simple fait que tu apprécie ma réponse à ce point me fait vraiment chaud au coeur ! merci à toi aussi |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Mar 10 Avr 2007 - 19:29 | |
| J'ai testé et il y a un petit problème du à deux truc que je n'ai pas précisé : -d3d_set_culling(true) -d3d_set_hidden(true) -et je regarde vers un z négatif (je suis à z=0 et je regarde vers z= - infini) Pourait tu essayé de placer les vertex de tel façon à ce qu'ils soient bien affiché dans mon mode s'il te plait? j'ai du boulo cette semaine alors je bosse dessus ce weekend. A tu GM7? Je peux t'envoyer une screenshoot du problème si tu en as besoins C'est le dernier point vital pour mon projet |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Mar 10 Avr 2007 - 19:38 | |
| heu... tu te rend compte de ce que ça représente d'inverser toutes les faces ???
j'y passerais des heures ...
quoi que ...
remplace les yy par des yyy ça devrait passer ... |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Mar 10 Avr 2007 - 20:38 | |
| - [TheDarkTiger] a écrit:
- heu... tu te rend compte de ce que ça représente d'inverser toutes les faces ???
j'y passerais des heures ...
quoi que ...
remplace les yy par des yyy ça devrait passer ... Non, je n'en ai absolument aucune idée :pac_dr: :pac_dr: :pac_dr: Sérieusement. Bon, je vais essayé de remplacer les yy par des yyy Puis si ça ne suffit pas, je vais essayé de bidouiller. Bon, je te tiendrais au courant |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Jeu 12 Avr 2007 - 21:28 | |
| - [TheDarkTiger] a écrit:
- heu... tu te rend compte de ce que ça représente d'inverser toutes les faces ???
j'y passerais des heures ...
quoi que ...
remplace les yy par des yyy ça devrait passer ... Mais comment fait t'on pour inverser les faces ? Je comprends pas comment on change les points pour que ça marche... Il y a pas qq1 qui sait faire ? EDIT : je crois que j'ai saisi comment marche le script mais je ne comprend pas pourquoi il marche pas. Pourquoi les surfaces disparraissent ... |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Ven 13 Avr 2007 - 12:29 | |
| bon, attend, je vais te le faire ...
mais je ne me reconnecterais pas avant 1 pitite heure |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Ven 13 Avr 2007 - 20:25 | |
| Rho Te presse pas trop, du moment que je l'ai avant minuit... :pac_dr: :pac_dr: :pac_dr: |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Ven 13 Avr 2007 - 20:42 | |
| - j'ai a écrit:
- var xx,yy,zz,xxx,yyy,zzz,ttt,tx,ty,txx,tyy;
xx=argument0; yy=argument1; zz=argument2; xxx=argument3; yyy=argument4; zzz=argument5; ttt = background_get_texture(argument6); tx=argument7/background_get_width(argument6); ty=argument8/background_get_height(argument6); txx=argument9/background_get_width(argument6); tyy=argument10/background_get_height(argument6); d3d_primitive_begin_texture(pr_trianglelist,ttt); //gauche -> ok d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx,ty); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty);
d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty+tyy); d3d_vertex_texture(xx,yy,zz,tx,ty+tyy);
//bas -> ok d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zz,tx,ty); d3d_vertex_texture(xxx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xxx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty+tyy); //fond -> ok d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xx,yy,zzz,tx,ty);
d3d_vertex_texture(xx,yy,zz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty);
//droite -> ok d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yyy,zz,tx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yy,zzz,tx+txx,ty+tyy); d3d_vertex_texture(xxx,yy,zz,tx+txx,ty);
//haut -> ok d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx+txx,ty); d3d_vertex_texture(xxx,yy,zzz,tx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty+tyy); d3d_vertex_texture(xx,yy,zzz,tx+txx,ty); //face -> ok d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xxx,yyy,zz,tx,ty); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xxx,yyy,zzz,tx,ty+tyy); d3d_vertex_texture(xx,yyy,zz,tx+txx,ty); d3d_vertex_texture(xx,yyy,zzz,tx+txx,ty+tyy); d3d_primitive_end(); voila ! PS, j'ai adoré ta façon de me remercier sinon, je suis dans le générique ou pas ? (juste pas pure curiausité, parceque, si tu m'a mis, je dit rien , mais sinon, c'est pas la peine :fier: ) |
| | | Invité Invité
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Ven 13 Avr 2007 - 20:46 | |
| :gniah: Topaze mets le dans les crédiiits :gniah: |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Sam 14 Avr 2007 - 0:22 | |
| pourquoi ? c'est po un pov script qui l'y oblige. j'aurais fait un peu plus je dit pas, mais là, c'est à son bon vouloir, et c'est pas grave si il ne m'y met pas |
| | | Invité Invité
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Sam 14 Avr 2007 - 9:52 | |
| Mouahahah n'interfère pas entre moi et Topaze, et ta modestie n'empêche pas qu'il te remercie à sa manière, il fera comme il veut :gniah: |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Sam 14 Avr 2007 - 11:54 | |
| En faite, mon nom n'apparait pour l'instand strictement nul par. J'ai mis à jour tout les remerciements avec toutes les personnes qui m'ont aidés (du spriter inconnu au pseudo donné , jusqu'à l'inconnu au nom inconnu...) Bref, en faite pour l'instand, il y y a une pile énorme de personnes dans les remerciements - Citation :
Programmeur principale : Topaze22 Programmeur m'ayant beaucoup soutenus/ aidé/participé : [TheDarkTiger] du CBNA
Merci à mes ami(e)s : Merci à Anto, mon premier grand supporter Merci à Tibo pour son aide Merci à Froufrou et à Candice pour leur soutiend
Merci au créateur de Game Maker : Mark Overmars Merci à Philippe Ragni pour sa tradution francaise de l'aide de Game Maker,sans qui je n'aurais jamais rien compris à cet outils de programmation génial qu'est Game Maker. Je supporte Overclocked Remix, un cite contenant des musiques MP3 de jeux vidéos exceptionnelements remixé. Fan de musique Old school ou de musique de Final Fantasy , jetez vous dessus : http://www.ocremix.org/
Merci au cite web et à la communauté : ==) du CBNA (http://www.lecbna.com/ ) (https://cbna.forumactif.com/) [Et particulièrement à Daminetreg] ==) de Zone-Freegames (http://zone-freegames.gmzone.fr/) (http://zone-freegames.forumactif.com/index.htm) ==) de ThatGamesGuy (http://gamesguy.bravehost.com/tutorials.html) ==) de GameMaker.fr et de GameMaker.nl
Merci à tout ceux qui mon aidé, soutenu et qui ont montré de l 'interré à ce projet. Merci à [The Dark Tiger] pour son script "spr_alpha_multiple", pour sa "librarie 3D", son soutiend à ce projet et bien d'autres choses mikmacer,daminetreg,Master47 , Rem_101 ,Dan_lizhot,notiz85,Jimmyprims,Krocko,tullarion,gohu8 Merci à Bast pour son "Bump2D lib version 1.0b", cela ma permis de réaliser des effets d'éclairages intéressants dans certains niveaux en 2D.
Merci à "Mario Fan Game Galaxy", site offrant ne nombreux sprites (images) sur l'univers de Mario (http://www.mfgg.net/) Merci à Djrellik pour les bruitages trouvés dans son GM6 . (Pour les débutants de GM6 qui sont fan de Mario, courrer chercher son .gm6!!) Merci à Spazz Industries et à "http://drgames.2ya.com" pour leur travail sur "l'écoulement de l'eau" Merci à Chris Laviolette pour son script sur "les dessins de texte". Merci à Eugene Perry pour son effet de "Particule de neige". (http://galileo.spaceports.com/~blackrat)
Merci à Chris Giles pour "GMPhysisc",son "Moteur physique". (http://forums.gamemaker.nl/index.php?showtopic=141853) Merci à la Rhys Andrews et à GameCave Team pour leur "Moteur d'explosion version 3" (http://64digits.com/games/index.php?author=RhysAndrews&example=1) Merci à "ToadGuy" pour ses sprites sur Super Mario world 2 Merci à "The Luigi" pour ses sprites sur The new Super Mario Merci à "Raccoon Sam" pour ses sprites sur The new Super Mario Merci à "C.J. Hammer" pour ses sprites sur The new Super Mario
Merci à un inconnu pour son "Moteur pour la foudre".
Bien que rigoureux, il me manque peu être certaines sources, oubien certaines personnes n'ont pas fournis de pseudo sur leur travaille, alors un grand merci à eux, les autres inconnus !! Bon, il faud voir qu'il y a des couleurs et des lignes de différentes tailles... Bref, cela n'ai qu'un brouillion qu'il faudrait que je mette encore un peu à jour. Puis je ferais une mise en page par la suite... Donc en faite, pour résumer, rien n'apparait pour l'instand à par ce que j'ai cité plus haut qui s'ouvre dans une fenètre lors du démarrage mais qui n'est qu'un brouillion pas tout à fait à jour (revoir les hièrarchies et plein de truc...) Bref, une sacrée mise à jour va être faite et vous pourrez le constater dans la prochaine vrais démo 4, mardi. Ca date d'il y a 5 moins ... :nezrouge: EDIT: je suis en train de tester ton script EDIT: Celon la hauteur et largeur du background duquel est pris la texture, la texture est plus ou moins étirée et n'est pas prélevée au bonne endroit. Je suis en train d'essayer de voir comment corriger cela sans trop de pb, je ne sais pas si je vais aboutir. En tout cas, le cube s'affiche nikel avec les meme texture sur toutes les faces. Le problème vient de la texture qui n'est pas prise au bonne endroit et qui semble étiré. Je planche dessus, le problème doit venir d'ici alors je réfléchis - Citation :
- tx=argument7/background_get_width(argument6);
ty=argument8/background_get_height(argument6); txx=argument9/background_get_width(argument6); tyy=argument10/background_get_height(argument6); Et merci encore, sans toi et la communauté, le projet Mario jeu n'en serait pas là aujourdui
Dernière édition par le Sam 14 Avr 2007 - 14:10, édité 1 fois |
| | | Topaze22 *Excellent utilisateur*
Messages : 6213 Localisation : Sur la Lune Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Sam 14 Avr 2007 - 14:08 | |
| Je suis parvenu à mes fins après des bidouillages (varier les variables et regarder) d3d_draw_cube_tiled(x-32,y-32,-32,x+32,y+32,+32,bkg_Tiles1_moitier1,a,c,b,b)Problème: étirement horizontal et vertical différent -avoir un background carré (hauteur= largeur) [pour moi 1600*1600 {taille max des backgrounds}] problème: je veux que la texture ai sa taille originel -mettre b=50 (ne me demandez pas pourquoi) problème: dessiner la texture dont le coin en haut à gauche est à la position (a=32*10, b=32*14) -rajouter un facteur de multiplication = 25/32 -donc le nouveau coin en haut à gauche sera à la position ( a=25*10,b=25*14) Ne me demande pas pourquoi mais en prenant en compte cela, tour marche impécable, cela est vraiment simple à faire pour moi alors ne change rien du tout. Crois moi, je ne perds vraiment pas de temps à cause de ça :sourire: Sinon, avec ton script, j'ai fais d'une pierre deux coups puisque maintenant, je peux, à l'aide de ton script, en faire d'autres qui n'afficheraient que certaines faces de mon choix D'une pierre deux coups, car cela va aussi mettre très très utile pour optimiser très grandement le projet Mario. Avec la perspective, il y a beaucoup beaucoup de face qu'il ne sert à rien d'afficher, tu viends de me fournir la dernière très grande optimisation possible pour mon jeu. Par exemple lorsqu'on dessine 9 cubes en 3*3, il suffit en réalité d'afficher 20 faces et non 54 (dans le cas des faces cachées, 54 deviendrait 27) Mais il y a des exemples ou cela me serait encore plus profitable... Bref, que du bonheur Je me bouge pour la vrais démo |
| | | [TheDarkTiger] Modérateur
Messages : 7420 Localisation : Essonne
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] Sam 14 Avr 2007 - 19:36 | |
| bha heureux que ça te serve |
| | | Contenu sponsorisé
| Sujet: Re: Texture pour un cube à partir d'une tuile [Résolu par [TDT]] | |
| |
| | | | Texture pour un cube à partir d'une tuile [Résolu par [TDT]] | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |