Welcome to CocosSharp Forum! RRS feed

  • Question

  • User13 posted

    Let me welcome you to the CocosSharp forum, the place where we discuss the future of the open source and cross platform CocosSharp stack.

    CocosSharp offers a carefully crafted API that follows the .NET conventions and idioms and is delivered as a NuGet package in both full-stack access and Portable Class Library modes. We also ship with very comprehensive platform support. From Xamarin's favorites: Android, iOS and Mac to four variations of Windows and Windows Phone.

    CocosSharp owes a lot to the great work that the Cocos2D-XNA team did (Jake and Gena at Totally Evil) and the many hackers that built Cocos2D-X and Cocos2D for Objective-C.

    In the last couple of months we have shared this project with a few developers outside of Xamarin and we saw them contribute great pieces of technology like a C# implementation of Chipmunk (https://github.com/netonjm/ChipmunkSharp).


    Tuesday, August 12, 2014 2:31 AM

All replies

  • User40427 posted

    Just when you thought things couldn't get any better ............................

    Tuesday, August 12, 2014 4:17 AM
  • User1002 posted

    Nice work!

    Tuesday, August 12, 2014 5:59 AM
  • User67539 posted

    Great work. Thanks for the detailed 'key differences between cocos2d' page on github!

    Tuesday, August 12, 2014 3:39 PM
  • User9715 posted

    Nice, looking forward to working with this!

    Tuesday, August 12, 2014 4:56 PM
  • User1433 posted

    Great! Thanks for stealing the project instead of just contributing to it. Maybe next we'll just go steal Mono and rename it to something else and announce it as 'look at the wonderful new project from us.'

    Enjoy the wonderful prosperity of stealing other people's work and claiming it for your own.

    Tuesday, August 12, 2014 8:32 PM
  • User13 posted


    As you know, we contributed extensively to Cocos2D-XNA and we just could not continue to work together.

    Once we reached a point where we could not collaborate together, I decided to take the project in the direction that I desired at the expense of backwards compatibility.

    Luckily, all our code is open source, so you can merge as much or as little as you want.

    Tuesday, August 12, 2014 8:50 PM
  • User2157 posted

    Erm, 'stealing' @jacobanderson? ? It's open source MIT licenced so taking a copy of the code and taking it in a new direction is exactly the sort of thing it's meant to encourage. In exactly the same way that you, or the cocos2dxna guys can take what Xamarin do and put back, improve, or adjust, if it's what's wanted. If the road maps differ then you don't.

    This is a good thing, no?

    Tuesday, August 12, 2014 8:58 PM
  • User1433 posted

    The purpose of the MIT license is to unencumber your fair use. Not to encourage you to take software, rebrand it as your own, and then "take it in a new direction" as you say.

    While not illegal, it is unethical. I am sure Microsoft, one of Xamarin's key partners, is quite happy to know that Miguel is actively engaged in this type of unethical behavior.

    We worked quite hard on box2d for C#, thanks for taking that too. We even thought about charging for that effort, but decided that doing so would be unethical eventhough the box2d license allows us to do that.

    So again, thanks Xamarin. Thanks for stealing our work. Thanks for not contributing to the effort, but rather having your tantrum and then making the project your own. Good luck. Can't wait to see the $900 premium version where you charge money for the work we did.

    Thanks again for making open source software such a great experience. I am sure this will encourage even more people to contribute their time and effort to free software for Xamarin to suck up under the guise of "fair use."

    Tuesday, August 12, 2014 9:27 PM
  • User189 posted

    Would there be any benefits in porting an already existing MonoGame game running on iOS and Android to use CocosSharp instead of MonoGame?

    Wednesday, August 13, 2014 4:47 AM
  • User205 posted

    Miguel, thanks - you guys keep pushing the limit of awesomeness ;-)

    Wednesday, August 13, 2014 6:03 AM
  • User7593 posted

    it would be great to see Xamarin donate some money to Cocos2D-XNA

    Wednesday, August 13, 2014 7:16 AM
  • User38579 posted

    Jacob, I don't know what your problem is, but if you're a control freak you shouldn't have worked on OS projects to begin with. Regardless of whether it's a commercial entity or anyone else, if they decide they want to treat a project/product differently than their founders and it's MIT, there's nothing wrong with it. If they have a different idea of where it should be heading and how it should be done on which they can't agree with the original team, there's nothing wrong with parting ways. And as far as I can tell, X's work is MIT as well with full credit given, so you don't really need any Xamarin subscription, or even tools, to use it.

    Not sure what your definition of unethical is, you might want to elaborate on that, just after you define your idea of "stealing" in this particular context. Because as far as I can tell, stealing would be copy/paste the source code, removing references and credits, change logos and releasing it under proprietary license.

    From my point of view, it's unethical, or at least unfair, to accuse someone of stealing just because they have a different idea of what to do with a MIT-licensed code.

    Wednesday, August 13, 2014 11:32 AM
  • User20692 posted

    @bradm? If the game is already up and running, then there's probably not much value in moving to CocosSharp, which is built on top of MonoGame. CocosSharp gives you the elements of a 2d game engine that you would have otherwise had to implement yourself when programming directly against monogame/xna, such as the scene graph, physics, and other elements such as actions, audio, animations, etc.

    However, if you're starting up a new game, or if your game could benefit from the services provided by CocosSharp, then by all means, port away! :)

    Wednesday, August 13, 2014 1:20 PM
  • User13 posted


    MonoGame is the low-level framework that powers CocosSharp. So the question as to whether you want to port or not depends on whether the Cocos2D model is good enough for you or not.

    If you are building your own game engine, MonoGame will give you access to the lower-level features that you need to roll out your own system. But if you want a simple system that provides animations, actors, actions, simple physics and so on, CocosSharp is for you.

    Wednesday, August 13, 2014 1:49 PM
  • User2724 posted

    Hey everyone.

    We have opened a public irc channel #cocossharp on irc.gnome.org for all who like to interact with irc.

    Wednesday, August 13, 2014 2:08 PM
  • User19511 posted

    @MigueldeIcaza?, great work! having it in a PCL helps simplify the projects/solution A LOT! any timeline on supporting SpriteBuilder? :-) thanks!

    Wednesday, August 13, 2014 4:51 PM
  • User19511 posted

    @bradm?, cocossharp has the libraries in PCLs. so compared with the cocos2d-xna approach, the solution/projects setup is greatly simplified, that alone is good enough reasons for me. the cocos2d-iphone is now on 3.x (support of SpriteBuilder), cocos2d-xna is still on 2.x (still just the old CocosBuilder). i left a message on cocos2dxna.com a few weeks ago asking 3.x and spritebuilder timeline, but as of today, there's still no response on that.

    Wednesday, August 13, 2014 4:55 PM
  • User68632 posted

    There's probably an obvious solution (I'm rather new and incompetent with platforms/inter-project relations in this area), but I noticed no mention of Linux support or projects anywhere. Working from Linux with MonoDevelop 4.x is rather important for me, seeing as how it's my primary development platform. Is there an easy way to do this myself? Or is there an ETA for it? Sorry to be a bother.

    Wednesday, August 13, 2014 5:31 PM
  • User13 posted


    While we do not have a solution or a package ready to go yet, you should be able to build the source code and get up and running on Linux.

    Wednesday, August 13, 2014 6:05 PM
  • User69022 posted

    Great effort, I'm eager to work on this.

    is there some plans for supporting the PS Vita platform?

    Thursday, August 14, 2014 6:33 PM
  • User13 posted

    The underlying platform (MonoGame) has support for PS Vita, so it should work.

    Let us know if you get it going, it should be simple.

    Thursday, August 14, 2014 6:41 PM
  • User23934 posted

    Since nobody is going to cut Jacob some slack I just want to add that I can understand his frustration. Totally Evil did a great job and chances are that cocos2d-xna is basically history now. OS totally depends on adoption so the claim that they can compete with an official Xamarin project is a bit inane.

    As a developer I can only welcome anything that strengthens my chosen tools. So this is good news I guess.

    The king is dead, long live the king.

    Friday, August 15, 2014 1:20 PM
  • User66715 posted

    This is a most welcome addition. Hopefully it is well documented. Cocos2d as a whole is lacking in documentation I feel, unless i was looking in the wrong place.

    In any case, cheers! :)

    Friday, August 15, 2014 10:28 PM
  • User13 posted

    I am not going to claim that this is the most documented Cocos implementation, as it is not :-)

    But we are working on it! Tell me what you would like to see better documented, and we will add that to our priority queue.

    Saturday, August 16, 2014 1:21 AM
  • User66715 posted

    @MigueldeIcaza? Appreciate the offer! I'll start by looking over what is currently there and get back to you.

    Looking forward to using Xamarin for game dev now too :>


    Sunday, August 17, 2014 10:59 PM
  • User335 posted

    I'm really happy to see that Xamarin decided to support (and "port") the most famous game engine used to make 2d games, but I'm wondering if it's considerable stable for production purpose. The guide states that CocosSharp is based on Monogame, which has many bugs that still need to be resolved (I'm talking about iOS, Android and WP8). Don't get me wrong, CocosSharp and MG are two great projects, but I know MG since the begin and I know for sure that it still need a lot of work for being considerable a "stable product". Am I wrong? Maybe Xamarin can give it a boost?

    Monday, August 25, 2014 3:29 PM
  • User70580 posted

    I know there are several books on cocos2d. I saw one in javascript i believe and I was reading one for objective-c. My question is will cocosharp use the new sprite-kit (objective-c) under the covers for cocosharp? Has Monogame aways been the lower level of cocos2d or is this new for the cocos2d version of cocosharp? TIA!

    Tuesday, August 26, 2014 1:54 AM
  • User13 posted

    Hello Francesco,

    It is our intention to contribute to MonoGame to improve that stack and improve the working pipeline.


    Tuesday, August 26, 2014 2:11 AM
  • User68494 posted


    Take a look here: https://github.com/mono/CocosSharp/wiki/Key-Differences

    Tuesday, August 26, 2014 6:51 AM
  • User42871 posted

    For someone who is not familiar with the Cocos2D framework but wants to start with CocosSharp, how would you recommended beginning to learn? Would a book on CocosXNA or Cocos2D still be useful to give some grounding, or are there enough differences that it would cause problems?

    Thursday, September 11, 2014 6:31 AM
  • User47368 posted

    Hi Ryan,

    I think the best way to dive into CocosSharp is to check out the GoneBananas walkthrough found here. The walkthrough is very well-written and self-contained so I think it should definitely equip you with enough information to get started.

    But there's certainly no harm is supplementing your knowledge with books on Cocos2D to give you a grounding as long as you're aware of the key differences as mentioned here.

    Friday, September 19, 2014 3:29 AM
  • User82798 posted

    I'm sorry. I just got lost in all the arguments over FOSS and proprietary s/w. My question is, will it cost me anything to:

    1) Create a game 2)Upload it to an app market 3)Put it up for a price.

    And do I need a Xamarin account to use CocosSharp?

    Also, if possible please point me to a page which explains up to the point of creating a new CocosSharp project.

    Saturday, November 8, 2014 6:24 PM
  • User47368 posted

    Hi Suhair,

    CocosSharp is under the MIT license. The license outlines what you can and can't do with our library, but in general this is a highly permissive license.

    In terms of costs, releasing a game will incur the same additional costs as releasing any application dependent on which platforms you're targeting.

    No, you do not necessarily need a Xamarin account to use CocosSharp. CocosSharp is currently available as a NuGet package and you're free to install it now.

    To get started, there's a newly release walkthrough found here which outlines how to create a project from scratch.

    There are also Xamarin Studio project templates which you can install, details here which will setup a skeleton project for you.

    Monday, November 10, 2014 12:51 AM
  • User86935 posted

    Awesome stuff to create games....Here's my take on cocosSharp


    Friday, November 14, 2014 2:14 PM
  • User82798 posted

    Hi Rami, thanks for your reply. I checked out your API and it looks good(I hope I'm not deceived by the looks though ;) ).

    I'm currently starting to develop on Linux and I was wondering if there was a way I could develop using Eclipse as the IDE. I saw in the readme file that it can be done using ProtoBuild. But I'm knew to all this and was wondering if you could help me or point me somewhere it's already mentioned. I tried googling for it, but couldn't find one.

    Sunday, November 16, 2014 3:18 PM
  • User47368 posted

    Hi Suhair,

    If you're looking to target Android then you're going to encounter a problem because unfortunately Mono for Android on Linux is currently unsupported.

    Monday, November 17, 2014 1:21 AM
  • User82798 posted

    Hi Rami,

    as a matter of fact, I was trying to develop with CocosSharp without using Xamarin Studio. Please forgive me if I'm rude, but its a whole lot bloody business getting it set up. Is there any way to use CocosSharp without Xamarin Studio, on Windows or Linux?

    Monday, November 17, 2014 1:45 PM
  • User76864 posted

    @SuhairZain ,

    You can use CocosSharp to build Windows apps without Xamarin at all. If you want to build for iOS or Android with CocosSharp you will need Xamarin. You DON'T need to use Xamarin Studio, you can use Visual Studio even if you are using Xamarin.

    To build a CocosSharp Windows App without Xamarin, you will just need to get the template you want installed in VS and then create a new project. Be sure you get the correct NuGet package. Current templates use 1.7.x.

    If you are planning on actually releasing a Windows game, I would suggest you give Cocos2d-X a good look. Currently there is no way to properly resize a Windows desktop app in CocosSharp. Also, there is very little support and concern for non-mobile development.

    That being said, the Cocos2d docs are in a really bad state too. Lot's of 404's.

    Friday, February 12, 2016 2:55 PM
  • User203636 posted

    How to add shadows to CCSprite?

    Tuesday, May 17, 2016 10:37 AM