登入帳戶  | 訂單查詢  | 購物車/收銀台(0) | 在線留言板  | 付款方式  | 聯絡我們  | 運費計算  | 幫助中心 |  加入書簽
會員登入   新用戶註冊
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類閱讀雜誌 香港/國際用戶
最新/最熱/最齊全的簡體書網 品種:超過100萬種書,正品正价,放心網購,悭钱省心 送貨:速遞 / 物流,時效:出貨後2-4日

2024年10月出版新書

2024年09月出版新書

2024年08月出版新書

2024年07月出版新書

2024年06月出版新書

2024年05月出版新書

2024年04月出版新書

2024年03月出版新書

2024年02月出版新書

2024年01月出版新書

2023年12月出版新書

2023年11月出版新書

2023年10月出版新書

2023年09月出版新書

『簡體書』Lua游戏开发实践指南(附光盘)(Lua之父强烈推荐,全面讲解Lua语言核心要素与利用Lua进行游戏开发的技术细节和最佳实践)

書城自編碼: 2006098
分類: 簡體書→大陸圖書→計算機/網絡圖形圖像/多媒體
作者: [美]斯库特玛
國際書號(ISBN): 9787111403357
出版社: 机械工业出版社
出版日期: 2013-01-01
版次: 1 印次: 1
頁數/字數: 246/
書度/開本: 16开 釘裝: 平装

售價:NT$ 549

我要買

share:

** 我創建的書架 **
未登入.



新書推薦:
周易
《 周易 》

售價:NT$ 203.0
东南亚的传统与发展
《 东南亚的传统与发展 》

售價:NT$ 306.0
乾隆制造
《 乾隆制造 》

售價:NT$ 398.0
资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册)
《 资治通鉴臣光曰辑存 资治通鉴目录(司马光全集)(全二册) 》

售價:NT$ 1316.0
明代社会变迁时期生活质量研究
《 明代社会变迁时期生活质量研究 》

售價:NT$ 1367.0
律令国家与隋唐文明
《 律令国家与隋唐文明 》

售價:NT$ 332.0
紫云村(史杰鹏笔下大唐小吏的生死逃亡,新历史主义小说见微之作,附赠5张与小说内容高度契合的宣纸彩插)
《 紫云村(史杰鹏笔下大唐小吏的生死逃亡,新历史主义小说见微之作,附赠5张与小说内容高度契合的宣纸彩插) 》

售價:NT$ 449.0
现代吴语的研究(中华现代学术名著3)
《 现代吴语的研究(中华现代学术名著3) 》

售價:NT$ 296.0

建議一齊購買:

+

NT$ 711
《 Cocos2d-x 3.x游戏开发之旅 》
+

NT$ 1152
《 游戏引擎架构(迈向现代游戏之路完美入口 业界万众企盼 隆重推荐) 》
+

NT$ 621
《 Lua实战:iOS游戏开发 》
+

NT$ 642
《 Cocos2d-x游戏开发之旅(含CD光盘1张) 》
+

NT$ 549
《 Cocos2d-x高级开发教程:制作自己的《捕鱼达人》【国内第一本全面深入讲解Cocos2d-x进阶内容的图书,《捕鱼达人》代码大揭秘】 》
編輯推薦:
·资深游戏开发专家兼Lua开发工程师10余年工作经验结晶,Lua语言创始人亲自作序推荐,权威性毋庸置疑

·内容全面而深入,既深入阐述了Lua语言的核心要素,又全方位地讲解了利用Lua进行游戏开发和设计的各种技术细节、方法和最佳实践

·实战性强,不仅为各个知识点精心设计了大量辅助读者理解的小案例,而且还包括完整的大案例,可操作性极强
內容簡介:
本书是资深Lua游戏开发工程师10余年工作经验和智慧的结晶,Lua语言创始人亲自作序推荐,是Lua游戏开发领域最具实战意义和代表性的著作之一。它不仅详细讲解了在游戏开发中使用Lua的各种技术细节、方法技巧和最佳实践,而且讲解了如何使用Lua作为主要工具将游戏设计转化为代码实现的过程。此外,它还重点阐述了Lua语言的核心要素。最重要的是,本书包含大量精心设计的案例,并附赠了完整的源代码,可操作性极强。

