View Full Version : Programming, what language to use
DELOCH
09-16-2010, 06:12 PM
I have used many programming languages in the past to a decent extent and keep struggling in what is the best for the future use.
I like java but most of its utilities don't seem viable for use, buttons cant synchronize with game canvas properly and the look and feel has to be changed.
As for c++ and such, it seems like its solely tied to the operating system api and becomes outdated quickly. Also, most books that teach c++,c and other direcly compiled languages hardly go farther than making a simple window, let alone creating custom buttons, linking clients to servers, and more complicated core issues.
Any advice would be helpful, thanks ahead of time.
Spookster
09-17-2010, 01:02 AM
Seems your issues have to do with GUI's and not necessarily the language you are using. You can always use other graphics api's/toolkits. Qt is cross platform. We use C and C++ to build apps with it that run on Windows or Unix/Linux.
DELOCH
09-17-2010, 01:11 AM
So I can make custom sophisticated interfaces with Qt? Does that work with Java3D, and other graphics interfaces?
Also, Java3D and such appear to be a bit behind on the utilities available, is there anything to make them more viable for usage in terms of making video games, 3d graphical representation of math, physics, and more complex particle effects?
Spookster
09-17-2010, 09:05 AM
I've never really liked the graphic toolkits Java provided. They always seemed to be lacking. The only thing it had going for it back in the day was the ability to do graphics crossplatform but now with Qt it can't even compare. And yes you can make very sophisticated graphics interfaces with Qt. Especially with their latest versions. I don't think you are going to find one solution for every possible type of GUI you want to create. You need to choose the one that does what you need for a particular project. Qt is a good all around for most graphics needs.
DELOCH
09-18-2010, 09:33 PM
How about Java3D, is this the best utility I can use, or is there something that is more up to date?
Spookster
09-19-2010, 12:14 AM
How about Java3D, is this the best utility I can use, or is there something that is more up to date?
Is this the best utility you can use for what? Like I said it really depends on what you need to do. I haven't used Java3D nor any Java graphics interfaces since probably 2003.
DELOCH
09-20-2010, 01:45 AM
I want to make 3d games and visualizations of physics and math.
djh101
09-21-2010, 12:03 AM
I've seen guides on 2d and 3d C++ programming, you just have to look around. You could also take a class and not only will you learn your programming skill but have a professor to help you. Or you could find a mentor elsewhere- I have a friend who helps me with C++. If you're really smart, you could just make the graphics from coding scratch if you can formulate some algorithms for displaying 3d graphics and changing them on rotation- the data for the structure is basically stored as it exists and then it is manipulated on the screen to show it as it should appear in your point of view.
DELOCH
09-21-2010, 08:38 PM
I do not have any issues with the java language, but I want to know what alternatives there are to Java3D.
I prefer Java over others, im just wondering if there are any classes that are actually viable for commercial development. Defaults don't quite cut it in comparison to newer technologies, and I don't want to code things by hand only to find out that it's already been done.
BobbyD
09-24-2010, 07:38 AM
If you care about performance, e.g. you want to do graphically intensive things that would be pushing current hardware (as opposed to graphically simple things that would run easily on 10 year old hardware), then you almost need to dedicate to C/C++ (and probably some assembly)
Simply put, most other languages and platforms have significant overhead, and this all adds up when you are doing anything computationally intensive. Java is one of the worse in this area (probably next to .NET) - it is the cost of all that elegant structure - to simplify things, you need to build layers of restrictions and sacrifice flexibility.
Coming from Java, it can be difficult dealing with the messy ... archaic, and mish-mash environments that surround older languages like C/C++, and interfaces like DirectX or Open3D... but ultimately if you are trying to engineer a car and want to change things at the foundation level, you need all those pipes and gears and whistles, no matter how dirty it is....
There's really more books on 3D and graphics programming for C/C++ than for Java, they're probably just more complex than you're used to, again coming from the breezy world of Swing and Java3D. There's no shortcuts to doing this sort of stuff...
DELOCH
09-25-2010, 07:40 PM
Any reccomended books for someone who just finished C++ primer and understands all basics as well as very simple windows api functions that make a simple window. I don't know anything beyond that and don't know what books to buy to continue in this field.
I'm looking for something that continues on with directX, windows API, and custom user interfaces - custom title bars, custom buttons, etc.
I can't get any material on those and that's why i gave up on C++.
What is the best environment for simple standalone .exe applications. Are code::blocks good or visual studio 2010, or c++ dev?
Does it make a difference?
Spookster
09-25-2010, 08:01 PM
Any reccomended books for someone who just finished C++ primer and understands all basics as well as very simple windows api functions that make a simple window. I don't know anything beyond that and don't know what books to buy to continue in this field.
I'm looking for something that continues on with directX, windows API, and custom user interfaces - custom title bars, custom buttons, etc.
I can't get any material on those and that's why i gave up on C++.
Where is the best place to code C/C++, visual studio empty project? Should I upgrade to VS2010?
I always find myself going to MSDN for Win API reference material and guides for any Windows related development I do.
http://msdn.microsoft.com/en-us/library/ee663300(v=VS.85).aspx
DELOCH
09-27-2010, 02:21 AM
wow, msdn has become much more useful for reference
im pretty sure they only had all the functions in it before, theres actually tutorials now.
Nice!
But still, i'm on trial version of MSVC2010 and I got no alternatives at this moment. Are there any viable alternatives, or a student edition? i'm studying at ryerson and i can't spend 344$ on the professional version.
Spookster
09-27-2010, 04:02 AM
wow, msdn has become much more useful for reference
im pretty sure they only had all the functions in it before, theres actually tutorials now.
Nice!
But still, i'm on trial version of MSVC2010 and I got no alternatives at this moment. Are there any viable alternatives, or a student edition? i'm studying at ryerson and i can't spend 344$ on the professional version.
Many schools have licensing agreements/programs with Microsoft so students can get Microsoft based development software and tools for little or no cost. You should check with your school. Many employers also have these types of programs with Microsoft usually called EPP Employee Purchase Program or HUP Home Use Program. It cost me $10 to get a license for MS Office 2007 to use at home while I am employed at my current employer. I can upgrade to Office 2010 for another $10.
DELOCH
09-28-2010, 02:53 AM
As for java GUIs, is it wise to make custom components by implementing Panel class and adding listeners, graphics to it?
brad211987
09-28-2010, 06:35 PM
Many schools have licensing agreements/programs with Microsoft so students can get Microsoft based development software and tools for little or no cost. You should check with your school. Many employers also have these types of programs with Microsoft usually called EPP Employee Purchase Program or HUP Home Use Program. It cost me $10 to get a license for MS Office 2007 to use at home while I am employed at my current employer. I can upgrade to Office 2010 for another $10.
To add to that, Microsoft has a site for students too: https://www.dreamspark.com/default.aspx
They verify your student status and then you get access to quite a few products completely free. There are also express versions of their development tools for free as well.
gcmax
09-28-2010, 10:13 PM
c++ is definately the answer to reducing overheads but using it will come at a price of having to learn in depth and maybe study full time. I can't say much on c++ because I've only ever created a dos calculator but we can all see it's benefits in applications. However, there are many questions you have to ask yourself first;
What knowledge do you have on 3d and how familiar are you with the many uses of directx for shaders, particles and sound?
Is this game for windows?
Is this game for consoles like xbox360, ps3?
Is this game for mobile devices like Apple's iPod?
Is this game for internet only and flash based devices?
Are you making a game for multi platforms with online servers?
For microsoft c++ programming you might want to check this out... http://fuse.microsoft.com/project/kodu.aspx It's a visual language for games...
Or you may want to download unreal editor sdk (http://www.udk.com/)and mess with the unreal scripting language.
ps: you can use a 3d, in application scripting language and come up with a game engine. For instance, I've been using 3ds max (http://usa.autodesk.com/adsk/servlet/pc/index?id=13567410&siteID=123112)for a number of years and the built in maxscript utility can perform many different functions.
vBulletin® v3.8.2, Copyright ©2000-2012, Jelsoft Enterprises Ltd.