Development frameworks in C# - xna

When I look for development in C#, I get the following terms/frameworks/libraries:
Xamarin
Mono
Monotouch
Monogame(for games)
Are there more?
My first doubt is that are Xamarin, Mono and Monotouch same? If no, what is the difference?
Secondly Monogame is open-source implementation of Microsoft XNA. What is the meaning of open-source implementation? And if it is XNA-like, then why cant we just use XNA and why is XNA being made obsolete?

For questions like this why not visit http://www.reddit.com/r/gamedev who are generally happy to help with these kind of questions.
So Xamarin are the company that develop monogame which mentioned above is a clone of the now obsolete XNA framework which for some unknown reason MS have ditched. There isn't much work needed to port your XNA game to monogame. Developing for PC is free and always will be. You can pay for the tools required to develop on ios and android.
It really is a great cross platform choice especially if you have experience with XNA. For another C# alternative check out Unity.

Related

XNA Game Studio 4.0 transfer it to Monogame, is this possible? Thanks

I have made a game in XNA Game Studio 4.0 and been asked to transfer it to Monogame so that it runs in Monogame, is this possible?
The short answer is - yes, it is possible but requires some work. XNA Game Studio 4.0 is a plugin for Visual Studio, but that doesn't matter as much as the fact that the game uses the XNA .dlls, and that it's compiled against the PC platform which impacts things like file IO, reflection, and a few other subtleties.
You'll be able to re-use much of your code, but some stuff will definitely change. To start you'll want to get a simple MonoGame project running, then work on bringing the code over.

DirectX SDK / VS2013 SDK setup

I am a beginning programmer university student and I want to apply myself outside of class with a side project. I wanted to start programming some simple directX stuff in C++ for practice and preparation for future classes.
However, I have Visual Studios 2013 installed and the DirectX SDK June version installed, and I can't seem to find any directX templates in visual studios. In tutorials I have watched, when a person goes into visual studios 2013 and clicks on "Visual C++", they have a lot more templates show up, including DirectX ones.
What step am I missing to be able to see these things in my Visual Studios 2013 professional?
Thank you in advance for the help!
There is no built-in templates for desktop DirectX, since you have installed the DirectX SDK, I recommend you use the Samples/Demos from the SDK(you can find it from DirectX Sample Browser), there is a sample called Empty Project, you can install that sample and write your code based on it.
There are only templates for DirectX Windows Store Apps. I cannot remember if it ever was DirectX Desktop templates in Visual Studio.
On a picture here you can see two default DirectX Windows Store Apps templates and new templates which you can to download.
Probably, in your tutorial there are some home made templates, or those which can be fond on a web. You can easily make your own template too.
If you really want to learn program for Desktop (and as you are trying to use DirectX SDK it is probably what you want), just follow the code that you can find in books and tutorials. Also it is a good idea not to copy any code, but to start your own projects(s) which will develop as long as you will develop your knowledge.
Note, that DirectX SDK was deprecated a while ago (latest version is dating June 2010). You must use Windows SDK for any new code. Though, you can compile old samples (which requires stuff not present in new SDK) with DirectX SDK. You could find interesting some of Q&A on that topic:
DirectX SDK vs Windows SDK: which one to use?
Working with Direct X and VS2012
and this blog on MSDN by Chuck Walbourn - MSFT :
Where is the DirectX SDK?
Where is the DirectX SDK (2013 Edition)?
Living without D3DX
Happy coding! ;)

How to use Xamarin in Visual Studio and Mac in the same time

I have just developed and android app using eclipse and now I want to develope its IOS version. I want to use Visual Studio and C# (I feel pretty much comfortable in these environments).
I read that, to achieve this I can use Xamarine. Everything is OK with configuring Xamarine on Visual Studio and using it in Visual Studio (I understood this part). I couldnt understant the "mac" part. They are saying that in order to build this app I need a mac running in my local network. Unfortunately I have no idea about Mac. Instead of using it in a local network, could I just install it in a Virtual Machine in windows and configure it on that way that I can see this mac from Visual Studio (How can I do this ?! :S).
I am sorry if my question is unclear but I would be greateful if any of you helps me understand these issues and help me develop my first IOS app in Visual Studio.
If you are going to do iOS development using Xamarin you need a Mac. A Mac will always be required to submit the app to the app store, and the way Xamarin works, you need to use a Mac to create the UI for iOS apps as well.
To get the most of the Xamarin, you ideally would develop your base code using Xamarin and C#, then build separate UI's for both Android and iOS. While your UIs are separate, your base core code is all the same for both apps.
It really does not make sense to have a native Android app all in Java, and then write the entire iOS app in C#. Either stick to completely native apps for both platforms, or use a wrapper like Xamarin for both.
Xamarin.iOS for Visual Studio makes it possible to develop iOS
applications on Windows, but you will still need a Mac in order to
compile and run the code.
Today, Xamarin.iOS integration in Visual Studio is focused on enabling
developers to develop in C#. Xamarin developers who write Xamarin.iOS
applications on Windows typically hand-code their user interfaces—or
they will need to switch to the Mac to use Xcode (or a beta version of
Xamarin’s new iOS Designer) to interactively design an iOS user
interface layout.
"or use a wrapper like Xamarin for both"
I have discovered the term wrapping is not correct for this product.
Unlike other products (Corona, Phonegap, Titanium, ...) that wrap up in a common, genericized library, Xamarin compiles at core level with no penalty. It is 100% native. All functionality in all it's supported platforms is 100% available and not watered down.
Wrappers can be faster to program in, in theory, but when you factor in the time you will spend looking for workarounds for the one piece of functionality that is available natively but not in your wrapper library. When you factor in the constant bugs because wrapping for 3 or more platforms is a constantly moving target and you can't count on it working from day to day.
When you factor all those things in, writing native in c# for all platforms is the better option.
I tried them all, and xamarin was my last choice as I was distracted chasing that perfect golden goose wrapper product.

Is it possible to integrate Lua to Delphi and run on windows phone

I have a Mac app needs to migrate to windows. The app was created using objc and Lua.
I use Delphi to develop app for Windows.
Is it possible to integrate Lua to Delphi in and develop for windows phone7?
Welcome any comment
Thanks
To answer your first question, YES you can use Lua in Delphi. Simon J. Stuart has an incredible blog/website where he has created a number of really useful stuff for Delphi developers. His Lua4Delphi suite will help you integrate Lua scripting into your Windows application. Go to: http://www.lakraven.com/ or http://www.simonjstuart.com to check out the rest of Simon's stuff ... highly recommended!
With regards to the second part of your question (writing a Delphi app for WP7), that would be NO ... you're out of luck there (as Mason mentioned above).
It's definitely possible to integrate Lua with Delphi, but good luck getting it to run on Windows Phone 7. WP7 will only run apps built in the Silverlight or XNA frameworks.
Windows Phone 7 is not possible now, and is not likely to be possible in the near future, using Delphi, or even with Delphi Prism. Key elements of Microsoft's WP7 SDK are limited to the two current .NET core languages (C# and Vb.net). If Microsoft decided to help out remObjects a little bit, then a delphi Prism targetting Windows Phone 7 could become a possibility, but that is out of RemObject's hands, and its unlikely that Microsoft will be interested in helping them join in on the WP7 platform. Perhaps with sufficient engineering dollars, someone could figure out a way to force their way into the WP7 SDK.
Lua is a pretty simple C library, and it should be possible to put it into a DLL and load it into your delphi program. You could write your application in windows, with delphi, and use LUA scripting, and if you find a .NET "lua interpreter", like LUA.net, you might investigate integrating that into a WP7 app that you wrote entirely in C#.

OpenCV lib and WM

I just made an application using the OpenCV lib, and will be great if I can use this computer vision application on my PDA, which has Windows Mobile 6.0 on it.
Do you have any idea about how can I do this?
If you have Visual Studio, just create an embedded project. Check out the Windows Mobile Development Center for more information. Unless it's a very simple application or you're working with very low resolution images I would be surprised if you were able to get acceptable performance though.

Resources