全书一共15章:第1~3章简单地介绍了Lua语言的特性、授权,以及在游戏开发中的强大用途;第4~5章详细讲解了Lua语言的基本语法和核心要素;第6~7章讲解了Lua与CC++程序的整合以及与C++的交互相关的技术细节;第8~9章介绍了开发前需要做的准备工作,以及如何设计Lua版本的实现;第10章讲解了如何使用Lua来处理游戏数据;第11章讲解了Lua驱动的GUI;第12章详细讲解了两个完整的游戏开发案例;第13章结合实例讲解了如何使用Lua定义和控制AI;第14章展示了Lua在图形绘制和图像处理方面的强大功能;第15章探讨了Lua与多媒体、Lua脚本的调试、Lua应用的资源管理以及Lua代码的发布等内容。
關於作者:
Paul
Schuytema 资深游戏开发专家兼Lua开发工程师,在游戏开发领域研究和实践10余年,积累了丰富的经验。曾经在过去的10届全球游戏开发大会(GDC)中发表过重要演讲,在游戏开发领域颇有影响力。他设计并开发了20余款经典的游戏,发表了200多篇与游戏开发相关的专业文章,而且他还是多本书籍的作者或合著者。
Mark Manyen 资深游戏开发专家兼Lua开发工程师,Magic
Lantern的技术总监,在超过25款游戏中指导并使用了该技术。他在Magic Lantern''s J5
技术套件中引入了Lua,并且开发了所有与J5代码库相关联的“Lua Glue”函数。
目錄
译者序

