[.net] OpenTK, AgateLib, Boogame - C# 2D
I know about SDL.NET and the Tao Framework, but I was looking into a more built up framework for cross-platform C# development of a 2D game.
Boogame just has links to hot shemales and foamy the squirrel.
OpenTK looks interesting but will it offer an advantage for 2D development over just using SDL.NET and Tao?
I found the Phoenix Engine, but it wasn't suitable.
[Edited by - Boder on March 4, 2008 5:57:57 PM]
Hi Boder ... I did a similar search for .Net-friendly 2D libraries a couple of months ago (although I wasn't as concerned about cross-platform). I didn't really find anything like I was searching for ... and it's why I'm writing my own libraries now based on SlimDX.
Not really much help ... but thought I'd throw in my "I've been there too" comment and keep tabs on what others might recommend.
-Matt
Not really much help ... but thought I'd throw in my "I've been there too" comment and keep tabs on what others might recommend.
-Matt
Ask yourself: do you need hardware acceleration? Do you want your program to work on something other than Windows?
If you are looking for simple 2d drawing (software rendering), SDL.Net is the way to go. It runs on Windows, Linux and Mac OSX. I've also heard good things about BooGame, too, but I've never used that so I can't comment.
If you plan to use more advanced 2d techniques that make heavy use of blending, you will probably need hardware acceleration, which more or less means pick one of: Tao, OpenTK, SlimDX or XNA.
Things are rather simple: do you want your game to run on Linux/OSX? (it's easier than it sounds with .Net ;) ) If yes, SlimDX/XNA are out of the question. Would you like it to run on Xbox? XNA is the only way to achieve that.
If you go the cross-platform route (and I strongly encourage you to do so!), you'll have to choose between OpenTK and Tao.
Tao does one thing, and does it well: it provides a C# bindings to C libraries. It is low-level: you'll need to provide your own glue between these libraries. It runs on Windows, Linux and OSX.
OpenTK on the other hand is a little higher level, as it integrates opengl, openal, math, input, fonts and window creation into one package (i.e. you can pass an OpenTK.Math.Vector3 directly to OpenTK.OpenGL). It's easier to use, and runs on Windows and Linux (but not yet on OSX!)
If these options were not enough, you can mix and match these libraries in any combination imaginable. For example, you can use OpenTK for graphics and Tao.Ode for physics, or SDL.Net for window creation and OpenTK.OpenGL for opengl rendering.
Being the developer of OpenTK I'm obviously biased, so I will refrain from making any direct suggestions. My advice is that you weight your needs against the available options and make your choice. You really cannot go wrong: being able mix and match allows you to switch to another option without throwing away your code (I've seen people switch from OpenTK to FreeType for fonts, or from Tao.SimpleOpenGlControl to OpenTK.GLControl for windows :) )
If you are looking for simple 2d drawing (software rendering), SDL.Net is the way to go. It runs on Windows, Linux and Mac OSX. I've also heard good things about BooGame, too, but I've never used that so I can't comment.
If you plan to use more advanced 2d techniques that make heavy use of blending, you will probably need hardware acceleration, which more or less means pick one of: Tao, OpenTK, SlimDX or XNA.
Things are rather simple: do you want your game to run on Linux/OSX? (it's easier than it sounds with .Net ;) ) If yes, SlimDX/XNA are out of the question. Would you like it to run on Xbox? XNA is the only way to achieve that.
If you go the cross-platform route (and I strongly encourage you to do so!), you'll have to choose between OpenTK and Tao.
Tao does one thing, and does it well: it provides a C# bindings to C libraries. It is low-level: you'll need to provide your own glue between these libraries. It runs on Windows, Linux and OSX.
OpenTK on the other hand is a little higher level, as it integrates opengl, openal, math, input, fonts and window creation into one package (i.e. you can pass an OpenTK.Math.Vector3 directly to OpenTK.OpenGL). It's easier to use, and runs on Windows and Linux (but not yet on OSX!)
If these options were not enough, you can mix and match these libraries in any combination imaginable. For example, you can use OpenTK for graphics and Tao.Ode for physics, or SDL.Net for window creation and OpenTK.OpenGL for opengl rendering.
Being the developer of OpenTK I'm obviously biased, so I will refrain from making any direct suggestions. My advice is that you weight your needs against the available options and make your choice. You really cannot go wrong: being able mix and match allows you to switch to another option without throwing away your code (I've seen people switch from OpenTK to FreeType for fonts, or from Tao.SimpleOpenGlControl to OpenTK.GLControl for windows :) )
There is also AgateLib, a library which I developed. It's a 2D, cross-platform library with hardware acceleration for rotation, scaling, zooming. The current version supports Windows and Linux and the next one which I am working on for this summer should add Mac OS to that list.
I may not use AgateLib, but I'm going to see how you do the "driver" switching because I want to design a similar plug-in system for one of my projects.
For kanato,
Do you load fonts from the system folder? And I can't see replies on the forum.
For kanato,
Do you load fonts from the system folder? And I can't see replies on the forum.
Fonts in AgateLib are loaded through System.Drawing, which uses the fonts installed the system folder on Windows. Thanks for pointing out the forum issue, I think it should be fixed now.
Just did a random search and found this and thought I would comment (a few months late). I'm one of the developers on BooGame, or at least the dmoonfire_refactor branch of it right now. I have two games on it (CuteGod and Running Bomb) but still working on those little polish things that take forever.
Not sure where the shemales came up, but boogame should be at:
http://boogame.sourceforge.net/index.php/Home
BooGame is OpenGL-accelerated and runs with Tao.OpenGL and Tao.Sdl (or Tao.FreeGlut, I made the backends switchable). Also working on making the input processing a bit more flexible to handle my own sprite library that I built on top of it (Sprite3).
Not sure where the shemales came up, but boogame should be at:
http://boogame.sourceforge.net/index.php/Home
BooGame is OpenGL-accelerated and runs with Tao.OpenGL and Tao.Sdl (or Tao.FreeGlut, I made the backends switchable). Also working on making the input processing a bit more flexible to handle my own sprite library that I built on top of it (Sprite3).
Quote:Original post by dmoonfireNot sure where the shemales came up, but boogame should be at:
http://boogame.sourceforge.net/index.php/Home
Click any of the links under the "First Steps" header, for example. I the same problem with spam when I was using MediaWiki for the AgateLib site. I switched to using Drupal and haven't had any problems since. (gee.. that sounds like an ad, but I'm not affiliated with Drupal in any way.)
Quote:Original post by kanatoQuote:Original post by dmoonfireNot sure where the shemales came up, but boogame should be at:
http://boogame.sourceforge.net/index.php/Home
Click any of the links under the "First Steps" header, for example. I the same problem with spam when I was using MediaWiki for the AgateLib site. I switched to using Drupal and haven't had any problems since. (gee.. that sounds like an ad, but I'm not affiliated with Drupal in any way.)
Wow, there be spam there, captain!
And this, boys and girls, is why you never have an open wiki on the Internet. :) I'll poke Mr. Loach about it and see if he can wipe it or at least lock down the wiki to prevent it again. Maybe get off my ass and start working toward mainstreaming my branch and documentation. I haven't done much with the documentation/website side since I'm trying to really polish up BooGame on my branch (though it uses some of my C# libraries because I'm lazy and want Emacs-style keybindings). I'm also integrating the non-power-of-two textures and (hopefully soon) the proper Tao.FreeType and Ftgl to get TrueType in properly instead of my own p/invoke NotTao.FreeType.
I haven't touched Drupal for a few years now, mainly because they were breaking everything on every release and I got frustrated. Has it stabilized now? I'm mostly leaning toward dokuwiki (locked down of course) for the next incarnation of mfgames.com.
EDIT: I might check out AgateLib though for my Sprite3 library. Mainly, I want a good 2D framework and I ended up working on BooGame because it was the only thing I found that was "mostly there". Doesn't mean much, but my google-fu is not strong. (I'm a strong believer in consolidating effort to make something solid.)
I have no idea if Drupal is stabilized. From reading the procedure to upgrade from Drupal 5 to 6 I would guess not.
I haven't bothered to upgrade AgateLib's site to Drupal 6, because 5 works fine at the moment.
[Edited by - kanato on June 27, 2008 12:47:29 PM]
I haven't bothered to upgrade AgateLib's site to Drupal 6, because 5 works fine at the moment.
[Edited by - kanato on June 27, 2008 12:47:29 PM]
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement