Précédent   Forum du club des développeurs et IT Pro > Applications > Développement 2D, 3D et Jeux
Développement 2D, 3D et Jeux Forum développement 2D, 3D et Jeux. Avant de poster : Les FAQs Programmation 2D, 3D et Jeux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 05/01/2013, 21h13   #1
xavier006
Invité de passage
 
Homme Xavier
Étudiant
Inscription : janvier 2013
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Xavier
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2013
Messages : 4
Points : 3
Points : 3
Par défaut Défilement de l'écran

Bonjour à tous,

Je vous explique mon problème et j'espère que vous pourrez m'aider.
Je suis étudiant en informatique et comme projet j'ai du réaliser un "dessin animé" en C#. Mon dessin animé consiste à représenté un skieur. J'ai su dessiner le personnage ainsi que le décor, mais dans ma consigne on me demande de faire défiler l'écran. En gros, de pouvoir suivre mon skieur lors de sa descende, façons caméra en "traveling" .. Mais je n'ai aucune idée de comment faire cela. Je vous mets ci-joint mon code , je ne l'ai pas écrit entièrement une partie m'a été fournie par mon professeur je ne le maîtrise donc pas complètement. Merci à tous ceux qui prendront la peine de me répondre. Je tiens à insister sur le faite que je débute donc pas de réponse trop compliquée svp
xavier006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2013, 11h38   #2
LittleWhite
Responsable 2D/3D/Jeux


 
Avatar de LittleWhite
 
Homme Alexandre Laurent
Ingénieur développement logiciels
Inscription : mai 2008
Messages : 10 428
Détails du profil
Informations personnelles :
Nom : Homme Alexandre Laurent
Localisation : France

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : mai 2008
Messages : 10 428
Points : 40 027
Points : 40 027
Bonjour,

Disons qu'à chaque image, vous afficher un rectangle. Ce rectangle doit être déplacé (changement des coordonnées) pour afficher une autre partie de l'image.

Sinon, il faudra spécifier le code, car là, lire tout le code c'est long.
__________________
Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
La rubrique a aussi un blog !

Ma page sur DVP
Mon Portfolio

Qui connaît l'erreur, connaît la solution.
LittleWhite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/01/2013, 12h01   #3
xavier006
Invité de passage
 
Homme Xavier
Étudiant
Inscription : janvier 2013
Messages : 4
Détails du profil
Informations personnelles :
Nom : Homme Xavier
Localisation : Belgique

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2013
Messages : 4
Points : 3
Points : 3
Merci pour votre réponse , justement c'est là que je bloque. Si je comprend bien ce que je fait, je crée mon écran ici :
Code :
1
2
3
4
5
6
7
8
public EcranAccueil()
        {
            InitializeComponent();
            #region Modification contre le scintillement
            bufferG = BufferedGraphicsManager.Current.Allocate(TV.CreateGraphics(), TV.DisplayRectangle);
            g = bufferG.Graphics;
            #endregion
        }
Donc j'aimerai pourvoir déplacer mon TV.DisplayRectangle , mais je ne trouve pas comment faire
xavier006 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/01/2013, 14h04   #4
Mat.M
Expert Confirmé Sénior
 
Développeur informatique
Inscription : novembre 2006
Messages : 4 445
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : novembre 2006
Messages : 4 445
Points : 5 864
Points : 5 864
Salut,
1 quelle technologie et langage utilisé ?
Apparemment c'est Direct X Managed avec C# ou bien XNA

2ensuite si c'est le cas dans le SDK de Direct X Managed il y a un exemple d'un jeu avec des objets à détruire ; il te montre comment faire un jeu avec défilement en 2d

Basiquement pour faire un jeu à défilement en 2d ,
1-à chaque instant t du jeu avec un chrono , on déplace la zone visible de l'écran ou caméra .
Cette zone visible correspond à la résolution d'écran voulue ex 1024*768

Donc créer une structure qui représente des coordonnées relatives
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
struct structZoneEcran
{
 
int coin_gauche;
int coin_haut;
int coin_droit;
int coin_bas;
};
 
 
structZoneEcran ZoneEcran;
ZoneEcran.coin_gauche=0;
ZoneEcran.coin_haut=0;
ZoneEcran.coin_droit=1024;
ZoneEcran.coin_bas=768;
donc à chaque instant chrono , si le jeu va de gauche à droite par exemple eh bien on incrémente ZoneEcran.coin-gauche et ZoneEcran.coin_droit.

2-il faut faire une boucle qui parcourt tous les éléments du décor à afficher et calculer si selon les coordonnées de ces éléments,l'élément est compris dans la zone visible ou de la caméra c.a.d inscrites ou non dans ZoneEcran
Le cas échéant si l'élément est partiellement affiché il faut calculer le rectangle résultant à afficher, en anglais ça s'appelle clipping


Par exemple si un sapin de coordonnées mettons (2048,360) doit être affiché , il faut voir si ses coordonnées sont comprises dans ZoneEcran qui aura été modifiée avec le défilement.

Regarder dans les tutos de DVP c'est expliqué
Mat.M est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 14h50.


 
 
 
 
Partenaires

Hébergement Web