Forum Clubic

Recupérer Signal du retour de force - Utilisation de direct Input

Voila dans le cadre d’un projet , je dois être amené à récupéré le signal du retour de force d’un volant ( sur un jeu de voiture donc ) pour synchroniser les vibrations du volants sur les vibrations de moteur placé sous le siege du conducteur.

Ca parait peut-être simple, mais je ne vois pas du tout comment faire. J’ai essayé de comprendre les module utiliser genre DirectInput , mais je ne sais pas comment l’utilisé. On dirait qu’il faut programmer, mais en même temps ce n’est jamais préciser en quel langage, sauf sur un site ou ca ressemble beaucoup a du langage C ( http://www.cs.cmu.edu/~jparise/directx/joystick/ ) mais c’est pour le cas d’un joystick , je ne connait pas les termes pour un volant.

De plus , quels moteur , comment les brancher etc . . . sont encore beaucoup de question que je me pose, mais je voudrais en premier comprendre comment récupéré ce signal et comment l’utiliser.

Merci d’avance

edit : En plus lors des explications sur les sites, ils mettent souvent :"Ajouter les référence DirectX et . . . etc." mais les ajouter OU ? Comment ?

J’ai télécharger le SDK pack qui regroupe tous les ??? de directX , et bien évidemment je ne sais pas comment m’en servir ^^

Tu n’as pas déjà posté cette question car si mes souvenirs sont bon, je t’avais donné un lien direct faire le SDK du force feedback, je crois t’avoir dit de scaler les valeurs retournées par DirectX par les bornes de traitement de ton moteur.

ca parait tellement simple , je pige kedal . . . je pige pas comment utiliser ce fichu tpack SDK

ca parait tellement simple , je pige kedal . . . je pige pas comment utiliser ce fichu tpack SDK

En effet j’ai deja poser cette question , MAIS si la recherche de sujet marchait ca m’eviterait de reposter la même chose ^^ donc penser a réactiver la fonction de recherche de sujet . . .

Tu as regardé ce lien ?
Pour le langage utilisé, dès lors que celui ci permet d’accéder à des DLL 32 bits, tu pourras utiliser l’API mais il faudra aussi que les headers existent dans ledit langage, si ce n’est pas le cas, il faudra convertir du C/C++ vers ton langage.
Concernant les références, cela concerne en fait la création de l’instance d’un objet COM en vue de l’utilisation des méthodes/propriété de l’objet instancié.

je pense que je vais googleiser un max, parce que ya plein de terme que je pige pas ^^

Je vais mater le liens, mais je pige pas, les HRESULT par exemple , ca se programme ou ? dans Visual Studio par exemple ? qq part dans le logiciel SDK ?

HRESULT n’est qu’un typedef donc ça ne se programme pas :wink:
DirectX, comme n’importe quelle API, se programme dès lors que l’API existe pour le langage concerné, cela inclue les headers et les libs (statiques ou d’import) donc oui, tu peux le faire via Visual Studio mais tu peux aussi le faire via Mingw ou encore Cygwin.

N’empêche, il manque le langage dans ce titre!

(voilà, boulot de modérateur vil et mesquin fait:))

genre HRESULT ca équivaut a typedef struct en langage C ? et toutes les fonction qui commence par ca en fait on peut les programmer par exemple dans un Input.c et les utiliser dans un main ( pour simplifier et pour faire le paralelle avec le langage c ) ??

ouhla, tu veux contrôler un robot sans savoir programmer apparemment, je ne dit pas ça de haut mais il va d’abord te falloir commencer par apprendre la base de la programmation, non ?
Pour répondre à ta question, les typedef améliorent la lisibilité du code et permettent de rendre opaque certaines struct.

A la base je sais programmer en C, ensuite j’ai un projet qui est l’amélioration d’un jeu de course en créant une sorte de cockpit avec son , volant , pedalier ( volant / pédalier et le son ca s’achete ) puis rendre plus réaliste par exemple en mettant des petit moteur sous le siege qui vibreront en meme tps que le volant. Et donc pour cela je me suis lancer dans l’aventure de DirectInput, c’est un fait que j’en chie un peu, mais ca ressemble pas mal au C.

Par cotnre si tu vois une autre solution pour faire vibrer des moteur en meme temps que le volant , dis moi , ca sera surement plus facile, peut être que je me complique la vie ? :frowning:

En fait, tout dépend de ce fameux volant, comment il est branché et comment il est reconnu sous windows.
Si c’est un périphérique reconnu comme un contrôleur de jeux, alors oui, DirectInput est ce qu’il y a de plus simple.
Sinon, il te faudra connaitre les spécifications du moteur pour communiquer avec lui et envoyer des requêtes pour avoir les informations que tu souhaites sur le port de communication, comme n’importe quel périphérique série par exemple.

ouai donc il faut que je recup le volant deja ca sera plus simple si je veux faire des test. Le probleme c’est que je suis sur un portable donc pas de port parallele , et si c’est un port USB, ben je verais bien . . . lol je suis un peu lost ^^ je vais aller voir mes prof cette aprem je pense