Pointless?

Started by
16 comments, last by Mordt 18 years, 3 months ago
Hi. I was thinking about starting to learn (new)game development. Today, when new DirectX versions are comming so fast, when game development has overgrown movie industry so there are teams of 20-200+ members with budgets over 50 mil. dollars, is there any point in trying to start it on your own while not having a certain employement option? I'm a CS uni student and I'm soon going to graduate for master's degree. I'm quite good at programming and I have a lots of experience with asm, C, C++, C# etc.. I even made few 2D games using simple libs like SDL, and 3D using old DX7. But still, when I take a look at how complex new DirectX became, I wonder if there is any point in trying for me to learn it aside from uni and job stuff. Before I finish learning uber complex DirectX 9 with all its shader stuff, there would come v.10 with everything rearchitectured and rebuilt into a whole new API; There we go again. Today to become a game dev, you need a specialized colledge or at least a multi-semester course in advanced graphics. Also, there are no good books that would cover some area good enough so one can write a simple game on his own and for that game not to look like crap. Maybe it's a rainy day and I'm too pesimistic. Maybe someone here can point out good stuff and convince me it's not that bad...
Advertisement
You raise some very good points. I'm of the belief that a demo of a basic game using third-party libraries is the best showcase of skill, rather than trying to do everything yourself and only ending up with a graphics API wrapper. That's for writing games - if you're after graphics programming, then even then a wrapper for the API (a la OpenGL, DX8~9, DX10) isn't going to do much. It's all about writing the code that isn't redundant - I mean, in terms of gaming prospects are concerned. If you want to write a game approaching current commerical quality, then you're either brilliant or seriously misguided. It's, like you said, just not a realistic goal.

Writing what you enjoy writing, and writing what will secure you a job (in which you'll contribute code that will become a commercial quality game) tend to be similar, but not always so. I hope that helps.
[ search: google ][ programming: msdn | boost | opengl ][ languages: nihongo ]
First of all, if you're a good programmer adopting to new APIs or new versions of APIs(or even new programming languanges) is trivial. In the case of DirectX, the theory and principles behind it will remain the same. What difference does it make if they will rearrange or add some parts? You grab the SDK, you invest some days in it and you learn it. It's not that big of a deal, and you most certainly don't need all the new and advanced features to make a game look good.

Second, you can always use one of the free or cheap engines and libraries that are out there so you won't have to deal with all this implementation difficulties, and save time which you can spend on actually writing a game and not an engine. Maybe you won't get to the level of Doom3 graphics, but who said it's necessary? With all the powerful hardware most users have now and an existing engine, you can easily create graphics that are very decent(assuming you can create good art or know someone who does). If you have decent graphics, good story and gameplay, your game will sell. Maybe not millions of copies, but I believe there is room even today for indie developers to make some money, assumming of course:

1)They're not aiming to compete with the big guys in their own territory(if you want to write a Quake4 killer on your own, forget it).

2)OTOH, they don't go completely to the opposite side and think their game will be OK with graphics that were dated 15 years ago. In order to sell a game with that kind of graphics, not even a decent story or gameplay is enough, they have to be amazing. Why risk it, when it's 2006 and you can without much difficulty create some very decent graphics that are closer to what users expect to see in this time and day?

3)Are actually willing to use all the available mature tools to write their game and not reivent the wheel every other day. I think this is very important. If you do everything from scratch, you will probably end up with outdated graphics that remind previous eras, but with gameplay with much less depth than those eras, because you were busy solving problems that are already solved instead of focusing on the game itself.
Yeah. Well, I wasn't thinking that I should write new OGL or so. Just using, for example, quite good .NET+C#+DX9 option, 'should' be enough.

In some area of idealism, just collecting a team to create a game, shouldn't be much of a problem. Me as a programmer and few other specialized friends (like a 2D and 3rd 3D artist plus music-guy) should, in some imaginery world, be enough to write, or better produce a game of some quality.

Interesting speculation by the point we come to timeframes.
Today, even professional teams like Valve and others have problems finishing off their projects in reasonable time. Valve on that point having a team of probably some of the best people in industry. Look at what happened to STALKER project...

Actually, considering we have some knowledge and are capable of doing things, we could make a commercial quality game. The real question that raises is - when?!
As you've just said, it's just being foolish to be thinking we have a chance to do it on time to be competitive on the today's market.
Creating a game that looks like Starcraft, wouldn't bring us much glory. On the behalf of a spotless mind, it's really a good game idea that does.. still, eye candy is what sells most games.

One of the most important questions that bothers me is how real game programmers should start today? What to do to be a valuable option for a game dev team?

Some years ago you could just be a master of C to be able to get a grasp on 'modern' graphics. Now, I'm somehow easy to beleive there are special guys for every crap out there: shadow-guy, reflection-guy, 3Dcursor-guy etc. (trying to be funny{grin}).

How will young (in terms of gamedev knowledge/expertise) devs make a step into the industry if there is just no room (or time) for them to aquire knowledge of the actual technology that gets outdated by the time I write this?!
Quote:
Yeah. Well, I wasn't thinking that I should write new OGL or so. Just using, for example, quite good .NET+C#+DX9 option, 'should' be enough.


I think you misunderstood me. When I said that you should use mature tools, I wasn't referring to API's. In the context I was talking, DX9 is low-level. I was referring to using existing complete graphic engines, like Irrlicht or Torgue, and physic engines like ODE, which provide you a powerful high-level interface to build your games, without getting bogged down with implementation details. Or even modding existing games, you can do wonders with that and if you're good you might get noticed by the industry(think Counterstrike). And of course you will do it based on your resources and staff, companies like Valve do have problems with timeframe, but their projects are huge, and so is the pressure. If you think that you can complete a rather small but decent game, then do it.

