{"id":17939,"date":"2015-04-09T13:11:16","date_gmt":"2015-04-09T17:11:16","guid":{"rendered":"http:\/\/blog.xamarin.com\/?p=17939"},"modified":"2019-04-02T23:34:12","modified_gmt":"2019-04-03T06:34:12","slug":"xamarins-got-game-development","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/xamarin\/xamarins-got-game-development\/","title":{"rendered":"Xamarin\u2019s Got Game (Development)"},"content":{"rendered":"<p>If you\u2019re new to game development, you may be wondering what framework is right for you. Luckily for C# and F# developers, Xamarin supports a wide range of powerful options like SceneKit and SpriteKit on iOS, as well as cross-platform frameworks including OpenTK, CocosSharp, and MonoGame.<\/p>\n<p>For developers just getting started, we recently published several articles that provide an <a href=\"http:\/\/developer.xamarin.com\/guides\/cross-platform\/game_development\/\" target=\"_blank\">Introduction to Game Development with Xamarin<\/a> based on CocosSharp and MonoGame.  \n&nbsp;\n<figure id=\"attachment_18005\" aria-labelledby=\"figcaption_attachment_18005\" class=\"wp-caption alignright\" ><a href=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/bastion.jpeg\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/bastion-300x188.jpeg\" alt=\"Bastion\" width=\"300\" height=\"188\" class=\"size-medium wp-image-18005\" \/><\/a><figcaption id=\"figcaption_attachment_18005\" class=\"wp-caption-text\">Bastion, the chart-topping iOS and Mac app, was built with MonoGame<\/figcaption><\/figure>If you&#8217;re not familiar with <a href=\"http:\/\/developer.xamarin.com\/guides\/cross-platform\/game_development\/monogame\/\">MonoGame<\/a>, it&#8217;s a game development framework based on Microsoft&#8217;s XNA. As opposed to a full game engine, using MonoGame may require setup code to perform some simple tasks, as well as an understanding of computer graphics theory. MonoGame is a good choice if:<\/p>\n<ul>\n<li>You&#8217;re familiar with the Microsoft XNA framework<\/li>\n<li>You&#8217;re interested in 3D graphics, lighting, or shaders (custom code that is executed by the graphics card for advanced visual effects)<\/li>\n<li>You&#8217;re extending or porting an existing XNA game to additional platforms<\/li>\n<li>You&#8217;re interested in learning about graphics programming \u2013 MonoGame shares rendering concepts with other rendering APIs like DirectX and OpenGL<\/li>\n<\/ul>\n<p>&nbsp;\n<figure id=\"attachment_18006\" aria-labelledby=\"figcaption_attachment_18006\" class=\"wp-caption alignright\" ><a href=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/angryninjas.png\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/sites\/44\/2019\/04\/angryninjas-300x224.png\" alt=\"Angry Ninjas\" width=\"300\" height=\"224\" class=\"size-medium wp-image-18006\" \/><\/a><figcaption id=\"figcaption_attachment_18006\" class=\"wp-caption-text\">Source for Angry Ninjas, a complete game written with CocosSharp, is <a href=\"https:\/\/github.com\/xamarin\/AngryNinjas\">available on GitHub<\/a><\/figcaption><\/figure>Alternatively, <a href=\"http:\/\/developer.xamarin.com\/guides\/cross-platform\/game_development\/cocossharp\/\">CocosSharp<\/a> is a full game engine that provides classes and methods for performing the most common game development tasks. It\u2019s the preferred approach if:<\/p>\n<ul>\n<li>You&#8217;re interested in creating 2D games<\/li>\n<li>You&#8217;re familiar with the native Cocos2D game engine<\/li>\n<li>You&#8217;re looking for the shortest path to a working game<\/li>\n<\/ul>\n<p>If you&#8217;d like to learn more about developing cross-platform 2D games with CocosSharp and Xamarin, check out the video below from Channel 9 and Xamarin Developer Evangelist James Montemagno:<\/p>\n<p><center><iframe src=\"\/\/channel9.msdn.com\/Shows\/Visual-Studio-Toolbox\/Developing-Cross-platform-2D-Games-in-C-and-CocosSharp\/player\" width=\"640\" height=\"360\" allowFullScreen frameBorder=\"0\"><\/iframe><\/center><\/p>\n<p>If you\u2019ve ever wanted to make games, either professionally or as a hobbyist, <a href=\"http:\/\/developer.xamarin.com\/guides\/cross-platform\/game_development\/\" target=\"_blank\">our game development guides<\/a> are a great place to get started today.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you\u2019re new to game development, you may be wondering what framework is right for you. Luckily for C# and F# developers, Xamarin supports a wide range of powerful options like SceneKit and SpriteKit on iOS, as well as cross-platform frameworks including OpenTK, CocosSharp, and MonoGame. For developers just getting started, we recently published several [&hellip;]<\/p>\n","protected":false},"author":1942,"featured_media":39167,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2],"tags":[4],"class_list":["post-17939","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-developers","tag-xamarin-platform"],"acf":[],"blog_post_summary":"<p>If you\u2019re new to game development, you may be wondering what framework is right for you. Luckily for C# and F# developers, Xamarin supports a wide range of powerful options like SceneKit and SpriteKit on iOS, as well as cross-platform frameworks including OpenTK, CocosSharp, and MonoGame. For developers just getting started, we recently published several [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/17939","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/users\/1942"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/comments?post=17939"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/posts\/17939\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media\/39167"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/media?parent=17939"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/categories?post=17939"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/xamarin\/wp-json\/wp\/v2\/tags?post=17939"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}