[R] Patchwork d'image puis scrool

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

[R] Patchwork d'image puis scrool

#1

Message par sozary »

Bonjour!!

J'ai voulu après MinMax m'orienter vers la création d'un jeu 2D de type SandBox (bac à sable) se générant aléatoirement.
Le joueur évolue donc dans un monde 2D de type Terraria, où il peut casser des blocs, avancer dans le jeu pour découvrir de nouvelles choses. En effet, le monde se génère aléatoirement au fur et à mesure de l'avancée du joueur.

J'ai donc un monde comme cela:
Voir image 1

Qui génère donc une région centrale, avec des régions sur les côtés s'adaptant à celle centrale:
Voir image 2

Nous évitons donc que le joueur se retrouve d'un coup face à un falaise ou une montagne!

Seule la région sur laquelle est le joueur est visible, mais les régions adjacentes sont générées, afin de permettre une certaine fluidité (quand le joueur change de région):
Voir image 3

Ce que j'aimerais faire? Une grande image réunissant toutes les régions déjà explorées, réalisée à partir des régions générées, afin de pouvoir réaliser un scrolling avec _GDIPlus_BitmapCloneArea():

Voir image 4

De façon à pouvoir réaliser un zoom sur l'emplacement du joueur:
Voir image 5

Voici un exemple du rendu!!

Donc voilà!
Merci d'avance!
Fichiers joints
5.png
4.png
3.png
2.png
1.png
Projet.rar
(101.28 Kio) Téléchargé 56 fois
Modifié en dernier par sozary le lun. 25 mai 2015 22:49, modifié 1 fois.
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#2

Message par mikell »

Le problème si tu construis une grande image réunissant toutes les régions déjà explorées c'est que tu risques de perdre en fluidité au fur et à mesure que l'image va grandir, surtout si le monde est infini
Si monde est limité, autant générer une grande image dès le départ (ce qui semble être le cas dans l'exemple youtube) et faire une matrix
S'il est infini, alors il vaudrait mieux faire en sorte que le joueur ne puisse pas revenir en arrière de plus de 2 ou 3 régions et supprimer les anciennes régions
Dans ce code (sommaire) on ne peut revenir en arrière (ou en avant) que d'une seule région
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#3

Message par sozary »

Merci!!
Juste une question, à quoi cela nous sert de créer un stream avec _WinAPI_CreateStreamOnHGlobal() (bon, en fait c'est quoi un stream :mrgreen: )?
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#4

Message par mikell »

_GDIPlus_ImageSaveToStream permet de stocker les données d'une image directement en mémoire (stream object), ça évite des manipulations donc ça permet lors de l'affichage de l'image suivante cette incomparable fluidité qui ne t'aura certainement pas échappé :mrgreen:
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#5

Message par sozary »

En effet :P !
Seulement, j'aimerais bien utiliser l'idée des matrices avec les stream, pour juxtaposer les différentes régions!
Comment procéder svp? :D
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#6

Message par sozary »

Oula! Je viens réaliser un scrolling (le fichier est téléchargeable en dessous), avec une image assez grande (2882x1934), et niveau fluidité........ On est loin du compte. Tu crois que ce projet est réalisable sur AutoIt du coup? (Ou alors j'ai vraiment mal codé et y a mieux! :mrgreen: )


Télécharger le projet
Merci d'avance!
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#7

Message par mikell »

Effectivement ya mieux, en bufferisant (et en corrigeant les éléments dyslexiques) :mrgreen:
Maintenant savoir si le projet complet est réalisable sur AutoIt, aucune idée
Tu le sauras pas sans avoir essayé :P
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#8

Message par sozary »

Ah! Oui c'est mieux :mrgreen: !
Et donc comment on juxtapose deux images svp ?
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Avatar du membre
mikell
Spammer !
Spammer !
Messages : 6292
Enregistré le : dim. 29 mai 2011 17:32
Localisation : Deep Cévennes
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#9

Message par mikell »

Je te donne juste 2 exemples simples que j'ai sous la main
Normalement avec les codes précédents tu devrais y arriver Image
► Afficher le texte
► Afficher le texte
" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
Avatar du membre
sozary
Niveau 6
Niveau 6
Messages : 274
Enregistré le : lun. 20 janv. 2014 19:17
Status : Hors ligne

Re: [..] Patchwork d'image puis scrool

#10

Message par sozary »

Aaaaaah!! C'est bon c'est rentré!
Merci beaucoup Mikell!
"Là où la volonté est grande, les difficultés diminuent.", Niccolò Machiavelli
Répondre