The Daily Click ::. Forums ::. Non-Klik Coding Help ::. different programming language
 

Post Reply  Post Oekaki 
 

Posted By Message

Chloe Sagal

under the influence of FUN

Registered
  19/02/2009
Points
  607

Orange
9th March, 2009 at 23:37:06 -

lol! thats is the best!

 
Patreon: http://www.patreon.com/chloesagal
Twitter: https://twitter.com/ChloeSagal

Eric Lism



Registered
  29/03/2009
Points
  51
30th March, 2009 at 10:45:05 -

C, C++ and C# are all good candidates for programming games however in general terms /all/ of them are pretty bad first languages, for a first language, most people reccomend python (can't say more, I have little to no experience in it myself), Perl (same again), Ruby (the new RPGMakers scripting system is based on Ruby, and it is pretty powerful) and other such semi-interpretted languages. Personally, I think if you get some experience with clickteam's products you'll also gain quite an insight into how game programming works in just about any language, the only exceptions being the actual rendering, taking input, and dealing with image and sound files; in other words: the really hard parts.

Others have mentioned Allegro, which is (iirc) a directX based game library, removing the difficulty of the harder parts that I mentioned, however when I tried to use it myself, I didn't get along with it, though that may have beeen due to lack of experience at the time. You can of course tinker with the directX SDK directly, which is still pretty powerful, but dealing with filetypes will then become quite painful, though I'm sure that there are many extension libraries that could aid you with that. As far as I know, directX SDK and allegro work with C, C++ and C# equally well.

If you are really into your open source, or would at least like to see your games running on linux, then i reccomend using OpenGL, which while it lacks a little in power compared to directX, I've found it to be a hell of a lot easier to use, as long as you don't touch the GLUT, which removes most of your event flow control, even if it does handle some of the more rediculous OS specifics of using openGL.

Just to get where I'm finally going: I would reccomend openGL with a library called SDL (Simple DirectMedia Layer) or even SDL on its own, though that can't be hardware accellerated. SDL neatly deals with creating a screen context to draw to, keyboard, mouse, joystick, and has extensions for network and advanced image handling (where advanced is anything other bitmaps), and the main selling point, it works in C, C++ and /as far as i know/ C#.

As a small aside: C# does work on linux, through a project called Mono, though it lacks the same level of support (no XNA, XNA is a pretty good bet for game making as well)

Reccomended reading: K&R2, aka The C programming language, 2nd edition by Kernighan and Ritchie.
for openGL, there are the openGL Red Book (practically a learning/tutorial book) and Blue Book (reference manual), both available online, as an old edition.

Hope this wasn't too much information!

 
n/a

Cecilectomy

noPE

Registered
  19/03/2005
Points
  305

Has Donated, Thank You!VIP MemberWeekly Picture Me This Winner!Cardboard BoxGhostbuster!Pokemon Ball!ComputerBox RedSanta HatSnowman
I am an April Fool
30th March, 2009 at 21:35:26 -

"Others have mentioned Allegro, which is (iirc) a directX based game library, removing the difficulty of the harder parts that I mentioned, however when I tried to use it myself, I didn't get along with it, though that may have beeen due to lack of experience at the time."

your iirc is wrong. it is not directx based. if iirc it is a wrapper library. when compiled on a windows platform it uses directx. when on a linux or unix like platform it uses opengl. and etc etc on other platforms. which is how it is portable. if it was directx based it would be limited to only windows.

"If you are really into your open source, or would at least like to see your games running on linux, then i reccomend using OpenGL, which while it lacks a little in power compared to directX, I've found it to be a hell of a lot easier to use, as long as you don't touch the GLUT, which removes most of your event flow control, even if it does handle some of the more rediculous OS specifics of using openGL."

or you can use allegroGL wich makes it even easier. or even SDL's openGL capabilities.

"Just to get where I'm finally going: I would reccomend openGL with a library called SDL (Simple DirectMedia Layer) or even SDL on its own, though that can't be hardware accellerated. SDL neatly deals with creating a screen context to draw to, keyboard, mouse, joystick, and has extensions for network and advanced image handling (where advanced is anything other bitmaps), and the main selling point, it works in C, C++ and /as far as i know/ C#."

its funny as i just replied to the other post saying NOT to use sdl if you have the choice between sdl and allegro. sdl is not as easy and not nearly as neat and tidy as allegro. limited built in sound capabilites (SDL_Audio. for the real good stuff you'll have to use the addon library SDL_Mixer), no built in routines for primitives, no high level video functions (have to use the structs and functions given to actually build your own complete routines), no built in text routines (have to code your own bitmap routines for bitmap fonts, or use SDL_ttf addon library for use TrueType Fonts and drawing text to a surface). if you arent concerned with super portability use allegro. its portable enough (windows, mac os, linux, unix, BeOS, etc). sdl is even more portable at the expenses i just listed.

"You can of course tinker with the directX SDK directly, which is still pretty powerful, but dealing with filetypes will then become quite painful, though I'm sure that there are many extension libraries that could aid you with that."

i would strongly suggest that directx ONLY be used to tinker. no one should ever dream of using directx when there are better options. use a library that uses directx but using directx plain is horrid. its extremely unportable, and a monstrosity of a thing to code with.

 
n/a

Eric Lism



Registered
  29/03/2009
Points
  51
31st March, 2009 at 01:43:00 -

I stand corrected. As I said, its a very long time since I looked at allegro, and I had forgotten entirely about allegroGL. As for the lack of high level primitives, you are of course correct, and those primitives are very useful for someone using a 'true' programming language to make a game the first time round, however in the past I've found such systems too restrictive (I admit, I'm speaking in general terms here, its been too long since I've tried any such library to give an example) hence my current project to code a set which are to my own liking. I accept that my liking != all other peoples, but you never know, someone might find the work I do interesting.

I think I'm going to have to go take another look at Allegro to see how much it has changed (or at least, my opinion of it has changed) since I last used it.

Also: chill dude, I don't consider my opinions fact on any level, and nobody is perfect

 
n/a

Cecilectomy

noPE

Registered
  19/03/2005
Points
  305

Has Donated, Thank You!VIP MemberWeekly Picture Me This Winner!Cardboard BoxGhostbuster!Pokemon Ball!ComputerBox RedSanta HatSnowman
I am an April Fool
31st March, 2009 at 02:22:57 -

this is me chill

im just an autocorrection bot. its what i do

you are right. sdl being so low level it gives you a lot more freedom to make everything how YOU want it. except it kind of defeats the purpose of being a media library. imo anyway.

i find its title highly ironic. SIMPLE directmedia layer, it being one of the more complicated libraries to use for games n such


 
n/a

Eric Lism



Registered
  29/03/2009
Points
  51
31st March, 2009 at 02:47:41 -

Maybe the simple is not to imply it is simple to use, but that it in itself, is simple. You gotta admit: its the truth

I'm a bit of a control freak when it comes to programming, I loath using libraries for *anything* that I believe I can program for myself (I've written image loaders for just that reason, it was... boring[and aducational]) because of this, when I /do/ accede to using a library, I only want it to take control away from me for as far as it has to to get what I want done. SDL is perfect for this for me. *shrugs*

When I finish my university course I'm intending to become either a low level programmer, or a game engine programmer, so I feel its useful for me to learn everything I can which is related to this.

@miss chloecakes: best reccomendation is pick something pretty simple (say graphical tic-tac-toe) and code it in a bunch of different languages, with a bunch of different libraries. which one you like the best will soon become apparent, so get some experience in that, *then* think about what the big shots are using, and port your knowledge

 
n/a

~Matt Esch~

Stone Goose

Registered
  30/12/2006
Points
  870

VIP Member
3rd May, 2009 at 05:53:15 -

If I had to choose between C# and Java I would pick Java any day. Getting things to run cross-platform is a pain with anything Microsoft. Ok sure you get some shiny tools to use but actually Java has more potential since you can write applications for the majority of devices, (like mobile phone games on the J2ME platform) and you can embed applications into webpages.

 
http://create-games.com/project.asp?id=1875 Image


Billybobjoe198



Registered
  12/01/2007
Points
  221
4th May, 2009 at 07:23:39 -

C# is supposedly where all game and program development is heading, you're probably going to be best off learning that.

 
n/a

Nuklear41

Possibly Insane

Registered
  12/01/2008
Points
  2395

VIP MemberPS3 OwnerWii Owner
10th May, 2009 at 20:44:12 -

!!! What are you doing back Billy?!?!?!

 
Image

Muz



Registered
  14/02/2002
Points
  6499

VIP MemberI'm on a BoatI am an April FoolHonored Admin Alumnus
20th May, 2009 at 15:00:20 -

lol, Eric, what are you doing on a Click site if you like low-level programming? Klik is as high as it gets

A bit hard to get a job as one, though. It's pretty darn obsolete, though i suppose if u took electrical engineering, you could do some Assembly on microprossesors (the fat 8051s and stuff).

professional game programming is muhc tougher than it looks though, have to deal with thins like 3D vectors and stuff. I suppose mobile phones and portable game systemsar e quite low level too.

Edited by Muz

 
Disclaimer: Any sarcasm in my posts will not be mentioned as that would ruin the purpose. It is assumed that the reader is intelligent enough to tell the difference between what is sarcasm and what is not.

Image

Eric Lism



Registered
  29/03/2009
Points
  51
3rd July, 2009 at 17:22:43 -

Muz: aside from the very early stuff I did in various incarnations of BASIC most of my early 'programming' experience is from klik products (and the RPG maker series) so I still have a soft spot for them, and this sit. Even now, MMF2 is damn useful for knocking an idea in to shape at high speed, which is often a good idea if you have an idea that may *or may not* be fun in actuality.

As for low level, I'd rather avoid ASM as it's a pain in the ass, but I enjoy working in C and C++. All the maths involved in 3-D stuff is slightly daunting, but I'm studying maths at university, so I'm not exactly worried about it As for jobs in the games industry, they exist. I've had a few friends recently getting interviews with codemasters amongst other companies, and I know the lead programmer of a local game studio (a slightly sucky one, but never the less) who said they often want to pick up a new junior programmer. I figure I'll be all set when I'm ready to go.

 
n/a

CodeCannon

of DringleTopia

Registered
  13/04/2006
Points
  208
4th July, 2009 at 19:24:13 -

I recommend C++, OpenGL and wxWidgets if you want your game to look nice across different platforms. wxWidgets is well organised and easy to use. You might want Orge3D for fast 3D graphics, and Blender/GIMP to create those graphics.

 
_
CodeCannon
http://www.dringletopia.da.ru/
   

Post Reply



 



Advertisement

Worth A Click