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

3D Java Discussion :

Préférence pour activer glPolygonMode()


Sujet :

3D Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    mai 2010
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : mai 2010
    Messages : 121
    Points : 135
    Points
    135
    Par défaut Préférence pour activer glPolygonMode()
    Bonjour à tous,

    Je réalise un moteur 3D et java à l'aide de Jogl et je me pose une question sur la façon d'activer le PolygonMode des formes 3D. Si vous étiez programmeur utilisant un moteur 3D, que préfériez-vous ?

    1. L'activer une seule fois pour plusieurs formes dans la méthode de rendu :
    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
    public void init(...) {
        cube1 = new Cube();
        cube2 = new Cube();
        cube3 = new Cube();
    }
     
    public void update(...) {}
     
    public void render(...) {
        // Choix du premier polygon mode
        graphics.glPolygonMode(Face.FRONT_AND_BACK, Mode.LINE);
        cube1.draw();
        cube2.draw();
     
        // Changement de polygon mode
        graphics.glPolygonMode(Face.FRONT_AND_BACK, Mode.FILL);
        cube3.draw();
        //...
    }
    2. Qu'il soit modifiable via une méthode présente dans l'objet représentant la forme :
    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
    public void init(...) {
        cube1 = new Cube();
        cube2 = new Cube();
        cube3 = new Cube();
    }
     
    public void update(...) {
        // Changement de polygon mode pour 2 cubes dès que l'utilisateur appuie sur X
        if(input.isKeyPressed(Input.KEY_X)) {
            cube1.setPolygonMode(Face.FRONT_AND_BACK, Mode.LINE);
            cube2.setPolygonMode(Face.FRONT_AND_BACK, Mode.LINE);
        }
    }
     
    public void render(...) {
        cube1.draw();
        cube2.draw();
        cube3.draw();
        //...
    }
    Merci d'avance pour votre avis constructif

  2. #2
    Membre actif Avatar de Chen norris
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    mai 2004
    Messages
    216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2004
    Messages : 216
    Points : 248
    Points
    248
    Par défaut
    Ne pas mettre d'appel à glPolygonMode dans la méthode render me semble plus agréable et plus lisible. Mais même si cela implique de positionner en amont le glPolygonMode pour chacun des cubes. En solution intermédiaire, on peut imaginer un constructeur supplémentaire de Cube qui prenne en paramètre le glPolygonMode souhaité (si le développeur ne met pas de paramètre, c'est la valeur par défaut qui sera prise).
    Chen norris
    C/C++, C#, Java, PHP & SQL coder
    Web developer

Discussions similaires

  1. valeur registre pour activer le dhcp
    Par Mut dans le forum Autres Logiciels
    Réponses: 5
    Dernier message: 04/09/2011, 14h11
  2. [MS-DOS] Une commande DOS pour activer les mises à jour auto
    Par Furius dans le forum Scripts/Batch
    Réponses: 20
    Dernier message: 02/12/2005, 16h21
  3. Script pour activer le service WMI
    Par log1c dans le forum Windows
    Réponses: 3
    Dernier message: 30/11/2005, 15h11
  4. [Javadoc]préférences pour javadoc 'bulles' sur eclipse
    Par ben007 dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 16/11/2005, 20h54
  5. les event de IBQuery pour activer,desactiver la Transaction?
    Par amad206 dans le forum Bases de données
    Réponses: 1
    Dernier message: 31/03/2005, 14h12

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