Je m'adonne un peu à cette pratique mais sur un jeu proprio natif. Mais la partie outillage relatifs aux speed run est un peu déserte sous linux.
Splitter/Timer:
Pour un jeu OpenGL en plein écran, avoir une IHM par dessus n'est pas si simple que ça. par exemple Llianfair, même en sélectionnant les options "always on top", passe en second plan quand le jeu est en train de tourner. J'ai commencé a essayer de programmer une solution maison, mais rien de satisfaisant pour le moment:
Avoir un programme tiers toujours visible au dessus: probablement la solution la plus simple, cependant mes essais (programme en Qt + windows hints + Kwin) ont pour le moment été infructueux, rien qui ne reste visible. peut être que ca marcherait avec une autre bibliothèque graphique ou un autre gestionnaire de fenêtres. un peu dur d'avoir du recul.
Injecter une IHM directement dans le programme. L'idée est d'intercepter les appels à glXSwapBuffers avec un LD_PRELOAD et de rajouter son propre code OpenGL, l'interface pouvant être programmée avec des bibliothèques type CeGUI. la méthode marche bien avec des jeux libre (testé sur teeworlds comme preuve de concept), mais dès qu'on essaie de passer sur du proprio on fait vite face à des problèmes d'ABI (sans parler de Steam qui fait aussi des trucs dans son coin)
quelques essais rapides en parlant directement à X ont l'air de marcher, mais bon c'est un peu rude comme méthode.
Pour l'enregistrement j'ai pas encore trop regardé, pour le jeu que je fait difficile d'envisager de faire la capture sur le même PC, certaines astuces dépendent du FPS et je suis un peu juste. j'envisage une solution type raspberry + carte d'acquisition USB, mais les retours semblent mitigés.
# Outils
Posté par chubinou . En réponse au journal Speedrunnons du jeu libre !. Évalué à 2.
Je m'adonne un peu à cette pratique mais sur un jeu proprio natif. Mais la partie outillage relatifs aux speed run est un peu déserte sous linux.
Splitter/Timer:
Pour un jeu OpenGL en plein écran, avoir une IHM par dessus n'est pas si simple que ça. par exemple Llianfair, même en sélectionnant les options "always on top", passe en second plan quand le jeu est en train de tourner. J'ai commencé a essayer de programmer une solution maison, mais rien de satisfaisant pour le moment:
Avoir un programme tiers toujours visible au dessus: probablement la solution la plus simple, cependant mes essais (programme en Qt + windows hints + Kwin) ont pour le moment été infructueux, rien qui ne reste visible. peut être que ca marcherait avec une autre bibliothèque graphique ou un autre gestionnaire de fenêtres. un peu dur d'avoir du recul.
Injecter une IHM directement dans le programme. L'idée est d'intercepter les appels à glXSwapBuffers avec un LD_PRELOAD et de rajouter son propre code OpenGL, l'interface pouvant être programmée avec des bibliothèques type CeGUI. la méthode marche bien avec des jeux libre (testé sur teeworlds comme preuve de concept), mais dès qu'on essaie de passer sur du proprio on fait vite face à des problèmes d'ABI (sans parler de Steam qui fait aussi des trucs dans son coin)
quelques essais rapides en parlant directement à X ont l'air de marcher, mais bon c'est un peu rude comme méthode.
Pour l'enregistrement j'ai pas encore trop regardé, pour le jeu que je fait difficile d'envisager de faire la capture sur le même PC, certaines astuces dépendent du FPS et je suis un peu juste. j'envisage une solution type raspberry + carte d'acquisition USB, mais les retours semblent mitigés.