#0 

06-11-2010 02:29:46

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Bonjour, depuis quelques jours je suis en train de créer quelque chose avec irrlicht, je le crée plutôt pour apprendre irrlicht et pas pour créer un jeu ou quelque chose comme ça...mais bon, en vrai voici mes problèmes :

j'ai créé un mesh qui peut bouger en bas à droite.....et je lui ai aussi créé un système de collisions comme dans le tutoriel officiel (terrain rendering), mais comme ce mesh bouge le "selector" qui gère les collision ne bouge pas, comment le faire bouger ?

et aussi j'ai créé une camera de type FPS et je voudrais que quand je bouge le mesh elle bouge aussi.

et j'ai voulu faire un menu, quand l'utilisateur appuie sur la touche "F1" il y a une variable boolèene (TexteVisible) qui ce met en true, et avec ce code ça devrait marcher :

Code:

Texte->setVisible(TexteVisible);

sauf que la variable est placée dans un autre fichier et dans la class IEventReceiver, ça fais que quand je compile, ça affiche :

error:  TexteVisible n'est pas déclaré...un truc comme ça....



Et aussi quelque chose de plus compliqué et si vous voulez je vous donnerai le code source, je voudrais que quand la souris bouge à droite le vaisseau (oui oui c'est un vaisseau) tourne à droite, j'ai essayé la méthode comme dans le tutoriel d'irrlicht (mouse and joystick), sauf que ça marche.....mais c'est en fait le mesh tous entier qui bouge et c'est affreux.....



alors si quelqu'un pourrait m'aider ça serait très très gentil.....

Dernière modification par mmorpglefilm (06-11-2010 02:30:06)

Hors ligne


#1 

06-11-2010 03:12:27

Magun
SleekThink Producer
Lieu: Punakha
Date d'inscription: 18-11-2007
Messages: 904
Corrections: 2
Site web

uhm ... en gros tu nous demandeq comment fait-on un jeu ... ça reste assez vague .... et il y a beaucoup trop de façons d'en faire un ... c'est à toi de trouver ce qui te correspond le mieux, autant pour la compréhension que pour le gameplay que tu veux faire "ressortir"

je vais essayer de t'expliquer les deux trois petites choses que tu demandes
le soucis c'est que d'après ce que je comprends tu n'es pas encore très à l'aise dans le c++

pour bouger ton mesh, tu as besoin de 3 valeurs, la position, la rotation, et la vitesse
tu connais la trigonométrie au moins ? et ben tu n'as besoin que de cela ....

Code c++ :


                vector3df facing(cos(player->getRotation().Y * PI/180.0f), 0, -sin(player->getRotation().Y * PI/180.0f));
                                facing.normalize();
                vector3df newPos = player->getPosition() + (facing - (facing * (f32)0.5)); // + sa avance ; - sa recule, compliquer ? non smile
                                player->setPosition(newPos); // on mais a jour la position ...



pour la camera fps ... uhm ouais ... tu auras quelques problèmes mais tu t'en rendras vite compte ... vaut mieux une camera rpg ...
de plus ce n'est pas l'objet qui doit suivre la camera, mais l'inverse, sinon tu risques d'avoir quelques soucis pour la mettre en place wink

maintenant pour ton soucis de variable il n'y a rien de plus normal, les variables dans les langage poo, donc ici le c++ ne sont en aucun cas des variables globales, exception avec les variables 'static'
bref, le plus simple c'est de passer la variable par une fonction, tu déclares un IGUIElement dans ton IEventReceiver, une fonction du style "setTextHelper(IGUIElement*)" et tu passes ton IGUIStaticText dans la fonction, que tu peux ensuite utiliser

uhm j'oubliais les collisions, tu n'es pas très explicite ... as-tu pensé à mettre un 'gravity affector' ?

voila ... ça serait bien que tu regardes la demo d'irrlicht ........................ ou les projet des membres de la communauté ... hmm

et dernière question, c'est pas que c'est compliqué, mais tu souhaites du travail maché ? contente toi dans un premier temps à résoudre tes petits problèmes, et d'avoir une version "first pre-alpha test friend & family" smile

edit: syntaxe ... foutus doigts ... désyncronisés

Dernière modification par Magun (06-11-2010 03:15:41)

Hors ligne


#2 

06-11-2010 12:05:50

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Ah mais oui !!!!

Je n'ai plus vraiment besoin du IEventReceiver, bin si en fait.....et pour la gravité le "jeu" (si on peut appeler ça un jeu) je voudrais qu'il se situe dans l'espace et donc j'ai toujours pensé qu'un gravity affector ne marcherait pas mais je vais essayer.

Hors ligne


#3 

09-11-2010 23:51:23

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Mais j'ai un autre problème :

En vrai je viens de tomber sur ce topic où quelqu'un montrait le code source d'un générateur de terrain, je l'ai testé mais ça ma fait une tonne d'erreur, j'ai voulu les corriger, j'ai réussi, sauf une seule erreur :

Code c++ :


const enum TerrainQuality {High=1,Medium=2,Low=4,ExtraLow=8};



error: `const' can only be specified for objects and functions|

Hors ligne


#4 

10-11-2010 00:40:45

nabouill
Abonné
Date d'inscription: 17-09-2009
Messages: 242
Corrections: 1

supprime "const"


mes sites: www.manga-vf.fr et www.series-vf.fr

Hors ligne


#5 

17-11-2010 01:08:21

mmorpglefilm
Abonné
Lieu: la galaxie UDFy-38135539
Date d'inscription: 18-05-2010
Messages: 162
Site web

Hors ligne


Options Liens officiels Caractéristiques Statistiques Communauté
Corrections
irrlicht
irrklang
irredit
irrxml
xhtml 1.0
css 2.1
Propulsé par FluxBB
Traduit par FluxBB.fr
Analysé par
880 membres
1424 sujets
11113 messages
Dernier membre inscrit: mandrifidy
36 invités en ligne
Aucun membre connecté
RSS Feed