Quake III and OpenGL - Windows Phone 7 Software Development

Hey there!
I'm wondering if OpenGL games, like Quake III, can be ported just like they did for Android with Kwaak3.
Does WinPho7 support OpenGL ES in addition to DX9c?
Best Regards Mr.Sir (Gustaf)

I googled around and it appears that XNA will be the only choice besides silverlight for app/game development. So if you can somehow port an OpenGL came to XNA, then yes.

Mr.Sir said:
Hey there!
I'm wondering if OpenGL games, like Quake III, can be ported just like they did for Android with Kwaak3.
Does WinPho7 support OpenGL ES in addition to DX9c?
Best Regards Mr.Sir (Gustaf)
Click to expand...
Click to collapse
Nope. It's only what you will find in XNA. There are several samples people have posted for porting on xbox 360; same code will work on the phone with VERY little changes.

So, seriously guys, no native support? I mean, when i was working at NDrive they had everything written in C++ with interfaces for each device. I doubt that any sane company will rewrite its software completly just to compete in a niche...
Even in .NET CF you COULD do some PInvokes which kinda allowed you to attempt to run a managed version of OpenGL (.NET sucked and still sucks for serious game development, obviously) which was slow as hell, but at least it was there.
So please, native support!

ei05035 said:
.NET sucked and still sucks for serious game development, obviously) which was slow as hell, but at least it was there.
Click to expand...
Click to collapse
That's why it is entitled with XNA

Yup Buddy but its gud because you have to code only one time and then you can able to convert it for using on other platforms..

And by several platforms you say M$ based ones. I mean, most companies (i can give you the example of NDrive as I was there for a while) would rather code in C++ and create interfaces for specific platforms. No native code support kills it. I don't see companies renaming extensions to .cs, enabling unsafe code (pointers, etc) and giving it a good dose of whisfull thinking.
Oh and when I meant that XNA sucked for serious gaming i meant really. AAA games don't rely on that. They rely on GPU manufacters SDKs and on the good ol' DirectX SDK. This is if they don't have some housemade engine (like Crytek) similar to Shiva3D or Unity (but custom tailored).
I mean, seriously. In .NET CF 3.5, give it a go, try to natively rotate an image and resize it without manually processing the bitmap information to do so (and at the expense of CPU usage). I had to rely on DxSprites and OpenGL when I needed.
XNA is, as it was already mentioned, game-wise, a game-loop oriented tool with a few PInvokes to DirectX...

ei05035 said:
And by several platforms you say M$ based ones. I mean, most companies (i can give you the example of NDrive as I was there for a while) would rather code in C++ and create interfaces for specific platforms. No native code support kills it. I don't see companies renaming extensions to .cs, enabling unsafe code (pointers, etc) and giving it a good dose of whisfull thinking.
Oh and when I meant that XNA sucked for serious gaming i meant really. AAA games don't rely on that. They rely on GPU manufacters SDKs and on the good ol' DirectX SDK. This is if they don't have some housemade engine (like Crytek) similar to Shiva3D or Unity (but custom tailored).
I mean, seriously. In .NET CF 3.5, give it a go, try to natively rotate an image and resize it without manually processing the bitmap information to do so (and at the expense of CPU usage). I had to rely on DxSprites and OpenGL when I needed.
XNA is, as it was already mentioned, game-wise, a game-loop oriented tool with a few PInvokes to DirectX...
Click to expand...
Click to collapse
If you are so gung-ho, you could write wrappers in C++, compile the DLL and pinvoke your calls.

tyrannus said:
If you are so gung-ho, you could write wrappers in C++, compile the DLL and pinvoke your calls.
Click to expand...
Click to collapse
Exactly! Honestly for me it is the way to go. It's not that i don't like C# or .NET, quite the contrary. I'm just sorry that they lack the portability some projects require. And for me, WP7 not having native code support is a real buzz kill. What do you think?

It does have native code support but you need Microsoft's permission to get the SDK. I'm pretty sure game companies will have it if they want to make use of the GPU as much as possible.

Related

No DirectX on .Net CF 3.7

I've seen that .Net CF 3.7 doesnt have the directx ( Direct 3d) libraries and i was wondering if microsoft decided to delete them and not continue using directx with .net cf or if it's only because the 3.7 version is a beta and lacks many things.
Apart of that, i don't know what new things has 3.7 version, is there any changelog? because if there aren't important changes, i consider it may be better to continue using .net cf 3.5.
No follow up?
I'm curious if anybody has any more information on this matter. I'm currently using a slightly older version of NRGZ's EnergyROM with a Touch Pro and am unable to use Diamond Hologram because of a TypeLoadException stating that Microsoft.WindowsMobile.DirectX can not be found.
There's a chance that the rip of the unreleased .NET CF 3.7 was incomplete (though the GAC is pretty straightforward) or the pre-release state of it could also be used to rationalize missing assemblies, but if I were to take a random crack at it, I would guess that they're working on XNA for Windows CE/Mobile since it's based on CF and runs on Windows, XBox 360 and Zune it would be a logical step for Microsoft (just as they stopped supporting Managed DirectX on desktop editions), though it does seem a bit unfair to developers of existing applications since the desktop edition was not shipped with the framework, but rather with the DirectX SDK whereas this was deployed in the framework.
Is there a chance that someone could test using the 3.5 version on a 3.7 runtime? If the CLRs are compatible (and they seem to be) then it should still be able to load the assembly, and if binding works at all similar to the desktop framework we could probably just copy it into the directory of the application path, rather than GACing it.
After some searching around this is better discussed in the original CF 3.7 thread since it has been brought up. I'll repost my thoughts there and see if someone can help with experimenting.
http://forum.xda-developers.com/showthread.php?p=4060348
Not sure if this should be posted in the aforementioned thread, but it has long been rumoured that MS would phase out Direct3D by Windows Mobile 7, in favour of OpenGL and OpenGLES. Hope this helps at all.
GL
Well, I'm not so sure MS will ever officially support GL since it's a "competing" product to DirectX. In fact, to me it seems very unlikely. While they have been supporting community solutions and open source work more lately, generally Microsoft makes an effort to have developers use Microsoft technologies which in turn makes applications dependent on Microsoft and therefore users dependent on Microsoft. They have (arguably) the most powerful, useful and time-saving development tools which keeps many developers (like myself) developing applications that are inherently designed for their operating systems.
XNA, on the other hand is a Microsoft technology that is gaining a lot of traction and is directly related to the .NET Compact Framework, which is what leads me to believe they'll choose that route. With the right love and care a single XNA game can be played on PC, XBOX 360 and Zune and it seems likely that supporting the platform that .NET CF was first implemented on is only a matter of time. It's been rather surprising to many in the XNA community that MS hasn't already supported it, since their original press releases strongly indicated support for it. One thing's for sure: while there is an XNA Game Studio built on top of Visual Studio, there will probably not be any MS initiative to build a GL game studio.
http://www.microsoft.com/presspass/press/2004/mar04/03-24xnalaunchpr.mspx
To be fair though, that doesn't necessarily mean they won't implement the Windows Mobile version of XNA using OpenGL ES, though it seems likely that the architecture is designed more toward DirectX. Still hardware manufacturers could play a huge role in this decision.

Where to get a nice UI library for WM Phone

Just look at this http://www.youtube.com/watch?v=eu8avvF9yrg&NR=1
They didn't spend much time on the layout because I've seen other iPhone applications that looks just as nice.
What library do they use (or simular) and is it available for WM?
I found these but hopefully there are more and more for UI:
- Manila Interface SDK http://forum.xda-developers.com/showthread.php?t=566188
- http://beemobile4.net/
- http://www.resco.net/developer/mobileformstoolkit/features.aspx
http://silvermoon.codeplex.com/
awesome, lot of visual effect with iphone app
vua777 said:
awesome, lot of visual effect with iphone app
Click to expand...
Click to collapse
Do you have a link?
RAMMANN said:
http://silvermoon.codeplex.com/
Click to expand...
Click to collapse
Thx, i tried it immediately but it's slow. I started with VS2008 and used debug. Maybe thats the problem. Looks awesome, and for free
grrr....i hate .netcf...
google for fluid (it's on codeplex.com)
also for .net cf, but doesn't use opengl (if I'm correct)
there's no UI library for C/C++ right? So at least I hope WM 7 comes with an updated SDK....
Is that all there is?!
Now I understand why iPhone.....
ajhvdb said:
Is that all there is?!
Now I understand why iPhone.....
Click to expand...
Click to collapse
yep sadly, tho that is alls supposed to change with wm7...
Touch Control Suite
http://www.mirabyte.com/en/products/windows-mobile/touch-controls-suite-for-netcf/information.html
Well finally something with a normal price. Will investigate this Thx.
At this moment Resco seams to be the best and "priciest". Maybe someone wants to sell there Resco library because they don't use it anymore. Send me a PM.
all these .NETCF frameworks seem to me so incredible incomplete. They offer 3-4 controls and thats it. The funniest is the SDK where you can buy single controls for like $30 each.
RAMMANN said:
all these .NETCF frameworks seem to me so incredible incomplete. They offer 3-4 controls and thats it. The funniest is the SDK where you can buy single controls for like $30 each.
Click to expand...
Click to collapse
Yes, isn't it amazing. How the heck does ms expect me to develop for WM???
I can create the functionallity but it still doesn't look smart. On iPhone there are a lot of useless applications but they look smart.
How will this be in android? Why doesn't MS buy up Resco and release this nice UI for free. This will create a lot of new development.
Yea, I've said this countless times before. WM only needs a decent SDK or at least a nice UI library for VS2008 and some new APIs and it would by far be the best OS.
It wouldn't be hard for MS to do this.
You can make the current controls look and function like touch controls with overrides but its a pain. You can find some good howtos at http://code.msdn.microsoft.com/uiframework.
Hopefully we get better controls with Windows Mobile 7 and the next .net cf. I wonder if we will see it when Visual Studio 2010 is released a few months from now.
ajhvdb said:
Thx, i tried it immediately but it's slow. I started with VS2008 and used debug. Maybe thats the problem. Looks awesome, and for free
Click to expand...
Click to collapse
Silvermoon is only slow because you are running it inside emulator. Silvermoon is OpenGL control library, and since emulator doesn't support hardware acceleration, you are using software version of OpenGL rendering engine. Try running silvermoon demo on your phone directly (if you have one of the newer phones that support hardware graphic acceleration). It's actually the fastest library available (and one of the most complete).
If you want to target all phones, not only the once with newer chips and OpenGL hardware rendering, try Fluid. It's written by the same guy that wrote Silvermoon, and it's also very nice library with tones of available controls and a very good architecture (so if it's missing control you need, you can always add your own).
Other than those two, there isn't much available that is free/cheap/good on the market.
hobbbbit said:
Silvermoon is only slow because you are running it inside emulator. Silvermoon is OpenGL control library, and since emulator doesn't support hardware acceleration, you are using software version of OpenGL rendering engine. Try running silvermoon demo on your phone directly (if you have one of the newer phones that support hardware graphic acceleration). It's actually the fastest library available (and one of the most complete).
If you want to target all phones, not only the once with newer chips and OpenGL hardware rendering, try Fluid. It's written by the same guy that wrote Silvermoon, and it's also very nice library with tones of available controls and a very good architecture (so if it's missing control you need, you can always add your own).
Other than those two, there isn't much available that is free/cheap/good on the market.
Click to expand...
Click to collapse
Thx, it also slow on my Omnia II but I think it's related to openGL. Will try Fluid. It just feels strange spending so much time on the UI and still looking bad.
http://www.koushikdutta.com/search/label/WindowlessControls
This one looked ok, but I think it's dead too.
ajhvdb said:
Thx, it also slow on my Omnia II but I think it's related to openGL. Will try Fluid. It just feels strange spending so much time on the UI and still looking bad.
Click to expand...
Click to collapse
The reason it might be slow on Omnia II is because you might've copied libGLES_CM.dll to your phone with the rest of the application. libGLES_CM.dll is software renderer for OpenGL. So, again, no hardware acceleration. If you didn't, then it's most likely something wrong with OpenGL drivers on your Omnia.
Here's the video of how Silvermoon supposed to run with hardware acceleration working, I think it was made on Diamond 2.
http://www.youtube.com/watch?v=0OQwo0nt_ek
For a beta product, Silvermoon is one hell of a library!

Silverlight 4 Likely as Dev Platform

Given Andy Lees quote about WP7: "It's a very sort of advanced platform that really works across PC, phone, and console," it seems likely he's talking about Silverlight 4, especially given the boost in features that it's getting for version 4. I find this to be a very suitable platform for what they're trying to do. You can't beat multi-platform & RIA support - dev once, run on all. What do you think?
Still very propretiary
chribruu said:
Still very propretiary
Click to expand...
Click to collapse
So what? All current phones only support native applications that are created with a proprietary SDK. The big exception is Java which is executed in a VM, but these applications cannot use the full potential of each platform, because they must aim for the lowest common denominator. So without modifications, no native application will run on all platforms.
chribruu said:
Still very propretiary
Click to expand...
Click to collapse
It's not any different than the current situation really. How many people write WM code in anything other than Visual Studio?
Basically a different set of GUI libraries on .Net 3.5.
Hope they'll make SL4 available on WM6.5, too. That way it would be a much better platform choice.
You're all right. I replied without really thinking my post trough. :/
The only thing bad with SL (and flash) is if/when they become web "standards".
Just disregard that post
Sorry for the OT.
from the little i have read/seen. it seems like this will prob be the case..
Silverlight will be one of the dev platforms, along with C++ with a XAML UI.
in this video
"Behind the Design of Windows phone 7" on youtube (i could not post the link)
1:25 - 1:29
you can see the ide for wp7.
it looks like blend. that would definitely mean xaml for ui.
pensoffsky said:
in this video
"Behind the Design of Windows phone 7" on youtube (i could not post the link)
1:25 - 1:29
you can see the ide for wp7.
it looks like blend. that would definitely mean xaml for ui.
Click to expand...
Click to collapse
And as I said, C++ with a XAML UI...
XNA C#, no dubt for the games.
It's available for the Zune HD, I guess it will follow on to WP7
But maby not for the UI?? any thoughts?
From XNA.com :
XNA Game Studio 3.1 Zune Extensions, to support Zune HD, adds the following functionality to the product:
The ability to target and develop for the Zune HD media player.
The addition of new Touch APIs to the XNA Framework for use on the Zune HD.
The addition of new Accelerometer APIs to the XNA Framework for use on the Zune HD.
Click to expand...
Click to collapse
I don't really believe, that they'll be using an unmanaged language for the application developement itself (other than drivers of course).
I think it would be most likely to be using C#, perhaps more in the way of how most android apps use java, e.g. it's precompiled on deployment.
What I really hope for is that, there is no longer the limitation of 32 mb per process.

Silverlight the platform for creation Windows Phone 7 apps

Looks like Silverlight is the platform for creating Windows Phone 7 apps, finally.
http://www.crn.com/software/222900433;jsessionid=ZSTDUKCIARR4FQE1GHPCKHWATMY32JVN
I hope so, SIlverlight rocks, so much better on my PC than Flash but yet it isnt widely adopted, hopefully if WP7S has Silverlight this will boost its use
Finally!
It is indeed a very logical step.
I was trying to make a "fancy" UI on WinMo 6x and it's damn hard (that will work blazing fast). And search for a Silverlight for WinMo... and it was there... and it was showed on the TechEd 08... but never released... and I was like:
-Oh ... come on... how long does it take to port it??!
This is almost like a "duh" story but it's good to have a "source" saying it.
Silverlight will be for lightweight stuff and XNA 3 (4?) will be for Games, etc.
Imagine being able to write one app and have it work on multiple platforms with little or even no code changes. Silverlight supports multi-touch on Windows 7 too.
XNA and Silverlight. No native apps - see attach.
Can you already create SL applications for the WinMo?
DMAND said:
I hope so, SIlverlight rocks, so much better on my PC than Flash but yet it isnt widely adopted, hopefully if WP7S has Silverlight this will boost its use
Click to expand...
Click to collapse
Yes silverlight rocks and i am learning it right now.
afma_afma said:
Yes silverlight rocks and i am learning it right now.
Click to expand...
Click to collapse
Know any application? Link?
Developing .NET CF on WM6 is a -pain-. Even if you want to do something as simple as draw a transparent image you have to delve into P/Invoke which feels like hacking. If they get .NET development under WP7 working simply and effectively, then I think it will be a great step forward. I've used WPF extensively and it is a great platform to work on. I've no reason to think Silverlight is any different.
My only concern is how they'll restrict the distribution and installation of applications. The openness of the Windows Mobile platform has always been a big draw, and if they do an Apple and try to restrict how I publish and obtain apps then not many people will see a reason to switch from such an established and successful platform.

Info about the Current state of Java and OpenGL on Windows RT (8/8.1)

Hello my name is Filiph Sandström but you can call me filfat. in this thread we are going to talk about the current state of Java and OpenGl on Windows RT(8/8.1),but before we start i just want to say thank you for clicking on this thread and if it helped you remember to click the "Thanks" Button! Alright with that cleared out, lets start! :laugh:
Updated: 2013-11-18
Java
Java is a programming langue that develops by Oracle with the idea of one similar langue for all electronics like a dishwasher or a Microwave.
Currently java does NOT exist on Windows RT, but there is a workaround available. The workaround is called Ikvm.
Ikvm is a Java emulator developed in .NET/C# to migrate an existing Java database application to .NET langue.
however to our advantage it can be used to run *almost* any Java application that doesn't require a 3rd-part library like "lwjgl" or similar.
I'm sure that there's a lot of guides out there on how to run application but i will give you a example anyways:
Run_Java.bat
Info:
Code:
This Example executes the jar file "helloworld.jar"
Code:
Code:
@ECHO OFF
ikvm -jar helloworld.jar
To Summarize: We now have basic Java application's running on our Windows RT device, but what if we want to play a game,
or do something that require OpenGL. well here is where the OpenGL section steps in.
OpenGL
OpenGL is a way of rendering not just 3D things but about everything, it is currently the most widespread 2D and 3D API(application programming interface).
It is used in many games and application. Sadly Windows RT do not have support for this as the desktop mode was never intended to use to other things then Office and well, maybe paint .
So what do we do in a situation like this, where most of the games and applications doesn't run because of OpenGL.
We write a OpenGL to DriectX Warpper*. so in short running games like Minecraft is possible BUT it require a OpenGL to DriectX Wrapper which currently does not exist. so you CANNOT run Minecraft or any other Game/Application that require OpenGL yet...
To Summarize: We do know a possible way to run OpenGL on Windows RT however no one as of yet have taken that mission and started working on a OpenGL to DriectX Wrapper. We would also need to modify Ikvm to be able to load external library's but that's a whole other story.
Ending
Thank you for reading, and as I said in the beginning of the post "if it helped you remember to click the "Thanks" Button!".
Also, i will be adding more info when I got time or when things gets release. See Ya! :laugh:
*When i say wrapper I mean a translator that translate OpenGL code to DirectX code for the CPU
Comming Soon...
Reserved
Sources
Sources
Java
Ikvm
OpenGL
A Word To A Moderator
if you think this thread is useful consider making it a sticky
I thought we already had an OpenGL wrapper for RT. At least that's what I believe is used to make Quake 1 and 3 run:
http://forum.xda-developers.com/showthread.php?t=2312019
http://forum.xda-developers.com/showpost.php?p=42338198&postcount=1
Yeah, there already is an OpenGL>DX wrapper. It wasn't used for quake 1 though, the quake 1 RT port is based on DirectQ which had its renderer rewritten for DirectX, was used in Quake 3 I think.
IKVM cannot load LWJGL or other similar libraries on x86. ARM isn't the limitation, OpenGL with the wrapper potentially wouldnt be the limitation either. IKVM itself is. Its an old project and if it was ever going to get native code execution it would have by now.
Although I think java applications on IKVM can make use of .NET extensions which in turn can make use of native code so one could potentially write an IKVM port of LWJGL which on the java side exposes the same API so minecraft etc couldnt tell the difference, but under the hood taps into .NET for rendering. That would probably result in a bit of a mess which may not actually run in the first place. The efforts put into making and debugging such a thing would be better put into porting the jvm itself.
Unless we got a native JVM on RT, I dont think we will see minecraft. Even if you could get LWJGL running, IKVM is just way too slow either way and as it is, the surface is quite a slow device, minecraft on a real JVM on ARM will still be laggy.
Just tossing this out there but what about compiling OpenJDK for arm? It's a pretty active project
http://openjdk.java.net/
I'm a software developer and will try and give this a shot over my Thanksgiving / Christmas downtime. I have an Asus VivoTab still on Win 8 while I wait for the 8.1 jailbreak. Guess Im starting to get bored and kind of ticked that the microsoft store sucks.
Edit:
Added info for reference later
Minecraft Ubuntu ARM
Edit 2:
Build Instructions
http://lwjgl.org/
Webos running guide
Thexfactor2011 said:
Just tossing this out there but what about compiling OpenJDK for arm? It's a pretty active project
http://openjdk.java.net/
I'm a software developer and will try and give this a shot over my Thanksgiving / Christmas downtime. I have an Asus VivoTab still on Win 8 while I wait for the 8.1 jailbreak. Guess Im starting to get bored and kind of ticked that the microsoft store sucks.
Click to expand...
Click to collapse
Then check developement forum and forget about it. There's no mingw/gcc targetting windows/arm. I think that this should be posted sticky on both RT forums.

Categories

Resources