游戏邦在:
杂志专栏:
gamerboom.com订阅到鲜果订阅到抓虾google reader订阅到有道订阅到QQ邮箱订阅到帮看

驳使用游戏引擎是作弊行为的5个依据

发布时间:2014-03-31 16:21:38 Tags:,,,

作者:Alan Thorn

许多开发者的一个共同观点就是,使用第三方游戏引擎来制作游戏是一种作弊行为,就好像是在心算考虑中使用计算器一样。这种观点在学生及行业新人中甚为普遍,但在极具资历的开发者的言行中也似乎能够看出这一端倪。我在此的目的是检查这个观点产生的根源,并看看大家的反应。为此,我的宗旨并非得到一个人人都满意的决定性答案,而是列出反对这一观点的一些极具说服力的理由。我希望自己能够为那些认为使用第三方引擎是作弊行为的人提供令其安心的理由。在开始之前,我将阐明自己对“游戏引擎”的定义。特别要指出的是,我在此所指的是任何通过抽取更低级API和工具,以鼠标为主的GUI界面、视觉脚本编辑器、动画编辑器、拖放功能,以及其他关卡编辑功能提供更用户友好型的体验,以令游戏开发更为简便的第三方软件或服务。除此之外,这种引擎通常包含预编码的脚本文件,而用户创建新功能时甚至无需完全理解其源代码库的作用。在这类程序中还包括已经在行业中颇为盛行的工具:Unity、UDK、CryEngine、Torque、Shiva、Godot、Flash、GameMaker Studio、RPG Maker、Multimedia Fusion、Construct2、Stencyl、Blender Game Engine、GameSalad等。

game-engine-architecture(from tophostgames)

game-engine-architecture(from tophostgames)

但引擎本身并不是主要问题。引擎让你产生的感觉以及它在同行中使用的情况才是关键。这里的要点在于:有些游戏开发工具的使用可能会让人感觉像是作弊。我认为这一观念是指,使用这些工具的时候,你并不是在做正当的开发工具,你只是在以此为借口参与非专业性的工作。确实,你可能会用工具制作一款看起来很专业的游戏,你甚至可能让玩家误以为你是一个充满诚意的开发者。但是,在过去的分析中,你却永远无法愚弄其他开发者,因为他们终会知道你是在游戏中使用了引擎,从而避开一些真正而困难的工作。

现在,这里的当务之急是自我认同性,即其他人如何看待你。这种心理恐慌或许来自你是否被视为游戏行业的全职成员这种不安全感有关。你很担心因为自己选择了某一引擎,就被其他开发者轻视。但是,让我们先将这些外部评价搁置一边,要知道还有一些开发者对自己感到不安,因为他们无法摆脱游戏引擎只是一种作弊手段的这种观念——即使用这些引擎是让自己脱离真正的游戏开发工作的一种懒惰。对他们来说,这个问题并不仅仅来源于身份认同感,更重要的是对真正的追求:这究竟算不是作弊?

今天我们不难在网络上看到对这一问题的表达意见。有时候你会通过网络论坛的用户问题听到类似这样的建议:不要自寻麻烦地学习任何引擎。只要学习类似C++、OpenGL以及DirectX这种真正的游戏编程技术即可!

其他时候的这种表达则更为隐晦,例如:”我们采用了工作室所能采用的最专业的方法:我们从头创建引擎和工具。”这种表达产生了一种使用引擎会削弱你的成就,让你看起来像个作弊者的感觉。这种观念表明,使用引擎是一种建立在他人(引擎开发者)劳动成果之上的投机方式。这样的工作还包括:渲染系统、照明映射系统、物理计算等。当使用引擎时,所谓的游戏开发者可能会运用一些功能来制作自己的游戏,但却并没有深入了解该功能的代码。这种感觉就像是依靠他人来做自己的工作。所以我们对此该如何回应?我认为有5个主要论据可以回应这种指责。我将分别将其列出,并对其分别命名。每一个论据都 与之前的一系列推理相关,它们每个论据本身看起来并不完全具有说服力,但结合起来却颇具力量。

1.“谁在乎呢?”

这看起来并不像个理由或论据,只不过是个逃避战术,根本就是拒绝承认问题。这一回应的潜台词就是“嘿,也许使用引擎是一种作弊。我不知道,但我不在乎。我只是想提高效率制作游戏。”这个方法可能具有情感说服力,但它并不能劝服那些想说理的人。因此,这只能吸引那些已经改变信仰的人。无论你是否如此看待问题,那种作弊感仍然存在,无论你说多少吹“谁在乎呢?”

