Au niveau des petits changements, l’ancienne méthode Object::PrepareResourcesForMerging est devenue Object::ExposeResources. Elle ne prend plus en paramètre un ResourcesMergingHelper mais un ArbitraryResourceWorker. Cette méthode a pour but, comme son nom l’indique, d’exposer les ressources utilisées par l’objet. Implémentez donc cette méthode en appelant pour chaque ressource que vous utilisez ( c’est à dire essentiellement les images ou les fichiers externes ) une des méthode de ArbitraryResourceWorker, à savoir ArbitraryResourceWorker::ExposeImage ou ArbitraryResourceWorker::ExposeResource ( pour une ressource quelconque ).
( En cas de difficultés, regardez une des extensions d’exemple ou la documenation sur Object::ExposeResources ).
( Le changement de nom et l’utilisation de la classe plus générale ArbitraryResourceWorker vise à permettre à Game Develop d’utiliser cette méthode de façon plus générale : Cette méthode va pouvoir être par exemple utilisée pour recenser toutes les images utilisées dans le jeu. )
Je viens de tester, la fonction permettant d’obtenir le défilement de la molette de la souris fonctionne correctement.
Pour information, elle est implémentée comme ceci :
int GD_API GetMouseWheelDelta( RuntimeScene & scene )
{
const std::vector<sf::Event> & events = scene.GetRenderTargetEvents();
for (unsigned int i = 0;i<events.size();++i)
{
if (events[i].Type == sf::Event::MouseWheelMoved )
return events[i].MouseWheel.Delta;
}
return 0;
}
J’utilise la fonction dans UpdateTime() avec un pointeur sur la scène que je stocke dans un pointeur de mon objet (mis à jour dans la fonction LoadResources()).
L’objet d’entrée de texte fonctionne aussi toujours, je viens aussi de le tester à l’instant. ( Ca serait d’ailleurs étonnant que ça marche pour certaines fonctions et pas quand tu stocke un pointeur sur la scène dans ton objet ).