HOME 首页
SERVICE 服务产品
XINMEITI 新媒体代运营
CASE 服务案例
NEWS 热点资讯
ABOUT 关于我们
CONTACT 联系我们
创意岭
让品牌有温度、有情感
专注品牌策划15年

    游戏编程教学(代码编程教学入门)

    发布时间:2023-03-18 12:02:13     稿源: 创意岭    阅读: 42        问大家

    大家好!今天让创意岭的小编来大家介绍下关于游戏编程教学的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。

    开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等

    只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端

    官网:https://ai.de1919.com

    本文目录:

    游戏编程教学(代码编程教学入门)

    一、做单机游戏需要学什么

    问题一:想制作单机游戏应该学习什么 首先得由底层程序开发人员来编写底层程序,这些人员一般都是和数字打交道,很枯燥,但是就属这些人员的技术能力强,因为他们是项目的基础,他们负责研发一个游戏引擎,用来统筹规划以后制作出来的人物,音效,脚本之类的游戏的各个部分.这个是非常重要的...... 底层程序编写的同时,美工人员就要开始根据策划人的游戏风格,来创建游戏的任务了,大到主角和城堡,小到初级怪和武器上的小饰品,都要一一画出2D草图,然后还要不断的交到主制作人那里去不停修改,直到全部通过审查之后,交由3D建模师来构建3D模型.这里包括了人物和场景,也是一项相当浩大的工程....... 人物模型和场景模型全部建立完成之后,就袄开始根据游戏的剧本来编写游戏程序了,还得制作各个人物的各个动作,已经人物在各个场景中的各个镜头的分镜头剧本,这也相当复杂.视角不能让玩家观起来有头晕和不适的样子,还要突出场景的漂亮和人物的魄力........ 关于人物动作的录制,现在大公司基本都采用动作捕获技术,这样的好处就是人物的动作都非常真实,因为都是请的专业演员来描绘的,不会给人生硬的感觉.... 游戏画面制作的同时,各种音效和背景音乐也要同时开始录制,根据不同的情节,不同的场景,表现各种情绪的音乐也要非常丰富才可以........ 在制作过程中,还要搭建游戏庞大的数据库,包括HP啊,攻击力啊,道具数值等等等等.......非常非常复杂的...... 折腾了两三年,差不多已经完成了,之后就要开始请测试人员对游戏进行测试,没问题的话就交审批了,审批通过之后,再经历一段广告宣传攻势,最后等一个吉日,就发售了~~~~~~~~~ 至于仁兄问的软件........各个公司都不一样,一般3D建模大多数都用3DS,速度比较快,MAYA也用的比较多,一般人物建模都用MAYA,建筑物和场景都用3DS,画2D草图一般都是手绘,然后扫进电脑里之后,用Photo Shop和Painter来上色和加工....别的软件就比较自由了,用什么的都有,好多大型公司用的都是公司内部自主开发的引擎和软件......详细的游戏开发套件,根据游戏的类型不同而不同

    问题二:做单机游戏需要学习什么 单机啊....还大型...

    C++ ,C#,photoshop,或许吧...然后....呃.不过你自己最好还是用.RPG maker xp.... 那个就是给你们这种人用的....

    问题三:如果我现在要做一个大型的单机电脑游戏 有哪些需要注意学习的 必不可少的 做大型单机游戏 要美工 建模 数据导入等等,一个人不可能完成。还有资金问题,仙剑奇侠传国产单机游戏耗资600万以上,国外的GAT5 看门狗什么的这些游戏都是5 6亿人民币!

    问题四:一般单机游戏制作人要学什么专业要所有学吗? 独立游戏制作人确实要学很多东西的

    编程是必须的,美术不一定要很好,但美术要用到的软件要学会,不然你想描绘一个人物用什么来描。

    如果是选择专业的话,最好选择动画类的专业,或者与编程有关的专业,如果你只是想做监制之类的,编程和美术会请人来搞,就要去学一下策划类的专业了

    问题五:做单机游戏需要学c语言吗? 建议选一个成熟的游戏引擎入手,比如虚幻 寒霜 什么的,Unity也可以,但是不用C。

    做程序学什么都不浪费时间,早晚会用到。

    问题六:请问做游戏需要学习什么软件了解哪些知识 不谈别的,最低要求你的会美工,没有构思何谈游戏,这是最基本的,剩下的相关知识,编程语言 推荐 C/C++ 英语,策划,程序,测试,要是没有相关的知识积累,想做游戏,可以说是千难万难,直接用软件的话,,你是做不出来的,因为有很多东西,是要你想出来,做出来,在添加到软件里,光靠软件是没用的,在软件上也学不到什么的, 建议你先去选择一门语言 会一些基础的东西之后 然后 你就可以 通过 编程语言绘制一些人物图啊 怪物的图啊 ,再通过编程语言控制 那些人物图片 或者怪物图片 行走啊 站立啊 。 基本的就是先学VB编程的工具,以及PHOTOSHOP等图片处理。不过要是现在这方面发展还是建议你去学一些正规学院学一些专业知识。

    问题七:想从事游戏开发,现在需要学什么 建议学XNA吧,微软出的未来游戏开发框架,用C#开发,适合你的

    学C++做游戏比较难,自学能坚持下来的不多,毕竟要学的知识太多,而且C++本身就是一门相对比较难以掌握的语言

    不能说C++是王道吧,感觉现在C++除了在比较低层的开发上处于老大哥的偿位,其它一些中高层的应用都在减少,不过,C++的效率确实不是另我高级语言能比的,但在电脑性能高速发展的现今,我认为C#的性能完全可以开发出不错的游戏

    我也在研究XNA,相对来说真的把游戏开发困难度降低了很多

    问题八:学游戏开发要学些什么? 跟楼主说一下常用的游戏编辑软件吧:

    3dsMAX:大多数游戏开发公司美工使用,效率较高,可以独立制作游戏中所有美术相关资源。

    MAYA:跟3dsMAX差不多的软件,因个人喜好而定, MAYA在制作动作的方面较MAX稍差,不过在很多方面这两款软件都是可以兼容的。

    Maya和3dmax的区别:

    MAX 优势在于模型和插件 ,有丰富的模型库,快速的建模方式和优良的渲染插件及较快的渲染速度,能够在游戏模型、建筑巡游、广告效果图等领域广泛使用。 MAYA 优势在于动画及其特效,在模型方面与MAX 无太大差异,但建模速度较慢。MAYA的动画块较MAX有显著优势,现阶段的动画电影及长片动画都是用 MAYA来制作完成,并且《变形金刚》《蜘蛛侠》 这类科幻电影的 动画及特效也是有MAYA来制作完成,所以MAYA的侧重点在于动画电影的制作。

    Photoshop与Panter:配合MAX或MAYA来绘制各种模型需要用的贴图。

    ZBrush:美工制作超高模用的,然后可以生成法线贴图,在MAYA或MAX中使用。

    Deeppaint3D:可以直接打开3维模型文件,在上面绘制贴图。

    C++:程序使用,用来实现游戏中的各种功能,调试BUG等。

    Alienbrain:文件管理软件。游戏团队不是一个两个人在工作,一大群人的工作成果怎样才能有效的管理并使用?这时就需要一款文件管理软件

    问题九:制作游戏应该学什么编程语言 企业级的游戏开发的话,一般C++多一些,大型游戏要求足够高的运行效率,而JAVA,C#在这一方面是短项,而用C的话又没有类,所以C++开发的游戏比较多,如果是想进游戏公司的话,多学学C++。

    但是如果是个人开发小型游戏的话,建议用C#,小型游戏不需要考虑效率问题,C#足以应付,微软有个东西叫XNA,专为业余的程序员开发小型游戏而设计,上手简单,微软提供了大量的类库,用起来很便捷。

    如果是开发android的游戏的话,没得选,只能用JAVA。

    貌似也有用delphi开发的游戏,不过听说不是主流。

    其实语言不是重点,任何语言都可以做游戏,只是各个语言各有特点,根据需求的不同选择最适合的语言。关键在于算法要理解,理解程序的构架,研究透算法,才是最重要的。

    学习的时候建议以C++来学习,用JAVA或者C#的话学不到指针,用C的话学不到面向对象的思想。不过如果没有任何语言基础的话,建议还是从C学起,先学会最基础的东西再学C++。VB现在已经很少用了,实在没学的必要。

    推荐教材《Visual C++游戏编程基础》

    如果只是想做个小的东西玩玩的话,有很多方便的软件,比如《RPG maker》,用这些东西不需要什么编程的基础就能做一些小的东西,玩玩足以。

    纯粹手打,求采纳。

    问题十:做游戏应该学什么专业 游戏设计是设计游戏内容和规则的一个过程,创建能激起玩家通关热情的目标,以及玩家在追求这些目标时做出的有意义的决定需遵循的规则。这个术语同时也可以表示游戏实际设计中的具体实现和描述设计细节的文档。游戏设计者常常专攻于某一种特定的游戏类型,例如桌面游戏、卡片游戏或者视频游戏等。尽管这些游戏类型看上去很不一样,可是它们却共同拥有很多潜在的概念上或者逻辑上的相似性。

    游戏设计方法的作用从本质上来说是用一系列的约束来指导游戏作品的创作。这些约束因被设计的游戏的类型不同而有所不同。约束的种类有很多,例如:

    技术上的约束

    产品的约束

    特定用户群的约束

    民族方面的约束

    政治上的约束

    与其他设计学科的交互

    一些类型的游戏设计综合了其他多种设计科目。用视频游戏举例来说,需要借助以下学科的知识:

    游戏机制

    视觉艺术

    设计方法

    游戏策划也可称为创意策划,创意分为两种:原创性创意和综合性创意,但人们通常把前一种称为创意,把后一种称为“抄”,这其实是一个误区,两者没有高下之分。

    在自然科学领域,原创性创意出现率比较高一些,很多发明和发现都属于原创性创意,但是,也有不少发明和发现是站在巨人肩膀上捅破了一层窗户纸,并非原创性创意而是综合性创意。

    综合性创意其实是一个选择――融和的过程。首先是选择,去模仿借鉴其他游戏。而融合的过程,为我所用,浑然天成方为上品。要做到从其他游戏中拿来的设计,放在我的游戏中比它原来的游戏更合适,更恰当。要做到所有的选择能够有机结合为一个整体,增一分则多,减一分则少,这才是综合性创意的精髓。

    想学游戏制作,可以到dogame游戏兵工厂教育培训中心看看,他们就是专业教授这个的

    学校网站上有很多这方面的信息,还有免费的游戏制作教学视频,楼主可以多去看看,对学习肯定会很有帮助的。

    此方向可以参考的专业就是计算机科学与软件工程这两个。

    但是开发软件游戏并不是你想象的那样有趣,你需要十足的耐心和过硬的素质。大学中你需要学习各种算法,各种编程语言。如果你不是对这个方向特别感兴趣,建议不要轻易选择,因为这个行业真正出彩的也就是几家公司,大部分毕业生都是程序员,做各种软件调试工作。你需要耐得住寂寞。

    二、一般游戏编程用什么语言和软件

    下面是游戏开发十大编程语言的列表。

    1、C类#

    C语言现在被广泛应用于许多游戏引擎中,是最流行的游戏开发语言之一。它有一个XNA框架、一套微软工具和运行时环境,使它特别适合Xbox或windows上的游戏。如果你想使用monogame在几乎任何平台上发布游戏,这是一种很好的语言。

    2、C类++

    C++是一种面向对象的语言,被认为是最难学习的语言之一,但它是游戏开发人员的重要语言。它允许对硬件和图形进程进行更直接的控制,这对行业很重要,是一些流行游戏引擎的流行语言。它还提供了对参数和内存管理的大量控制,从而提高了游戏的性能和用户体验。

    3、Java

    Java使用与C++相同的面向对象原则,但提供了更广泛的系统。Java代码通常在Java虚拟机(JVM)上运行,并转换为可在任何系统上执行的通用字节码。因此,Java是为数不多的能够让开发人员为任何给定系统开发游戏的游戏编程语言之一。它是最好的游戏编程语言之一。

    4、JavaScript

    JavaScript是最流行的游戏编程语言之一,尤其是作为一种在线交互语言。使用JavaScript,可以更容易地将代码与传统的网络技术(如HTML和CSS)集成,从而导致越来越多的跨平台移动游戏。

    5、HTML5

    HTML5已经成为互联网上最常见的游戏编程语言之一。你今天玩的大多数手机游戏都使用这种标记语言。使用JavaScript很容易创建复杂的基于web的游戏。该语言简单易学,不一定需要学习复杂的算法编程知识,因此成为游戏开发者的热门选择。

    6、SQL语言

    SQL被玩家用来访问后端帐户并在服务器上执行其他操作。有新的语言,库,框架,特别是AR,VR,图形,物理和游戏。

    7、Python

    Python是另一种提供OOP方法的语言,是游戏开发人员使用的最易于使用的通用编程语言之一。它有一个pyGame框架,允许程序员快速开发游戏原型。

    8、Rust

    铁锈被吹捧为C的继承者之一。它主要被Mozilla基金会用作系统编程语言。它具有面向对象到面向数据的方法,有助于游戏开发。

    9、UnrealScript

    Unrealscript是unreal引擎的本机脚本语言。它结合了面向对象、多重继承和功能丰富的游戏等复杂功能。该语言支持所有主要的游戏平台,如微软Windows、MacOS、Linux、steamos、Android和PlaystationVR。

    10、Lua

    由于语言结构和语法简单,Lua正成为游戏界最流行的语言之一。它是一种多平台脚本语言,许多现代游戏引擎都使用Lua作为主要的游戏设计编程语言。

    三、从事游戏开发(程序)工作,要学哪些知识

    首先,C++肯定要好了。

    C语言程序设计

    http://book.jqcq.com/product/472414.html

    语言是国内外广泛使用的计算机语言,是计算机应用人员应掌握的一种程序设计工具。本书全面系统地介绍了C语言编程技术及其相关理论,是一本能使读者全面掌握c语言编程技术的好教程。根据需要,作者除了深入浅出地介绍了C语言的传统编程方法,还别具匠心地介绍了c语言的绘图功能和一些应用开发实例。本书内容新颖、结构合 ...

    C++编程风格

    http://book.jqcq.com/product/620299.html

    编程相关的内容,例如增加代码的可读性、可维护性、可扩展性以及执行效率等的方法。本书的示例代码都是从实际程序中抽取出来的,融人了作者的实际开发经验。讲解如何正确地编写代码以及避开一些常见的误区和陷阱,并给出了许多实用的编程规则,可快速提升读者的C++编程功力。本书描述平实,示例丰富,适合有一定编程� ...

    C++编程思想第2卷:实用编程技术

    http://book.jqcq.com/product/413352.html

    编程技术和最佳的实践方法,深入探究了异常处理方法和异常安全设计;介绍C++的字符串、输入输出流、STL算法、容器和模板的现代用法,包括模板元编程;解释多重继承问题的难点,展示RTTI的实际使用,描述了典型的设计模式及其实现,特别介绍被认为是标准C++下一版特征之一的多线程处理编程技术,并提供了最新的研究成果� ...

    学好C++后,就要掌握数据结构和算法的知识,还是STL。

    数据结构与 STL(英文版) 数据结构与 STL(英文版)

    http://book.jqcq.com/product/412778.html

    数据结构及其实现的基础知识。书中引导学生通过对方法接口、示例和应用的学习,逐渐理解和掌握如何高效地使用数据结构。适合课堂教学和自学参考。 本书特色 大多数数据结构用STL(标准模板库)提供,并详细

    数据结构 C++语言描述(英文影印版) 数据结构 C++语言描述(英文影印版)

    http://book.jqcq.com/product/306107.html

    数据结构。内容从数据结构的基本原理到面向对象程序设计的方法。书内使用适应面极广的C++语言。全书14章分别为:1.绪论;2.基本数据类型;3.抽象数据类型与类;4.集合类;5.栈与队列;6.抽象运算符;7.类属数据类型;8.类与动态存储;9.链表;10.递归;11.树;12.继承与抽象类;13.先进的非线性结构;14.构建集合。书后 ...

    泛型编程与STL

    http://book.jqcq.com/product/332062.html

    编程与STL》阐述了泛型编程的中心思想:concepts、modeling、refinement,并为你展示这些思想如何导出STL的基础概念:iterators、containers、function objects。循此路线,你可以把STL想像为一个由来的完整优势……

    掌握多线程编程是必须的。

    C和C++实务精选:C++面向对象多线程编程

    http://book.jqcq.com/product/351898.html

    . 多线程架构与增量多线程编程技术。第1章介绍了用于构建面向对象程序的不同类型C++组件,以及如何使用这些组件来构建多线程架构。第2、3、4章简要介绍进程、线程、多任务处理、多线程化、规划以及线程优先权的概念。第5章讨论讲程间和线程间通信。第6章讲座线程与进程同步与合作。第6章详细讲座临界区、死锁、数据竞争以 ..

    这些掌握了后,开始掌握通行技术。首先是网络协议:

    《TCP/IP 基础(第7版)》

    http://book.jqcq.com/product/399379.html

    TCP/IP的体系结构和主要应用程序。全书分为8章,分别介绍TCP/IP体系结构与寻址,TCP/IP应用程序,TCP/IP寻址与子网, TCP/IP协议,TCP/IP服务,TCP/IP路由选择, TCP/IP应用程序原理,以及TCP/IP网络故障诊断。本书是国家网络技术水平考试的指定参考教材,适合网络技术人员和网络管理人员阅读,也可供大中专院校相 ...

    TCP/IP详解?卷Ⅰ:协议

    http://book.jqcq.com/product/404145.html

    TCP/IP解析》中的第1卷,主要讲述TCP/IP协议方面的内容。与其他的TCP/IP书藉的最大不同在于,本书不仅仅讲述了RFCS的标准协议,而且结合大量实例讲述了TCP/IP协议包的定义原因及在各种不同的操作系统中(如Sunos4.1.3、Soloris2.2、 AIX3.2.2)的应用与工作方式,这样可以以动态方式讲述TCP/IP的知识,使读者可以轻松掌� ...

    TCP/IP详解卷三:TCP事务协议 HTTP NNTP和UNIX域协议

    http://book.jqcq.com/product/310116.html

    TCP/IP详解系列”的延续。主要内容包括:TCP事务协议,即T/TCP,这是对TCP的扩展,使客户-服务器事务更快、更高效和更可靠; TCP/IP应用,主要是HTTP和NNTP;UNIX域协议,这些协议提供了进程之间通信的一种手段。当客户与服务器进程在同一台主机上时,UNIX域协议通常要比TCP/IP快一倍。本书同样采用了大量的实例和实现细 ...

    然后掌握各种平台下SOCKET的编程技术。

    TCP/IP协议及网络编程技术

    http://book.jqcq.com/product/580242.html

    本书是一本关于TCP/IP协议原理编程技术的教材,由两部分组成:第1部分系统地介绍了TCP/IP协议族的体系结构,并分别介绍了IP层、传输层和应用层中各种协议的具体原理和工作机制;第2部分介绍了基于socket编程接口的网络编程技术,重点讲述了客户端和服务器端编程应注意的问题、可用的模式和技术。作为一本TCP/IP协议理 ...

    Winsock 2网络编程实用教程 Winsock 2网络编程实用教程

    http://book.jqcq.com/product/374343.html

    Winsock,即基于Windows的套接字,是专门为网络开发人员开发网络应用程序设计的编程接口。由于现今网络应用的普及,使成为了IT发展的重要分支之一。本书的出版正是顺应了这种需求。本书简洁而专业地介绍了Winsock的基本概念和操作方式,指导程序员如何利用现有的主流开发工具进行最流行的Windows网络应用的开发。同时,本书 ...

    Windows网络编程

    http://book.jqcq.com/product/401079.html

    Microsoft公司的Visual C++平台不仅具有很强的网络程序处理能力,而且还能提供多种编程风格。与Visual C++捆绑的MFC提供了大量封装良好的网络类,如Winsock、WinInet、ActiveX、DCOM和ATL等,提高了用户在利用Visual C++进行网络开发时的效率。本书主要特色在于对技术细节做了深入的介绍,探讨了大量网络专用函数以及MFC ..

    LINUX网络编程

    http://book.jqcq.com/product/105718.html

    本书详尽而细致地介绍了在Linux操作系统下进行网络编程所需要的各种知识,从基本的进程控制、通信到Berkeley套接字都有讲解。书中还穿插了大量的实例程序,并配以说明,更加方便读者的学习和理解。本书内容的精心安排,简洁的措辞,丰富的实例可以使初学者迅速地掌握Linux网络编程的技术。同时,Linux的高级程序员也可以从� ...

    这写掌握完以后,开始学写LINUX下的服务器编程。

    Linux 程序设计权威指南(附光盘) Linux 程序设计权威指南(附光盘)

    http://book.jqcq.com/product/314783.html

    本书是“Linux与自由软件资源丛书”之一。目前Linux系统已很普及,但是介绍在Linux上进行开发的书籍并不多,本书的Linux上进行应用开发提供了详细的参考资料。内容包括Linux开发环境、Linux编程的入门知识、系统和网络编程、多线程程序设计、控制台编程、X Window系统编程、国际化编程知识等。本书内容丰富、实用性强,附带 ...

    Red HatLINUX 核心技术精解第二版(附盘)

    http://book.jqcq.com/product/311825.html

    Linux是一个性能可以与商业x86 UNIX操作系统相提并论的32位操作系统.本书全面介绍了Linux的安装和使用技术,包括Linux的安装和配置,Linux的运行,在Linux中使用各种外设,以及Linux的其他内容,如用SLIP和PPP拨号上网,将Linux用作Internet主机,在Linux上运行WWW,商务的运作,开发软件及X编程等.

    而GCC是你必须掌握的编译器,VC也不例外。

    GCC技术参考大全

    http://book.jqcq.com/product/378731.html

    GCC(GNU编译程序集合)是目前最重要、应用最广的开放源代码软件。在本书中,专家Arthur Griffith提供了大量关于这种开源软件的信息,教您学会使用GCC为几乎所有的平台和语言开发及部署各类软件。本书分为3个部分。第1部分,“自由软件编译程序”,介绍了编译程序的一些基础知识,以及一些可以用来下载和安装编译程序的指 ...

    C++面向对象程序设计题解与上机指导

    http://book.jqcq.com/product/584574.html

    GCC在DOS/Windows平台上的版本DJGPP(以及与之配合使用的集成软件开发环境RHIDE);上机实验内容与安排,这部分提出了上机实验的指导思想和上机实验的内容与安排,供教学参考。随本书赠送的光盘中包括《C++面向对象程序设计》一书中的全部例题程序,各章习题解答的程序以及 DOS/Windows环境下的GCC版本(DJGPP及其配套 ...

    掌握了这些东西是不够的,你还必须学会服务器方面游戏逻辑的编写,因而要掌握脚本语言的使用,在这方面,一般使用LUA,PYTHON和RUBY来写。

    学习Python:第2版(影印版)

    http://book.jqcq.com/product/851923.html

    Python是流行、开源、面向对象的编程语言,既可以用于编写单机运行的程序也可以编写脚本程序,具有可移植、强大、易用等特点。跟随专业教师学习是最快捷的掌握此语言的方式。新版的《学习Python))把你带到Mark Lutz和David Ascher面前,他们是著名的Python专家和培训师,他们的用语亲切、组织良好的文章已经指导了许多编程� ...

    Programming Ruby中文版(第2版)

    http://book.jqcq.com/product/543520.html

    Ruby是一种跨平台、面向对象的动态类型编程语言。Ruby体现了表达的一致性和简单性,它不仅是一门编程语言,更是表达想法的一种简练方式。它不仅受到广大程序员的欢迎,无数的软件大师亦为其倾倒。Programming Ruby是关于Ruby语言的一本权威著作,也被称为PickAxe Book(镐头书,由封面上的工具得名)。本书是它的第2版,其� ...

    我使用PYTHON,这些掌握后,数据库方面是要有的。

    在LIUNX下一般使用MYSQL和postgresql来作为数据库:

    MySQL 5权威指南(第3版)

    http://book.jqcq.com/product/431843.html

    本书全面深入地介绍了MySQL的功能,主要内容包括MySQL、PHP、Apache、Perl等组件的安装与功能简介,mysql等一些重要系统管理工具和用户操作界面的使用,MySQL数据库系统设计的基础知识与用不同语言设计MySQL数据库的过程,以及SQL语法、工具、选项、API应用指南,最大限度地帮助读者更快地学习和掌握MySQL数据库系统的设计� ...

    好这些知识有了后,可以看一些网络游戏服务器是如何编写的,但这方面的书籍很少,即使出版的也是闪闪咄咄的。不过,我还是找到一本,非常的不错。详细地讲解了游戏的逻辑的实现。

    MUD游戏编程(配光盘) MUD游戏编程(配光盘)

    http://book.jqcq.com/product/584461.html

    本书从网络基本知识入手,全面阐述了如何开发纯文字MUD游戏。并通过构建SimpleMUD和BetterMUD这两个MUD,重点讲述了如何实现MUD。本书分为4大部分。第1部分介绍了计算机网络的基本知识、Winsock/Berkeley Sockets API以及多线程的概念;展示了本书所用的基本库BasicLib中的所有类和函数;创建了一个套接字库SocketLib;介 ...

    最后介绍相关网站:

    一个开源的网络游戏,你可以从中看出游戏服务器的编写方法:

    http://themanaworld.org

    游戏开发交流:

    http://www.gameres.com

    其它,你可以搜索这些关键字: RAKNET,OPENTNL。

    希望有用!

    以上是服务器的,如果是客户端的话,就更多了。

    四、我想学编程

    编程

    这是每个游戏编程FAQ里都有的问题。这个问题每星期都会在游戏开发论坛上被问上好几次。这是个很好的问题,但是,没人能给出简单的答案。在某些应用程序中,总有一些计算机语言优于其他语言。下面是几种用于编写游戏的主要编程语言的介绍及其优缺点。希望这篇文章能帮助你做出决定。

    1、C语言

    如果说FORTRAN和COBOL是第一代高级编译语言,那么C语言就是它们的孙子辈。C语言是Dennis Ritchie在七十年代创建的,它功能更强大且与ALGOL保持更连续的继承性,而ALGOL则是COBOL和FORTRAN的结构化继承者。C语言被设计成一个比它的前辈更精巧、更简单的版本,它适于编写系统级的程序,比如操作系统。在此之前,操作系统是使用汇编语言编写的,而且不可移植。C语言是第一个使得系统级代码移植成为可能的编程语言。

    C语言支持结构化编程,也就是说C的程序被编写成一些分离的函数呼叫(调用)的集合,这些呼叫是自上而下运行,而不像一个单独的集成块的代码使用GOTO语句控制流程。因此,C程序比起集成性的FORTRAN及COBOL的“空心粉式代码”代码要简单得多。事实上,C仍然具有GOTO语句,不过它的功能被限制了,仅当结构化方案非常复杂时才建议使用。

    正由于它的系统编程根源,将C和汇编语言进行结合是相当容易的。函数调用接口非常简单,而且汇编语言指令还能内嵌到C代码中,所以,不需要连接独立的汇编模块。

    优点:有益于编写小而快的程序。很容易与汇编语言结合。具有很高的标准化,因此其他平台上的各版本非常相似。

    缺点:不容易支持面向对象技术。语法有时会非常难以理解,并造成滥用。

    移植性:C语言的核心以及ANSI函数调用都具有移植性,但仅限于流程控制、内存管理和简单的文件处理。其他的东西都跟平台有关。比如说,为Windows和Mac开发可移植的程序,用户界面部分就需要用到与系统相关的函数调用。这一般意味着你必须写两次用户界面代码,不过还好有一些库可以减轻工作量。

    用C语言编写的游戏:非常非常多。

    资料:C语言的经典著作是《The C Programming Language》,它经过多次修改,已经扩展到最初的三倍大,但它仍然是介绍C的优秀书本。一本极好的教程是《The Waite Group's C Primer Plus》。

    2、C++

    C++语言是具有面向对象特性的C语言的继承者。面向对象编程,或称OOP是结构化编程的下一步。OO程序由对象组成,其中的对象是数据和函数离散集合。有许多可用的对象库存在,这使得编程简单得只需要将一些程序“建筑材料”堆在一起(至少理论上是这样)。比如说,有很多的GUI和数据库的库实现为对象的集合。

    C++总是辩论的主题,尤其是在游戏开发论坛里。有几项C++的功能,比如虚拟函数,为函数呼叫的决策制定增加了一个额外层次,批评家很快指出C++程序将变得比相同功能的C程序来得大和慢。C++的拥护者则认为,用C写出与虚拟函数等价的代码同样会增加开支。这将是一个还在进行,而且不可能很快得出结论的争论。

    我认为,C++的额外开支只是使用更好的语言的小付出。同样的争论发生在六十年代高级程序语言如COBOL和FORTRAN开始取代汇编成为语言所选的时候。批评家正确的指出使用高级语言编写的程序天生就比手写的汇编语言来得慢,而且必然如此。而高级语言支持者认为这么点小小的性能损失是值得的,因为COBOL和FORTRAN程序更容易编写和维护。

    优点:组织大型程序时比C语言好得多。很好的支持面向对象机制。通用数据结构,如链表和可增长的阵列组成的库减轻了由于处理低层细节的负担。

    缺点:非常大而复杂。与C语言一样存在语法滥用问题。比C慢。大多数编译器没有把整个语言正确的实现。

    移植性:比C语言好多了,但依然不是很乐观。因为它具有与C语言相同的缺点,大多数可移植性用户界面库都使用C++对象实现。

    使用C++编写的游戏:非常非常多。大多数的商业游戏是使用C或C++编写的。

    资料:最新版的《The C++ Programming Language》非常好。作为教程,有两个阵营,一个假定你知道C,另外一个假定你不知道。到目前为止,最好的C++教程是《Who's Afraid of C++》,如果你已经熟知C,那么试一下《Teach Yourself C++》。

    3、我该学习C++或是该从C开始

    我不喜欢这种说法,但它是继“我该使用哪门语言”之后最经常被问及的问题。很不幸,不存在标准答案。你可以自学C并使用它来写程序,从而节省一大堆的时间,不过使用这种方法有两个弊端:

    你将错过那些面向对象的知识,因为它可能在你的游戏中使得数据建模更有效率的东西。

    最大的商业游戏,包括第一人称射击游戏很多并没有使用C++。但是,这些程序的作者即使使用老的C的格式,他们通常坚持使用面向对象编程技术。如果你只想学C,至少要自学OO(面向对象)编程技术。OO是仿真(游戏)的完美方法,如果你不学习OO,你将不得不“辛苦”的工作。

    4、汇编语言

    显然,汇编是第一个计算机语言。汇编语言实际上是你计算机处理器实际运行的指令的命令形式表示法。这意味着你将与处理器的底层打交道,比如寄存器和堆栈。如果你要找的是类英语且有相关的自我说明的语言,这不是你想要的。

    确切的说,任何你能在其他语言里做到的事情,汇编都能做,只是不那么简单 — 这是当然,就像说你既可以开车到某个地方,也可以走路去,只是难易之分。话虽不错,但是新技术让东西变得更易于使用。

    总的来说,汇编语言不会在游戏中单独应用。游戏使用汇编主要是使用它那些能提高性能的零零碎碎的部分。比如说,毁灭战士整体使用C来编写,有几段绘图程序使用汇编。这些程序每秒钟要调用数千次,因此,尽可能的简洁将有助于提高游戏的性能。而从C里调用汇编写的函数是相当简单的,因此同时使用两种语言不成问题。

    特别注意:语言的名字叫“汇编”。把汇编语言翻译成真实的机器码的工具叫“汇编程序”。把这门语言叫做“汇编程序”这种用词不当相当普遍,因此,请从这门语言的正确称呼作为起点出发。

    优点:最小、最快的语言。汇编高手能编写出比任何其他语言能实现的快得多的程序。你将是利用处理器最新功能的第一人,因为你能直接使用它们。

    缺点:难学、语法晦涩、坚持效率,造成大量额外代码 — 不适于心脏虚弱者。

    移植性:接近零。因为这门语言是为一种单独的处理器设计的,根本没移植性可言。如果使用了某个特殊处理器的扩展功能,你的代码甚至无法移植到其他同类型的处理器上(比如,AMD的3DNow指令是无法移植到其它奔腾系列的处理器上的)。

    使用汇编编写的游戏:我不知道有什么商业游戏是完全用汇编开发的。不过有些游戏使用汇编完成多数对时间要求苛刻的部分。

    资料:如果你正在找一门汇编语言的文档,你主要要找芯片的文档。网络上如Intel、AMD、Motorola等有一些关于它们的处理器的资料。对于书籍而言,《Assembly Language: Step-By-Step》是很值得学习的。

    5、Pascal语言

    Pascal语言是由Nicolas Wirth在七十年代早期设计的,因为他对于FORTRAN和COBOL没有强制训练学生的结构化编程感到很失望,“空心粉式代码”变成了规范,而当时的语言又不反对它。Pascal被设计来强行使用结构化编程。最初的Pascal被严格设计成教学之用,最终,大量的拥护者促使它闯入了商业编程中。当Borland发布IBM PC上的 Turbo Pascal时,Pascal辉煌一时。集成的编辑器,闪电般的编译器加上低廉的价格使之变得不可抵抗,Pascal编程了为MS-DOS编写小程序的首选语言。

    然而时日不久,C编译器变得更快,并具有优秀的内置编辑器和调试器。Pascal在1990年Windows开始流行时走到了尽头,Borland放弃了Pascal而把目光转向了为Windows 编写程序的C++。Turbo Pascal很快被人遗忘。

    最后,在1996年,Borland发布了它的“Visual Basic杀手”— Delphi。它是一种快速的带华丽用户界面的 Pascal编译器。由于不懈努力,它很快赢得了一大群爱好者。

    基本上,Pascal比C简单。虽然语法类似,它缺乏很多C有的简洁操作符。这既是好事又是坏事。虽然很难写出难以理解的“聪明”代码,它同时也使得一些低级操作,如位操作变得困难起来。

    优点:易学、平台相关的运行(Delphi)非常好。

    缺点:“世界潮流”面向对象的Pascal继承者(Modula、Oberon)尚未成功。语言标准不被编译器开发者认同。专利权。

    移植性:很差。语言的功能由于平台的转变而转变,没有移植性工具包来处理平台相关的功能。

    使用Pascal编写的游戏:几个。DirectX的Delphi组件使得游戏场所变大了。

    资料:查找跟Delphi有关的资料,请访问:Inprise Delphi page。

    6、Visual Basic

    哈,BASIC。回到八十年代的石器时代,它是程序初学者的第一个语言。最初的BASIC形式,虽然易于学习,却是可怕的无组织化,它义无反顾的使用了GOTO充斥的“空心粉式代码”。当回忆起BASIC的行号和GOSUB命令,没有几个人能止住眼角的泪水。

    快速前进到九十年代早期,虽然不是苹果公司所希望的巨人,HyperCard仍然是一个在Windows下无法比拟的吸引人的小型编程环境。Windows下的HyperCard克隆品如ToolBook又慢又笨又昂贵。为了与HyperCard一决高下,微软取得了一个小巧的名为Thunder编程环境的许可权,并把它作为Visual Basci 1.0发布,其用户界面在当时非常具有新意。这门语言虽然还叫做Basic(不再是全部大写),但更加结构化了,行号也被去除。实际上,这门语言与那些内置于TRS-80、Apple II及Atari里的旧的ROM BASIC相比,更像是带Basic风格动词的Pascal。

    经过六个版本,Visual Basic变得非常漂亮。用户界面发生了许多变化,但依然保留着“把代码关联到用户界面”的主旨。这使得它在与即时编译结合时变成了一个快速原型的优异环境。

    优点:整洁的编辑环境。易学、即时编译导致简单、迅速的原型。大量可用的插件。虽然有第三方的DirectX插件,DirectX 7已准备提供Visual Basic的支持。

    缺点:程序很大,而且运行时需要几个巨大的运行时动态连接库。虽然表单型和对话框型的程序很容易完成,要编写好的图形程序却比较难。调用Windows的API程序非常笨拙,因为VB的数据结构没能很好的映射到C中。有OO功能,但却不是完全的面向对象。专利权。

    移植性:非常差。因为Visual Basic是微软的产品,你自然就被局限在他们实现它的平台上。也就是说,你能得到的选择是:Windows,Windows或Widnows。当然,有一些工具能将VB程序转变成Java。

    使用Visual Basic编写的游戏:一些。有很多使用VB编写的共享游戏,还有一些是商业性的。

    资料:微软的VB页面有一些信息。

    7、Java

    Java是由Sun最初设计用于嵌入程序的可移植性“小C++”。在网页上运行小程序的想法着实吸引了不少人的目光,于是,这门语言迅速崛起。事实证明,Java不仅仅适于在网页上内嵌动画 — 它是一门极好的完全的软件编程的小语言。“虚拟机”机制、垃圾回收以及没有指针等使它很容易实现不易崩溃且不会泄漏资源的可靠程序。

    虽然不是C++的正式续篇,Java从C++ 中借用了大量的语法。它丢弃了很多C++的复杂功能,从而形成一门紧凑而易学的语言。不像C++,Java强制面向对象编程,要在Java里写非面向对象的程序就像要在Pascal里写“空心粉式代码”一样困难。

    优点:二进制码可移植到其他平台。程序可以在网页中运行。内含的类库非常标准且极其健壮。自动分配合垃圾回收避免程序中资源泄漏。网上数量巨大的代码例程。

    缺点:使用一个“虚拟机”来运行可移植的字节码而非本地机器码,程序将比真正编译器慢。有很多技术(例如“即时”编译器)很大的提高了Java的速度,不过速度永远比不过机器码方案。早期的功能,如AWT没经过慎重考虑,虽然被正式废除,但为了保持向后兼容不得不保留。越高级的技术,造成处理低级的机器功能越困难,Sun为这门语言增加新的“受祝福”功能的速度实在太慢。

    移植性:最好的,但仍未达到它本应达到的水平。低级代码具有非常高的可移植性,但是,很多UI及新功能在某些平台上不稳定。

    使用Java编写的游戏:网页上有大量小的Applet,但仅有一些是商业性的。有几个商业游戏使用Java作为内部脚本语言。

    资料:Sun的官方Java页面有一些好的信息。IBM也有一个非常好的Java页面。JavaLobby是一个关于Java新闻的最好去处。

    8、创作工具

    上面所提及的编程语言涵盖了大多数的商业游戏。但是也有一个例外,这个大游戏由于它的缺席而变得突出。

    “神秘岛”。没错,卖得最好的商业游戏不是使用以上任何一门语言编的,虽然有人说“神秘岛”99%是使用 3D建模工具制作的,其根本的编程逻辑是在HyperCard里完成的。

    多数创作工具有点像Visual Basic,只是它们工作在更高的层次上。大多数工具使用一些拖拉式的流程图来模拟流程控制。很多内置解释的程序语言,但是这些语言都无法像上面所说的单独的语言那样健壮。

    优点:快速原型 — 如果你的游戏符合工具制作的主旨,你或许能使你的游戏跑得比使用其他语言快。在很多情况下,你可以创造一个不需要任何代码的简单游戏。使用插件程序,如Shockware及IconAuthor播放器,你可以在网页上发布很多创作工具生成的程序。

    缺点:专利权,至于将增加什么功能,你将受到工具制造者的支配。你必须考虑这些工具是否能满足你游戏的需要,因为有很多事情是那些创作工具无法完成的。某些工具会产生臃肿得可怕的程序。

    移植性:因为创作工具是具有专利权的,你的移植性以他们提供的功能息息相关。有些系统,如Director可以在几种平台上创作和运行,有些工具则在某一平台上创作,在多种平台上运行,还有的是仅能在单一平台上创作和运行。

    使用创作工具编写的游戏:“神秘岛”和其他一些同类型的探险游戏。所有的Shockwave游戏都在网络上。

    资料:Director、HyperCard、SuperCard、IconAuthor、Authorware。

    9、易语言

    ★全中文支持,无需跨越英语门槛。★全可视化编程,支持所见即所得程序界面设计和程序流程编码。★中文语句快速录入。提供多种内嵌专用输入法,彻底解决中文语句输入速度慢的问题。★代码即文档。自动规范强制代码格式转换,任何人编写的任何程序源代码格式均统一。★参数引导技术,方便程序语句参数录入。★无定义类关键字。所有程序定义部分均采用表格填表方式,用户无需记忆此类关键字及其使用格式。★命令格式统一。所有程序语句调用格式完全一致。★语法格式自动检查。自动检查并提示所输入语句的语法格式是否正确,且可自动添加各类名称。★全程提示与帮助。鼠标停留立即显示相关项目提示。编程时提示语法格式,调试时提示变量当前内容,随时按下F1键可得到与当前主题相关详细帮助等。★名称自动管理。用户修改任一名称定义,其它所有包含该名称的程序代码均自动修正。★集成化开发环境。集界面设计、代码编写、调试分析、编译打包等于一体。★学习资源丰富。详细的帮助文件、数十兆的知识库、数万用户的网上论坛、教材已出版发行……

    10、结论

    你可能希望得到一个关于“我该使用哪种语言”这个问题的更标准的结论。非常不幸,没有一个对所有应用程序都最佳的解决方案。C适于快而小的程序,但不支持面向对象的编程。C++完全支持面向对象,但是非常复杂。Visual Basic与Delphi易学,但不可移植且有专利权。Java有很多简洁的功能,但是慢。创作工具可以以最快的速度产生你的程序,但是仅对某一些类型的程序起作用。最好的方法是决定你要写什么样的游戏,并选择对你的游戏支持最好的语言。“试用三十天”的做法成为工业标准是件好事情。

    以上就是关于游戏编程教学相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。


    推荐阅读:

    什么游戏可以赚钱真实可靠

    游戏策划一般是什么专业(游戏策划一般是什么专业的)

    app免费游戏排行榜(app免费游戏排行榜)

    gpt谷丙转氨酶正常值(gpt谷丙转氨酶临床意义)

    小组logo设计及寓意