前言
致谢
第1章游戏开发入门
1 1越来越复杂的开发过程
1 2更好的开发方式
1 3为什么使用Lua
1 4本章小结
第2章脚本语言
2 1脚本语言简介
2 2Lua简介
2 2 1Lua的历史
2 2 2Lua授权
2 3本章小结
第3章游戏开发世界的Lua语言
3 1脚本语言和游戏
3 2游戏项目中的Lua
3 2 1游戏界面
3 2 2管理游戏数据
3 2 3事件处理
3 2 4保存和读取游戏状态
3 2 5人工智能
3 2 6快速构建原型
3 3本章小结
第4章Lua入门
4 1使用Lua控制台
4 2Lua基础
4 3变量
4 3 1nil
4 3 2Boolean
4 3 3string
4 3 4Number
4 3 5table
4 3 6局部变量和全局变量
4 4运算符
4 4 1算术运算符
4 4 2关系运算符
4 4 3逻辑运算符
4 5控制结构
4 5 1if
4 5 2while和repeat
4 5 3for
4 5 4break
4 6本章小结
第5章深入学习Lua
5 1函数
5 1 1单一参数
5 1 2多个参数
5 1 3返回值
5 2标准库
5 2 1assertmyValue
5 2 2dofilefilename
5 2 3math floor
5 2 4math random
5 2 5math min
5 3字符处理
5 3 1类型转换
5 3 2string charn1,n2,
5 3 3string lenmyString
5 3 4string submyString,
start,end
5 3 5string format
5 3 6string findsourceString,findString
5 3 7字符和格式
5 4table数据结构
5 4 1table getnmyTable
5 4 2table insertmyTable,position,value
5 4 3table removemyTable,position
5 4 4table引用
5 4 5多维table
5 4 6pairs
5 5IO基础
5 6本章小结
第6章Lua与CC++程序的整合
6 1初期设计要点
6 1 1Lua环境
6 1 2LuaGlue函数
6 2基本实现方式
6 2 1创建Lua运行环境
6 2 2添加LuaGlue函数
6 2 3命令处理
6 2 4退出程序
6 2 5cLua对象和LuaLib
6 2 6使用cLua的例子
6 2 7LuaGlue函数的优点
6 2 8LuaGlue函数:参数和返回值
6 3本章小结
第7章Lua与C++的交互
7 1重新审视LuaGlue函数
7 2C++代码和Lua的交互
7 3事件驱动的编程
7 3 1示例事件
7 3 2事件的参数
7 4错误处理
7 5本章小结
第8章开发准备
8 1Visual C++ 6 0工作区
8 2DirectX基础
8 3LuaGUI简介
8 3 1启动GUI
8 3 2界面
8 3 3界面控件
8 3 4事件
8 3 5与GUI系统相关的LuaGlue函数
8 3 6Shell程序的扩展
8 4调试窗口
8 5Windows注册表
8 6本章小结
第9章设计Lua版本的实现
9 1游戏设计原则
9 1 1什么是游戏
9 1 2了解玩家的想法
9 2基础库设定
9 3设计文档
9 4Lua编程规范
9 5本章小结
第10章使用Lua处理游戏数据
10 1简单的游戏数据
10 1 1太空飞船的例子
10 1 2《Take Away》的玩家飞船
10 1 3敌舰数据
10 1 4补给箱数据
10 2大数据集
10 2 1表单型数据
10 2 2Lua格式的数据文件
10 3使用Lua保存游戏数据
10 3 1案例1——《Frontrunner》
10 3 2案例2——健身大亨
10 4本章小结
第11章Lua驱动的GUI
11 1GUI系统概要
11 2GUI的C++类
11 2 1GUI控件:Sprite
11 2 2GUI控件:TextField
11 2 3GUI控件:Button
11 2 4界面
11 2 5GUI管理器
11 3GUI LuaGlue函数
11 4进一步的说明
11 5Lua游戏界面
11 5 1界面设计原则
11 5 2快速创建界面
11 5 3载入界面
11 5 4主菜单界面
11 5 5Controls界面
11 5 6InGame界面
11 6本章小结
第12章Lua游戏编程
12 1游戏主循环
12 2井字棋
12 2 1游戏的初始化
12 2 2游戏回合处理
12 2 3模拟游戏回合
12 3《Take Away》游戏的实现原理
12 3 1InGame
12 3 2使用计时器
12 3 3玩家操作
12 3 4子弹运动
12 3 5飞船移动
12 3 6绘制活动的物体
12 4本章小结
第13章使用Lua定义和控制AI
13 1智能的体现
13 221点游戏
13 3井字棋
13 4《Take Away》游戏的实现
13 4 1掠夺舰
13 4 2攻击舰
13 4 3冲击舰
13 4 4混合舰
13 4 5控制飞行方向
13 4 6碰撞检测
13 5其他AI的例子
13 5 1静态追踪
13 5 2近距离追踪
13 5 3动态追踪
13 5 4预判型追踪
13 5 5炮塔攻击
13 5 6躲避攻击
13 5 7防御性射击
13 5 8攻击伤害
13 6有限状态机
13 7路径寻找
13 7 1算法概要
13 7 2路径寻找示例
13 7 3Lua实现
13 8本章小结
第14章Lua和图像
14 1运行绘图示例
14 1 1指纹示例
14 1 2爆炸示例
14 2线性移动
14 2 1GetCollisions函数
14 2 2HitTest函数
14 2 3进一步的说明
14 3碰撞检测
14 3 1LuaGlue函数SetTexture
14 3 2坦克示例
14 42D粒子系统
14 5本章小结
第15章最后说明
15 1添加音效和音乐
15 1 1LuaGlue函数PlaySound
15 1 2音乐
15 2使用编辑器
15 3调试Lua脚本
15 3 1通用原则
15 3 2调用DoFile函数
15 3 3Lua 错误消息
15 3 4使用实时调试窗口
15 3 5使用文本框
15 3 6使用文件输出
15 4资源管理
15 4 1资源的组织
15 4 2运行时的文件夹
15 5发布Lua代码
15 6许可证
15 7进一步的说明
15 8本章小结
內容試閱
第1章
游戏开发入门
本章要点
■ 越来越复杂
■ 更好的方式
■ 为什么选择Lua
创建自己的游戏是最激动人心的事情之一。创造可以传递快乐,在游戏中经历挑战和胜利的快感,对于参与者是一次心灵的冲击。

如果你是一名游戏爱好者,一定体验过第一次玩自己的游戏时的那种快乐,还有当看到伙伴玩你的游戏时,发自内心的喜悦和兴奋的那种满足感。

