AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -20%
-20% sur le Lot de 2 écrans PC GIGABYTE ...
Voir le deal
429 €

 

 [ENGINE 2D] Blocs Dynamiques

Aller en bas 
+4
Topaze22
onilink_
Termite
Caly
8 participants
AuteurMessage
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 17 Oct 2011 - 22:19

Bonsoir,

je vais vous monter içi un système de ma création qui permet de réduire énormément le nombre d'instances "sol/mur" dans vos jeux 2D.

D'habitude on utilise une instance par case ce qui donne quelque chose comme ça:
[ENGINE 2D] Blocs Dynamiques Room110

Comme vous pouvez le voir on est à 48 instances dans la salle.
Le système que je vous propose quant à lui créer exactement la même salle mais avec seulement 10 instances.

Voici comment procéder.

On va commencer par créer trois lutins sprites et trois instances (objets):

obj_blockFixed:
[ENGINE 2D] Blocs Dynamiques Fixed10

obj_blockGoDown:
[ENGINE 2D] Blocs Dynamiques Down10
Parent: obj_blockFixed

obj_blockGoRight:
[ENGINE 2D] Blocs Dynamiques Right10
Parent: obj_blockFixed

On va maintenant créer un script.
s_blocs_dynamiques
Code:
var X, Y;

if(object_get_name(object_index) == object_get_name(obj_blockGoRight)){   
    X=1;
    Y=0;
}

if(object_get_name(object_index) == object_get_name(obj_blockGoDown)){ 
    X=0;
    Y=1;
}

while( !place_meeting(x+X,y+Y,obj_blockFixed) and x+sprite_width<room_width and y+sprite_height<room_height){
    image_xscale+=X;
    image_yscale+=Y;
}

Reste plus qu'à mettre dans le "create" de "obj_blockGoDown" et "obj_blockGoRight"
Code:
s_blocs_dynamiques(); 

On créer notre salle:
[ENGINE 2D] Blocs Dynamiques Create10

On exécute et voici le résultat final.
[ENGINE 2D] Blocs Dynamiques Room210

La salle est exactement la même que le premier exemple mais avec seulement 10 instances.

Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 17 Oct 2011 - 22:47

Autant utiliser un tableau, c'est nettement plus rapide beh

_________________
Because these are not the words of God, the same God that burnt the knowing.
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 17 Oct 2011 - 22:50

Code:
Autant utiliser un tableau, c'est nettement plus rapide

Explique Razz
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 17 Oct 2011 - 23:23

Collisions bbox par tableau tout simplement. J'ai fait un exemple quelque part dans la section entraide débutants.

Fin ton truc est cool quand même :p
Plus simple a implémenter pour un débutant quoi. Et ça prend peut être moins de mémoire.

Edit : Ah ben voila
http://www.host-a.net/u/onilink_/array%202d%20collisions.gm6

_________________
[ENGINE 2D] Blocs Dynamiques Runningpotato1[ENGINE 2D] Blocs Dynamiques TvF6GED [ENGINE 2D] Blocs Dynamiques MdetltS
Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 17 Oct 2011 - 23:41

onilink_ a écrit:
Collisions bbox par tableau tout simplement. J'ai fait un exemple quelque part dans la section entraide débutants.

Fin ton truc est cool quand même :p
Plus simple a implémenter pour un débutant quoi. Et ça prend peut être moins de mémoire.

Edit : Ah ben voila
http://www.host-a.net/u/onilink_/array%202d%20collisions.gm6
C'est surtout que le système d'instance de GM est assez lent beh

Sinon le principe en soit est pas compliqué, tu créé une matrice (tableau deux dimensions) du style

0000000
0000000
1111111

où "0" représente le vide, 1 représente un bloc. Ensuite, tu utilises une fonction pour créé des coordonnées x&y attachés à un grille, ça ressemble à ça :

xs & ys sont les coordonnées de x&y attaché sur une grille de 32x32 par exemple.

Tu les calcule comme ça :

Code:

xs = x;
moduloX = x mod 32

if (moduloX>16)
xs+=32-moduloX
else
xs-=moduloX;

ys = y;
moduloY = y mod 32

if (moduloY>16)
ys+=32-moduloY;
else
ys-=moduloY;

Après tu génère ton tableau, dans ce cas on l'appelle 'map'.
map[0][0] représente alors la case au coordonnées 0,0 (en haut à gauche)

