À l'aide de fichiers SVG avec libgdx
Je suis de rabotage pour créer une application pour tablette. Je voudrais demander quelques conseils.
J'ai des images au format SVG comme cette une.
Avec SVG c'est facile, il suffit de changer de remplissage paramètre de couleur différente mais ce que je comprends, il n'est pas facile/stable svg de traitement à utiliser avec libgdx. Je veux encore l'utilisation de fichiers svg pour créer et/ou stocker des images pour mon application.
- Ce traitement de chemin recommanderiez-Vous?
- Est-il un moyen facile de convertir des chemins svg/formes pour
com.badlogic.gdx.math.bezier
ou des objets polygonaux et puis les dessiner sur l'écran/obtenir la saisie de l'utilisateur (tap) à l'intérieur de cette formes? - Ou dois-je utiliser différents objets/chemin?
Formes peuvent être regroupés par exemple: je veux deux fenêtres dans une maison pour changer de couleur à la fois.
Je ne suis pas sûr de ce que vous essayez d'accomplir, mais il y a beaucoup de façons de convertir des données de voie à d'autres structures de données. Mais en principe, tout ce que je peux dire, c'est que le svg chemin de structure de données est assez simple à analyser et facile à comprendre. jetez un oeil ici: w3.org/TR/SVG/paths.html#PathData écrire un analyseur syntaxique pour ce est vraiment pas difficile et, avec elle, vous pouvez farcir dans tous les cadre...
Je suis juste en train de dessiner une image et puis la couleur en appuyant à l'intérieur de formes. Je sais comment analyser le SVG, mais je ne suis pas sûr de ce que libgdx objets que je devrais utiliser comme un résultat pour ce type d'application. merci!
Je suis juste en train de dessiner une image et puis la couleur en appuyant à l'intérieur de formes. Je sais comment analyser le SVG, mais je ne suis pas sûr de ce que libgdx objets que je devrais utiliser comme un résultat pour ce type d'application. merci!
OriginalL'auteur Robert | 2013-03-05
Vous devez vous connecter pour publier un commentaire.
La façon LibGDX est écrit est qu'il vous donne un niveau inférieur façon de faire ce type de rendu, mais n'offre pas de boîte de façons de rendu SVG. Cela dépend vraiment si vous cherchez quelque chose avec des performances ou tout simplement souhaitez dessiner des formes de base.
Pour simplement rendre formes vous pouvez utiliser quelque chose comme ShapeRenderer. Ce qui vous donne un très proche de l'interface de la Java2D façon de dessiner des choses. Peut-être dessiner rapidement quelques trucs de base cela peut être pratique.
Si vous êtes désireux de faire quelques version plus robuste de rendu vous aurez probablement envie de regarder dans l'aide d'une Maille et le travail avec les shaders OpenGL ES. Vous pouvez trouver des exemples de ces dans le LibGDX tests ainsi que la recherche en ligne pour des exemples/tutoriels.
Si vous souhaitez activer le SVG dans une texture, vous aurez envie de regarder Pixmap et puis vous pouvez créer une Texture avec elle et de rendu avec un Spritebatch. Vous aurez besoin d'écrire les pixels que vous voulez à la couleur et le Pixmap. Cependant, cette façon de faire permettra de générer une texture non géré (c'est à dire que vous aurez à reconstruire lorsqu'un utilisateur revient à l'application après avoir appuyé sur le dos ou de mettre l'appareil en veille).
La maille est simplement un très haut niveau d'abstraction de l'OpenGL Organisations sises à vienne. Si vous êtes à l'aise avec les Organisations sises à vienne, alors il devrait être assez simple. Le véritable défi est d'avoir à coder les algorithmes pour générer des triangles pour votre des formes et des lignes de/etc.
Ok, donc j'ai fait quelques tests et il semble que je peux importer des maillages à partir de blender (import SVG dans blender, convertir en mesh, d'exportation à g3dt, se déplacer à l'application, créer stillModel à partir d'un fichier). Problème est que je ne peux pas saisir la manière de le montrer à l'écran. Parfois, il remplit toutes de la vue, parfois c'est juste une petite ligne (j'ai changer sa couleur pour l'afficher). Si j'essaie d'utiliser l'appareil photo - tout disparaît... Quelles sont les règles à la position maillage importé à la caméra? Ou dois-je en quelque sorte le faire dans blender AVANT de les exporter?
Et bien il y a un certain nombre de choses qui pourraient être à l'origine de problèmes. Je ne suis pas sûr que ce genre d'information sur la position de blender serait réglage pour les sommets du maillage. Une caméra permet de changer le port de la vue de l'écran. Par défaut, opengl attire tout ce qui est entre -1 et 1 pour X et Y. La classe camera change simplement de sorte que vous pouvez dessiner des choses entre les différentes valeurs, je les ai.e des pixels, du point de vue de la visualisation, etc. Cette libgdx test peut vous aider à comprendre comment travailler avec les "modèles" github.com/libgdx/libgdx/blob/master/tests/gdx-tests/src/com/...
OriginalL'auteur Jyro117