2.“没这个规定”

第二个论据采用了较有逻辑性的一步。它的推理就是:作弊是一种破坏规则的行为。这意味着作弊行为要取决是是否破坏了规则。但是,它也表明在游戏开发过程中,并不存在这样的规定。所以并不存在作弊行为。由此可见,使用引擎并不是作弊。现在我怀疑这个论据无法说服许多人,尽管它的逻辑性看似绝无谬误。这其中有太多抽象和条理性的问题了。它的力量在于文字游戏以及合理化。它的本质可能是正确的,但其抽象性却难以说服大家。

3.“重要的是结果”

这个论据更具说服力了,它关注的是在游戏开发过程中使用引擎的结果,并以此为这种方法辩护。这个论据鼓励我们关注今天的游戏多样性,看看许多玩家并不在乎自己所爱的游戏究竟是否使用第三方引擎开发而成的局面。它提醒我们制作游戏的真正动机应该是创造趣味和娱乐性体验,这也是玩家真正在乎的东西。对游戏玩家来说,问题在于游戏是否具有娱乐性,而非是否使用了引擎。无论有没有使用第三方引擎,游戏都可能具有趣味。所以如果使用引擎并不会让玩家产生困扰,并且游戏具有趣味性,那也就无所谓你是否使用了第三方引擎。这与作弊无关,关键在于制作有趣的游戏。

4.“荒唐的影响”

这个论据始于一个深思熟虑的试验,并鼓励我们去考虑一致性的问题。从论据角度来看,我们不再使用引擎是因为它们真的在作弊。现在,如果我们这么做了并想在生活中保持一致笥,那么我们也应该将这个逻辑运用到生活中的其他方面。但这就会产生不切实际的荒唐结果。这个论据的深意就是“使用引擎就是作弊?它们让我们的生活更轻松。它们为我们做了大量的困难工作。这就是作弊?那我们就不要使用引擎了!但,我们必须停止开车。因为它们让我们的生活更便捷,让我们依赖他人的劳动成果。我们也不能再用计算器和服装、电脑、电视、广播、火车和飞机等一切有用的东西,就是这个原因。”这个论据从许多方面来看很强大,并不只是因为它提醒了我们日常生活中对他人劳动成果的依赖成性。它让我们看到万物之间的联系,以及我们对前人基础的依赖性。这个论据表明,如果使用引擎真的是作弊,那并不是简单的因为我们依赖他人的劳动成果。如果是这个原因的话,那么一切行为都可能是作弊了。如果一切都是作弊,那么我们把所有事情都称为作弊就没有意义了。

5.“无限退化”

最后一个论据与之前的论据相关。这两者都先接受使用引擎是作弊行为这种观点,然后要求我们遵从其所引导的一切规律。但之前的论据认为这一理念会产生荒唐的结果,而这一论据则认为它毫无根据。它的潜意识就是“好吧,让我们弃用引擎,因为它是依赖他人劳动在果的作弊行为。因此,我们要正当使用引擎,首先我们就得先退后一步成为引擎开发者,理解与引擎相关的所有技术考虑因素。这样我们才能成为合法的引擎用户。但是,这一论据还表明,我们必须清楚即使是引擎开发者也将成为作弊者,假如他们并非第一个掌握了低端代码和二进制系统的计算机科学家的话。而计算机科学家如果没有首先成为熟悉电子脉冲和微芯片方面的硬件专家的话,他们也可能成为作弊者。而硬件专家如果没有事先掌握量子力学和有关电子交互方面的宇宙定律,他们也有可能成为作弊者。所以这个论据就会无限重复,将我们引向没有意义的深渊。而对此我们却束手无策。在庞大的宇宙面前,我们是如此卑微和渺小,根本就没有办法找到真正清白的非作弊者。这个论据提醒我们,如果使用用引擎需要任何理由的话,那就不能用这种前提来说服大家。它告诉我们,如果我们要成为游戏开发者,就要从已经被认为理所当然的基础而非本身就遭到质疑的环节开始。

