Accueil > Forum > > > > Problème de boucle DirectX ...
Problème de boucle DirectX ...
mercredi 20 décembre 2006 à 17:56:05 |
Problème de boucle DirectX ...

nico1610
|
Bonjour à tous, Voila à quoi resemble mon code : Public bRun as Boolean Private Sub Form_Load() bRun = True Me.show Call Init Form2.visible = True Timer1.enable = True End Sub
Sub Init()
While bRun ... 'Code directX de la boucle de rendu WEnd
End Sub
(c'est simplifié pour ne montrer que le problème au quel je fait face !)
Mon problème est le suviant : Quand je lance ma form ( Form_Load) la boucle infinie s'enclanche et c'est normal (c'est comme ca pour le directX) et a ce moment là : Plus de reponce de Form_Load (normal, il attend la fin de init qui ne se fait qu'a la fin du programme) or, je veut lancer Form2 et Timer1, et ca avant Init, donc ce que je veut c'est que j'ai un Callqui ne fasse que lancer la sub et qui n'attend pas la fin de l'instruction pour lacher la main !
Bien sur si vous avez une remarque du style c'est moche le "Timer1" , nome tes composants! Vous pouvez passer votre chemin !
Je cherche uniquement à faire ca : un Callqui ne fasse que lancer la sub et qui n'attend pas la fin de l'instruction pour lacher la main ! Et avoir un code simple du style :
CallWithOutWait Init
J'attend avec impatience vos reponces, Ergo5.
|
|
mercredi 20 décembre 2006 à 18:32:50 |
Re : Problème de boucle DirectX ...

Julien237
|
Salut,
Ce que tu veux faire, c'est du multithreading, en vb6 c'est (quasi pour les puristes) impossible. Il faut faire du vb2005. Néanmoins en vb, je te déconseille grandement de faire une boucle infinie pour du directx. En général la boucle "infinie" de ton programme (i.e. la boucle générale qui gère les messages) est tranquillement gérée par vb et tu n'as qu'à t'occuper de gérer des évènements.
A ta place, ce que je ferais, c'est utiliser un timer pour le rendu (avec un interval style 40 ms) que tu lance à ton Call Init :
'Public bRun as Boolean
Private Sub Form_Load()
'bRun = True
'Tu remplaces bRun par TmrDraw.Enabled partout
Me.show
TmrDraw.Interval = 40
TmrDraw.Enabled = True
'Call Init
Form2.visible = True
Timer1.enable = True
End Sub
Sub TmrDraw_Tick()
... 'Code directX de la boucle de rendu
End Sub
Si tu tiens vraiment à ta boucle infinie, tu dois mettre un DoEvents dedans afin que vb puisse gérer les messages en attente à ce moment là et ainsi éviter que ton prog ne plante... Mais je te conseille de faire comme je t'ai dis...
Julien.
|
|
mercredi 20 décembre 2006 à 22:14:47 |
Re : Problème de boucle DirectX ...

nico1610
|
Ok pour ce que tu viens de me dire, tu ne m'apprend rien, elas !!
Enfin, pour le timer, je n'ai pas encore essayé , mais ca m'a l'ai un peu dommage quand je peut monter a 1035 FPS, avec un timer de 40ms, ca va faire tomber les performances ! Mais bon pas besoin de 1035, 40 suffise donc j'essayerai le timer, mais dommage.
Merci quand même , je donne pas de "reponce accepté" car c'est pas ce que je voulais te réponce, donc si quelqu'un a de quoi faire du MultiThrainig en VB je suis preneur !
|
|
mercredi 20 décembre 2006 à 22:22:49 |
Re : Problème de boucle DirectX ...

Julien237
|
Non en effet, vraiment pas besoin de 1035 FPS, si tu veux tu peux mettre le timer plus bas... Mais 40 c'est la valeur conseillées par microsoft dans le sdk, et je me dis qu'ils s'y connaissent...
Pour le multithreading (tu nous invente un fameux mot sur ce coups là :p), n'espère rien de mieux qu'un DoEvents en vb6. Ca n'existe pas. Il faut passer en .Net pour avoir du multithreading. Mais même la je vois pas l'intérêt pour faire du directX... Mais bon, chacun ses vaches...
Julien.
|
|
mercredi 20 décembre 2006 à 23:57:33 |
Re : Problème de boucle DirectX ...

nico1610
|
En effet comme tu m'as dit c'est largement suffisant puis sa bouffe pas tout l'uc !!
|
|
Cette discussion est classée dans : problème, boucle, form, directx, init
Répondre à ce message
Sujets en rapport avec ce message
Affiche de form dans une boucle [ par Mekhanik ]
Voilà mon problème : J'ai une form d'affichage de résultat. Cette form s'affiche par MaForm.show et le bouton suivant de la form déclenche MaForm.hide
Boucle sur nom de feuille [ par 91arno78 ]
Salut tout le monde je suis un petit nouveau dans le circuit!!!Voilà j'ai un petit problème et j'espère que l'un de vous pourra m'aider:j'aimerais fai
problème de textbox... [ par Sator2 ]
Voilà quel est mon problème: j'ai une série de textBox donc j'en ai fait un groupe de contrôle pour les afficher par boucle....bref je veux dans certa
taille maxi d'une form [ par schum_63 ]
Bonjours à tous,mon problème est que je travail dans une entreprise qui ma demander d'informatiser la saisie d'un formulaire et ce meme formulaire s'é
Aide vbA svp [ par nostra78 ]
J'ai des cellules qui sont sous la forme suivante a/b (exemple : 0/2, 1/3...)Je veux additionner les b de toutes mes cellules.b = Right$(a/b,1)Par con
problème de récupération de vbKeyCode/vbKeyAscii [ par agnescol ]
Bonjour, Je travaille sur un programme pour les aveugles et donc avec une synthèse vocale. J'ai une textBox mutiligne et je dois récupérer lorsque l'
Problème liés à l'impression d'une form [ par seboune76 ]
J'aimerais savoir si l'on peut modifier les marges d'impression pour que ma form s'imprime au milieu de ma feuille. Actuellement, elle s'imprime en ha
Vitesse d'exécution du PHP [ par Knolan ]
Salut,Alors voila mon problème: j'ai une page PHP que j'appelle un nombre n de fois, seulement le traitement de cette page est long, l'appel de cette
Problème avec un form [ par Sytchev3 ]
Je développe une appli en VB6 et je souhaiterais empêcher l'utilisateur d'agrandir la fenêtre (en plein écran) et de la redimensionner mais il faut qu
[VB6] Problème avec la croix pour fermer une application [ par NeT_SlipKnoT ]
Bonjour,j'ai un problème au niveau de mon programme VB. Mon projet est constitué de plusieurs forms dont 1 qui est le form principal (le menu). A part
Livres en rapport
|
Derniers Blogs
[HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] SLIDES ET DéMOS : AUTOUR DU W3C , NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Très bonne après-midi passée lors cette conférence avec le W3C, organisée par L' Inria sur les nouveaux standards, ce Mardi 14 Février, on sent vraiment que çà bosse au W3C, et l'avenir est très très prometteur pour le HTML5, notamment ...
Cliquez pour lire la suite de l'article par Gio GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko
Forum
RE : VITESSERE : VITESSE par ossama261988
Cliquez pour lire la suite par ossama261988 RE : VITESSERE : VITESSE par ucfoutu
Cliquez pour lire la suite par ucfoutu
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|