Custom Protocol

[3DS] La bibliothèque SDL portée par nop90

Si vous êtes développeur et que vous avez du temps libre, il est peut-être temps de vous lancer dans la programmation d'un homebrew 3DS !


( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 12
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 16
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 17
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 23
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 25
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 29
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

( ! ) Notice: Use of undefined constant IT_TEXTDOMAIN - assumed 'IT_TEXTDOMAIN' in /home/custp/public_html/wp-content/themes/gridlove-child/functions/shortcodes/quotes.php on line 30
Call Stack
#TimeMemoryFunctionLocation
10.08853092352{main}( ).../index.php:0
20.08863093360require( '/home/custp/public_html/wp-blog-header.php' ).../index.php:17
30.681523713728require_once( '/home/custp/public_html/wp-includes/template-loader.php' ).../wp-blog-header.php:19
40.702323787304include( '/home/custp/public_html/wp-content/themes/gridlove/single.php' ).../template-loader.php:98
50.848924609800get_template_part( ).../single.php:25
60.848924610320locate_template( ).../general-template.php:168
70.849024610432load_template( ).../template.php:671
80.849124614496require( '/home/custp/public_html/wp-content/themes/gridlove/template-parts/single/content-1.php' ).../template.php:724
90.862824618808get_template_part( ).../content-1.php:9
100.862824619328locate_template( ).../general-template.php:168
110.862824619456load_template( ).../template.php:671
120.863024632472require( '/home/custp/public_html/wp-content/themes/gridlove-child/template-parts/single/entry-content.php' ).../template.php:724
130.864924634600the_content( ).../entry-content.php:21
140.865324637648apply_filters( ).../post-template.php:253
150.865324638048WP_Hook->apply_filters( ).../plugin.php:206
160.870524613744do_shortcode( ).../class-wp-hook.php:288
170.870724632096preg_replace_callback ( ).../shortcodes.php:199
180.880024639424do_shortcode_tag( ).../shortcodes.php:199
190.880124639888itQuotes::blockquote( ).../shortcodes.php:325

La bibliothèque Simple DirectMedia Layer est l'une des plus connues pour le développement de jeux vidéo 2D amateurs. Elle est écrite en C et, en plus d'être assez facilement accessible pour les débutants, gère un large nombre de fonctionnalités telles que l'affichage vidéo, l'événement, l'audio, le multithreading...

Crédit photo : Amazon

Le développeur nop90 a décidé de créer un portage clean de SDL, afin qu'il puisse dans le futur être facilement fusionné avec la version officielle de SDL. Un ensemble de flags personnalisés a été ajouté par l'auteur afin de gérer les particularités de la console 3DS (le joystick droit par exemple).

Les autres bibliothèques telles que SDL_Image (pour les images), SDL_TTF (pour les polices) ou SDL_Mixer (pour l'audio) peuvent également être compilées sans problème tant que la lib SDL-3DS est correctement compilée et installée dans votre boîte à outils DevkitArm. Nop90 a indiqué par ailleurs qu'il incluerait plus tard un Makefile afin de pouvoir tout compiler facilement.

Bouton télécharger
SDL-3DS, par nop90

Notez que c'est la version 1.2 de SDL qui a été portée, bien que ça soit la version 2 la plus populaire. L'auteur justifie cela en disant qu'il trouve la version 1.2 meilleure, mais annonce que de toute façon il planche sur un portage futur de la version 2, en reprenant les travaux non-finits de xerpi.

Et voici quelques screenshots issus de jeux développés à l'aide de SDL-3DS :

J'espère qu'avec la disponibilité de cette bibliothèque bien connue sur la 3DS, nous verrons de plus en plus de développeurs coder pour cette console.
nop90

Wirus

Avez-vous déjà vu un gentil virus ? Maintenant, oui.

0 commentaire

Connectez-vous pour laisser un commentaire

Suivez-nous

Venez, on n'est pas méchants, on est même très sympas ! 🙂

Nouveaux sujets

Pas de nouveaux messages

Catégories

Archives

Bannière Hypsoma

Suivez-nous

Venez, on n'est pas méchants, on est même très sympas ! 🙂

Catégories

Archives