这五个论据结合起来推动我们向两个潜在方向前进,这两者都承认第三方引擎在游戏开发过程中的使用。我们要么就从使用引擎是作弊开始,要么就扩大作弊范围。无论使用引擎是否作弊,或者几乎万物都是作弊行为,这都不会有任何意义。而这两种情况下,所有的论据都会情绪化地引向第一个论据,而它恰恰是原先最薄弱的论据。(本文为游戏邦/gamerboom.com编译,拒绝任何不保外版权的转载,如需转载请联系:游戏邦

Is it cheating to use a game engine?

by Alan Thorn

The following blog post, unless otherwise noted, was written by a member of Gamasutra’s community.

The thoughts and opinions expressed are those of the writer and not Gamasutra or its parent company.

There’s a common view held by many developers that using a third-party game engine to make games is a kind of cheating; that it’s like using a calculator in a mental arithmetic exam. This view is most strongly and openly expressed by students and newcomers to the industry, but it can also be found in subtler and implied forms by very experienced developers too, in both what they say and do. My purpose here is to examine the root cause underlying this view, and to see what may be said in response. In doing this, my purpose isn’t to reach a definitive answer that’ll satisfy everybody, but to list some compelling reasons against the view. It’s my hope that I’ll offer reassurance to those who genuinely feel they may be cheating, just because they use a game engine. Before proceeding, I’ll clarify what I mean by ‘Game Engine’. Specifically, I’m referring to any third-party software or service intended to make development easier by abstracting from lower-level APIs and tools, to offer a more user-friendly experience with mouse-driven GUI interfaces, visual-scripting editors, animation editors, drag-and-drop functionality, and other level-editing features. In addition, such engines often include pre-coded script files from which users derive and build new features without even needing to fully understand what the original code base does. Among this group of programs I include tools already popular in the industry today, in no particular order: Unity, UDK, CryEngine, Torque, Shiva, Godot, Flash, GameMaker Studio, RPG Maker, Multimedia Fusion, Construct2, Stencyl, Blender Game Engine, GameSalad, and others.

The engine itself is not the main issue, however. It’s how the engine makes you feel and the regard that using it has among peers. The point is: there are some tools available for game development whose use many regard as just cheating, plain and simple. The idea, I believe, is that when using those tools, you’re not doing proper development; you’re simply engaging in unprofessional pretence. True, you may make a professional looking game with the tools, and you may even fool gamers into thinking you’re a bonafide developer. But, in the last analysis, you won’t fool other developers, because they’ll somehow know you really cheated by using an engine for your game, avoiding the real and hard work.

Now, in much of this, there’s a preoccupation with self-identity; with how other people think of you. This arises perhaps from insecurity about whether you’re being regarded as a full member of the games industry. You worry that, by choosing an engine, other developers won’t really take you as seriously as you think you should be taken. But, putting aside these external judgements, there are also developers who are uncomfortable with themselves, because they can’t shake off the intuition that a game engine is really just a means of cheating- a kind of laziness keeping them removed from true game development work. For them, the question arises not because of identity so much as a desire for truth, to know once and for all: is this cheating?

It’s not difficult today to find expressions of this concern on the internet, and beyond. Sometimes you’ll hear it directly in online forums through user questions or advice: “Don’t bother learning any engine. Just learn real game programming technologies, like C++, OpenGL and DirectX!”. Other times it’s expressed more subtly, for example: “We took the most professional approach a studio could take: we built an engine and tools from the ground up”. These expressions, and others like them, produce a feeling that engine use mitigates your achievements, making you a cheater. This flows from a belief that engine use is just piggy-backing on a substantial foundation of work created earlier by somebody else- namely, the engine developer. Such work includes: render systems, light-mapping systems, baking functionality, and physics calculations as well as others. When using the engine, the so-called game developer may apply some, or all, these features to make games they claim as their own, and yet have no deeper understanding about the code at the foundation. The feeling is that this reliance on others to do your work amounts to cheating. So what can be said in reply? I think there are five main arguments to be offered that counter the accusation. I’ll list them individually, giving each a name. It also seems that each follows from the previous, connected by a chain of reasoning, perhaps in some imprecise way. It may be that none of the arguments alone are entirely persuasive. Yet, taken together, something compelling emerges.

#1. The “Who cares, anyway?” Argument

This isn’t so much a reason or argument as merely an avoidance tactic, refusing to acknowledge the issue at all. This response says “Hey. Maybe using an engine is cheating, after all. I don’t know. But I don’t care. I just want to make games and get on with it”. This approach may be emotionally compelling, but it doesn’t appeal to reason or to anybody interested in reasons. Consequently, it’s the kind of sermon appealing only to the converted. Either you feel this way, or you don’t. And if you don’t, the feeling of cheating won’t go away, no matter how often you say ‘Who cares?’

#2. The ‘No Rules’ Argument

The second argument takes a logical step ‘forwards’. It reasons: Cheating is about breaking rules. This means cheating depends on their being established rules to break. But, it turns out that, in game development, there are no such rules. And so there can’t be cheating. In consequence, engine-use can’t be cheating either. Now, I doubt this argument will persuade many, though its logic seems infallible. There’s something too abstract and formal about it. Its strength seems to rest in word-juggling and rationalization. There might be something true at its core, struggling to come through. But its abstractness fails to impress.

#3. The ‘Consequences Matter’ Argument

More compellingly, the third argument focuses on the consequences of engine use in game development, using that as a justification for the means. This argument encourages us to behold the variety of games on offer today, seeing the many gamers enjoying them who are totally untroubled by whether a third-party engine was used in their development. It reminds us that a crucial motivation for making games is to produce fun and entertaining experiences, and that it’s this that gamers really value. For gamers, the question is whether the game will be enjoyable, and not whether an engine was involved. A game made with or without a third-party engine may be fun in either case. So if engine-use doesn’t bother gamers, and if games can be made fun in any case, then it doesn’t matter whether you use a third-party engine. It’s not about cheating. It’s about making enjoyable games.

#4. The ‘Absurd Consequences’ Argument

This argument starts with a thought-experiment and encourages us to think about consistency. Let’s say, for argument sake, that we stop using engines because they really are cheating. Now, if we do this and want to be consistent in our lives, we should apply such logic everywhere else too. But impractical absurdity results from this. The argument continues ‘So engines are cheating, eh? They make our lives easier. They do a lot of hard work for us. And that’s cheating? OK. Let’s stop using engines then! But, we must also stop using cars. They too make our lives easier and rest on the work of others. Oh, and let’s stop using calculators, and clothes, and computers, and televisions, and radios, and trains and aeroplanes, and everything else useful, and for the same reasons’. This argument is powerful in many respects, not least because it reminds us of the heavy reliance we have on the work of others everywhere in our daily lives. It helps us see the connectivity in all things, as well as our dependence on foundations laid by others who came before. This argument shows us that, if engine use really is cheating, it can’t simply be because our work would depend on others. For if that were true, then everything would be cheating. And if everything were cheating, there’d be no point in calling anything cheating.

#5. The ‘Infinite Regression’ Argument

The final argument is connected and allied to the previous. Both begin by accepting engines as cheating and then demand we follow that acceptance wherever it leads. But whereas the previous argument found the idea leading to absurdity, this argument sees it leading to nowhere. For argument’s sake it says: OK, let’s abandon engine use as cheating just because it would depend on foundations laid by others. Thus, to be entitled to use an engine without the charge of cheating, then, we must first take a step back and become an engine developer ourselves, capable of understanding all technical considerations attendant to engines. Only then may we become a legitimate engine user. But, the argument continues, we must understand that even an engine developer will be a cheater, if they’ve not first been a computer scientist with mastery over low-machine code and binary systems on which all engines are inevitably founded. And the computer scientist will also be a cheater, if they’ve not formerly been a hardware specialist intimately familiar with electrical impulses and micro-chip internals. And the hardware specialist too shall be a cheater if he’s not already gotten to grips with Quantum Mechanics and the laws of the universe making electrical interactions possible at all. And so this argument repeats infinitely, leading us into nowhere, it seems. And in this nowhere place there’s the inclination to shrug our shoulders. We’ve been humbled before the expansiveness of the universe, left wondering whether there’s really anybody out there who isn’t a cheater. This argument helps remind us that if using an engine needs any justification at all, it can’t be by simply appealing to antecedent knowledge in this way. It tells us that, if we’re to be game developers, the journey has to start somewhere with a foundation that’s taken as given and is not itself questioned or interrogated.

Together these five arguments provide impetus to move us in one of two possible directions, both of which permit third-party engine use for game development. Either we move further from the idea that engines are cheating, or else we widen the scope of cheating, if we follow the consequences where they lead. Either engine use is not cheating, or nearly everything is cheating, and so it cannot matter anyway. But in both cases, all the arguments seem to lead emotionally back to the first argument, which appeared initially to be the weakest of all.(source:gamasutra


上一篇:

下一篇: