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

Android Discussion :

[OpenGL] ByteBuffer.allocate() vs ByteBuffer.allocateDirect() => Erreur riche d'enseignement


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Avatar de tails
    Homme Profil pro
    Inscrit en
    Novembre 2003
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 799
    Billets dans le blog
    15
    Par défaut [OpenGL] ByteBuffer.allocate() vs ByteBuffer.allocateDirect() => Erreur riche d'enseignement
    Bonjour,

    OpenGL est une plateforme sur laquelle je fais mes débuts (en version 1.5 d'Android), j'ai suivi d'excellents tutoriels sur le net, et j'ai également débuté le livre blanc de Khronos.

    Tutos consultés :

    http://obviam.net/index.php/opengl-e...ts-primitives/
    http://blog.jayway.com/2009/12/03/op...ndroid-part-i/
    http://www.droidnova.com/android-3d-...rt-ii,328.html

    Livre blanc (OpenGl 1.x) :

    http://www.khronos.org/opengles/

    Si j'appose leur code tel quel dans mes projets Eclipse, le résultat est parfait. Mais là n'était pas le but. Et c'est justement en écrivant mon propre code que j'ai commis une erreur (dont j'ai finalement trouvé la réponse) riche d'enseignement :
    pour créer des primitives, lors de la créations de sous-classes de ByteBuffer, il ne faut pas appeler
    ByteBuffer.allocate(int size)
    mais
    ByteBuffer.allocateDirect(int size)
    Quelqu'un saurait-il quelle est la différence principale entre allocate(int) et allocateDirect(int) ? Et donc pourquoi on ne peut se contenter d'appeler allocate() ?

    Je vous remercie d'avance

  2. #2
    Membre émérite
    Avatar de tails
    Homme Profil pro
    Inscrit en
    Novembre 2003
    Messages
    799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations forums :
    Inscription : Novembre 2003
    Messages : 799
    Billets dans le blog
    15
    Par défaut Doc android incomplète
    En fait la documentation d'Android était incomplète : il fallait directement se rendre sur la version J2SE de l'api pour en avoir l'explication :

    http://download.oracle.com/javase/1....yteBuffer.html

    Après avoir lu cette documentation, l'hypothèse que je formule pour OpenGL est l'optimisation maximale des ressources (OpenGL se doit d'être rapide).

    Merci tout de même pour l'attention qui m'aura été accordée

    (Sachez pour l'histoire que cette erreur - inhérente à Java et non à OpenGL comme je le pensais - m'a fait perdre à peu près 3 semaines / 1 mois sur un projet perso !!!)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. OpenGL et allocation dynamique
    Par le_ptit_lutin dans le forum Langage
    Réponses: 21
    Dernier message: 08/06/2011, 17h17
  2. ADO :Erreur allocation
    Par charliejo dans le forum C++Builder
    Réponses: 4
    Dernier message: 22/02/2006, 10h52
  3. Erreur de compilation oavec OpenGL
    Par Cofondinde dans le forum MFC
    Réponses: 1
    Dernier message: 05/06/2005, 15h41
  4. Réponses: 4
    Dernier message: 20/04/2005, 13h30
  5. erreurs opengl avec devcpp
    Par Vermin dans le forum OpenGL
    Réponses: 2
    Dernier message: 13/04/2004, 14h50

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