Unity 3D脚本编程:使用C#语言开发跨平台游戏

Unity 3D脚本编程:使用C#语言开发跨平台游戏

作者:陈嘉栋

出版社:电子工业

出版年:2016年9月

ISBN:9787121297182

所属分类:诗歌文集

书刊介绍

《Unity 3D脚本编程:使用C#语言开发跨平台游戏》内容简介

本书以Unity 3D的跨平台基础Mono,以及其游戏脚本语言C#为基础进行讲解。全面系统地剖析了Unity 3D的跨平台原理以及游戏脚本开发的特点。
第1章主要介绍了Unity 3D引擎的历史以及编辑器的基本知识;第2章主要介绍了Mono,以及Unity 3D利用Mono实现跨平台的原理,并且分析了C#语言为什么更适合Unity 3D游戏开发的原因;第3章到第10章主要介绍了Unity 3D游戏脚本语言C#在使用Unity 3D开发过程中的知识点,包括Unity 3D脚本的类型基础、数据结构,在Unity 3D脚本中使用泛型、使用委托和事件打造自己的消息系统、利用定制特性来拓展Unity 3D的编辑器、Unity 3D协程背后的秘密——迭代器,以及可空类型和序列化在Unity 3D中使用的相关知识;第11章到第14章主要介绍了Unity 3D的资源管理,以及优化和编译的内容。
无论是初次接触Unity 3D脚本编程的新人,还是有一定经验的老手,相信都可以借本书来提高自己在Unity 3D方面的水平。
陈嘉栋,毕业于大连海事大学,目前任光宇在线客户端高级开发工程师。博客园推荐博客作者,微软2015年度Visual Studio and Development Technologies有价值专家(Most Valuable Professional)。认为编程首先是爱好,其次才是职业。专注前沿技术,热爱开源。深信代码改变世界。

作品目录

推荐序
前言
第1章:Hello
Unity
3D
1.1、Unity
3D游戏引擎进化史
1.2、Unity
3D编辑器初印象
1.3、Unity
3D的组成
1.4、为何需要游戏脚本
1.5、本章总结
第2章:Mono所搭建的脚本核心基础
2.1、Mono是什么
2.2、Mono如何扮演脚本的角色
2.3、Unity
3D为何能跨平台?聊聊CIL
2.4、脚本的选择,C#或JavaScript
2.5、本章总结
第3章:Unity
3D脚本语言的类型系统
3.1、C#的类型系统
3.2、值类型和引用类型
3.3、Unity
3D脚本语言中的引用类型
3.4、Unity
3D游戏脚本中的值类型
3.5、装箱和拆箱
3.6、本章总结
第4章:Unity
3D中常用的数据结构
4.1、Array数组
4.2、ArrayList数组
4.3、List数组
4.4、C#中的链表——LinkedList
4.5、队列(Queue)和栈(Stack
4.6、Hash
Table(哈希表)和Dictionary(字典)
4.7、本章总结
第5章:在Unity
3D中使用泛型
5.1、为什么需要泛型机制
5.2、Unity
3D中常见的泛型
5.3、泛型机制的基础
5.4、泛型中的类型约束和类型推断
5.5、本章总结
第6章:在Unity
3D中使用委托
6.1、向Unity
3D中的SendMessage和BroadcastMessage说拜拜
6.2、认识回调函数机制——委托
6.3、委托是如何实现的
6.4、委托是如何调用多个方法的
6.5、用事件(Event)实现消息系统
6.6、事件是如何工作的
6.7、定义事件的观察者,实现观察者模式
6.8、委托的简化语法
6.9、本章总结
第7章:Unity
3D中的定制特性
7.1、初识特性——Attribute
7.2、Unity
3D中提供的常用定制特性
7.3、定义自己的定制特性类
7.4、检测定制特性
7.5、亲手拓展Unity
3D的编辑器
7.6、本章总结
第8章:Unity
3D协程背后的迭代器
8.1、初识Unity
3D中的协程
8.2、使用协程实现延时效果
8.3、Unity
3D协程背后的秘密——迭代器
8.4、WWW和协程
8.5、Unity
3D协程代码实例
8.6、本章总结
第9章:在Unity
3D中使用可空型
9.1、如果没有值
9.2、表示空值的一些方案
9.3、使用可空值类型
9.4、可空值类型的简化语法
9.5、可空值类型的装箱和拆箱
9.6、本章总结
第10章:从序列化和反序列化看Unity
3D的存储机制
10.1、初识序列化和反序列化
10.2、控制类型的序列化和反序列化
10.3、Unity
3D中的序列化和反序列化
10.4、Prefab和实例化之谜——序列化和反序列化的过程
10.5、本章总结
第11章:移动平台动态读取外部文件
11.1、假如我想在编辑器里动态读取文件
11.2、移动平台的资源路径问题
11.3、移动平台读取外部文件的方法
11.4、使用Resources类加载资源
11.5、使用WWW类加载资源
11.6、本章总结
第12章:在Unity
3D中使用AssetBundle
12.1、初识AssetBundle
12.2、使用AssetBundle的工作流程
12.3、如何使用本地磁盘中的AssetBundle文件
12.4、AssetBundle文件的平台兼容性
12.5、AssetBundle如何识别资源
12.6、本章总结
第13章:Unity
3D优化
13.1、看看Unity
3D优化需要从哪里着手
13.2、CPU方面的优化
13.3、对GPU的优化
13.4、内存的优化
13.5、本章总结
第14章:Unity
3D的脚本编译
14.1、Unity
3D脚本编译流程概览
14.2、JIT即时编译
14.3、AOT提前编译
14.4、谁偷了我的热更新?Mono、JIT还是iOS
14.5、Unity
3D项目的编译与发布
14.6、本章总结

相关推荐

微信二维码