CodingGetting into it

 

Press Ctrl+Enter to quickly submit your post
Quick Reply  
 
 
  
 From:  Oscarvarium (OZGUR)  
 To:  ALL
40602.1 
As someone with almost no programming experience and with a view to hopefully (eventually) being able to do some games programming at some point, is there any good place to start? I'm fairly serious (or at least sleep-deprived serious) about wanting to actually learn it as a skill as opposed to looking for quick tutorials, and I've been looking at the courses available here but it's difficult to make much of a judgement on them with so little knowledge.

I'm not looking to code my own engine from scratch or anything insane like that, just to be able to make something relatively simple in an existing engine (and actually understand what I'm doing, which is where every tutorial I've ever tried has fallen down) and then build things up from there as I learn more. Any recommendations for which languages are useful, and any really good resources for learning them? I'm aware that it's good practice to start with C/C+/C++/C#/Type C negative, but is it a problem to jump straight into scripting languages considering I'm not looking to undertake any kind of massive projects?

I'm typing this while still awake at 6am with a lot of stupid shit on my mind so I'll probably expand more tomorrow.

Also, I can't think of a signature, any ideas?
0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Oscarvarium (OZGUR)     
40602.2 In reply to 40602.1 
You're going to need to get a grounding in general coding stuff first of all. Forget about C and C++, these days they're for the people who want to make the game engines rather than the games.

C# in combination with Unity3D is worth aiming at. But I think if you start there you're just going to learn Unity rather than coding.

I'd very strongly recommend starting with Lua and using Love2D which is a really nice cross-platform, hardware accelerated game engine. Lua's a lovely language which will give you a solid grounding in a lot of coding principles. And Love2d's good enough that you can actually make proper games in it - it's not simply a learner's tool. It has very good documentation in its wiki and it's all very self-contained. Easy to distribute stuff you make, too.

And when you're comfortable with the way a game flows as a program you can decide where to go next. Or you could stick with Love, there's no downside really unless you want to do something 3d.

I'd avoid Python/Pygame. It gets recommended a lot for beginners but it's comparatively disjointed/disorganised, has fucking awful documentation and distributing stuff is a pain. And Python's a bit too weird/idiosyncratic compared to other languages so less of what you learn will be transferable.




0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Oscarvarium (OZGUR)     
40602.3 In reply to 40602.1 
Oh and Javascript + Canvas (i.e. 'HTML5') might be worth looking at, too. 

Upsides: Javascript's a very flexible language. Accelerated 3D is an option (once you know what you're doing). It'll run on absolutely everything from phones to Linux PCs. And HTML5 games are probably the future.

Downsides: Javascript being such a flexible language means there's a million ways to do any one thing. Documentation is poor/dispersed and... it'll just be more of a struggle than Lua. Learning Lua first would make transitioning to Javascript piss easy though.

So yeah I recommend Lua/Love first.

0/0
 Reply   Quote More 

 From:  Monsoir (PILOTDAN)  
 To:  Drew (X3N0PH0N)     
40602.4 In reply to 40602.2 
Agree about Python, I still don't really understand. I do get on well with C# nowadays, though.
0/0
 Reply   Quote More 

 From:  Ken (SHIELDSIT)  
 To:  Oscarvarium (OZGUR)     
