
Panthera Runtime - Une bibliothèque Defold conçue pour intégrer les animations créées avec l'éditeur Panthera 2.0 , un logiciel d'animation polyvalent, dans les projets Defold. Cette bibliothèque d'exécution simplifie le processus d'importation et de lecture des animations Panthera, améliorant la qualité visuelle et l'interactivité des jeux et des applications défilés.
Lisez le Guide de l'éditeur Panthera 2.0 pour en savoir plus sur l'éditeur Panthera 2.0, un outil innovant développé à l'aide du moteur Defold, conçu pour simplifier et améliorer la création d'animations pour les projets Defold.
Ouvrez votre fichier game.project et ajoutez les lignes suivantes au champ de dépendances dans la section du projet:
Twener défilé
https://github.com/Insality/defold-tweener/archive/refs/tags/3.zip
Panthera Runtime
https://github.com/Insality/panthera/archive/refs/tags/runtime.4.zip
Après cela, sélectionnez Project ▸ Fetch Libraries pour mettre à jour les dépendances des bibliothèques. Cela se produit automatiquement chaque fois que vous ouvrez un projet, vous n'aurez donc besoin de le faire que si les dépendances changent sans rouvrir le projet.
Remarque: La taille de la bibliothèque est calculée en fonction du rapport de construction par plate-forme
| Plate-forme | Taille de la bibliothèque |
|---|---|
| Html5 | 12.42 Ko |
| Bureau / mobile | 21,35 Ko |
Remarque: le rechargement chaud est conçu pour une utilisation dans les environnements de développement uniquement. Le rechargement chaud ne fonctionne que pour les animations à partir de fichiers JSON. Si vous utilisez une table LUA pour les animations, le rechargement chaud ne fonctionnera pas.
Panthera Runtime prend en charge le rechargement chaud des animations pour un flux de travail de développement plus efficace. Cette fonctionnalité permet aux animations d'être rechargées automatiquement sans redémarrer votre jeu défaillé, facilitant l'itération rapide sur les actifs d'animation.
Pour activer le rechargement chaud des animations, incluez les paramètres suivants dans votre fichier game.project :
[panthera]
hotreload_animations = 1Détails de la configuration:
1 pour permettre le rechargement chaud. Cette fonctionnalité n'est active qu'en mode débogage.Implémentation de rechargement chaud en défilé:
Pour utiliser un rechargement chaud, configurez un écouteur d'événements de fenêtre dans votre script défolt qui déclenche panthera.reload_animation() lorsque la fenêtre de jeu se concentre. Cela garantit que les animations sont rafraîchies automatiquement pendant le développement:
local panthera = require ( " panthera.panthera " )
-- Reload animation when window is focused, only for debug and on desktop
window . set_listener ( function ( _ , event )
if event == window . WINDOW_EVENT_FOCUS_GAINED then
panthera . reload_animation ()
end
end ) panthera . create_gui ( animation_path_or_data , [ template ], [ nodes ])
panthera . create_go ( animation_path_or_data , [ collection_name ], [ objects ])
panthera . create ( animation_path_or_data , adapter , get_node )
panthera . clone_state ( animation_state )
panthera . play ( animation_state , animation_id , [ options ])
panthera . stop ( animation_state )
panthera . set_time ( animation_state , animation_id , time )
panthera . get_time ( animation_state )
panthera . get_duration ( animation_state , animation_id )
panthera . is_playing ( animation_state )
panthera . get_latest_animation_id ( animation_state )
panthera . set_logger ([ logger_instance ])
panthera . reload_animation ([ animation_path ])Lisez le fichier de référence de l'API pour voir la documentation complète de l'API du module.
Intégrez les animations de Panthera dans Défolter avec ces exemples concis:
Chargez et lisez un fichier d'animation à l'aide de l'adaptateur GO.
local panthera = require ( " panthera.panthera " )
local animation = require ( " path.to.panthera_animation " )
function init ( self )
self . animation = panthera . create_go ( animation )
panthera . play ( self . animation , " run " , { is_loop = true })
endCet exemple applique une animation en boucle à un objet de jeu au début du jeu.
Chargez et lisez un fichier d'animation à l'aide de l'adaptateur GUI.
local panthera = require ( " panthera.panthera " )
local animation = require ( " path.to.panthera_animation " )
function init ( self )
self . animation = panthera . create_gui ( animation )
panthera . play ( self . animation , " fade_in " )
endCet exemple applique une animation fondu à un nœud GUI lorsque le jeu commence
Vérifiez si une animation joue actuellement et récupérez l'ID d'animation actuelle.
local panthera = require ( " panthera.panthera " )
function init ( self )
-- You can use JSON instead of Lua tables, but it should be accessible with sys.load_resource()
self . animation = panthera . create_gui ( " /animations/animation.json " )
local is_playing = panthera . is_playing ( self . animation )
local animation_id = panthera . get_latest_animation_id ( self . animation )
if is_playing then
print ( " The animation is currently playing: " , animation_id )
else
print ( " The animation is not playing " )
end
endLors de l'intégration d'animations Panthera 2.0 avec des objets de jeu défillés (GOS), il est essentiel de savoir quelles propriétés vous pouvez animer:
Par défaut, Sprite Components utilise la propriété tint et les composants d'étiquette utilisent la propriété color . Panthera essaie d'utiliser la propriété color . Pour activer la propriété color , vous devez définir le matériau de Sprite Composant sur /panthera/materials/sprite.material ou utiliser tout autre matériau avec un attribut color .
Lisez le guide de mélange d'animation pour apprendre à mélanger plusieurs animations simultanément sur la même entité, créant des animations complexes et superposées qui améliorent la fidélité visuelle et le dynamisme de votre jeu.
Alors que Panthera Runtime fournit un adaptateur par défaut pour les objets de jeu et l'interface graphique, vous devrez peut-être personnaliser votre adaptateur en fonction des besoins de votre projet. Lisez la personnalisation de votre guide d'adaptateur pour savoir comment cartographier les types d'assouplissement, gérer les événements personnalisés et utiliser votre adaptateur personnalisé avec Panthera Runtime.
Panthera Runtime est autorisé sous la licence MIT - voir le fichier de licence pour plus de détails.
Pour tout problème, questions ou suggestions, veuillez créer un problème.
Lisez le Changelog pour en savoir plus sur les dernières mises à jour et fonctionnalités dans Panthera Runtime.
Votre soutien me motive à continuer à créer et à maintenir des projets pour défiller . Envisagez de soutenir si vous trouvez mes projets utiles et précieux.