Du coups, pour tester une collision, tu fais par exemple :

Code:

if (map[xs/32][ys/32]!=0 && yspeed>0)
{
yspeed=0;
y=ys;
}

Et hop, t'as un sol.Bon, c'est moins pratique, vu qu'il faut générer un tableau. Tu peux à la rigueur, placer toutes tes instances sur ta carte dans GM, puis utiliser une boucle for afin de générer une matrice par rapport aux instances sur ta map, niveau rapidité c'est nettement meilleur Smile

Après pour les slopes, tu fais varier y en fonction de la distance entre x & xs et c'est dans la poche :p


_________________
Because these are not the words of God, the same God that burnt the knowing.
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 0:07

J'ai retrouver le sujet dont tu parle onilink_ :
https://cbna.forumactif.com/t11170-resolu-utiliser-le-moins-de-memoire-possible

Merci à vous deux pour les explications.

En fait je résume si j'ai bien compris.

-Il n'y auras qu'une seule instance pour tout le sol.
-Cette instance génère juste du draw par rapport aux données d'une matrice.
-Les collisions ce font avec le dit draw.

Avantages:
Une seule instance.

Inconvénients:
Créer une matrice pour chaque salle.
Beaucoup plus de vérifications (une par case) au démarrage de la salle.
Beaucoup plus long à mettre en place.

En fait pour l'histoire de la matrice ce n'est pas vraiment un problème, on peut vite coder un programme qui la génère.
Par contre je pense que ton système est beaucoup plus groumant en ressource sur de très grandes maps.

Je pense que pour un petit jeu de plateforme/A-RPG/etc mon système est plus simple à mettre en place.
Par contre pour un MMO et surtout pour un jeu qui génère des cartes aléatoires ton système l'emporte haut la main.




Dernière édition par Caly le Mar 18 Oct 2011 - 0:16, édité 1 fois
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 0:14

Surtout le système est pas terrible sous GM a cause du coup des variables qui sont toutes des double.
Mais en C/C++ ce genre de système n'a que des avantages :p

_________________
[ENGINE 2D] Blocs Dynamiques Runningpotato1[ENGINE 2D] Blocs Dynamiques TvF6GED [ENGINE 2D] Blocs Dynamiques MdetltS
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 0:20

Code:
Mais en C/C++ ce genre de système n'a que des avantages :p
Oui j'avais vus ce système dans le tutoriel d’apprentissage du C sur le SDZ.

Enfait en C c'est pas mal car l’éditeur de maps c'est toi qui le conçois alors que sous GM il est dejà fait.
Donc je reste sur ma possition sur le fait que pour des jeux de base mon systeme est mieu cool

Code:
Surtout le système est pas terrible sous GM a cause du coup des variables qui sont toutes des double.
Et tu le confirme Yum!

Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 9:47

Fin jvois mal quelqu'un faire un terraria like en utilisant un autre système par contre, même avec les inconvénients de GM :p

_________________
[ENGINE 2D] Blocs Dynamiques Runningpotato1[ENGINE 2D] Blocs Dynamiques TvF6GED [ENGINE 2D] Blocs Dynamiques MdetltS
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 11:42

En fouillant dans la doc je suis tombé sur ça :

Citation :
Grilles (Grids)
Une grille est tout simplement un tableau à deux dimensions. Une grille présente une largeur et une hauteur définies par des entiers. La structure de la grille vous permet de déterminer et supprimer les valeurs de cellules de la grille en fournissant un index (devant débuter par 0 et ce pour les deux directions x et y). Mais il est également possible de déterminer des plages de valeurs, ajouter des valeurs particulières, de déterminer la somme, le maximum, le minimum ainsi que la valeur moyenne d'une plage donnée. Une grille peut être utile pour représenter par exemple un terrain de jeu. Bien que toutes ces fonctionnalités puissent également être réalisées à l'aide de tableaux à deux dimensions, les opérations sur des régions ou plages sont réalisées beaucoup plus rapidement en employant des grilles. Les fonctions suivantes existent :

