Titan Attacks by Puppy Games is C#?

Yeah, we’ve genuinely looked into ideas along those lines. But of course then we’re basically writing completely different software for phones so my general premise still stands - you don’t write desktop games and port them to touch - if you’ve managed to port it then you’ve probably got a game that simply won’t sell on the other platform type.

The only game we’ve got that will work, even vaguely, on a phone is Titan Attacks. For bonus points someone can try and say why the other games won’t work.

Cas :slight_smile:

Ya, i don’t think that you can simply take a desktop/phone game and port it to the other platform. Tablets are a different story though, some genres work on both tablets and the desktop.

Looking forward to see how well Mono/MonoGame perform on all those target platforms.

I’m not very sure that tablets are a different story really. The problem is fourfold: touch, form factor, performance, and expectations/situation. Touch is the same problem on both phones and tablets - it’s surprisingly different from mouse and of course totally different to a game that uses keys as well to good effect. Form factor again radically changes the nature of a touch interface. Then there’s the crappy (relative) performance of these devices and finally there’s the situation and expectations that users have when using the device. Mostly it seems that people gaming on touch devices are extremely casual. Getting their attention for any length of time is hard.

Cas :slight_smile:

I do tend to wonder about the level of “immersion” you can expect from a game on a 10" screen where the player’s own hand is constantly popping into view.

No immersion at all.

Have a close look at the games that are succeeding. Very interesting.

Cas :slight_smile:

Mono is nice but it is noticeably different of Microsoft .NET implementation, it is very well explained in this article (still true now):
http://codebetter.com/patricksmacchia/2009/01/19/mono-vs-net-framework-public-api-compatibility/

C# bindings for the OpenGL API are really slower than JOGL 2.0 and LWJGL, Microsoft .NET itself has never been faster than Java, that’s why Quake .NET is 15% slower than the original version whereas Jake 2 is faster. I understand that some people need to use C# on some platforms that doesn’t support Java yet but C# is not Java, OpenJDK is extremely close to Oracle Java and anyway Normen has tried to make JMonkeyEngine 3.0 work on iOS with AvianVM and JOGL ;D Java can go everywhere with some small efforts.

hmm “small efforts”… fine if you have infinite time, money and patience, are very clever, and know what you’re doing. I have none of these attributes.

Cas :slight_smile:

That link is nearly 4 years old - go start a new thread if you want to argue the merits of each language / IDE / Framework, eh? :wink:

Anyway, here’s some WIP screens in various states of brokeness…

Looks like a pretty cool process.

Just curious, did you ever consider using some of the existing solutions for Java to C# conversion ? like using IKVM and just implementing a LWJGL clone in .NET.

Also how are you handling platforms that don’t have OpenGL, some sort of OGL->DX converter (like Angle)? or some other method?

Do you plan to release a general conversion tool so other can use it? (whether commercial or free).

You know there have been a few successful attempts of running Java on iOS, it’s not pure science fiction.

Ok but there is a difference between whining about who stole what from whom and just asking people to respect the right of paternity.

It would be fine to have a nice tool chain to do that easily, it would allow to go on coding in Java while targeting platforms supporting C#.

Cheers - been a bunch of hard work but ultimately satisfying when you get the game running. I looked at IKVM way back in the day but found it wasn’t going to work for some reason (probably the closed nature of consoles but I forget now). If you want XBox then it’s got to be XNA Game Studio (or pain of XBLA) and if you have XNA you may as well go MonoGame for the other targets.

I’ve delegated the few OpenGL calls that Cas uses to Direct X - it’s a custom solution and while it’s pretty basic it works well enough. Not sure what the plans are to be honest. I doubt there would be any value in it for others unless you were using the entire Puppy tool chain. But there’s no reason the various libs couldn’t be bunged on Github or whatever.

Back when I looked into it, IKVM required the full CLR runtime, whereas to get on XBox you were restricted to the Compact Runtime. So you can use IKVM to get something working with XNA, but it’ll only work on desktop, not XBox (which is kinda the point).

…and here’s a little YouTube of it in action…

d7eGZmGPw84

What’s that running on?

Cas :slight_smile:

I won’t start another thread and most things explained in this article are still true now. I haven’t insulted you, I haven’t posted anything defamatory, I’m allowed to express my opinion, I’m not forced to agree with you to post here, this is a forum, not a billboard for advertising. If you just want to make some self-promotion without having anyone to contradict you, you’re probably in the wrong place. When I talk about my own projects, I accept that people can disagree with me as soon as they express their opinions in a smart way (ie. without trolls, insults, …). You started by saying that C# is “pretty much Java by another name really” but now that I express a different opinion, you expect from me to keep quiet and go somewhere else to talk about that. I gave some arguments, I think my remarks are constructive. Maybe I’m a bit harsh, I speak about some limitations of your approach but your work is still valuable (and interesting) and I find Cas’ games great. Welcome in java-gaming.org.

That’s running on Windows at the moment - I’m still working through some resource bugs and graphical errors. As soon as I’m happy with it on Windows I’ll compile an XBox version and see what’s to be fixed up there. Resources are taking too long to load at present so I’ll see what my options are for pre creating them.

…and I’ve finally fixed the resource loader ;D

Input next - then I should be able to play it!

A touch screen game can have no immersion? Ha!

Very nice :slight_smile:

Looks like alot of work to get something running on a platform it wasn’t designed for!

You can’t compare apple and oranges. You can’t draw any valid conclusions from such a “test”. If Microsoft Word is faster then OpenOffice, it means nothing other than Word is faster than OpenOffice. Same thing for Quake.NET vs Jake 2.