Page 1 sur 1

Application 3D d'un moniteur à un autre

Publié : mer. 30/oct./2013 21:52
par falsam
Est ce qu'il y a un moyen de passer une application d'un moniteur à un autre sans que ça plante ?

Si certains d'entres vous ont deux moniteurs sur leurs PC essayer ce code pour voir ce qu'il se passe.

Code : Tout sélectionner

Define.f CamX, CamY, CamZ

Procedure.w MouseWheelDelta()
  wz.w = ((EventwParam()>>16)&$FFFF)
  ProcedureReturn -(wz/100)
EndProcedure

InitEngine3D()
InitKeyboard()
InitSprite()

window = OpenWindow(#PB_Any,0,0,1024,768,"How to use mousewheel to zoom in 3D")
OpenWindowedScreen(WindowID(window),0,0,1024,768)

;
; Ambiance
AmbientColor(RGB(255, 255, 255))
CreateLight(#PB_Any,RGB(255, 255, 255), 3,50,50)

;
;axes 
Red = RGB(255, 0, 0)
Green = RGB(0, 255, 0)
Blue = RGB(0, 255, 255)

AxeX = CreateLine3D(#PB_Any, -10,0,0, Red, 10, 0, 0, Red) 
AxeY = CreateLine3D(#PB_Any, 0,-10,0, Green, 0, 10, 0, Green) 
AxeZ = CreateLine3D(#PB_Any, 0,0,-10, Blue, 0, 0, 10, Blue) 

;
; Entity
Mesh = CreateCube(#PB_Any, 2) 

; Texture
Texture = CreateTexture(#PB_Any,512,512)
StartDrawing(TextureOutput(Texture))
Box(0,0,512,512,RGB(0, 0, 0))
Box(1,1,510,510,RGB(255, 216, 0))
StopDrawing()

Material = CreateMaterial(#PB_Any,TextureID(texture))
Entity = CreateEntity(#PB_Any, MeshID(Mesh), MaterialID(Material))

;
; Camera
Camera = CreateCamera(#PB_Any,0,0,100,100)
CameraBackColor(Camera, RGB(105, 105, 105))
CamX=2.0
CamY=1.0
CamZ=10
CameraLookAt(Camera,0,0,0)


While #True
  
  Event = WindowEvent()
  Select Event
    Case #WM_MOUSEWHEEL      
      CamZ=CamZ+(MouseWheelDelta())
      
  EndSelect
  
  ExamineKeyboard()  
  
  If Event = #PB_Event_CloseWindow Or KeyboardPushed(#PB_Key_Escape)
    Break
  EndIf  
  
  If KeyboardPushed(#PB_Key_Left)
    CamX-0.2  
  ElseIf KeyboardPushed(#PB_Key_Right)
    CamX+0.2
  EndIf
  
  If KeyboardPushed(#PB_Key_Up)
    CamY+0.2  
  ElseIf KeyboardPushed(#PB_Key_Down)
    CamY-0.2
  EndIf
    
  MoveCamera(camera, CamX, CamY, CamZ, #PB_Absolute)
  
  CameraLookAt(Camera, EntityX(Entity), EntityY(Entity), EntityZ(Entity))
  
  ClearScreen(RGB(0, 0, 0))
  RenderWorld()
  FlipBuffers()
Wend

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 3:01
par graph100
avec une fenêtre je ne vois pas pourquoi ca planterait. C'est avec le plein écran qu'il y a un soucis !

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 3:12
par G-Rom
C'est une histoire de contexte, les ressources sont généralement alloué aux contexte.
Si tu fermes ta fenêtre, il faudra ré alloué les ressources avant de la ré ouvrir ailleurs.
Mais passer d'un écran à l'autre, OpenWindow() ne le permet pas, a moins de fouiller dans les fin fonds des apis , je ne vois pas.

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 3:28
par falsam
G-Rom a écrit :C'est une histoire de contexte, les ressources sont généralement alloué aux contexte.
Si tu fermes ta fenêtre, il faudra ré alloué les ressources avant de la ré ouvrir ailleurs.
Mais passer d'un écran à l'autre, OpenWindow() ne le permet pas, a moins de fouiller dans les fin fonds des apis , je ne vois pas.
Tu as des soucis de réponses en double depuis quelques temps. Souci de connexion internet ? :mrgreen:

Concernant ta réponse, il y a pourtant des application qui passent d'un moniteur à un autre sans perdre le contenu 3D ou plantage de l'application.

Ce ne serait pas un souci plutot avec la gestion de directx ?

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 3:36
par falsam
Finalement j'avais la réponse. Si je compile avec le sous-System OpenGL alors plus de souci. L'application passe bien d'un moniteur à un autre sans perdre le contenu 3D ou plantage.

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 4:00
par G-Rom
falsam a écrit :
G-Rom a écrit :C'est une histoire de contexte, les ressources sont généralement alloué aux contexte.
Si tu fermes ta fenêtre, il faudra ré alloué les ressources avant de la ré ouvrir ailleurs.
Mais passer d'un écran à l'autre, OpenWindow() ne le permet pas, a moins de fouiller dans les fin fonds des apis , je ne vois pas.
Tu as des soucis de réponses en double depuis quelques temps. Souci de connexion internet ? :mrgreen:

Concernant ta réponse, il y a pourtant des application qui passent d'un moniteur à un autre sans perdre le contenu 3D ou plantage de l'application.

Ce ne serait pas un souci plutot avec la gestion de directx ?
je sais pas pourquoi le fofo me fait des doublons...

Pour directx , oui surement, c'est lui qui fourni le "contexte" ( la fenêtre , le mode exclusif fullscreen, etc...) , opengl fait pareil , mais surement d'une autre façon.

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 10:39
par Backup
G-Rom a écrit :je sais pas pourquoi le fofo me fait des doublons...
dans ce cas , ça viens pas du forum !!
sinon tout le monde serai touché ..

si j'ajoute ça a tes problemes de Lag sur OpenSpace , je me dit ....

il a ptete bien un soucis sur son Ordi , le monsieur .... tu devrai commencer
par verifier les Malwares .... , virus .... puis tester ton Reseau (bande passante ).... :)

a ce propos , va ici :
http://www.zdnet.fr/services/test-bande-passante/

et colle nous ta capture d'ecran , qu'on vois ....

mais bon , comme tu vas me dire , que ton Ordinateur est parfait ... que forcement ça viens d'ailleurs .... :mrgreen:

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 13:57
par G-Rom
Dobro a écrit :
G-Rom a écrit :je sais pas pourquoi le fofo me fait des doublons...
dans ce cas , ça viens pas du forum !!
sinon tout le monde serai touché ..

si j'ajoute ça a tes problemes de Lag sur OpenSpace , je me dit ....

il a ptete bien un soucis sur son Ordi , le monsieur .... tu devrai commencer
par verifier les Malwares .... , virus .... puis tester ton Reseau (bande passante ).... :)

a ce propos , va ici :
http://www.zdnet.fr/services/test-bande-passante/

et colle nous ta capture d'ecran , qu'on vois ....

mais bon , comme tu vas me dire , que ton Ordinateur est parfait ... que forcement ça viens d'ailleurs .... :mrgreen:
le jeu est mal programmé, de plus, d'après ce que j'ai vu en sniffant le jeu, les requêtes sql se font sur un port qui n'est pas ouvert chez moi.
le problème venais tout simplement de ma souris, elle balançais 2 clics , le pullup doit faire la gueule.
je joue à bf3 & bf4 en réseau à 64 joueurs ! j'ai 2 méga de connexion , ton site m'a donné ~1900kbits.

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 14:18
par Backup
G-Rom a écrit : ton site m'a donné ~1900kbits.
tu deconnes ?? 8O

sur un ADSL 8mega , je suis deja entre 6500 Kb/s et 7000 dans les meilleur moment

si tu te traine avec du 1900 kbits/s , m’étonne pas que tu rames :lol:

Image

jouer en reseau avec du 2 mega , c'est comment dire .... :lol:
bonjour le Laggeur .... :D

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 14:34
par falsam
Maintenant je sais pourquoi G-Rom et surement d'autres lag sur Open Space.

La bande passante sur ma DSL.

Image

et 14500 Kbit/s environ sur ma deuxième ligne ADSL france telecom.

G-Rom ne me répond pas qu'Open Space est mal codé parce que j'ai des moignons à la place des doigts hein ?

Certains jeux en ligne passe par des serveurs de jeux qui renvoient des images à l'utilisateur final. Mon principe est tout le contraire, je ne sature pas le serveur. C'est le PC qui gére la 3D. Par contre ça demande une bonne connexion pour envoyer des requêtes et recevoir en temps réels le résultat de ces requêtes.

Alors temps pis pour ceux qui n'ont pas une connexion suffisante.

Bon .... je suis peut être hors sujet :oops:

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 14:38
par Backup
houa le pied :)


non serieux de nos jours le Plancher pour le Jeux reseau .. c'est 6-8 Mega :)

avec 2 mega, t'arriverai meme pas a faire tourner WOT (World of Tanks )
parceque la majorité du jeux est sur leur serveurs ...
et que sans bonne connexion , c'est quasi rappé (meme avec un bon algo de repositionnement )

[reedit]

pour Wot ils preconisent

Connection speed:
1024
Kbps
or faster
mais franchement, meme avec mon 8Mega , je lag des moments .. c'est dire

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 15:49
par G-Rom
Tu as une bande passante de malade ^^
ca doit être le pied pour le download !
ceci dit, je regarde du streaming, je joue en réseau à des jeux "gourmand" comme bf3 / bf4, wargame, etc... pas de lag du tout.
C'est le PC qui gére la 3D.
Tout les jeux , c'est comme ça, le client gère sont propre environnement , d'ailleurs on ne peu même pas appeler cela du lag, car ton "serveur" positionne les joueurs environ toutes les secondes , la bande passante n'est même pas utilisé d'ailleurs , d'ou je dis que tu as mal programmé, je suis sur que si j'utilise un pc moins puissant, le jeu sautera moins. je ferais les tests ce soir sur un pc en carton pâte et je te dirais ce qu'il en est. D'ailleurs , tu dois être le seul au monde à faire un jeu multijoueur temps réel ou le serveur est un serveur sql :mrgreen:

Re: Application 3D d'un moniteur à un autre

Publié : jeu. 31/oct./2013 15:49
par G-Rom
Tu as une bande passante de malade ^^
ca doit être le pied pour le download !
ceci dit, je regarde du streaming, je joue en réseau à des jeux "gourmand" comme bf3 / bf4, wargame, etc... pas de lag du tout.
C'est le PC qui gére la 3D.
Tout les jeux , c'est comme ça, le client gère sont propre environnement , d'ailleurs on ne peu même pas appeler cela du lag, car ton "serveur" positionne les joueurs environ toutes les secondes , la bande passante n'est même pas utilisé d'ailleurs , d'ou je dis que tu as mal programmé, je suis sur que si j'utilise un pc moins puissant, le jeu sautera moins. je ferais les tests ce soir sur un pc en carton pâte et je te dirais ce qu'il en est. D'ailleurs , tu dois être le seul au monde à faire un jeu multijoueur temps réel ou le serveur est un serveur sql :mrgreen:

Re: Application 3D d'un moniteur à un autre

Publié : sam. 02/nov./2013 9:28
par cederavic
Dobro a écrit :mais franchement, meme avec mon 8Mega , je lag des moments .. c'est dire
Le debit est beaucoup moins important que le temps de reponse dans un jeu multi "temps reel". Regarde ton activité reseaux quand tu jou a un tel jeu, je doute fortement que tu sois en train de DL a 1mo/s.

Pour ce qui est de laisser le client maitre de l'etat de jeu, c'est surement ce qu'il y a de pire a faire... Dans un jeu multi le serveur doit toujours etre "autoritaire". Normalement le serveur et les client font une simulation du monde de leur coter mais seul le serveur dit la vérité et les clients s'adaptent (je parle de la partie logique du jeu, pas graphique).

J'avais commencer il y a un ptit moment un truc dans ce genre, je jeterais un oeil a Tornado voir ce que ça donne :)