这种感觉对于资深的游戏开发者来说也是一样,我们同样在乎我们开发的游戏,没有什么比看到别人快乐地游戏更让人感到激动的了,因为其中饱含着爱、血汗、眼泪和真心付出。

1.1越来越复杂的开发过程

许多年前,大部分游戏是开发者在车库和地下室、利用周末或业余时间开发的。现在若制作能够在当地电子市场售卖的游戏,则需要许多专业的开发者分工协作。

复杂度逐渐增长导致了专业的分工。游戏美术设计人员负责制作2D或3D动画以及静态模型,程序员实现网络编程、人工智能(AI)和3D渲染。在这种专业的分工下,想要保持过去那种灵活并富有创造性的游戏开发过程越来越难。

开发团队规模的不断增长,以及游戏复杂度的不断提高,使得不同游戏系统之间的依赖性也在提高。这些依赖性则直接导致了开发周期延长,游戏设计想法无法验证,创新和游戏灵感也不得不由于开发周期紧张而有所限制。

若干年前,我得到一个机会拜访了一家知名的游戏工作室,他们当时正在开发一款第三人称冒险射击类游戏。这个游戏看起来很“酷”,3D场景绚丽多彩,与环境的交互也显得十分真实。

我有幸看到了游戏制作的整个过程。首先,3D美术设计师用建模软件创建了一个游戏场景,把这些模型导入一个内部工具中,让设计师设置各种触发区域,当玩家角色或者AI控制的敌人进入该区域时触发特定的游戏事件。然后,设计师会坐下来和程序员交流每一个触发区域,告诉他们期待发生的结果,程序员做好各种笔记,接着花许多天时间来实现这些代码。完成之后,设计师会检验成果,并提出一些修改意见,然后整个过程再不断重复。

尽管结果是可靠的,但可以想象这个过程非常艰苦,不仅耗时而且呆板。我知道一定有更好的方式,不过在那个时候我对脚本语言还一无所知。

【前言】
Lua游戏开发

游戏开发是一个激动人心的过程,创造出让玩家花费数小时并乐在其中的游戏,给人带来的成就感是任何事情都无法比拟的。然而,这个创造的过程正在变得越来越难。那种奋战几个晚上或者几周就能单枪匹马设计出热门游戏的日子已经一去不复返,现在的游戏往往需要数十人的开发团队工作很多个月甚至几年才能完成。就算是那些可以从网上下载的最简单的“休闲游戏”也通常是由专业开发者组成的团队开发数月的成果。

尽管游戏开发的规模不断增大,但始终有一个不变的追求——测试、更新、调整,以及快速验证游戏性的能力,通常这个部分是设计和开发过程的核心。采用一种像Lua这样的脚本语言以及内核级别的语言(如C++)可以帮助用户开发专业的游戏,并且还能让开发者和设计师快速实现设计想法、测试游戏功能。
适用读者
本书适合三类读者:

游戏程序员。程序员在开发团队中负责实现Lua和C++之间的接口,并且通常还要编写部分或者全部的游戏脚本。本书将告诉程序员如何将Lua和LuaGlue的功能集成到游戏开发项目中。对于程序员来说,最重要的是,使用Lua可以在游戏开发的过程中节省很多时间和精力,因为许多游戏的功能可以由设计师和脚本程序员来实现。

游戏设计师。通常,游戏设计师会采用像Lua这样的脚本语言在运行环境中来实现部分设计。本书可以作为Lua语言的初级读本,为设计师打下坚实的技能基础,从而去构建真实的游戏世界。同时,本书还可以激发设计师的灵感,使用Lua开发可以帮助他们使用工具快速开发原型,快速实现并且进行创意的验证。

业余游戏开发者。学习如何开发你自己的游戏是富有成就感和具有挑战性的。游戏行业鼓舞了许多这样的业余爱好者,通过自己的项目来学习更多关于游戏和开发的知识,这样的付出很值得。本书展示了经验丰富的业余游戏开发者如何在他们的项目中使用Lua,还提供一个已有的框架以便入门并深入学习Lua,进而快速开发没有任何C++代码的游戏提供完整的控制台和游戏测试环境。
本书主要内容
在本书中,有一篇关于Lua的简介,包括历史背景和脚本编程两方面。此外,读者还将学会如何链接Lua API
来扩展C++功能。

