Re: A few questions about scripting
Juan Linietsky <[email protected]>
| Newsgroups | gmane.games.devel.sweng |
|---|---|
| Message-ID | <[email protected]> |
I asked this and discussed with several developers all around the world, so i'd like to wrap up my experience. Several (and I mean SEVERAL) developers are completely against scripting in any way or form. I even heard this argument from tech leads of "large" studios. Their reasoning is simple "Why bothering? It's slow". That seems to be a common position. I even heard some claiming that they implemented their own language based on connecting logic blocks and forcing content developers to use it because it's faster than a VM. Some propertary game engines i worked with also use this, and even force it to the developer. >From other developers i think i've heard more flexible answers, such as that it doesn't make much of a difference performance-wise to write scripting or native, as long as the code is not critical. A common approach seems to be having a design that allows to transparently refactor components from scripting to native when they are showing to be a performance bottleneck, so based on their experience i've always done this. About the benefits of scripting over native code, I've usually heard the following arguments: 1) Hacked code (not nice looking or comprehensible) is often written much faster. If the engine architcture is nice and organized , hacking away scripting over it is a very optimal approach, given that most scripting languages have more flexible data structures. 2) Scripting is easier to debug (and I mean, dynamically typed languages, not C# used as scripting) and can be changed/reloaded on the fly. 3) In most scripting languages, the bytecode is often much smaller than compiled native code, allowing to have a lot more content loaded (I've heard this from GBA/DS developers who are very limited in memory and physical storage). 4) Most scripting languages are MUCH easier to learn than C or C++ to newcomers, so less experienced programmers (read: easier/cheaper to hire/find) can be used to write content. Cheers. Juan Linietsky On Tue, Apr 27, 2010 at 11:23 AM, Tim Stowell <[email protected]> wrote: > argh, sorry I meant "which parts might be best left to scripting and which > parts might best be a fit for native c++/c etc" > > -Tim > > > On Tue, Apr 27, 2010 at 8:23 AM, Tim Stowell <[email protected]> wrote: > >> I don't think it's pointless to ask about how much of a game is written in >> a scripting language because for someone who may be trying to design their >> own engine, it's useful to know how much of the engine's functionality might >> best be left to scripting and which parts would be a better fit for >> scripting. While it's true that it's all programming, implementing a >> scripting engine takes a whole different work flow as compared to just >> hitting the c++ compiler. >> >> -Tim >> >> >> On Tue, Apr 27, 2010 at 8:17 AM, Thaddaeus Frogley <codemonkey.uk@ >> gmail.com> wrote: >> >>> UnrealScript is compiled to bytecode, and executed by the UnrealEngine >>> virtual machine. >>> >>> The distinction between "scripting language" and "not scripting >>> language" is arbitrary and not clear cut. Getting your nickers in a >>> twist about how our pet language is "not a scripting language" does >>> you no favors. >>> >>> Trying to work out "what percentage of a game is written in scripting >>> languages" is as pointless as asking what percentage of fixing are >>> nails rather than to screws. >>> >>> At the end of the day, it's all programming. >>> >>> Thad >>> -- >>> Thaddaeus Frogley >>> Senior Programmer, Climax Games >>> _______________________________________________ >>> Sweng-Gamedev mailing list >>> [email protected] >>> >>> http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com >>> >> >> > > _______________________________________________ > Sweng-Gamedev mailing list > [email protected] > http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com > > _______________________________________________ Sweng-Gamedev mailing list [email protected] http://lists.midnightryder.com/listinfo.cgi/sweng-gamedev-midnightryder.com