Re: Question about development of prototyping tools.
"Morten Brodersen" <[email protected]> Thu, 21 Apr 2011 15:16:59 +1000
| Newsgroups | gmane.games.devel.sweng |
|---|---|
| Message-ID | <C5A9A0CD18A44F038583E2AD7CB9F96B@QUAD> |
I would classify tools this way: 1. External/Internal: Is the tool external to the game or embedded in the game? 2. Cycle-time: How long does it take from the moment you make a change until you can play it in the game? In other words, if you make a change using the tool do you then have to reboot the game or restart the level to see the change in the game? Or can you (say) play a level, notice something that needs changing, pause, edit, save and then continue playing without having to reboot the game/level? I have seen tools done in a lot of different ways. With some tools having a cycle times of seconds and others needing literally hours. I can not overstate how important it is to have very short cycle times. You need to get it as close to 0 secs as you can basically. A simple example is a use case where an artist makes a change to a texture using (say) Photoshop. If the artist has to exit and restart the game and then restart the level to see the texture changed then the cycle time is very high (bad!). If the artist can just press (say) F8 and the game will automatically reload all changed textures, the cycle time will be a few secs (much much better!). Another example would be a level designer pausing a level, editing a number of scripts and then continue playing the level with the game using the new scripts when spawning new characters. You could even have the script editor embedded in the game. However editing the scripts with an external tool is fine as long as you don't have to reboot the game to test the edits. The game should automatically (or triggered by a button press) reload changed scripts. And here is the dirty secret: In my experience it is a lot easier and faster to build the tools into the game. You already have the scene being rendered etc. All you need is to switch the game to "Edit Mode" and your tool(s) can take over, making the artist/designer make changes right there in the game, save and continue. Even back in the old days when I was working on Banjo Kazooie for the N64 we could stop the game at any point, move spawnpoints around, add/remove objects etc., save and the restart the level with the player character starting right next to what you edited. In other words, the cycle time was a few secs. And that was using the (by todays standard) very limited N64 hardware. So no excuse today when we have access to hardware that is literally 100+ times more powerful :-) The key thing to keep in mind (from an architectural point of view) is to put a clear wall between "level definition" data and "level running" data. That allows you to edit the "level definition" data without touching the "level running" data => you can continue playing the game after you edit it. Morten -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Juan Linietsky Sent: Wednesday, 20 April 2011 3:26 PM To: [email protected] Subject: [Sweng-Gamedev] Question about development of prototyping tools. I'm not sure if this is a common quesiton in the list, but I think tool programming is a very overlooked issue of software engineering in game development. So my question is, since many here have tremendous experience in the game industry and worked on huge projects, what kind of tools do software engineers supply to game or level designers so they can, for example, prototype a game stage before, say, 3D artists start working on a final version? In more depth, games like Halo, God of War or Mario Galaxy for example have really complex scenarios, so complex that a height map or grid map editors do not suffice for prototyping. I can imagine that before 3D artists can start working on the final art, a simpler looking prototype must be created. I also can imagine that creating such prototypes need constant adjusting on the fly (a cliff may be too high, a room to small to fit the enemies, a target out of shooting range), so either special tools for editing stages are created or special plugins for integrating with, say, maya are needed? Also, is it common that game or level designers know how to work with 3D apps for stage design? or do engineers have to create special tools for them? If so what kind of tools? Cheers! Juan Linietsky _______________________________________________ Sweng-Gamedev mailing list [email protected] http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com