Besoin d'un conseil pour map 2d iso

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
foossile
Messages : 25
Inscription : sam. 15/juil./2006 11:35

Besoin d'un conseil pour map 2d iso

Message par foossile »

Bonjour à tous,

Besoin d'un conseil.
Je veux faire une map 2d iso en mode filaire avec remplissage afin d'obtenir à peu près ceci :
Image

Comment dois-je procéder afin d'obtenir les meilleures perfs ?
j'ai penser simplement à dessiner les différents sprites (un pour chaque Tile) via les fonctions drawing2d puis les afficher l'un à coté de l'autre
malheureusement je crains que les fonctions LineXY, fillArea, etc soit un peu gourmande.
dois-je à la place utiliser des images png (ou bmp) pour chaque sprite ?
Y-a-til une autre soluce plus optimisée ?
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Besoin d'un conseil pour map 2d iso

Message par Ar-S »

Désolé je ni pipe encore rien en 2D/3D avec pure, ce n'est pas mon domaine de prédilection.

Par contre j'aime ta photo, ne serais tu pas en train de nous pondre un remake de populous ?? :mrgreen: :mrgreen: :mrgreen:
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Le Soldat Inconnu
Messages : 4312
Inscription : mer. 28/janv./2004 20:58
Localisation : Clermont ferrand OU Olsztyn
Contact :

Re: Besoin d'un conseil pour map 2d iso

Message par Le Soldat Inconnu »

moi, j'ai fait comme ça :

Code : Tout sélectionner

dois-je à la place utiliser des images png (ou bmp) pour chaque sprite ?
Mais en sprite3D pour aller plus vite
Je ne suis pas à moitié Polonais mais ma moitié est polonaise ... Vous avez suivi ?

[Intel quad core Q9400 2.66mhz, ATI 4870, 4Go Ram, XP (x86) / 7 (x64)]
foossile
Messages : 25
Inscription : sam. 15/juil./2006 11:35

Re: Besoin d'un conseil pour map 2d iso

Message par foossile »

Ar-S a écrit :Désolé je ni pipe encore rien en 2D/3D avec pure, ce n'est pas mon domaine de prédilection.

Par contre j'aime ta photo, ne serais tu pas en train de nous pondre un remake de populous ?? :mrgreen: :mrgreen: :mrgreen:
Je n'ai pas cette prétention étant débutant. Pour le moment mon objectif est simplement la génération de la map avec un scrolling.
foossile
Messages : 25
Inscription : sam. 15/juil./2006 11:35

Re: Besoin d'un conseil pour map 2d iso

Message par foossile »

Toujours dans cette optique, nouvelle question :

pour les sprites vaut-il mieux :

charger une grosse image avec tous les tiles puis la découper avec ClipSprite
ou
charger une image par tile ?
Avatar de l’utilisateur
Thyphoon
Messages : 2706
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Re: Besoin d'un conseil pour map 2d iso

Message par Thyphoon »

Moi je préfère les charger un part un ! mais apres c'est une question de choix ! En tout cas t'inquiète pas ça ne devrait pas affecter les performances.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: Besoin d'un conseil pour map 2d iso

Message par Backup »

pour info tu as un code ici :

http://www.purebasic.fr/french/viewtopi ... &hilit=iso

j'ai juste fait une recherche avec le terme "iso" ;)
foossile
Messages : 25
Inscription : sam. 15/juil./2006 11:35

Re: Besoin d'un conseil pour map 2d iso

Message par foossile »

Merci à vous :)
pour le code en exemple, thx, je vais comparer à ce que j'avais fais...
cha0s
Messages : 681
Inscription : sam. 05/mars/2005 16:09

Re: Besoin d'un conseil pour map 2d iso

Message par cha0s »

Dans proto-type http://www.purebasic.fr/french/viewtopic.php?f=2&t=9752 j'utilise une grande texture (8k*768)pour le fond et ce n'est vraiment pas une bonne idée. Sur ma grosse machine sa rame, sur ma petite non mais la texture n'est pas chargé par la carte graphique (trop grosse). Donc je préconise le tile.
Avatar de l’utilisateur
Fig
Messages : 1176
Inscription : jeu. 14/oct./2004 19:48

Re: Besoin d'un conseil pour map 2d iso

Message par Fig »

J'ai essayé plusieurs principes pour faire des maps 3d iso. :?

Si ta carte est suffisamment petite et les cases grandes, tu peux afficher la totalité des cases (visible ou non) avec les sprites des personnages/objets au dessus à chaque rafraichissement d'écran...
Tu peux aussi utiliser des cases (tiles) pour le terrain d'assez grande taille et avec une autre boucles afficher les sprites des personnages/objets qui vont dessus (ex une tile contient l'emplacement de 4 personnages/objets)

Bon, si ta carte est de taille moyenne, tu ne peux plus afficher toutes tes cases, même celles en dehors de l'écran visible comme ci-dessus... il faut alors n'afficher que celles qui sont dans les limites de ton écran visible.

Enfin, si ta carte est de taille immense et les cases petites (genre 4096x4096 tiles et tiles de 32x16, taille que j'utilise actuellement), tu dois alors ruser...
Affiche les tiles visibles, sauvegarde l'écran dans un sprite unique de la taille de celui-ci.
Ensuite, à chaque balayage, Si il n'y a pas de scrolling,tu affiche ce grand sprite correspondant aux terrain et les élement animés par dessus uniquement. (et tu vire le clearscreen() tu y gagne ainsi beaucoup)
Si il y a un scrolling, tu déplace cet immense sprite de la valeur du scrolling et tu n'affiche que les cases de bord (ex tu déplace l'écran vers la droite, tu ne raffiche que les tiles de la bordure gauche) puis tu ressauvegarde le terrain entier.
et ainsi de suite.
Les inconvégnants sont les suivants:
Lors des scrolls il est possible que tu perdes légèrement la synchro... mais qui s'en soucie, comparativement à la vitesse gagnée le reste du temps... Ca ne choque pas.
Si tu as du relief sur ta carte, tu ne peux pas avoir de montagne qui cacherai les élément sur son versant opposé. (à moins de traiter les tiles de la montagnes comme des personnages/objets, mais si la montagne est conséquente le ralentissement serait trop important)
Si tu as des éléments de terrains animés, comme de l'eau, ça nécessite de les gérer comme des personnages/objets.
Il y a deux méthodes pour écrire des programmes sans erreurs. Mais il n’y a que la troisième qui marche.
Version de PB : 6.00LTS - 64 bits
Avatar de l’utilisateur
Thyphoon
Messages : 2706
Inscription : mer. 25/août/2004 6:31
Localisation : Eragny
Contact :

Re: Besoin d'un conseil pour map 2d iso

Message par Thyphoon »

@Fig !
Moi j'avais fait des essais avec une map iso de 1024x1024 sur 4 couches ! et ça marchais tres bien ! (sprite 64x64) pas de ralentissement, a 60FPS constant ! sur un petit Atom 1,6Ghz et 2Go de Ram
Il ne faut afficher que ce qu'il y a l'ecran et utiliser les sprite3D c'est ce qu'il y a de plus rapide !
si tu utlisie la lib Image ou sprite 2D c'est certain que ça va finir par ramer !
:mrgreen:
Répondre