Jump to content
Sign in to follow this  
djeman

Afficher une texture en openGL ES ou autre - NativeActivity

Recommended Posts

Bon d'abord je vous préviens, mon niveau par rapport à ce que je veux faire est mauvais ^^

Le problème se porte sur xbmc, c'est une application entièrement native en c++. (NativeActivity).

Le code complet est consultable sur le git => https://github.com/xbmc/xbmc

Mon petit projet de modification sur le soft est l'utilisation de la sortie hdmi en écran principal et du lcd en télécommande.

Pour faire ça j'utilise l'api hdmi de motorola disponible pour mon atrix.

Voila l'ambiance est mise :)

Donc au niveau de l'intégration de l'hdmi pas de soucis, j'ai modifié l'initialisation de la vue d'origine de façon à ce qu'elle se fasse sur l'hdmi.

Ce qui me donne donc l'affichage du soft sur l'hdmi et le lcd ne sert plus que pour le contrôle touch avec un écran noir.

J'arrive à initialiser la vue du lcd en openGL ES 2 (Je sais pas si en 1 c'est plus simple, je pense pas quand on connait pas ^^), mais je n'arrive pas y plaquer une texture et sur le net je n'ai pas trouvé de tuto bien clair pour le faire dans le même contexte que je suis.

Mon premier but est seulement de plaquer sur un rectangle prenant tout l'écran, une image de télécommande.

Donc voila sur quoi je bloque, si quelqu'un pourrait m'aiguiller sur une façon simple de faire ça en code natif je suis preneur.

Je m'en fous d'avoir de l'openGL ES 2, 1, ... je veux juste afficher mon image sur l'écran lcd dans ma NativeActivity.

Ca me dérange pas du tout de devoir intégrer du java et des jni, je l'ai déjà fait pour y mettre un binder sur le service hdmi.

J'espère que quelqu'un pourra m'aider merci d'avance :)

Edited by djeman

Share this post


Link to post
Share on other sites

Euh non, "openGL" et "openGL ES" c'est pas pareil ... j'ai modifié le message pour l'écrire "plus proprement" mais bon quelqu'un qui s'y connait n'aurait pas trop vu la différence je pense.

Edited by djeman

Share this post


Link to post
Share on other sites
Guest Supprimez mon compte SVP

Mouarf! A vouloir corriger Monsieur Djéman, on se fait moucher! :P

Share this post


Link to post
Share on other sites

Bon ben les réponses ne se sont pas bousculé :)

J'ai trouvé mon bonheur avec ce tuto : http://androgeek.info/?p=167

Mais il y a une erreur dans la fonction renderFrame, je dois être poisseux ^^

	// Load the vertex position
	glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, stride, vVertices);
       checkGlError("gvPositionHandle");
	glVertexAttribPointer(1,3, GL_FLOAT, GL_FALSE, stride, vVertices+3);
	checkGlError("gvNormalHandle");
	// Load the texture coordinate
	glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, stride, vVertices+6);
       checkGlError("gvTexCoordHandle");

Au lieu de 0,1 et 2 en premier paramètre, il faut lui passer les index des shaders :

	// Load the vertex position
	glVertexAttribPointer(gvPositionHandle, 3, GL_FLOAT, GL_FALSE, stride, vVertices);
       checkGlError("gvPositionHandle");
	glVertexAttribPointer(gvNormalHandle,3, GL_FLOAT, GL_FALSE, stride, vVertices+3);
	checkGlError("gvNormalHandle");
	// Load the texture coordinate
	glVertexAttribPointer(gvTexCoordHandle, 2, GL_FLOAT, GL_FALSE, stride, vVertices+6);
    checkGlError("gvTexCoordHandle");

Sans passer les index ça ne fait rien du tout ^^

Edited by djeman

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  





×
×
  • Create New...