¿Cómo se carga un archivo tmx/xml en javafx?
tile (1)
¿Cuál es la forma más eficiente de agregar un mapa de mosaicos en un programa JavaFX?
El programa que uso para crear mapas de mosaico se llama "Mosaico" y los archivos guardados están en formato .tmx.
Ahora, la pregunta es, ¿cómo lo importo exactamente en mi juego 2d? No he podido encontrar información útil en la red.
Los ejemplos de código son muy apreciados.
Gracias
Utilice el Eppleton JavaFX TileEngine (desafortunadamente, este enlace ya no está disponible: el contenido similar aún se aloja en javageeks : el vínculo de atención incluye un molesto menú emergente ).
Actualización : Desafortunadamente, la entrada del blog eppleton previamente vinculada, que contenía información detallada sobre la creación de un motor de mosaico con JavaFX, ya no existe.
No tengo ni idea de cómo importar el archivo, aún.
En este momento, no encontrará ninguna biblioteca que alguien haya creado y empaquetado como un binario que simplemente puede agregar a la ruta de su clase para obtener un lector de mosaicos genérico para JavaFX.
Cargar un TileMap es una tarea compleja. El enlace de Eppleton que proporcioné proporciona información detallada sobre cómo implementar esa tarea, así como los fragmentos de código fuente. La información de Eppleton es la mejor disponible en TileMaps en JavaFX. Al usar el motor Eppleton puede reducir el esfuerzo que implica cargar un TileMap a:
TileMap map = TileMapReader.readMapFromFile(fileURL);
Hay un repositorio github para el motor de juego Eppleton . Lo intenté y la mayor parte del código está allí, pero algunas de las dependencias del proyecto no se resolvieron para mí, así que no pude construirlo. Puede ponerse en contacto con el autor para obtener asistencia en la resolución de dependencias o puede bifurcar el motor y aplicarle un parche para que funcione. El enfoque que parece tomar el motor es utilizar una abstracción para lienzo para que el motor pueda representar en diferentes tipos de lienzo (el lienzo JavaFX es uno de estos). Pero no pude encontrar el código para la capa de abstracción.
El código central para el lector de mapas horarios está en el paquete de.eppleton.fx2d.tileengine . Puede bifurcar el código y estudiarlo para comprender cómo funciona el lector de mapas de mosaicos y cómo puede adaptarlo a su juego.