   Help choosing the "right" tools
Hi everyone! In first place, sorry for my english, it isn't very good.I'm currently starting a project with a friend of mine. We want to develop a classic 2D action side-scroller game.Since we are just two, some compromises need to be taken. We are going to use retro style graphics (easier to make and we don't have a dedicated artist). And for example, i'm working with the early programming (prototyping), doing the art, and ocassionally doing some tunes with my electric guitar. We are taking the first steps on this journey.I already spent some time learning about free API's, libraries and stuff. There are some interesting, others are a bit overwhelming to a relatively simple project. The technical requirements of this project are basic, sprite manipulation, sound/music playing and overall 2D capabilities.The only special thing i'm looking for is portability. I want to target Win/Linux/Mac platforms, and maybe, Android and iOS through a "friendly" port (i hope!). I'm exploring Java with the native 2D capabilities, and SDL with C++. I'm a little concerned with the 2D performance of Java, i'm not sure if it is efficient enough for a game. And i'm worried with the portability on C++ with SDL, and the man-hours of coding for such a small team.At this time, i'm a bit confused, and it is hard to take a decision to move on.So I'm asking for your help, a much more experienced people than me, what libraries, API's, etc. i should really consider for this project, any insights will be helpful. Best regards!  
I'm a little concerned with the 2D performance of Java If you are using the built in graphics API in java, yes it lacks performance because it is a software renderer, it doesn't make use of the GPU.But if you use an OpenGL based engine such as LWJGL, the performance will increase dramatically. ;I'm exploring Java with the native 2D capabilities, and SDL with C++. I'm a little concerned with the 2D performance of JavaJava's performance will probably excel the needs of any classic side-scroller, I wouldn't worry with that.You should also consider LibGDX.And i'm worried with the portability on C++ with SDLC++ and SDL is an extremely portable duo, and is a common choice for anyone who need portability. Actually, SDL was chosen as engine for several platform ports (Counter-Strike, for example). , and the man-hours of coding for such a small team.If this is really an issue, I'd recommend Löve2D, PyGame or tools like Enigma/GameMaker. As I said, a classic side-scroller can be coded in virtually anything without performance issues (unless you're doing something very wrong).   ;im not sure.. what good languange or libraries for beginnerbut if you want to build in many platform try monogame is easy to use but it use C# languange and XNA framework..im still beginner too.. just learn the basic algoritms a and you will okay with your journey.. early programming (prototyping), doing the art, and ocassionally doing some tunes with my electric guitarbut you so awesome can do music and art too.just my opinion learn how to design a flow diagram.. it will easy you to design before you actually programming.. sorry for my english;It was really helpful to hear from you, I will try and mess around with some tools you suggested. I guess I'll focus first on the design of the game, and then start the implementation. Everyone says that, it must be way to go. Mainly to avoid many many errors and wasted work. Thanks for the replies! ;Hey, I was in contact with a tool in last 'global game jam'... love2d ( https://love2d.org/ ) it's a really good tool for 2d games... very simple, very powerful ( it also have the possibility to use shaders to graphic rendering ) and its easy to learn and to prototype and distribute your game... The language used to develop is LUA.... so, you don't need to compile and have a minimal setup for your environment... The learning curve is good, so you can start making things happen very fast... Well.. give it a try before trying to use java or SDL for a small project... you will see that you can achieve awesome results and very fast... :)