Of course, gathering and managing a team is always hard, I just told my opinion on one or two things that can save you time, make you more productive and generally make your life a bit easier. You have to work very hard in order to hope that you have a chance to succeed, there's no denying that.

[Edited by - mikeman on January 3, 2006 7:42:20 AM]
Quote:Original post by monolithx
Yeah. Well, I wasn't thinking that I should write new OGL or so. Just using, for example, quite good .NET+C#+DX9 option, 'should' be enough.

If you're concerned about being productive enough to actually get results, that sounds like a pretty good idea. A lot of people still swear to C++, but if you can halve development time by (maybe) shaving a few percent off performance, that's probably not a bad thing for a small


In some area of idealism, just collecting a team to create a game, shouldn't be much of a problem. Me as a programmer and few other specialized friends (like a 2D and 3rd 3D artist plus music-guy) should, in some imaginery world, be enough to write, or better produce a game of some quality.

Quote:
Interesting speculation by the point we come to timeframes.
Today, even professional teams like Valve and others have problems finishing off their projects in reasonable time. Valve on that point having a team of probably some of the best people in industry. Look at what happened to STALKER project...

Well, you're right. if you want to make something to compete with Halflife 2, well, you're screwed.
but it is possible to make slightly simpler games within a very reasonable timeframe.

Quote:Actually, considering we have some knowledge and are capable of doing things, we could make a commercial quality game. The real question that raises is - when?!
As you've just said, it's just being foolish to be thinking we have a chance to do it on time to be competitive on the today's market.
Creating a game that looks like Starcraft, wouldn't bring us much glory.

I dunno, it would bring you some recognition. It might not put you up there next to Valve, but it's always helpful to be able to point to a few games and say "We made those". Especially if you're going to get a publisher to fund development of future games.

Quote:
One of the most important questions that bothers me is how real game programmers should start today? What to do to be a valuable option for a game dev team?

Do the best you can. Make the best games possible, and either sell them, put them online for free download, or just keep them to yourself. As long as you've got the experience from them, and as long as you can showcase them to future employers or publishers.

At the end of the day, that's what matters. Your first game (probably) won't become a top seller, or anything. But it will give you and your team some very valuable experience, and *some* people will notice it. With a bit of effort, you can even make sure the *right* people notice it. That might mean you can get a publisher to fund development of your next game, or you can attract more skilled people to your team, or you can start selling your games online yourself.

Quote:How will young (in terms of gamedev knowledge/expertise) devs make a step into the industry if there is just no room (or time) for them to aquire knowledge of the actual technology that gets outdated by the time I write this?!

Come on. You're a CS student. YOu should know better. ;)
Technology might get outdated, but the knowledge about it doesn't.
If you learn DX9, moving to DX10 will be a breeze. If you learn about the basics of 3d graphics, learning either DX or OpenGL (or any other 3d API) will be simple enough.
You're a CS student. You're supposed to say "Ok, I'll learn the underlying theory, and then I should be able to jump into it, and learn the technologies I need if and when I need them. That shouldn't be a problem."
Or consider this. How do you think the current professionals keep up? They've had to migrate through 9 revisions of DirectX, as many generations of graphics cards, two widely different OS'es, 2d to 3d, first software rendered, then hardware accelerated.
If they can keep up with all this, then shouldn't you also be able to migrate from DirectX 9 to 10?
If learning new stuff was as hard as you make it sound, then there would be no games industry.
Just don't give up @monolithx (or anyone else)

There's BOATLOADS of room for making money / career out of Indie games development. That is, creating games from your basement for sale online.

You can let the other companies deal with million dollar budget headaches, and keeping up with the technology leaps, while you create smaller games that can actually reach more people.

Check out portal sites like reflexivearcade.com or bigfishgames.com to see what I mean.

The poor developers at the AAA game houses HAVE to learn every new version/iteration of the DX API, because there's 5000 kids who'll work for less for the same job if they don't.

(Kudos for the Masters degree!)

btw. stick to your knowledge of DX7 (or even 8.1)...the portal games don't go higher than this

hth and keep your spirits up man!
Quote:Original post by Spoonbender
Do the best you can. Make the best games possible, and either sell them, put them online for free download, or just keep them to yourself. As long as you've got the experience from them, and as long as you can showcase them to future employers or publishers.


I completely disagree. Making a small bunch of clones (like me) when starting out is fine to give away for free....as long as they don't take more than a weekend or two to produce.

After that, charge for everything. Your time and effort is worth money. Developing quality titles takes a lot of effort which should not be taken lightly.

Even IF you're using it to get a job with a AAA company, why not also gain some (valuable) experience in online marketing, contract negotiations, press releases, etc..

It's an eye opening experience and can be loads of fun!



Thank you all. Each post has got a point and that makes it fun.
Let's get onto a concrete subject: what to take in consideration to make a turn based strategy like Master of Orion (+3d space battles) with no budget but good will:). Also, book resources are quite welcome. :-)
You shouldn't worry too much about how quickly DirectX is advancing. In fact, it is my humble opinion that each version makes is that much easier to get started. DirectX5 was much more difficult to program than DirectX6. DirectX9 is much easier than 8. In fact, it takes literally no time to get a game shell running in DX9 (using the D3DX utilities and the sample program -- which is 10x easier to use than the old D3DFramework code -- and a lot more stable).

The most important thing is to learn how to learn -- that is the most important quality in any programmer. Learn to adapt and you will become very successful.

If you're interested, read more of what I have to say at my DirectX9 site. - Segment Fault

This topic is closed to new replies.

Advertisement