ds_grid_create(w,h) Crée une nouvelle grille de largeur w et de hauteur h. La fonction retourne un entier représentant l'id de la grille qui devra être utilisé par toutes les fonctions devant accéder à la nouvelle grille créée.
ds_grid_destroy(id) Détruit la grille d'ID id, libérant ainsi la mémoire utilisée. Ne pas oublier d'invoquer cette fonction quand vous n'aurez plus besoin d'utiliser cette grille.
ds_grid_resize(id,w,h) Redimensionne la grille d'ID id avec les nouvelles largeur w et hauteur h. Les cellules déjà existantes conserveront leur valeur originale.
ds_grid_width(id) Retourne la largeur de la grille d'ID id.
ds_grid_height(id) Retourne la hauteur de la grille d'ID id.
ds_grid_clear(id,val) Initialise le contenu de la grille d'ID id, avec la valeur indiquée val (val peut être aussi bien un nombre qu'une chaîne).
ds_grid_set(id,x,y,val) Initialise la cellule indiquée x,y de la grille d'ID id avec la valeur mentionnée val (qui peut être un nombre ou une chaîne).
ds_grid_add(id,x,y,val) Ajoute la valeur val dans la cellule indiquée x,y de la grille d'ID id. En ce qui concerne les chaînes, cela correspond à une concaténation.
ds_grid_multiply(id,x,y,val) Multiplie la valeur val par la cellule indiquée x,y de la grille d'ID id. Cette fonction ne concerne uniquement que les nombres.
ds_grid_set_region(id,x1,y1,x2,y2,val) Initialise toutes les cellules d'une région donnée x1,y1,x2,y2 de la grille d'ID id avec la valeur indiquée val (concerne aussi bien les nombres que les chaînes de caractères).
ds_grid_add_region(id,x1,y1,x2,y2,val) Ajoute la valeur val aux cellules de la plage x1,y1,x2,y2 dans la grille d'ID id. En ce qui concerne les chaînes, cela correspond à une concaténation.
ds_grid_multiply_region(id,x1,y1,x2,y2,val) Multiplie par la valeur val les cellules de la plage x1,y1,x2,y2 de la grille d'ID id. Cette fonction ne concerne uniquement que les nombres.
ds_grid_set_disk(id,xm,ym,r,val) Initialise avec la valeur val toutes les cellules du disque avec comme centre xm,ym et rayon r.
ds_grid_add_disk(id,xm,ym,r,val) Ajoute la valeur val à toutes les cellules du disque de centre xm,ym et de rayon r.
ds_grid_multiply_disk(id,xm,ym,r,val) Multiplie par la valeur val toutes les cellules du disque de centre xm,ym et de rayon r.
ds_grid_get(id,x,y) Retourne la valeur de la cellule indiquée x,y de la grille d'ID id.
ds_grid_get_sum(id,x1,y1,x2,y2) Retourne la somme des valeurs de cellules de la plage x1,y1,x2,y2 de la grille d'ID id. Ne fonctionne que si les cellules ne contiennent que des nombres.
ds_grid_get_max(id,x1,y1,x2,y2) Retourne le maximum des valeurs de cellules de la plage x1,y1,x2,y2 de la grille d'ID id. Ne fonctionne que si les cellules ne contiennent que des nombres.
ds_grid_get_min(id,x1,y1,x2,y2) Retourne le minimum des valeurs de cellules de la plage x1,y1,x2,y2 de la grille d'ID id. Ne fonctionne que si les cellules ne contiennent que des nombres.
ds_grid_get_mean(id,x1,y1,x2,y2) Retourne la moyenne des valeurs de cellules de la plage x1,y1,x2,y2 de la grille d'ID id. Ne fonctionne que si les cellules ne contiennent que des nombres.
ds_grid_get_disk_sum(id,xm,ym,r) Retourne la somme des valeurs des cellules du disque.
ds_grid_get_disk_min(id,xm,ym,r) Retourne le minimum des valeurs des cellules du disque.
ds_grid_get_disk_max(id,xm,ym,r) Retourne le maximum des valeurs des cellules du disque.
ds_grid_get_disk_mean(id,xm,ym,r) Retourne la moyenne des valeurs des cellules du disque.
ds_grid_value_exists(id,x1,y1,x2,y2,val) Indique si la valeur val apparaît quelque part dans la plage x1,y1,x2,y2.
ds_grid_value_x(id,x1,y1,x2,y2,val) Retourne l'abscisse x de la cellule dans laquelle la valeur val apparaît dans la plage x1,y1,x2,y2.
ds_grid_value_y(id,x1,y1,x2,y2,val) Retourne l'ordonnée y de la cellule dans laquelle la valeur val apparaît dans la plage x1,y1,x2,y2.
ds_grid_value_disk_exists(id,xm,ym,r,val) Indique si la valeur val apparaît quelque part dans le disque.
ds_grid_value_disk_x(id,xm,ym,r,val) Retourne l'abscisse x de la cellule dans laquelle la valeur val apparaît dans le disque.
ds_grid_value_disk_y(id,xm,ym,r,val) Retourne l'ordonnée y de la cellule dans laquelle la valeur val apparaît dans le disque.