建立了一定的知识基础后,本书将带领读者使用Lua脚本语言开发一个游戏的“快速原型”。这个游戏会为读者展示使用C++功能和Lua脚本的方法,例如:
■ 存储和载入游戏数据
■ 创建模块化的、灵活的GUI系统
■ 用Lua脚本管理游戏的实时事件
■ 使用Lua定义和控制游戏的AI(人工智能)
系统要求
■ P450或者更好的处理器
■ Windows 2000XP
■ 32MB RAM
■ 演示程序要求:
? DirectX 9 (包含在CD?ROM中)
? DX兼容的3D视频加速器
■ DirectX SDK:
? 操作系统:Microsoft Windowsr 98,Windows Millennium Edition
Windows Me,或者Windows 2000,Windows Server 2003,Windows XP
?
约65MB可用硬盘空间(安装完成后可以删除安装文件。剩下的DirectX文件约占18MB硬盘空间,如果安装了更早版本的DirectX,可能使用空间会有所不同。DirectX
9?0会覆盖之前的版本。)
■ Lua:
? 兼容大部分可以编译C语言的系统
■ Ogg Vorbis:
? Microsoft Windows 95,98,Me,NT,2000 或者XP
? 声卡
? 处理器:Pentium 200MHz以上
? 32MB RAM
■ Zeus:
? Microsoft Windows 95,98,Me,NT,2000 或者XP
? 4MB RAM
? 4?5MB可用硬盘空间
随书光盘内容
随书光盘中的内容包含下列文件夹。
C++ Code:包含《Take Away》游戏和本书中其他例子的Visual
Studio项目和所有C++代码(使用?NET版本的Visual Studio)。还有一个VS6_C++
Code文件夹,包含了使用Visual Studio 6的代码。
Chapters:包含子文件夹(以章节命名),提供本书中的所有Lua脚本和可执行程序。
Documents:包含了《Take Away》游戏的设计文档和Lua脚本编程规范。
DX9?0c:包含了DirectX 9 SDK和最新的运行时发布包。
Figures:包含了本书中的所有图片,保存在各章节的文件夹下。
License:包含了Lua和Ogg Vorbis的发布版本的许可证文档。
Lua:包含了Lua控制台、Lua手册和Lua 5?0的源代码。
OggVorbis:包含了Ogg Vorbis音乐系统的源代码。
Take Away:本书中《Take Away》游戏的完整版本(部分的版本在各自章节的文件夹下)。
Zeus:包含了Zeus程序编辑器的共享版,是一个不错的Lua脚本编辑器。
注意事项
我们目前正在从旧的Visual Studio架构转换到?NET架构。本书中的大部分代码,包括DirectX
SDK,都能在?NET版本的Visual Studio下正常工作。
我们知道还有许多程序员在Visual Studio
6下工作,因此也提供了这个版本的项目文件。不过需要注意,随书光盘中附带的DirectX SDK不能在Visual Studio
6下正常工作,用户需要2004年夏天的DirectX
SDK,在下面的链接中可以找到:http:www?microsoft?comdownloadsdetails?aspx?FamilyId=FD044A42?9912?42A3?9A93?D857199F888Edisplaylang=en。
致谢
没有Nick
Carlson提供的优秀脚本,这本书很难顺利完成,他和我们一起完成了书中的例子和大量脚本,他才刚刚开始大学生涯,未来一定前途无量。同样感谢Chris
Listello为《Take Away》的美术设计和封面设计所做的工作。还要感谢Roberto
Ierusakimschy为本书作序。感谢所有Lua
Tecgraf小组的成员,为我们创造了这样一款功能强大且性能优越的脚本语言。最后感谢Charles River小组:感谢Jenifer
Niles的支持,感谢技术编辑们帮助我们修改了文字,感谢所有制作小组的成员,你们的帮助成就了这个令人自豪的项目。

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 台灣用户 | 香港/海外用户
megBook.com.tw
Copyright (C) 2013 - 2024 (香港)大書城有限公司 All Rights Reserved.