UI design and programming.
Could you give an idea of programming languages and API's that are being used for UI? Can you point me to such a toolkit? Are art skills necessary?
The .Net platform, specifically Windows Forms is, IMHO, the best way to create windows user interfaces. If you want to be cross-platform, you could try something like qt of Java. If you want a '3d Game style' interface, tough there is a few offerings, I've never heard anything good about them.
As for art skills, it really depends what you want to do...
As for art skills, it really depends what you want to do...
Sometimes its best to code your own UI if you need platform independency. I'm currently working on one for my project right now (done in C++) as all the toolkits I looked at didn't seem like they would fit.
Are art skills necessary?
I would say, if you're doing something professional, but you could do the UI with primitive shapes as well.
3dguru,
When you say UI, are you referring to in-game UI or application UI?
In-game UI comes in the form of overlays, HUD's, console buttons, in-game menus, etc... In-game UI is generally done as 2d quads rendered over top of the game rendering. Hotspots or active regions are then checked for events such as mouse clicks, etc... If you're looking for a free example, I believe the Ogre3D Rendering API has an in-game UI example. In-game UI is generally coded in whatever language the game itself is coded in. As well, to make in-game UI look good, some art skills are generally required.
As for application UI - things such as world editors, or external tools - Game companies have traditionally used MFC up until the last year or so. During the last year the industry has seen a surge towards the .NET Framework. The .NET defacto language is C# and is much easier to work with than the other .NET languages. However, if you're very comfortable with C++ you can use Managed C++. Though MC++ is not for the faint of heart. Visual Basic is another option...but well...never mind. =) Hope this has been helpful! Cheers!
When you say UI, are you referring to in-game UI or application UI?
In-game UI comes in the form of overlays, HUD's, console buttons, in-game menus, etc... In-game UI is generally done as 2d quads rendered over top of the game rendering. Hotspots or active regions are then checked for events such as mouse clicks, etc... If you're looking for a free example, I believe the Ogre3D Rendering API has an in-game UI example. In-game UI is generally coded in whatever language the game itself is coded in. As well, to make in-game UI look good, some art skills are generally required.
As for application UI - things such as world editors, or external tools - Game companies have traditionally used MFC up until the last year or so. During the last year the industry has seen a surge towards the .NET Framework. The .NET defacto language is C# and is much easier to work with than the other .NET languages. However, if you're very comfortable with C++ you can use Managed C++. Though MC++ is not for the faint of heart. Visual Basic is another option...but well...never mind. =) Hope this has been helpful! Cheers!
Yeah, as the above poster said, if you mean application UI (I call them game tools, like map editors and such), then I highly recommend C#. I took a course in it, and I made a full version of solitaire in about 8 hours. A full GUI windows app. What I'm trying to say is that Forms, buttons, dialogs, ... are all drag-and-drop in C#, much easier than C++, IMHO. Also, its great when the speed doesn't matter, like for a map editor.
Quote:Original post by 3dguruAny OO language is ideal for UI development. For GUIs, Cocoa/OpenStep/GNUStep is the ideal API/Framework (and has been for the last 20 years). Java Swing and .NET Forms are getting there. There are hundreds if not thousands of GUI frameworks out there for all kinds of languages. Pick the one that best suits you.
Could you give an idea of programming languages and API's that are being used for UI? Can you point me to such a toolkit? Are art skills necessary?
Quote:Any OO language is ideal for UI development. For GUIs, Cocoa/OpenStep/GNUStep is the ideal API/Framework (and has been for the last 20 years). Java Swing and .NET Forms are getting there. There are hundreds if not thousands of GUI frameworks out there for all kinds of languages. Pick the one that best suits you.
Actually, Cocoa wasnt released until 2001 and Gnustep began in 1994/1995 along with OpenStep. All based upon NeXtStep, which was released in 1989. ( NeXtStep is 15 years old).
But its important to point out that Cocoa is (to the best of my knowledge) only available on MacOS X, and GNUStep/OpenStep are mostly supported on Linux. Neither of which shows up much in Windows UI development. Which IMO makes it difficult to call GNUStep "ideal".
What are the options if your normal programmiing language is c++, (and you don't want to use mfc), could you use managed c++ for the ui then normal c++ for the rest? At the moment I have been doing everything with just the win32 API functions and the vc 6 resource editor. Someone mentioned WinForms is used in .Net, how hard would it to be to use WinForms then still do the rest of the code in C++?
Jwalsh,
What do you mean with "Visual Basic is another option...but well...never mind."? It is not that good, fast? Thanks.
What do you mean with "Visual Basic is another option...but well...never mind."? It is not that good, fast? Thanks.
Quote:But its important to point out that Cocoa is (to the best of my knowledge) only available on MacOS X, and GNUStep/OpenStep are mostly supported on Linux. Neither of which shows up much in Windows UI development. Which IMO makes it difficult to call GNUStep "ideal".I was referring to the OpenStep/Cocoa API, which GNUstep mostly implements, and the developer tools (Interface Builder). OpenStep is ideal in that if I was going to create a GUI on Windows or Linux, I would prefer an OpenStep-based framework. I wouldn't call GNUstep an ideal implementation. It is in need of some serious TLC and code auditing. Still, it's cross-platform (in that it works on 32-bit Linux and 32-bit Windows).
... and thanks for correcting the dates =)
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement