当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 这是意念自己的毕业论文,在一个具体的实践之中,意念主要负责的是物件和GUI之外的其他游戏系统。
 

 

 ·retroguard的使用方法(转)     »显示摘要«
    摘要:retroguard是一个很不错的java混淆器,而且在jbuilder7的企业版中也带了这个混淆器。 retroguard本身是一个java程序(一个jar包),所以要使用的话必须先安装jdk。运行前需要设置一些环境变量,除了要在path中包含java的执行路径以外,还要在classpath中加入d:\retroguard\retroguard.jar(假设你的retroguard.jar在d:......
    摘要: 在.net下的remoting使用里面,很多的书上都是使用了客户和服务器端都是使用一样共享成员或接口的示例来做说明。而且在实际的使用中有不小的问题。 [共享代码]share.vbimports system.windows.forms public interface iconnect ´客户端和服务器端同时共享使用一个接口 function getname() as stringe......


高层游戏引擎——基于OGRE所实现的高层游戏引擎框架
这是意念自己的毕业论文,在一个具体的实践之中,意念主要负责的是物件与gui之外的其他游戏系统.意念才学疏陋,望众位前辈不吝赐教.由于代码质量不高.环境很难于配置.资源包过大等问题,意念暂先不提供代码与程序,未来有时间的时候组织一下这些曾经的代码,再向外发布.

  【程序编程相关:取的Combobox中的所选择项的值

文过三月,也有些新的想法,以后会慢慢跟大家聊的,欢迎拍砖哦^_^. 【推荐阅读:delphi中的split函数

游戏. 游戏引擎 .高层引擎.规则 .场景.物件.terrain(地形).解释器 .application framework(应用程序框架).gui(graphics user interface 图形用户界面).manager(在本文中特指管理器).触发器. 【扩展信息:对《THE C PROGRAMMING

关键字与术语:

设计模式(design patterns).

singleton(单件模式,一种设计模式,使某个类在某个程序的生存期内,有且只有一份实例,而且可以在任何时候得到这份实例.).

adapter(适配器模式,一种设计模式,将一个类的接口转换成客户希望的另外一个接口).

factory(工厂模式,一种设计模式,提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类).

thanatos(死本能,代表恨与破坏的力量.死本能投射于外,则表现为求杀的希望,表现为侵犯与仇恨的根源;如死本能外投受挫,则为“自杀倾向”,包括自我谴责,自我惩罚,对敌手的嫉妒与对权威的反抗等.).

ogre(object-oriented graphics rendering engine)面向对象图形渲染引擎

 

abstract:

the abstraction of game engine is an important question in game programming, and the kernel of the question is “how could we give the game engine more adaptability?” in the paper we attempt to deduce the form which our game engine must be from our daily-lives. with the help of ogre, i completed the game engine which has the form that we have just deduced.

the major questions of this paper are: first, why we make game engine? second, how we make a game engine? the first question was answered in part1, while the second in part3. and the preview gives us a theoretic conclusion to the second question. at the end of this paper, we used the game engine which has just been completed to make a simple game.

the main idea of the paper is to take game engine as a combination of the high-level game engine and the low-level game engine. we use the high-level game engine to support game logic, and low-level game engine to support device and platform api.

摘要:

游戏引擎与框架的抽象一直是游戏制作中的一个关键问题,其核心问题是如何令抽象好的引擎具有更好的适应性.本文尝试使用演绎法从我们所生活的世界推导出了高层引擎为了适应游戏需要所需要保持的形态,并通过实做利用ogre完成了满足这个形态的一个简单的高层引擎.

本文的关键问题有两个:一是为什么要有游戏引擎,二是我们怎样来构架一个游戏引擎.在第一部分与第三部分我们分别回答了这个问题,绪论则作为对第二个问题所进行的演绎与推导.在本文的最后,我们利用完成的游戏引擎制作了一个简单的游戏.

游戏引擎应分为为高层的逻辑提供支持与为底层的功能提供封装的两个部分,这是本文的中心论点.

目录

绪论 游戏形态与其所决定的程序形态... 5

电脑游戏的本质是模拟现实... 5

被电子竞技的现实形态所决定的程序形态... 8

第一部分 游戏引擎技术简介... 10

引擎概述... 10

高层引擎概述... 11

第二部分 ogre图形引擎的基本构成... 14

第三部分 实作:基于ogre图形引擎的游戏框架... 18

场景系统:ogre场景体系的分离与重新合成... 18

场景:游戏的舞台... 20

规则:脚本系统... 22

零件组装:具体游戏层的构建过程... 26

第四部分 结论与展望... 27

附录... 28

terrain example. 28

参考... 33

 

preview 游戏形态与其所决定的程序形态

电脑游戏的本质是模拟现实

“游戏是先于人类的,许多学者在关注游戏时候发现,在自然界哺乳类动物里存在着大量的游戏行为……

“尽管游戏的历史是悠远久长的,但人类把它当作一种理论研究对象却是在近代才开始的事.德国诗人与剧作家席勒在研究艺术起源的问题上曾以‘艺术起源于游戏’的大胆一说而语惊四海.他认为,人类在现实生活中要受到精神与物质的双重束缚,在这两种束缚中常常失去了理想与自由,人们就设法用剩余的精神创造一个自由的世界,这个自由的世界就是游戏.”

——«游戏之王·游戏文明论»

“游戏是先于人类的,许多学者在关注游戏时候发现,在自然界哺乳类动物里存在着大量的游戏行为……

“尽管游戏的历史是悠远久长的,但人类把它当作一种理论研究对象却是在近代才开始的事.德国诗人与剧作家席勒在研究艺术起源的问题上曾以‘艺术起源于游戏’的大胆一说而语惊四海.他认为,人类在现实生活中要受到精神与物质的双重束缚,在这两种束缚中常常失去了理想与自由,人们就设法用剩余的精神创造一个自由的世界,这个自由的世界就是游戏.”

——«游戏之王·游戏文明论»

人类对于游戏的研究起源于近代.关于游戏起源的问题,自近代而来就有了多种理论:例如席勒的“本能论”,斯宾塞的“剩余能量论”,谷鲁斯的“练习理论”,弗洛伊德的“宣泄理论”等等.

然而,什么是游戏?游戏的本质是什么呢?我们先看看下面几种游戏形态,看能否获得一些启发.

棋牌似乎是所能列举出的人类最早的纯智力的游戏形态;而当游戏规则开始与体力结合时,就诞生了诸多体育项目;自上世纪60年代之后,伴随着芯片处理能力的提高,又产生了电子游戏这种新的游戏形态.抛开这么多游戏的存在形态不说,精神是物质的映射,游戏这种人类的精神产物所反映的是如何的客观存在呢?

象棋.军旗与围棋,是从人类战争中找到了灵感.战争,是人类所能接触与理解到的事物.

 

图0-2 象棋很可能来自于人类对战争的理解与认识

 

现代战略战术类电脑游戏的规则大多始祖于近代出现的军事推演,这个军事推演可以准确的说是从战争中找到的灵感.

 

图0-3 左:«文明»的截图    右:1894年,清政府派人参加美国军方军事推演时的照片

图0-4 左:«地球帝国»的截图    右:1910年,美国海军军事学院的一场海战推演 

图0-5 左:«帝国时代2»的截图        右:近代图版战争游戏的包装盒

 

最早的电子游戏是1962年在pdp-1型电子计算机上,由一个名叫斯蒂夫·拉塞尔的大学生开发出来的«space war»,单从名字我们就可以看出这个游戏所立足的,是人类对于空间的幻想,与对于战争的体会.

 

图0-6 左:在这台电脑上,诞生了人类历史上第一款电子游戏  右:利用计算机绘制的太空幻想图

图0-7 左:战术fps游戏«cs»  右:提出了thanatos与eros的奥地利心理学家弗洛伊德

图0-8 左:传统图版rpg游戏的人物属性表格  右:玩图版rpg能激发玩者丰富的想象力

图0-9 左:某网络rpg游戏场景截图  右:正在玩图版rpg游戏的玩者,右下为裁判

 

而被冠以“暴力”等罪名的fps,尤其是万人瞩目的quake与halflife,似乎也是为了满足弗洛伊德所说的人类对于thanatos的本能追求,其表现形态往往来自于真实的杀戮场面,这些杀戮场面在一些网站.文学.新闻与电视剧中比比皆是. 

 

下面来看看另一种游戏类型——rpg游戏.欧美rpg的始祖是托尔金的名著«指环王»,作为一部文学作品,«指环王»似乎是从人类各个集团的政经军事的交互中寻找到的灵感,同时在这之中体现出了一个幻想的世界与幻想的世界观.此后发展而成的«龙与地下城»规则,更是继承与发扬了这个体系,刻画了一个世界的各个集团之间的政治.经济.哲学与战争的体系.幻想的事物,也作为人类所能接触到的事物,成为了游戏开发者赖以开发游戏的灵感.«龙与地下城»远在电脑游戏出现之前就已经被做成了图版游戏.后来,电脑游戏介入了这个规则体系,用一种崭新的面貌重现着以往的图版游戏中刻板的教条与变化无穷的世界.

 

由上面的叙述我们可以看到,游戏的开发都离不开“人类所能接触到的事物”,这中间包括人类所能接触到的客观世界与精神(艺术.幻想)世界.«电脑之王·游戏文明论»中说到:“电脑游戏的本质就是模拟现实”,这也是图灵所揭示的计算机的本质特征:“模拟人类的思维”.

被电子竞技的现实形态所决定的程序形态

游戏既然是对客观世界的认识与理解,那么就可以站在最为抽象的角度,来分解这个认识与理解.

一是远古以来就业已存在的世界:山水.森林……诸如此类,他们有一个共同的特点,是很少或几乎不会因为人类的精神活动而发生变化,基本上可以认为在整个游戏期间很少或没有变化.这一部分我们用一个词语来描绘就是地图或地形.一般在三维中都叫地形,二维中都叫地图.

二是这个世界的居住者以及他们所使用的各种工具:人.动物.汽车……,他们有一个共同特点是会发生强烈的相互影响相互制约的关系.由于变动明显,这一部分的物体经常会发生变动.这一部分我们也用一个词语来描绘就是物件.在另外的分类中,往往也把地图与地形当作一种物件,但在大部分游戏中,这两者属性与方法都不同,因此我们在此将地图独立出来考虑.

第一二世界的组合就成了我们肉体可以感知到的物质世界,而这个世界在我们心灵中的映象,就叫做场景.换句话说,广义的场景就是地形与地形之上的物件的集合.从一个简单的角度来考虑,我们可以把场景看作是舞台布景,舞台背景等等就是地形,而舞台上的演员与一些杂物等等就是物件.

第三世界是一种比较难于感知的世界,它肉眼无法看见,但却在很长的时间期限内处于相对静止状态的规律集合.例如 “生命体失血过多会死亡”.“在其他条件相同的前提下,有效率的人比没效率的人在单位时间内收益要大”,等等等等.这一部分很大的可能会在暗中影响到“第一第二部分的世界”,我们用一个词语来描述它就是规则或者规律.这一部分还有一个重要的内容就是人类精神领域的活动,包括思维世界与情感世界,我们可以把这种活动认为成一种特殊的规则与规律.


...   下一页
    摘要:在看文章的时候blog的菜单栏实在的太碍眼,我于是加了个按扭用来控制菜单的显示和隐藏。这可以用javascript来实现,但是csdn blog是不允许在配置中直接加入javascript的,但是我们可以将javascript加入到一张图片onload事件里执行。看我的就是加到计数计的图片代码里了,效果看左上角。程序代码如下: var div=document.createelement(&acu......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE