


Ask Slashdot: Tools For Teaching High School Kids How To Make Games? 237
First time accepted submitter nzyank writes "The other day I bravely (foolishly?) volunteered to conduct a video game development workshop at my boys' HS. This in Smallsville, Vermont with an average graduating class size of about 20. The idea is to meet once a week and actually create a game, start to finish. It will be open to would-be programmers, designers, artists, etc. I worked on a bunch of AAA titles back in the '90s, but I'm pretty much out of touch nowadays and I'm trying to figure out the best approach. The requirements are that it has to be one of either Windows/XBox or Android, since those are the platforms that I am current on. It has to be relatively simple for the kids to get up and running quickly, and it needs to be as close to free as possible. Teaching them to use stuff like Blender, C#, C++, Java, XNA, OpenGL and the Android SDK is probably a bit much. I was thinking of something like the Torque Engine, but they want $1000 for an academic license, which is never going to happen. I simply don't know what's out there nowadays and could really use some suggestions."
Best suggestion is Kodu (Score:5, Informative)
However, MS Research also has come up with Kodu [microsoft.com] which is basically XNA and C# in even more suited package for kids. It's really easy to use and you can actually modify your game a lot. It's fully interface based, so there is no need for coding, but it is still fairly powerful and the best of all, you see
Re: (Score:3, Informative)
Re: (Score:2)
I have to second Kodu. Very minimal learning curve, easy to make relatively fun games in a short amount of time. Options like Unity, Torque, and XNA are reasonable if you have the time to invest in teaching them programming on top of teaching them how to make a game (or need the advanced features, such as cross platform dev, which it sounds like you don't).
With Kodu, you can focus on the game development and/or production, rather than the programming behind it. There are some limitations, such as being s
Re: (Score:2)
Re: (Score:2)
In my first year high school programming class we learned to program in BASIC by creating games. We started off simple with games like black jack and bingo, but by the end of the year some of the more advanced students had progressed to the
Re: (Score:3)
I think a bigger disservice is in fact focusing on code. Instead focus on what are the elements that make a good game? What makes for a good user interface? Physics (ie, reality) based or fantasy based and what are the difficulties of both? It is always better to think first (a lot) on what it is you want to accomplish than to jump in and start coding.
Re:Best suggestion is Kodu (Score:4, Informative)
You get the same thing out of Unity3D + C#. with the added bonus of it working on OSX, and it's free.
Re: (Score:2, Informative)
It is by far one of the most straightforward applications for game development. The demo scene loads a fully completed level. Press the play button and the map is playable. Press pause and you go back to editing mode. Move some stuff around add or delete lights and press play again to see your changes. There are sta
Unity has a lot (Score:2)
It gives immediate results and not only shows an idealized programming space, but one that game and sim developers actually use. It allows you to program in JavaScript also, which is the new intro programming language in CS 101.
Re:Best suggestion is Kodu (Score:4, Interesting)
I say you start in the wrong end. When I was younger, high school kids made demos in assembly language. Quite impressive ones too. Without toolkits, IDEs, or any kind of pre-chewed food.
IMNSHO, schools should always teach low level fundamentals, never high level implementations, no matter what classes. Because the latter will change, while the fundamentals will still be valuable ten years from now when they hit the job market, as they can be applied to any high level implementations.
This teaching kids solutions that will be outdated by the time they graduate, and not the background needed for them to derive answers themselves, is, I believe, part of what's wrong with schools today.
Re: (Score:3)
How much does Microsoft pay you? Considered getting a real job?
What is your point? It seems that he made a very good suggestion, it sounds like Kodu is just what he's looking for:
Kodu lets kids create games on the PC and XBox via a simple visual programming language. Kodu can be used to teach creativity, problem solving, storytelling, as well as programming. Anyone can use Kodu to make a game, young children as well as adults with no design or programming skills
And there's a free download. If you have a better suggestion, go ahead and suggest it, but don't claim he's a microsoft shill by pointing out that MS has a product that does exactly what he asked for.
Re: (Score:2)
"Unfair advantage?" Whatever gave you the idea that third party comments posted under a Slashdot article should be expected to be fair? What is your definition of fair?
Oh. I see your definition
Unity3D (Score:5, Interesting)
Unity is pretty much the best option. It is cross platform, easy to develop in, and has everything you need to get started fast. The documentation is excellent, the community is supportive and the entry-level version is free. Unity [slashdot.org]
Re: (Score:3)
Boneheaded malformed link. *sigh*. Here: Unity [unity3d.com]
Re:Unity3D (Score:5, Interesting)
Re: (Score:3)
I *work* with Unity3D. I love it.
For our 3D projects in the past we've been the long suffering slave of Shockwave 3D. Now all of a sudden our portfolio doesn't look like it's stuck in 2001. Plus, with Pro, (And about $2000) we can port to Droid/iOS in no-time, using 99% of the same source code.
Re: (Score:2)
oh, and yeah, Source control is a bitch, even with pro. Most of my time is spend ensuring our last commit didn't screw over our prefab associations.
3.5 is supposed to give better SVN Control though.
Re: (Score:2)
Javascript - for both Unity3D and HTML5/Webkit/CSS (Score:2)
Teach them a little bit about "objects" and then using
Re: (Score:2)
In my experience, code is fine with Unity, I've not had any problems with it mangling that. It's the Textures/Prefabs/Scenes/Shaders and the way they link to the in-game objects that gets mangled by source control. So after a botched commit you might end up with those new objects you added being untextured, or having the components unlinked.
Re: Unity version control (Score:2)
lol - trolling the fineprint (Score:2)
A workshop that meets weekly and they "actually create a game, start to finish" without programming, but programmers can work on it.. Platform specific, but excluding
Re: (Score:2)
In what way? Unity's been recommended by a whole bunch of people and fulfils everything
Unity is designed with the Programmer and the Designer in mind
out of the box it works on Windows, and with the Dev license and the Android Build license it does XBox and Android (granted, that's ALOT of cash though)
That is video game development (Score:2)
Apart from the VCS stuff, learning about objects/events/behaviors is very much part of a video game development workshop. You cannot develop games without at least understanding some aspects of these...
Unity is by far the best choice because then it will not matter if his students have Windows/Macs/iPhones/Android. I mean seriously, what is he going to do when he starts and XNA class and find that 80% of the class do not have the hardware needed?
It's either Unity or pure javascript/HTML5 canvas...
Re: (Score:2)
So, even the name for that horrible Unity3D of Ubuntu, was stolen? Doh, and I used ubuntu for so long, and miss it so much.
OpenSimulator (Score:2)
Sounds cool, but not for the purpose at hand.
javascript tetris (Score:4, Insightful)
Re: (Score:2)
Right on. HTML+Javascript is a great place to start. It's simple enough that you can see results right away. You can put it online and then play it anyplace to show friends and family what you're making. You can easily tinker with it after the class is over. 2D games will give a far quicker reward for their efforts. The problem space is far smaller so experimentation is more likely to have understandable results. Scripting/running is more straightforward than compile/debug. These all result in maximizing fu
Re: (Score:2)
Re: (Score:2)
I agree with the JavaScript/HTML approach. I would also point out the some what language similarities between JS and the likes of C++/Java.
I was also going to mention there's a HTML developer-oriented editor already included with office that few actually know is even there, called Microsoft Script Editor. Default located at:
"C:\Program Files\Microsoft Office\OFFICE11\MSE7.EXE"
It's actually pretty good even if it does seem to default to VBScript for some reason. It's kind of like Visual basic (drag but
Scratch (scratch.mit.edu) (Score:5, Informative)
Check out http://scratch.mit.edu/ [mit.edu]. It sure looks like kiddy stuff at first glance, but its awesomeness cannot be described, you have to try it yourself.
Since scratch takes care about all the nitty-gritty details, you can focus on actually *designing* good games, which is awfully hard.
No good ideas - (Score:2)
But you can't use something that must be licensed for them. These kids need to learn a skill they can go home and practice - if any of them are going to use the skills they learn from you, the tools required had better damn well be Free and Open to them.
Re: (Score:2)
Re: (Score:2)
That's a good suggestion if the goal is to teach them what it takes to combine artwork, levels, and puzzles into compelling gameplay.
Of course it has a first-person shooter bias, and won't be suited to a sudoku or Tetris type of game. And a zero-tolerance school board may frown upon creating a shoot-em-up in class.
Re: (Score:2)
Re: (Score:2)
So why not start with an open source game? Start with ioquake, or now the new iodoom3? http://www.iodoom3.org/ [iodoom3.org] YOu start by analyzing a existing game, and then build on it. The whole concept of open source...
So you really want to bore them to begin with? Analyzing someones existing code is a really tedious work for even existing programmers. On top of that they wouldn't get to imagine and make what they actually do want to make. Your whole suggestion is terrible.
If you want to "build upon it", there are far better solutions, like modding Valve's games. Garry's mod is really fun too. Yes, they aren't open source, but do you really want to draconically push such views on newcomers? Because if you do, then congr
Re: (Score:2)
So you really want to bore them to begin with? Analyzing someones existing code is a really tedious work for even existing programmers. On top of that they wouldn't get to imagine and make what they actually do want to make. Your whole suggestion is terrible.
Really? So you jumped from nothing to high level coding without ever looking at anyone else's code? Wow! That is amazing! I don't know anyone like that. We all learned from looking at other code...
If you want to "build upon it", there are far better solutions, like modding Valve's games. Garry's mod is really fun too. Yes, they aren't open source, but do you really want to draconically push such views on newcomers? Because if you do, then congratulations, you just ruined all the fun from starting programming.
You do know that ioquake and iodoom3 run all the quake and doom3 mods, right? And mod editors, and so on? So you can do all the stuff you want without having to buy a half life for each student, or resorting to pirating it.
Re: (Score:2)
Disagree, the first time I saw C code I was struck by how simple and logical it was
You actually had 'AND' and 'OR' type operations that worked like they should.. using boolean logic in micros BASIC was pretty iffy.
And you can improve on GOTO 180*(i=1)+240*(i=2)+280*(i=3)+....+5420*(i=72)
Re: (Score:2)
if any of them are going to use the skills they learn from you
Now that, that right there, is where you have to decide if you're going to merely provide low level vocational training or provide (higher?) education. Its difficult/impossible to do both, and both are going to have radically different plans, and results. Decide that first. Then pick your toolset.
Re: (Score:2)
Tommy rot. I've known a number of people with both - who did apprenticeships and/or vocational training at 16-18 and a few years later went on to university. Late bloomers, if you like.
Did you get that from the same book that says intelligent people have no common sense?
Re: (Score:2)
But you can't use something that must be licensed for them. These kids need to learn a skill they can go home and practice - if any of them are going to use the skills they learn from you, the tools required had better damn well be Free and Open to them.
I really don't see how licensing would play any role in this. Those kids aren't making games (or apps) to sell them, not yet. Licensing mostly applies to that only. Hell, now a days even Microsoft offers Visual Studio for free if you don't sell the programs created with it.
Re: (Score:3)
The Visual Express versions have no "can't sell" limitation.
Re: (Score:3)
Actually, there is nothing in Visual Studio Express licenses that forbid programs being developed in it being released using any license, open source/free/commercial.
Re: (Score:2)
Most environments offer academic licenses that range from "steeply discounted" to "free as in beer" to "free as in speech". Money shouldn't be the only factor to take into account.
Construct (Score:2)
Gamemaker (Score:3)
http://www.yoyogames.com/make [yoyogames.com]
There is a free version - and paid for. You can code via their visual tool - or on the command line. My 11 year old son makes fine games using this!
Re: (Score:2)
Slashdot def of "game" (Score:3)
The dominant /. mindshare definition of gaming is that it is exclusively 1:1 mapped to 3-d FPS.
If you're willing to break out of that ultra-narrow mindset, there is a possibility of RPGs, text adventures, maybe hex based wargaming, (semi)numerical simulations... A whole world of human computer interaction exists, but only for the open minded.
Reimplement Oregon Trail as a flash game? (try not to get sued)
Supposedly HS kids like vampires and zombie books, so write a text adventure fanfic in the anne rice or twilight universe (try not to get sued). Make all your game lines less than 160 char and play over twitter?
Stock trading game using real stock market data? Or YetAnotherRealWorldFuturesMarketImplementation? Maybe give it a modern twist by implementing it over text messages or whatever?
Hex based wargamer vampire vs zombies? or plants vs zombies? (again try not to get sued)
Actually, "try to write Fing anything without getting sued for copyright and patent violations" might make an interesting and informative meta-game?
Re: (Score:3)
My first thought when I saw this was the Adventure Construction Set [wikipedia.org].
And wasn't Myst [wikipedia.org] originally written in HyperCard [wikipedia.org]?
If you're looking at writing text-based games, there's MudOS [mudos.org] and other MUD/MOO/MUSH engines out there, most of which are free.
Re: (Score:2)
Maybe you could implement a "choose your own adventure book" style adventure entirely in a HTML editor. "click here to go north" links to rm6342.html etc.
Not exactly meeting the degree requirements for AI implementation, but ...
Python + Pygame (Score:3, Informative)
Re:Python + Pygame (& Harvard's free videos) (Score:2)
I was also going to suggest PyGame. I don't know a whole lot about it, but I do know that Python is a great programming language for writing small to medium size programs quickly. It's also relatively easy to learn. I also know that PyGame has a thriving community, and even a zine dedicated to it.
Also, all of the lectures for Harvard Extension's 3D graphics programming class are online for free:
http://itunes.apple.com/us/itunes-u/csci-e-234-introduction-to/id428958018 [apple.com]
It's a bit
Have a look: (Score:2)
Have you looked at Unity? ahref=http://unity3d.com/rel=url2html-1549 [slashdot.org]http://unity3d.com/>
Its free and a lot of the complex underpinnings are taken care of and hidden away. A simple to use scripting language is used to create the game mechanics. I have never used it but I have seen it used for the Global Game Jam.
I would keep away from teaching programming unless the students already have programming skills which I doubt is the case here. Keep it simple.
Not sure about how easy it is to teach (Score:2)
Re: (Score:2)
the biggest problem with Blender is its VERTICAL learning "curve"
If any of y'all think you are a Blender Guru then email me with the subject
BADWOLF BLENDER
and i will send you back a few questions i need answering from somebody that really knows blender.
Re: (Score:2)
the biggest problem with Blender is its VERTICAL learning "curve"
True. If you haven't encountered Blender, imagine a user interface for 3D designed by someone who likes EMACS. The condensed hotkey reference is 19 pages.
Blender's game engine is interesting. Programming is done by wiring together blocks in a graph. You can write new blocks in Python if you want. It's a nice demonstration of the fact that graphical programming does not scale well. I once wrote a program to simulate LIDAR processing for a mobile robot using the Blender game engine. This was Not Fun.
Re: (Score:2)
UDK (Score:2)
Although I wholeheartedly agree with all the people who are going to recommend Unity [unity3d.com] (which is also the platform I prefer), you might be better served with UDK [udk.com] when demonstrating to students. I'd say that Unity is a 3d game engine/platform made for programmers whereas UDK is a 3d game engine/platform made for level designers with support for programmers. You can get a lot of mileage from both platforms without much programming, but UDK is specifically designed so you can create an entire game without one
ALICE (Score:2)
this always seemed to get reviewed highly... I haven't used it as my kids aren't old enough yet.
Racket: Bootstrap (Score:2)
The project you are looking for is Bootstrap [bootstrapworld.org].
Bootstrap is a standards-based curriculum for middle and high-school students, which teaches them to program their own videogames using purely algebraic and geometric concepts.
Bootstrap uses Scheme/Racket and focuses on the algebraic/functional aspects of programming. The teaching materials are freely available online. They even sell "I program my own videogames" T-shirts.
Corona SDK (Score:2)
I suggest the Corona SDK. It uses LUA, supports Box2d Physics and it's easy to work with a tilemap editor like tiled to put everything together. Plus, you only need to buy it if you want to publish or sell your app.
How about 50 bucks? (Score:3)
In fact $49 [impactjs.com].
It's called 'impact' and games like this [chromeexperiments.com] are made with it. [impactjs.com]
Processing (Score:2)
Whatever else...this is a great idea (Score:2)
Don't know what to suggest as tools but...at least the question is being asked. High schools today teach kids to be...users, not creators. Their idea of 'tech ed' is to teach kids to use a recent version of MS Word or Excel. Even the old English class standby has become more about reading stuff that someone else wrote and answering questions about it and much less about writing something new. The high school yearbook class has become all about snazzy software to present graphically-attractive pages rat
It just so happens (Score:2)
I am teaching my nephews how to program during their week off from school. I went with a platform that all households had readily available: Excel. Excel VBA is robust enough to create fun games from the Atari generation, forgiving enough to keep new programmers from being frustrated quickly, and the skills learned will carry my wards into many business environments for years to come. Even if Excel goes away, learning to manipulate data, graphics, and data in a spreadsheet program will be
Why not Blender? (Score:2)
Since you have previous pro game dev experience, you should know the entire crew is divided up into teams by task. Assuming some sort of 3d platform, not all the kids will have equal interest in art, modeling, testing, coding, rigging, etc. Break them up into teams.
Also, don't dismiss the allure of 3d... it pretty much is the main reason we don't all spend countless hours playing sidescrollers anymore, but aside from phones its the only scenario these kids likely know. Even if you just recreated an old 8
Game programming is complex (Score:4, Insightful)
Game programming would be the last thing I would teach to novice kids, as it has several different parts, from low-level hardware-oriented code to networking, high-level scripting, databases and map design, not to mention a non-programming parts like the graphics.
If you really want to create a standalone game I would suggest something simple using Flash. But if you want to get them into game programming (and teach them actual techniques that it needs) get them into modding. There are many games designed to be easily moddable, the instant feedback and success will be a great motivation, and the kids will learn plenty of stuff they can later use.
Re: (Score:2)
If you want to try using a Flash game framework, try something like Flixel [flixel.org].
GameMaker (Score:2)
As someone who's also been roped into the "teach game development" trap, my advice is to stay the heck away from programming and 3D and any other component that requires specialized skills. If you want the kids to actually finish something, then do what you can to make that happen. Not all of them will be programmers or artists, and you don't want to spend all your time teaching those skills. Plus, it's also pretty common for those that can't program (or model) very well to have really huge ideas that fa
Did the same for Middle Schoolers (Score:2)
I did the same thing for a group of middle school students back in 2005 and after evaluating a bunch of graphics and sound libraries, we settled on Basic4GL [basic4gl.net].
Basic4GL is everything BASIC was, except without line numbers and with all the GLUT functionality built in (minus the initialization cruft). It also supports sound, loading a bunch of texture formats, and has the NEHE tutorials ported to it, and runs on VERY low end hardware. Download and run the demos -- you'll be impressed.
The kids did exceptionally
Pygame (Score:3)
I think it would be advisable to start with something 2D, that is simpler to understand and to code. On their first game the kids will have too much to learn, so not making them learn analitic geommetry, lightining, all the tools you'd need for 3D, and lots of other stuff (like "why is my game that slow?") is a good thing. First focus on general programming and basic I/O.
Now, if you take that advice, you'd need a good library for general I/O that is available in a good language for novices. Well, here I can recomend Pygame, on Python.
Python, PyODE and Pyjamas (Score:2)
if you want a physics dynamics engine, you want ODE. if you want a small amount of code (a high bang-per-buck ratio for the students i.e. they get results fast), use python. ODE has python bindings, so you win both ways. there are plenty of example recipes for python-pyode with OpenGL and pygame, which you don't entirely have to "understand", just copy cut/paste just like any other programmer would, and it gets the job done.
now, if you're looking for web-based, i cannot recommend "pure javascript". it's
Don't. (Score:2)
Game programming is a very complex kind of software development, prone to errors (all professional game programmers write hideous, insecure, unportable code with utterly broken networking), and requires massive amount of effort placed into non-programming-related parts of the project (art, music, story).
Teaching something that complex in high school will inevitably degenerate into mucking around with pre-made templates, with no educational value whatsoever. If someone really wants to teach kids programming,
Re: (Score:2)
Re: (Score:2)
awareness of the tools
That's just marketing and seeding the biases, not education.
UDK and a few other options (Score:3)
Speaking as a current indie & AAA gamedev who has built game-related curriculum for 3 schools (middle school through college)...
Because of the diversity of student types (artist vs game designer vs programmer, etc...) I recommend teaching EPIC's Unreal Development Kit (UDK).
The tools are mature and will immediately offer something to every role on a game project.
As for yourself, the UDK uses Unrealscript which is based on a C++/C# syntax.
There is a wealth of knowledge via books and internet tutorials. (e.g., Just typed in "UDK tutorial" in YouTube and received over 4500+ results!)
A nice bonus is that learning UDK is something the kids can actually put on a resume and/or help them get an internship.
Milage will vary with other pre-built gamedev environments.
Below are a few all-in-one-solutions that have editing features, based in a Windows environment:
App Game Kit (AGK) - http://www.appgamekit.com/ [appgamekit.com]
Construct2 - http://www.scirra.com/construct2 [scirra.com]
Game-Editor - http://game-editor.com/ [game-editor.com]
Game Maker - http://www.yoyogames.com/make [yoyogames.com]
Game Salad - http://gamesalad.com/ [gamesalad.com]
Scratch - http://scratch.mit.edu/ [mit.edu]
Good luck!
AGS (Score:2)
Surprised nobody here has mentioned Adventure Game Studio [adventureg...udio.co.uk] yet. It's free, runs on Windows. Ports are available for linux and mac. Some pretty great games have been made with it, including the excellent Sierra classic remakes by AGD Interactive [agdinteractive.com]. If you want something more old school, there is also ScummVM [scummvm.org]. It's mainly used to run old games by enthusiasts, but it can probably be used to develop new games as well.
some tips... (Score:2)
2. You also need something that will enable them to learn how to communicate while doing the work - and if it's interesting enough, they'll work on it more than just in your allocated time, and possibly even do their own things too (see #1).
As a result, it is probably best to use something that is open source. From that perspective, you have a few options:
1. Python - easy to program, an
Measurable Learning Outcomes: Scalable Game Design (Score:2)
Most people speculate about motivational and educational benefits of certain tools and programming activities. We actually measure them. Scalable Game Design, using AgentSheets, teaches kids how to make games starting with simple 1980 arcade games such as Frogger and them gradually move on all the way to modern SIMs like games including sophisticated AI. With middle and high schools all around the US we have a close to 50% participation of girls. And don't think this is just for K-12. The curriculum + tool
paper (Score:3)
Do you want to teach games or programming?
If you want to teach games, the first one should not be a computer game. Make it a board game, a card game or something else that you can create with paper and pens.
Anything beyond that adds complexities that distract from the game design itself. There is very little design-wise in a computer game that you can't have in a board game.
And yes, I am a (hobby/indy) game designer. I've made some board games, a card game, a play-by-mail game, two pen&paper roleplaying games and a bunch of computer games. Largely in that order.
Pygame! (Score:2)
I see a lot of suggestions on how to avoid coding which seem silly to me. High schoolers that are interested in making games are probably smart enough for a little coding, and it'll do them a lot of good. It certainly doesn't even rule out other people (visual and sound design, etc) as often the design takes as much or more time than the coding.
I really like pygame, it's:
a) python
b) fairly straightforward
c) engine-less
d) cross-platform
e) free and requires only a text editor (I like komodo edit for python,
Look at programming boot camps (Score:2)
Look at programming boot camps or summer camps for kids in the same age range, and then see what software they are using:
http://www.internaldrive.com/courses-programs/video-game-camps/ [internaldrive.com]
The above is a two week course aimed at kids: 7-10 | BEGINNER – ADVANCED
Software: Arcade or Platform game using Clickteam® Multimedia Fusion 2 Developer® and Adobe® Photoshop®. Build custom characters in Spore Creature Creator and import them into your game. Take breaks with supervised outside play, s
Free Legos (Score:2)
Contact lego. They might even sponsor the school. The game is Soccer
Re:Games are pretty much complex PROGRAMS (Score:5, Insightful)
Re: (Score:2, Insightful)
No, because that isn't fun and will just drive them away from programming. Nobody picks up a hobby or starts learning about something because of the technical details of it. They start doing it to accomplish or make something they want.
Good!
Then people who should not program would not program.
Re: (Score:2)
Certainly technical knowledge is important, but I don't see how learning it for its own sake is better than learning it on the road to creating something.
Re: (Score:2)
You can't create anything worthwhile if you don't have the knowledge. And you can't obtain such knowledge by chasing a goal that is both narrow and unoriginal. How much accomplishment was provoked by hundreds of millions of kids' dream to become an astronaut? And what kind of people ended up developing spaceships, or even flying on them? Not ones who thought it would be cool to float around in a spacesuit.
Re: (Score:2)
This is more or less bollocks. We all started somewhere. People of my generation didn't learn from experts, because there were damn few experts. The college I went to had been given four Commodore PETs, but none of the teaching staff even knew how to turn one on, and until I and two other students wrote some, there were no programs.
Of course what we wrote was pretty simple and probably pretty bad, but it worked. We created magic. We made the machines do stuff. And for me that staeted a love affair with sof
Re: (Score:2)
Do you think Jimmy Page played Stairway To Heaven the first time he picked up a guitar? Shakespeare saw a typewriter for the very first time, flopped himself down in front of it and banged out Romeo & Juliet? Dürer picked up his Rotring on day one at art college
Re: (Score:2)
If by typewriter you mean a quill pen and ink -- then yes he saw a typewriter. http://en.wikipedia.org/wiki/Shakespeare [wikipedia.org]
On the other hand, he may have had some means of trans-locating through a wormhole to 1870-ish, to bang out McBeth on one of the first commercially produced typewriters. http://en.wikipedia.org/wiki/Typewriter [wikipedia.org]
Re: (Score:2)
And that can lead to some pretty bad programming habits. There are exceptions, and I'll give you the benefit of the doubt that you're one of them.
You might not need to know the details of an internal combustion engine to make a hobby around driving a car, but you do need to understand the complexities of lift and drag and such to fly an airplane. Software's at least as technical as flight, even in many pretty simple games.
If one knows nothing of data structures, control statements, and even error handling,
Re: (Score:3)
You don't teach mathematics by finding out the most popular calculator of the day and making sure your class knows how to use it, do you? Advanced courses change with the times, but fundamentals settle as a field matures.
This is completely wrong of course. Programming is best taught by doing .
So is math, by the way.
|>ouglas
Re: (Score:2)
This is completely wrong of course. Programming is best taught by doing .
Where's the argument that "doing" necessarily means "learning how to use the latest toolkit"?
No such argument was provided because no such assertion was made. I said that learning to program is best done by doing. That means the focus should be on the doing first and foremost. At any given time, the best tool for accomplishing a task might be a tool that was invented many years ago, or it might be one that was invented yesterday, but it will, almost by definition, be one that makes it as easy as we know how to make it to get things done. People who argue that things should be done the same way th
Re: (Score:2)
> Where's the argument that "doing" necessarily means
> "learning how to use the latest toolkit"?
It's right up nessus42's ass. I sometimes think the fucktard can't read properly.
Anonymous cowards apparently can't think properly.
|>ouglas
Re: (Score:2)
Re: (Score:2)
I all but scream this at the people where I work. We have two intro to web design classes. One art based with dreamweaver, and one IT based that teaches the exact same thing, only explains some of the HTML. The problem is they both count as the pre-req for the later IT classes. Nothing like someone thinking they know the basics of web design from an art class.
Re: (Score:2)
Probably this. Blender itself has a steep learning curve, but BGE (Blender Game Engine) is pretty easy when it comes to setting up in-game logic. The real downside is that it is kinda, well, painfully slow, but you do get a lot of bang for your buck (in this case effort you put into it).
You can even get a very, very rudimentary FPS up and running in a half-hour.
Re: (Score:2)
no love, reasons why
1) Its in a constant state of broken, want simple box collision? use a fucking physics engine that no one around the project can explain properly, hell even their wiki states that you shouldnt use it
2) lua, no matter how much lua people tell you this that and the other, its the modern basic, if you want to do anything useful with it learn C to bind it, then your just subjecting you self to a wonky language no one serious uses
3) support, there are a few grumpy people bitching about posti
Re: (Score:2)
"which has some traction other places in some games"
Name them, here I will even get you started, the GUI editor for WOW, love to see your list
Fact is lua is not really anywhere, and its existence is shrinking quickly, it promotes bad coding habits, and its syntax is like no other system, you might as well be teaching them 8 bit basic
and love is a royal pain in the ass with its callbacks, its cute when your making pong but other than that all it makes you do is split up your thoughts into subsections meaning
Re: (Score:2)
My head would explode if this were my intro to game creation. So much of this depends on variables that aren't known, so it is hard to recommend anything, but I'd need to know
a) what level of programming skills do the kids have, and in what languages
b) what level of graphics programming skills do the kids have (2D, 3D, do they understand collision detection, etc)?
c) what potential do these students have (are they average high schoolers, or future MITers)?
d) is this a team project or a class project? A class