Game Develop 2.0.10538 SDK

Le SDK pour la version 2.0.10538 est disponible :

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. )

Tu as oublié de préciser que c’est un sf::RenderTarget pour les Draw et DrawEdittime à la place du RenderWindow. :wink:

Ah oui, autre changement en effet.

Sinon, la fonction permettant de récup les événements du RenderTarget ne semble pas fonctionner…
On a l’impression qu’aucun événement est capté…

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;
}

Donc ça semble pourtant marcher. :confused:

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 ).

Fait plutôt ça dans LoadRuntimeResources.

Grâce à loadRuntimeRessource(), ça marche du tonnerre.