Si on utilise les grilles au lieu des tableaux les résultats sont les même niveau performances?
Revenir en haut Aller en bas
Termite
Utilisateur confirmé: Rang ****
Termite


Messages : 1005
Localisation : Dans ta charpente !
Projet Actuel : RayEngine 5.0

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 12:30

Je pense que les ds_grid sont plus rapide

Mais pour un usage pareil, je sais pas si tu y verra une grosse différence

_________________
Because these are not the words of God, the same God that burnt the knowing.
Revenir en haut Aller en bas
Topaze22
*Excellent utilisateur*
Topaze22


Messages : 6213
Localisation : Sur la Lune
Projet Actuel : Projet HELLO/TOPAZE22 Mario Bros World

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 20:41

Si ton système savait fusionner intelligemment les blocs pour faire des 3X10 par exemple (donc fusionner sur l’horizontale et la vertical en même temps, ce serait encore meilleur ^^ [c'est ce que je fais dans le projet Mario]).
Perso, je suis resté simple, la fusion se fait quand la room se lance, et après, les blocs actifs sont ceux dans la view. Comme ça déjà, les perfs sont vraiment bonnes, mais c'est vrais qu'avec un système de tableau, ça serait plus performant, mais plus consommateur de mémoire alors que coté mémoire, je n'ai pas de soucis en utilisant des blocs comme instance avec mon système, et je ne suis pas obliger d'aligner mes blocs sur des grilles.



Au cas où ça interesse quelqu'un :
dans creat event :
Citation :
xorigine=x
yorigine=y
xetat=1
yetat=1
actif=true
x_close=0
IDCAPTEE=0
cpt=0


Dans step event :
Citation :
instance_activate_object(obj_solide_32x32VD)
actif=true

if(cpt==0)//pour l'horizontale
{
while(actif==true)
{
IDCAPTEE=0
IDCAPTEE=collision_rectangle(bbox_left,bbox_top,bbox_right+1,bbox_bottom,object_index,false,true)
if(IDCAPTEE>1)
{
if(IDCAPTEE.xorigine == xorigine+32*xetat && IDCAPTEE.yorigine == yorigine)//vers droite
{
actif=true
x_close=1
xetat=xetat+IDCAPTEE.xetat//1
image_xscale=xetat
with(IDCAPTEE){instance_destroy()}
}
else
{
actif=false
}
}
else
{
actif=false
}
}
}
if(cpt==1 && x_close==0)//pour la verticale
{
while(actif==true)
{
IDCAPTEE=0
IDCAPTEE=collision_rectangle(bbox_left,bbox_top,bbox_right,bbox_bottom+1,object_index,false,true)
if(IDCAPTEE>1)
{
if(IDCAPTEE.yorigine == yorigine+32*yetat && IDCAPTEE.xorigine == xorigine && IDCAPTEE.xetat==1)//vers le bas
{
actif=true
yetat=yetat+IDCAPTEE.yetat//1
image_yscale=yetat
with(IDCAPTEE){instance_destroy()}
}
else
{
actif=false
}
}
else
{
actif=false
}
}
}
if(cpt==2)//pour transformer en objet "vide" de code
{instance_change(obj_solide_32x32_repos,false)}

cpt=cpt+1;


Et on cree un second obj bloc dans lequel il y a rien et qui se nomme : obj_solide_32x32_repos


L'idée étant que dans les premiers step, les blocs de gauche bouffent ceux de droite et s'étirent... Et qu'à la fin, il ne reste que des blocs ayant un sprite de 32x32 mais étiré vers la droite et vers bas si nécessaire.
Oui, j'ai programmé ça comme un cochon, et pour les perfs, c'est top puisque à la fin il ne reste que des instance vierge de tout code.
Garanti sans bug et ça permet de continuer à utiliser les place free et toutes les fonctions lié à solid dans n'importe quel système de plateforme.

_________________
Topique pour le Projet Hello Mario en préparation.
Sorti du topique lorsque la première démo sera disponible.
[ENGINE 2D] Blocs Dynamiques Projet13
Revenir en haut Aller en bas
Sekigo Le Magnifique
Utilisateur confirmé: Rang *****
Sekigo Le Magnifique


Messages : 1720

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 20:47

J'ai pas tout suivi vos problèmes de performance. Mais franchement, vous tuez des mouches à coup de bazooka là. La mémoire utilisé, tant que ça dépasse pas les 200 Mo à la louche, faut pas se prendre la tête plus que cela. Le plus important, c'est les cycles CPU et les accès disque.
Revenir en haut Aller en bas
https://2img.net/image.noelshack.com/old/up/gmzonecbna-3cfbc56d25.jpg
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMar 18 Oct 2011 - 23:49

Bonsoir,

Topaz je n'ai pas du comprendre comment ton système fonctionne car je ne vois aucun changement quand je le lance mis à par que les blocs ce changent pour d'autres.

J'ai fait un petit gmk de test disponible içi: http://www.fufox.net/?d=4F4E11B7A0F6
(il faut switcher les rooms manuellement pour les comparer car ça bug avec les "room_goto".)

Citation :
J'ai pas tout suivi vos problèmes de performance.
En fait, moi, c'est plus par soucis de rapidité à la création de rooms et par la même occasion d'avoir moins d'instances dans celle-ci.
Là si je veux avoir un sol continu dans ma room je n'ai qu'à mettre une seule instance et mon sol est finis.
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


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

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMer 19 Oct 2011 - 0:13

En fait le top ça aurais été la possibilité d'attribuer un masque de collision au tiles.
Mais bon ils nous sortent des GM machin, GM truc, et le plus important n'arrive jamais Sad

_________________
[ENGINE 2D] Blocs Dynamiques Runningpotato1[ENGINE 2D] Blocs Dynamiques TvF6GED [ENGINE 2D] Blocs Dynamiques MdetltS
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.

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMer 19 Oct 2011 - 0:21

Comme dans RPG MAKER qui a au passage les tuiles dynamiques et animés... alors qu'il est gratuit...
Revenir en haut Aller en bas
Qual
Utilisateur confirmé: Rang ****
Qual


Messages : 1450
Projet Actuel : Tower Defence

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyMer 19 Oct 2011 - 3:03

Box2D sera intégré a GM même si ca n'as rien a voir mrgreen2

_________________
[ENGINE 2D] Blocs Dynamiques Icone_114
Revenir en haut Aller en bas
http://www.brainwizz.fr
Iluvyou
Nouveau
Iluvyou


Messages : 9

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyJeu 20 Oct 2011 - 5:25

Caly a écrit:
Comme dans RPG MAKER qui a au passage les tuiles dynamiques et animés... alors qu'il est gratuit...

RPG Maker n'est pas gratuit. :) Il coute même cher si je me souviens bien 80 euros un truc dans le genre.

_________________
 
~ I fought the war.. I fought the war but the war won't stop for the love of god. ♫
Revenir en haut Aller en bas
Qual
Utilisateur confirmé: Rang ****
Qual


Messages : 1450
Projet Actuel : Tower Defence

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyJeu 20 Oct 2011 - 8:52

Tout est gratuit Yum!

_________________
[ENGINE 2D] Blocs Dynamiques Icone_114
Revenir en haut Aller en bas
http://www.brainwizz.fr
anonim
Débutant



Messages : 23

[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques EmptyLun 12 Mar 2012 - 22:04

Qual

Citation :
Tout est gratuit

Le logiciel et la BDD oui, mais pas la licence.

Tu ne pourra donc commercialiser les jeux.

PS : désoler du méga up.
Revenir en haut Aller en bas
Contenu sponsorisé





[ENGINE 2D] Blocs Dynamiques Empty
MessageSujet: Re: [ENGINE 2D] Blocs Dynamiques   [ENGINE 2D] Blocs Dynamiques Empty

Revenir en haut Aller en bas
 
[ENGINE 2D] Blocs Dynamiques
Revenir en haut 
Page 1 sur 1

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