IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PureBasic Discussion :

N3XTD : un moteur 3D pour PureBasic


Sujet :

PureBasic

  1. #21
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    la version 4.40 est moins tolérante, il va falloir que tu perdes ton habitude d'ajouter le type aux procédures quand tu les appelles

    Par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      v1.l= iAddVertexMesh.l(*mesh,  0,0,0, $ff00,  0,0, 0)
    Devra s'écrire avec la 4.40 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      v1.l= iAddVertexMesh(*mesh,  0,0,0, $ff00,  0,0, 0)
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  2. #22
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Merci pour l'info. Je vais tranquillement corriger cela en prévision de l'arrivé de la version release 4.40.

    Merci

  3. #23
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut iTargetCamera() ne fonctionne pas ?
    Salut Tmyke,

    J'ai testé différentes façons d'orienter la caméra vers un point, et apparemment iTargetCamera() ne fonctionne pas, ou alors je n'ai pas compris sa fonction ?

    L'affichage à l'écran est correct avec les deux premières fonctions :
    iPointTargetNode(*cam)
    ;iPointNode(*cam, *mesh)
    ;iTargetCamera(*cam, 0, 0, 0)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    ; Include files 
    IncludePath "includes"   :   IncludeFile "n3xtD_PB.pbi"
     
    ; Globales
    Global	anglex.f, angley.f, flagXDown.w
    Global	mox.f, omx.f, moy.l, omy.l
     
    Global i.l
    Global *app.l, Quit.l
     
    ;- Ouverture ecran
    ; open n3xt-D screen
    *app = iCreateGraphics3D(800,600)
    ; << OR >>
    ;iCreateGraphics3D(800,600, 32, #False, #True, #EDT_DIRECT3D9)
    If *app= #Null
      End
    EndIf
     
    ;- Mesh manuel
    ; define a ManualContruct Mesh
      Global *mesh.IMMesh
     
    ; create the mesh
      *mesh=iCreateEmptyMesh()
     
    ; add one buffer for vertices and faces
      iAddBufferMesh(*mesh)
    ; define 3 vertices 
      v1.l= iAddVertexMesh(*mesh,  0,0,0, $ff00,  0,0, 0)
      v2.l= iAddVertexMesh(*mesh,  2,2,0, $ff00,  0,0, 0)
      v3.l= iAddVertexMesh(*mesh,  2,0,0, $ff00,  0,0, 0)
    ; add one face
      iAddFaceMesh(*mesh,  v1,v2,v3, 0)
     
    ; add second buffer for vertices and faces
      iAddBufferMesh(*mesh)
    ; define 3 vertices 
      v1= iAddVertexMesh(*mesh,  0,2,0, $ff,  0,0, 1)
      v2= iAddVertexMesh(*mesh,  2,2,0, $ff,  0,0, 1)
      v3= iAddVertexMesh(*mesh,  0,0,0, $ff,  0,0, 1)
    ; add one face
      iAddFaceMesh(*mesh,  v1,v2,v3, 1)
     
    iPositionNode(*mesh, 0, 0, 0)
     
    ;- Camera
    ; create a camera
    Global *cam.ICamera = iCreateCamera()
    iPositionNode(*cam, 1, 10, -10)
    ;iPointTargetNode(*cam)
    ;iPointNode(*cam, *mesh) 
    ;iTargetCamera(*cam, 0, 0, 0)
     
     
    ;-           main loop
     
    Repeat
     
     	; move camera with dir key and mouse (left click)
      If iGetKeyDown(#KEY_ARROW_UP)
        iMoveNode(*cam, 0,0,0.5)
      EndIf
      If iGetKeyDown(#KEY_ARROW_DOWN)
        iMoveNode(*cam, 0,0,-0.5)
      EndIf
     
     
    	; if Escape Key, exit	
      If iGetKeyDown(#KEY_ESCAPE)
        Quit=1
      EndIf
     
      iBeginScene()
         iDrawScene()
      iEndScene()
     
    Until Quit=1
    iFreeEngine()
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  4. #24
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Salut Comtois.

    Désolé pour cette réponse un peu tardive.

    En fait, il ne s'agit pas d'un bug.

    Les deux premières fonctions permettent d'orienter un node, ici une camera,
    vers une direction donnée (soit en fournissant un autre node, soit en donnant les coordonnée de l'objectif).
    Ce sont ces fonctions qu'il faut utiliser pour orienter un élément dynamiquement.

    La fonction iTargetCamera est une fonction bas niveau, spécifique aux camera.

    Son utilisation est quelque peu différente. En fait, dans le cas de ton code, il faudra écrire iTargetCamera(*cam, 0,-2,2)
    pour avoir le même résultat que les deux fonctions précédente.

    Cette fonction définit la base de pointage, mais elle se réfère toujours par rapport à la position de la camera.
    Un peu comme une fonction LookAt en fait. Cela pourrait s'apparenter à une addition vectorielle relative à la position de la camera.

    Voilà, je ne sais pas si j'ai été très clair .

    Globalement, la fonction iTargetCamera n'est à réserver qu'a des cas bien particulier.

  5. #25
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Merci pour ta réponse, je n'ai pas tout compris, et dans quel cas particulier c'était utile, mais pour l'instant ça me va, j'utilise iPointTargetNode(*cam), c'est parfait

    J'ai d'autres questions, je vais ouvrir un 'post' pour laisser la place aux annonces des mises à jour dans celui ci.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  6. #26
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par comtois Voir le message
    J'ai d'autres questions, je vais ouvrir un 'post' pour laisser la place aux annonces des mises à jour dans celui ci.
    Pas de soucis, au contraire. Demain en rentrant, je viendrais direct faire un petit tour par ici

  7. #27
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Je viens de démarrer un autre projet avec N3XT3D dans lequel j'utilise EnableExplicit, et là ça coince avec tes fichiers includes

    par exemple le fichier Vector2.pbi

    Code x : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Procedure.f Vec2_GetLength(*vec1.VECTOR2)
        res.f = (*vec1\x * *vec1\x) + (*vec1\y * *vec1\y) 
        ProcedureReturn Sqr(res)
    EndProcedure

    Devient

    Code x : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Procedure.f Vec2_GetLength(*vec1.VECTOR2)
        Protected res.f
        res = (*vec1\x * *vec1\x) + (*vec1\y * *vec1\y) 
        ProcedureReturn Sqr(res)
    EndProcedure
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  8. #28
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Arrff, effectivement j'avais un peu omis ce genre de truc. Je corrige aussi, merci.

  9. #29
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Petite new's pour dire que la version 19 vient d'être mise en ligne.

    Pas mal de correction apporté (gestion souris, collisions, etc...)

    Prochaine étape, adaptation de N3xtD à la dernière version de Irrlicht, c'est à dire
    la V1.6 (actuellement N3xtD utilise la 1.5)

  10. #30
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Merci, je télécharge tout de suite
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  11. #31
    Membre éprouvé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    279
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 279
    Points : 1 179
    Points
    1 179
    Par défaut
    A la question : "Qu'apporte la v1.6 ?"

    * Beaucoup de corrections de bugs
    * Quelques nouveautés :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    New mesh and image loaders (.PLY mesh loader, .RGB, .RGBA, .SGI, .INT, and .INTA textures)
    New Material properties ColorMask, Mipmap LOD, Depth test function, AlphaToCoverage, selective Anti-Aliasing
    New console device and possibility to create different devices from the same library
    OverrideMaterial for changing material properties globally
    New Filesystem with tighter integration of different archive types
    Improved Software rendering engine
    Pour la liste complète : http://irrlicht.sourceforge.net/changes.txt

  12. #32
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Salut Tmyke

    Fred lance un appel aux utilisateurs PureBasic, je crois que N3XTD y a toute sa place

    Hi all,

    We are currently reworking a bit the PureBasic site, and we need your help. We are looking for screenshots (applications or games) for the screeshot page, with the name and a link to your product. It can be small or big, but it needs have a web pageto download/access it (no source needed). Don't be shy

    On another note, we would like to do an e-coverbox for PB (using a CoverCommander), so if someone feel in mood to help with the 2 faces (on front, on back border), just submit your artwork. Would be cool to have a box using the purebasic.com colorscheme (white/gray/darkblue).

    If you have some (fast to implement) ideas for the website, don't hesitate to tell.

    The Fantaisie Software Team.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  13. #33
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Salut Comtois.

    Désolé pour cette réponse tardive.

    Après quelques années d'effort, que ce soit avec Dreamotion3D ou N3xtD, force est de constater qu'il n'y a pas de vrai communauté 3D au sein de la communauté PureBasic. Donc je met définitivement un coup d'arrêt à mes développement 3D pour PureBasic (raison d'être de N3xtD dernièrement).
    Je reprends en quelque sorte ma liberté, après pratiquement 5 ans de travail quasi exclusif pour faire bouger la 3D sous PB (sans succès réél). J'ai certainement ma part de responsabilité, mais je ne peux que constater cet échec, alors que pourtant j'y ai consacré tout mon temps libre...

    Donc vous m'en voyez désolé, de plus PB n'évoluant pas vraiment dans le sens de ce que j'attends depuis un petit moment, je lâche donc aussi PB.

    Je vais pouvoir me consacrer à mes quelques projets personnels, et repartir vers mon monde (codeurs C++, 3D hardcore, conception avancé de Jeux 3D, etc...).

    Je regretterais par contre indiscutablement la communauté francophone de PB, à la fois attachante et chaleureuse
    Je viendrais malgré tout de temps en temps lorgner voir ce qui se passe du votre coté, et qui sait, PB survivra peut-être, préfigurant de nouvelles aventures communes

  14. #34
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Merci pour tout ce que tu as fait.

    J'espère que tu l'avais fait avant tout pour toi ? C'est le meilleur moyen de ne pas être trop déçu s'il y a peu de retour des autres

    Bon courage pour tes futurs projets.
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  15. #35
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par comtois Voir le message
    J'espère que tu l'avais fait avant tout pour toi ? C'est le meilleur moyen de ne pas être trop déçu s'il y a peu de retour des autres
    A la base oui, et j'y ai pris beaucoup de plaisir, heureusement, sinon j'aurais jeté l'éponge bien avant
    Maintenant, c'est vrai qu'au bout d'un moment, quand il n'y a que l'écot de te paroles qui revient, on se sent un peu seul
    Mais je ne regrète rien, ne serait-ce que pour la communauté PB.fr

    Citation Envoyé par comtois Voir le message
    Bon courage pour tes futurs projets.
    Merci, et bon courage à toi aussi, je ne me permettrais pas de te dire que tu t'enterre un peu ici (certains nouveaux horizons pourrait profiter de tes indiscutable talent de codeurs), mais si c'est ta passion, alors je la respecte sans discutions

  16. #36
    Responsable Purebasic

    Avatar de comtois
    Inscrit en
    Avril 2003
    Messages
    1 261
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 1 261
    Points : 9 924
    Points
    9 924
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par tmyke Voir le message
    Merci, et bon courage à toi aussi, je ne me permettrais pas de te dire que tu t'enterre un peu ici (certains nouveaux horizons pourrait profiter de tes indiscutable talent de codeurs), mais si c'est ta passion, alors je la respecte sans discutions
    Je suis un naufragé volontaire ici, tout va bien pour moi

    Je n'ai plus trop le goût de coder en ce moment et je n'ai pas encore retrouvé le goût de la lecture, alors m'occuper d'une rubrique est un passe temps intéressant
    Vous souhaitez participer à la rubrique PureBasic (tutoriels, FAQ, sources) ? Contactez-moi par MP.

  17. #37
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Désolé d'apprendre ton arrêt Tmyke (c'est Ar-S au fait)
    Comme comtois je te souhaite une bonne continuation en espérant te recroiser sur le forum PB un de ces moments.

    Peut-être devrais tu annoncer l'arrêt de NEXT-D sur le fofo anglais :
    http://www.purebasic.fr/english/view...7320&start=150

    En tout cas merci pour tout ce que tu as fait pour la communauté pb, même si elle n'a pas été aussi réactive que tu le souhaitais, par tes créations tu as montré ce que PB a dans le ventre.

    A un de ces jours.
    Amicalement.

    Ar-S

  18. #38
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Merci pour l'intention Ar-S

    J'essaierais de passer de temps en temps

  19. #39
    Nouveau Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Salut tout le monde,
    (Je me suis inscrit spécialement pour toi Tmyke!)

    Bah...... c'est triste d'entendre que n3xt-3d n'est plus en évolution, sinon je me joint aux autre pour te dire qu'en fin tu as pu comprendre que tes capacités sont plus utile ailleurs que dans un développement que seul une minorité qui s'y intéresse.

    Sinon je te propose d'étudier la possibilité de créer un wrapper irrlicht pour purebasic, je ne sais pas si ça demande beaucoup de temps, et c'est à ta portée alors je pense que pas mal de personnes seront intéressées.

  20. #40
    Membre régulier Avatar de tmyke
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    131
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 131
    Points : 118
    Points
    118
    Par défaut
    Citation Envoyé par kster Voir le message
    Sinon je te propose d'étudier la possibilité de créer un wrapper irrlicht pour purebasic, je ne sais pas si ça demande beaucoup de temps, et c'est à ta portée.
    Cela prend du temps, forcement un peu .

    En fait N3xtD n'est rien d'autre qu'un wrapper d'Irrlicht, auquel j'ai ajouté quelques fonctions et codes personnel (ou de quelques amateurs éclairés d'Irrlicht).
    Le code source de N3xtD étant toujours dispo, il suffit de le reprendre pour éventuellement faire perdurer et maintenir le projet si quelqu'un se le sent
    Je passe de temps en temps et se serais toujours dispo pour conseiller ou aider occasionnellement dans ce cas.

    Citation Envoyé par kster Voir le message
    je pense que pas mal de personnes seront intéressées.
    j'en suis moins sûr

Discussions similaires

  1. Moteur 3D pour JavaME
    Par guenievre dans le forum Java ME
    Réponses: 4
    Dernier message: 23/01/2007, 17h33
  2. Collaboratif - Moteur 2D pour Allegro
    Par BornTobear dans le forum Allegro
    Réponses: 1
    Dernier message: 08/01/2007, 03h57
  3. Moteur 3D pour MMORPG
    Par MABB dans le forum Moteurs 3D
    Réponses: 24
    Dernier message: 28/10/2006, 21h30
  4. moteur java pour aplet java
    Par jojo971 dans le forum Applets
    Réponses: 2
    Dernier message: 23/10/2006, 14h37
  5. Deux moteurs interbase pour une seule base ?
    Par Yurck dans le forum InterBase
    Réponses: 11
    Dernier message: 21/09/2006, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo