Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
I want to write simple application with some 3D objects for Windows OS.
The application is very simple, like a gallery where we can move and see some pictures. When users go to the some picture and click on it a window will open and show picture with some information.
Which is the best framework for this task WPF, XNA, or something else? Application will be written in C#.
I can not say which is best, but I have done a while ago some things with the WPF 3D API and I liked it.
It was IMO very simple to use and the rendering seemed to be relatively fast. A really nice thing I found, was that it has an object-model that contains high-level-events such as mouse-down and click. Therefore you don't have to do much math. However, maybe provide also other APIs such high-level services, I don't know.
I would not try to create an action-game with it, but for a small app as you have described, I think it is worth a try.
Unity has been used for similar stuff. It can work on browsers (via a plug-in) or as a program, has a lot of documentation and most of the work involved in creating a 3D environment and interface is already done. Code can be written in Mono (open source C# implementation), JavaScript or a Boo, a modified Python scripting language.
It works in Windows, MacOS, iPhone, iPad and Android. And it is free in the standard version, or really cheap.
XNA is a little lower level, so it will require more work to get things started. It supports Windows, WP7 and Xbox 360.
See this discussion : WPF VS XNA
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
Let's say that someone decides to create a game without a game engine or library of any sort.
C# (or any popular language) is used
They have 2D sprites and 3D models with animations
They aren't sure of what IDE to use
Based on this information how would they get images displayed onto the screen?
I imagine that a console window would be out of the picture. (Pun intended)
Yes, a console window would be out of the question :)
You need to access the built-in Graphics API. On Windows computers, this is DirectX. On other operating systems, it is typically OpenGL.
Both APIs are very cumbersome, and are completely different. Without a library you typically have to be in C/C++ to use them.
As far as IDEs it depends on what you are developing for. Visual Studio is fine for windows, others you need to find something that compiles for it (probably using gcc). Anything will work, its just standard native code.
Good luck!
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
Does anybody know to give me a comparison of advantages and disadvantages in programming through C# in Xamarin Versus Android java native code?
Is developing through Xamarin is way more limited than native android, or the gap is not that far.
I would like to hear opinion from someone who has experience in developing with both technologies.
Thanks
Update 20160822: This advice still holds true. I continually am asked about this. One company I know of went with Xamarin only to find out that it did not solve their Android problems as they had to learn both languages/implementations to solve most their issues.
Update 20150513: Thus far, this is one of the most asked questions I get from startups. Which way should they go. I inevitably end up pointing them to this post. It is still solid advice.
I've developed with both. You can pretty much do whatever you want in Xamarin. The couple of difficult areas you're going to run into are:
Finding good, working example code. Edge cases are really the bummer here.
You'll find that you end up learning Java through Xamarin because you have to read so much Java code.
Another problem is that while Xamarin is doing well and is gaining traction, the community is still rather small. This poses a problem when you release a Xamarin app. If you need to bring in someone else to maintain it, they have to know .NET, C# and Android. Finding that combo is rather difficult and I've found that all the contractors or consultants that I needed to update my app were VERY expensive.
Thats the hidden gotcha. It will help you get out the door faster, but up keep and new feature development will cost you, IF you're NOT the one doing the updates.
Why do I know this? I've written two apps with Xamarin that I eventually wanted updated. I had to contact a contractor to do it because I simply didnt have the time. It was quite expensive compared to Android or iOS devs that were already out there. I ended up moving those apps from Xamarin to Native Android and iOS.
That aside. Its a freaking awesome platform. If you plan to always work on it, then use it. Being able to use the power of C# is great. After working with C# for many years I've grown to really have a disdain for Java. Thats personal preference, but it is what it is.
Its all about tradeoffs.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I'v just learned a few languages (for 2 years now), and now I want to make programs with graphic interfaces. Thing is, I just don't know which languages to use.
What languages/programs (and what methods of these programs) are used to make programs with graphic interface? (I know that C# and JAVA are graphic, but I don't know what methods...)
What languages/programs (and what methods of these programs) are used to make applications to IPhone, Android ,and whatever ?
languages/programs (and what methods of these programs) are used to make/edit videos?
Thanks a lot!
Almost all programming languages have libraries that help you create a GUI (Graphical User Interface). Most programming languages, including C++, C#, and Java are general-purpose programming languages - you can use them to program whatever you want.
For Java for example, see this tutorial: Creating a GUI With JFC/Swing.
If you want to write an Android app, you'll program in Java.
For iOS and Mac OS X, you'll most likely write your app in Objective-C.
Pretty much all higher level languages use graphic interface. you just have to do your research to find out how to use GUI in each language. Applications used on the iPhone are written in Objective-C and Android uses java for their apps.
Your question is quite vague. But I'll give you some advice. Before asking this kind of question on stackoverflow, you really should make a search on your own with google.
About graphic interface using JAVA, you can use swing which is the most famous way to do it (especially if you're a beginner and want to familiarize with graphic interface development concepts). But there are a lot of other libraries to do GUI, for exemple if you want to do with 3D you have openGL lib or jMonkey (uses openGl).
About Android, it has its own SDK in java.
About iOS (iPhone), it is made with ObjectiveC.
And about C#, I don't know a lot about it but if you do a quite search on google you can find things like this.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
Here's the situation:
I need to develop a desktop tool that will take in an input from Oracle (text) and it's output is a print of a layout generated by that tool.
The tool needs to be fast and able to print easily and not much extra software required on client PC's which ALL run Windows.
Now i've studied Java, PHP in the past however I don't want to use PHP for the Desktop App
and I have my doubts about Java in regards to Printing and developing the GUI.
It seems to me like with C# I can develop the GUI easier and faster, and most PC's have a lot of the tools required for the GUI in the OS (.net framework).
A tool like NetBeans helps, but more often than not the GUI design is either broken
or shoots across the screen when I make a simple change.
So now I'm thinking about starting in Visual C#, however I would like to get your
opinion.
And from my past VERY short .NET programming experience, I can still remember that deploying over the internet is easy as well, with JAVA I've had some issues with that as well before I got it to work.
So in short:
Windows environment
Lot of GUI design
Fast app that runs on client Windows PC's without much 'extra' software installing
Easy print programming
THANK YOU!
My preference would be C# or VB.NET with Windows Forms. WPF is also worth looking at, and will give you the most modern UI, but it has debatably a steeper learning curve attached.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 3 years ago.
Improve this question
I'm pretty noob when it comes to C# but it's probably my best shot at achieving this. So i'm learning as I go, and while this may seem ambitious it's for a good reason. I want to write a Picture-in-Picture style video player that quite simply creates a block of X width by Y height, and a video file can be loaded and started and played. Like a fullscreen video but with no interface (and not fullscreen,) but as a window on top of everything else.
I'm just not sure where to start. This is for a linux system, so i don't want to (and probably can't) use directx. must i tap into opengl to stream video to screen ... and what about codecs? does the system (ubuntu) handle decoding etc, or must that be built into the app?
I'd appreciate any guidelines and tips, as well as any articles or anything that could help.
If only there was some sort of open-source Linux media player that already existed in C# that you could read how they did it... :)
The video application shall have control on:
Video demuxing and decoding
Video presentation
For the first, I would use ffmpeg (my favourite), but other possibilities are also SDL and xine. For the second, I suggest OpenGL (my favourite... :P), but probably SDL is more appropriate, since you could already use for video decoding.
Surely there are tons of libraries to develop video application. You have to choose.
Note that mentioned libraries may be written in c/c++, and indeed for using them you have C# bindings for calling library routines. You should prefer libraries already exposing C# bindings. The TAO Framework (on sf.net) has already ffmpeg bindings, but probably it won't be updated anymore, and SDL probably have them.