40602.5 In reply to 40602.1 
My ADD is bad today, I didn't read your whole post but I think/hope I got the general idea.  I recently decided that I and Tanner would learn how to program for XBox and Windows Phone.  I haven't started anything yet, but I do have all of the stuff needed to do it.  You are welcome to any of it (no idea if it's stuff normal people would have to purchase or not) I got from my MSDN account mostly.  I also have a pretty big shit pile of ebooks/pdf's to get started.  If you are interested let me know and I can share it with you.
-----------------------------------------
Hello, this is feds. What we are speak is truth!
We also offer great deals on online backup!

0/0
 Reply   Quote More 

 From:  Oscarvarium (OZGUR)  
 To:  Drew (X3N0PH0N)     
40602.6 In reply to 40602.2 
That sounds absolutely ideal, cheers! I've heard a lot of good things about Lua.

Is the wiki/tutorials a decent way to learn the language or is there somewhere else that will give me a better grasp of fundamentals? I hate going through tutorials that will at some point just dump a block of code and say "copy and paste this" without explaining what any of it does.

Also, I can't think of a signature, any ideas?
0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Oscarvarium (OZGUR)     
40602.7 In reply to 40602.6 
Yeah, stick to the wiki and the tutorials linked therein.

Until you're done with them, obviously, then look elsewhere :Y

Also Love comes with a bunch of examples built in which is nice. You can have a look at their code and pull them apart and stuff.



0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Monsoir (PILOTDAN)     
40602.8 In reply to 40602.4 
Yeah I know a lot of people who swear by C#. I think if you can get your head round class based inheritance (which I was never able to do, prototype based makes so much more sense in my head) then it's pretty much perfect. Does all the tedious stuff for you and lets you get on with coding. 
0/0
 Reply   Quote More 

 From:  Matt  
 To:  Drew (X3N0PH0N)     
40602.9 In reply to 40602.8 
Prototype based makes so much more sense in my head. 

Like, seriously? Prototype-based programming isn't even real inheritance </controversial>

doohicky

0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Matt     
40602.10 In reply to 40602.9 
Aye. Also I find it much easier to think in terms of verbs doing things to nouns (i.e. functions acting on data structures (from the outside)) than in terms of nouns containing methods to do things to themselves/other things.

And I like weakly typed languages.

I'm essentially just a terrible coder :Y
0/0
 Reply   Quote More 

 From:  Peter (BOUGHTONP)  
 To:  Drew (X3N0PH0N)     
40602.11 In reply to 40602.10 
Realising that dynamic prototyped-based languages are vastly superior to strict static class-based languages doesn't make you a terrible coder.
0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Peter (BOUGHTONP)     
40602.12 In reply to 40602.11 
Everyone I know who's good at coding tells me that it does :C
0/0
 Reply   Quote More 

 From:  Drew (X3N0PH0N)  
 To:  Peter (BOUGHTONP)     
40602.13 In reply to 40602.11 
(except you (hug) )
0/0
 Reply   Quote More 

 From:  Peter (BOUGHTONP)  
 To:  Drew (X3N0PH0N)     
40602.14 In reply to 40602.12 
I didn't say you weren't terrible. ;)

Most opponents to prototyping seem to be because it's unfamiliar and/or because they don't like/understand JavaScript. (And if it wasn't for JS most people would remain ignorant of the existence of it.)

Of course, if you're working in a decent language, you're not limited to one way or another, and can roll with either classes or prototypes depending on what is most appropriate for the task at hand.
(And if you're working with JavaScript... there's still class-based implementations for it.)


With regards static typing, lots of people like it because it lets them be stupid and gives a [false] sense of security when the compiler succeeds.

The same sort of people will use a 15-20 line namespaced XML file (accompanied by an even longer XSD schema) instead of just using a 1-2 line INI file.

0/0
 Reply   Quote More 

 From:  af (CAER)  
 To:  Oscarvarium (OZGUR)     
40602.15 In reply to 40602.1 
I agree with DROO: learn Lua. It's a nice language, and it'll give you a good foundation to learn JavaScript later if you go that way, as it's sorta like a simplified version of it. Or at least a version without the terrible stuff.

Bonus (maybe): World of Warcraft addons are written in Lua.

And if you learn JavaScript, beware, there are many many sites that advocate terrible practices. Stick to the good parts and you'll be mostly fine, though. Also JavaScript does not belong inside any HTML tag except <script>.
0/0
 Reply   Quote More 

 From:  Oscarvarium (OZGUR)  
 To:  af (CAER)     
40602.16 In reply to 40602.15 
Eww, World of Warcraft...

Any good resources for starting out with Lua? The Love2D wiki links to here and here, do those look promising, bearing in mind I'm starting with essentially no knowledge of basic programming languages?

Also, I can't think of a signature, any ideas?
0/0
 Reply   Quote More 

 From:  graphitone  
 To:  Ken (SHIELDSIT)     
40602.17 In reply to 40602.5 
Have you got a list of the ebooks? If you're still offering i wouldn't mind taking a gender...
0/0
 Reply   Quote More 

 From:  Ken (SHIELDSIT)  
 To:  graphitone     
40602.18 In reply to 40602.17 
I sure do, let me get a list for you.
-----------------------------------------
Hello, this is feds. What we are speak is truth!
We also offer great deals on online backup!

0/0
 Reply   Quote More 

 From:  Ken (SHIELDSIT)  
 To:  graphitone     
40602.19 In reply to 40602.17 
This is what I have pertaining to programming. I also have hacking roomba stuff, Arduino stuff, Home Automation, and Raspberry Pi.  If any of those interest you I can take a shot of those too.
-----------------------------------------
Hello, this is feds. What we are speak is truth!
We also offer great deals on online backup!

Attachments:

0/0
 Reply   Quote More 

 From:  graphitone  
 To:  Ken (SHIELDSIT)     
40602.20 In reply to 40602.19 
Any chance you could wing me the C++ for dummies 5th edition?

I've got the MagPi ezine (all free editions) which is pretty cool for Pi related projects.
0/0
 Reply   Quote More 

Reply to All  
 

1–20  21–25

Rate my interest:

Adjust text size : Smaller 10 Larger

Beehive Forum 1.5.2 |  FAQ |  Docs |  Support |  Donate! ©2002 - 2024 Project Beehive Forum

Forum Stats