展开全部

主编推荐语

本书详解OpenGL应用,实战案例源于真实产品,赠源代码价值8万。

内容简介

本书通过案例详细讲解了OpenGL的应用,让读者学会如何驾驭复杂的应用程序,这些特性是目前市面上的一些书籍所没有的。本书中的大型案例均来源于真实的产品,100%原创,赠送的源代码价值在8万元以上。读者可以学以致用的尽快进入实战角色。

目录

  • 封面
  • 目录
  • 扉页
  • 版权
  • 前言
  • 第1章 初识庐山真面目——Android概览
  • 1.1 智能手机市场现状
  • 1.1.1 5大智能手机操作系统
  • 1.1.2 智能手机市场的新星
  • 1.2 Android平台的特点及未来的趋势
  • 1.2.1 全新理念带来的体验风暴
  • 1.2.2 中国手机市场的主导性作用
  • 1.2.3 手机3D游戏和应用增长迅速
  • 1.3 如何搭建Android开发环境
  • 1.3.1 JDK的安装及环境配置
  • 1.3.2 Eclipse集成开发环境的搭建
  • 1.3.3 创建并启动模拟器
  • 1.4 Hello Android应用程序的开发
  • 1.4.1 第一个Android应用程序
  • 1.4.2 Android应用程序的项目结构
  • 1.4.3 Android应用程序的调试
  • 1.4.4 实际设备的联机调试
  • 1.5 已有Android项目的导入和运行
  • 1.5.1 项目的导入
  • 1.5.2 应用程序的运行
  • 1.6 Android应用程序运行的机制
  • 1.6.1 应用程序的系统架构
  • 1.6.2 应用程序框架
  • 1.6.3 Android运行时
  • 1.6.4 系统库
  • 1.6.5 底层Linux内核
  • 1.7 本章小结
  • 第2章 游戏开发相关Android知识——音效、存储、蓝牙等
  • 2.1 游戏中的音效
  • 2.1.1 游戏中的即时音效
  • 2.1.2 即时音效的一个案例
  • 2.1.3 背景音乐播放技术
  • 2.1.4 简易音乐播放器的实现
  • 2.2 简单数据的存储——Preferences
  • 2.2.1 Preferences简介
  • 2.2.2 Preferences实现访问时间的记录
  • 2.3 手机自带数据库——SQLite
  • 2.3.1 初识SQLite
  • 2.3.2 SQLite数据库的基本操作
  • 2.3.3 SQLite数据库的简单案例
  • 2.3.4 使用ContentProvider组件共享数据
  • 2.3.5 使用ContentResolver获取分享数据
  • 2.4 文件I/O
  • 2.4.1 访问SD卡中的文件
  • 2.4.2 访问手机中的文件夹
  • 2.4.3 读取assets文件夹下的内容
  • 2.5 2D动画的开发
  • 2.5.1 SurfaceView用法简介
  • 2.5.2 使用SurfaceView实现2D动画
  • 2.6 Socket网络通信
  • 2.6.1 Socket开发基本知识
  • 2.6.2 服务器端
  • 2.6.3 客户端
  • 2.7 蓝牙通信
  • 2.7.1 蓝牙通信的基本知识
  • 2.7.2 聊天案例概览
  • 2.7.3 聊天案例的开发过程
  • 2.8 本章小结
  • 第3章 初识 OpenGL ES 2.0
  • 3.1 OpenGL ES 2.0概述
  • 3.1.1 OpenGL ES 2.0简介
  • 3.1.2 初识OpenGL ES 2.0应用程序
  • 3.2 着色器与渲染管线
  • 3.2.1 OpenGL ES 1.x的渲染管线
  • 3.2.2 OpenGL ES 2.0的渲染管线
  • 3.2.3 OpenGL ES中立体物体的构建
  • 3.3 主流Android手机GPU大比拼
  • 3.3.1 手机GPU四大家族对比
  • 3.3.2 主流GPU的性能参数比较
  • 3.4 本章小结
  • 第4章 着色语言
  • 4.1 着色语言(Shading Language)概述
  • 4.2 着色语言基础
  • 4.2.1 数据类型概述
  • 4.2.2 数据类型的基本使用
  • 4.2.3 运算符
  • 4.2.4 类型转换
  • 4.2.5 限定符
  • 4.2.6 流程控制
  • 4.2.7 函数的声明与使用
  • 4.2.8 片元着色器中浮点变量精度的指定
  • 4.2.9 程序的基本结构
  • 4.3 特殊的内建变量
  • 4.3.1 顶点着色器中的内建变量
  • 4.3.2 片元着色器中的内建变量
  • 4.4 着色语言的内置函数
  • 4.4.1 角度转换与三角函数
  • 4.4.2 指数函数
  • 4.4.3 常见函数
  • 4.4.4 几何函数
  • 4.4.5 矩阵函数
  • 4.4.6 向量关系函数
  • 4.4.7 纹理采样函数
  • 4.4.8 微分函数
  • 4.5 用invariant修饰符避免值变问题
  • 4.6 本章小结
  • 第5章 必知必会的 3D 开发知识——投影及各种变换
  • 5.1 摄像机的设置
  • 5.2 两种投影方式
  • 5.2.1 正交投影
  • 5.2.2 透视投影
  • 5.3 各种变换
  • 5.3.1 基本变换的相关数学知识
  • 5.3.2 平移变换
  • 5.3.3 旋转变换
  • 5.3.4 缩放变换
  • 5.3.5 基本变换的实质
  • 5.4 所有变换的完整流程
  • 5.5 绘制方式
  • 5.5.1 各种绘制方式概览
  • 5.5.2 点与线段绘制方式
  • 5.5.3 三角形条带与扇面绘制方式
  • 5.5.4 顶点法与索引法
  • 5.6 设置合理的视角
  • 5.7 卷绕和背面剪裁
  • 5.7.1 基本知识
  • 5.7.2 一个简单的案例
  • 5.8 本章小结
  • 第6章 让场景更逼真——光照效果
  • 6.1 曲面物体的构建
  • 6.1.1 球体构建的基本原理
  • 6.1.2 案例效果概览
  • 61.3 开发步骤
  • 6.2 基本光照效果
  • 6.2.1 光照的基本模型
  • 6.2.2 环境光
  • 6.2.3 散射光
  • 6.2.4 镜面光
  • 6.2.5 三种光照通道的合成
  • 6.3 定位光与定向光
  • 6.4 点法向量和面法向量
  • 6.5 光照的每顶点计算与每片元计算
  • 6.6 本章小结
  • 第7章 更加酷炫的 3D 效果——纹理映射
  • 7.1 初识纹理映射
  • 7.1.1 基本原理
  • 7.1.2 纹理映射的简单案例
  • 7.2 纹理拉伸
  • 7.2.1 两种拉伸方式概览
  • 7.2.2 不同拉伸方式的案例
  • 7.3 纹理采样
  • 7.3.1 纹理采样概述
  • 7.3.2 最近点采样
  • 7.3.3 线性纹理采样
  • 7.3.4 MIN与MAG采样
  • 7.3.5 不同纹理采样方式的案例
  • 7.4 mipmap纹理技术
  • 7.5 多重纹理与过程纹理
  • 7.5.1 案例概览
  • 7.5.2 将2D纹理映射到球面上的策略
  • 7.5.3 案例的场景结构
  • 7.5.4 开发过程
  • 7.6 压缩纹理的使用
  • 7.7 本章小结
  • 第8章 丰富的立体形状——3D基本形状的构建
  • 8.1 圆柱体
  • 8.1.1 顶点原始位置的生成
  • 8.1.2 案例的开发
  • 8.2 圆锥体
  • 8.2.1 顶点原始位置的生成
  • 8.2.2 案例的开发
  • 8.3 圆环体
  • 8.3.1 顶点原始位置的生成
  • 8.3.2 案例的开发
  • 8.4 螺旋管
  • 8.4.1 顶点原始位置的生成
  • 8.4.2 案例的开发
  • 8.5 几何球
  • 8.5.1 顶点原始位置的生成
  • 8.5.2 案例的开发
  • 8.6 足球碳分子模型的搭建
  • 8.6.1 搭建的基本原理
  • 8.6.2 案例的开发
  • 8.7 贝塞尔曲线及旋转面
  • 8.7.1 三维旋转曲面的生成
  • 8.7.2 贝塞尔曲线
  • 8.7.3 Bezier曲线生成工具
  • 8.7.4 印度古典建筑场景的开发
  • 8.8 本章小结
  • 第9章 更逼真的游戏场景——3D模型加载
  • 9.1 obj模型文件概述
  • 9.1.1 obj文件的格式
  • 9.1.2 用3ds Max设计3D模型
  • 9.2 加载obj文件
  • 9.2.1 加载仅有顶点坐标与面数据的obj文件
  • 9.2.2 加载后自动计算面法向量
  • 9.2.3 加载后自动计算平均法向量
  • 9.2.4 加载纹理坐标
  • 9.3 本章小结
  • 第10章 独特的场景渲染技术——混合与雾
  • 10.1 混合技术
  • 10.1.1 混合基本知识
  • 10.1.2 源因子和目标因子
  • 10.1.3 简单混合效果案例
  • 10.2 地月系云层效果的实现
  • 10.3 雾
  • 10.3.1 雾的原理与优势
  • 10.3.2 雾的简单实现
  • 10.4 本章小结
  • 第11章 常用的 3D 开发技巧——标志板、天空盒、镜像绘制等
  • 11.1 标志板
  • 11.1.1 案例效果与基本原理
  • 11.1.2 开发步骤
  • 11.2 灰度图地形
  • 11.2.1 基本原理
  • 11.2.2 普通灰度图地形
  • 11.2.3 过程纹理地形
  • 11.2.4 MipMap地形
  • 11.3 用粒子沉积算法构建地形
  • 11.3.1 粒子沉积法基本原理
  • 11.3.2 地形设计器的使用
  • 11.3.3 粒子沉积的核心算法类
  • 11.4 天空盒与天空穹
  • 11.4.1 天空盒
  • 11.4.2 天空穹
  • 11.4.3 天空盒与天空穹的使用技巧
  • 11.5 镜像技术
  • 11.5.1 镜像基本原理
  • 11.5.2 基本效果案例
  • 11.5.3 升级效果案例
  • 11.6 动态文本输出
  • 11.6.1 案例效果与基本原理
  • 11.6.2 具体开发步骤
  • 11.7 非真实感绘制
  • 11.7.1 案例效果与基本原理
  • 11.7.2 具体开发步骤
  • 11.8 本章小结
  • 第12章 渲染出更加酷炫的 3D 场景——剪裁测试
  • 12.1 剪裁测试
  • 12.1.1 基本原理与核心代码
  • 12.1.2 一个主次视角的简单案例
  • 12.2 Alpha测试
  • 12.2.1 Alpha测试基本原理
  • 12.2.2 一个椭圆窗口的案例
  • 12.3 模板测试
  • 12.3.1 基本原理
  • 12.3.2 一个简单的案例
  • 12.4 任意剪裁平面
  • 12.4.1 基本原理
  • 12.4.2 茶壶被任意平面剪裁的案例
  • 12.5 本章小结
  • 第13章 引人入胜的游戏特性——传感器应用开发
  • 13.1 基本的开发流程
  • 13.2 加速度传感器
  • 13.2.1 加速度传感器简介
  • 13.2.2 案例的开发
  • 13.3 磁场传感器
  • 13.3.1 磁场传感器简介
  • 13.3.2 案例的开发
  • 13.4 陀螺仪传感器
  • 13.4.1 陀螺仪传感器简介
  • 13.4.2 案例的开发
  • 13.5 光传感器
  • 13.5.1 光传感器简介
  • 13.5.2 案例的开发
  • 13.6 温度传感器
  • 13.6.1 温度传感器简介
  • 13.6.2 案例的开发
  • 13.7 接近传感器
  • 13.7.1 接近传感器简介
  • 13.7.2 案例的开发
  • 13.8 姿态传感器
  • 13.8.1 姿态传感器简介
  • 13.8.2 案例的开发
  • 13.9 加速度传感器综合案例
  • 13.10 传感器的坐标轴问题
  • 13.11 本章小结
  • 第14章 移动开发平台上的主角——Android NDK 及iOS 平台下的 OpenGL ES 开发
  • 14.1 使用Android NDK进行OpenGL ES开发
  • 14.1.1 Android NDK开发环境的下载及配置
  • 14.1.2 Android NDK在Eclipse中的配置
  • 14.1.3 使用Android NDK开发简单的OpenGL ES 2.0程序
  • 14.2 使用Android NDK开发山地地形场景
  • 14.2.1 案例效果及山地绘制类的开发
  • 14.2.2 NDK端渲染函数的开发
  • 14.3 基于iOS平台开发OpenGL ES 2.0程序
  • 14.3.1 案例运行效果及Xcode项目的创建
  • 14.3.2 案例的开发过程
  • 14.4 基于iOS平台的地月系场景案例
  • 14.4.1 案例运行效果及GLView的开发
  • 14.4.2 其他部分的开发
  • 14.5 本章小节
  • 第15章 Web 端 3D 游戏开发——WebGL 3D 应用开发
  • 15.1 WebGL概览
  • 15.1.1 WebGL简介
  • 15.1.2 WebGL效果展示
  • 15.2 初识WebGL应用
  • 15.2.1 Obj模型加载工具简介
  • 15.2.2 简单渲染3D模型案例的开发
  • 15.3 加入光照效果的WebGL案例
  • 15.3.1 生成带有法向量数据的JavaScript脚本文件
  • 15.3.2 案例的具体开发
  • 15.4 带有纹理贴图的WebGL案例
  • 15.4.1 生成带有法向量和纹理坐标数据的JavaScript脚本文件
  • 15.4.2 案例的开发
  • 15.4.3 WebGL版的地月系案例
  • 15.5 本章小节
  • 第16章 综合案例一——夜鹰行动
  • 16.1 游戏背景及功能概述
  • 16.1.1 游戏开发的背景概述
  • 16.1.2 游戏功能介绍
  • 16.2 游戏的策划及准备工作
  • 16.2.1 游戏的策划
  • 16.2.2 Android平台下游戏开发的准备工作
  • 16.3 游戏的架构
  • 16.3.1 各个类的简要介绍
  • 16.3.2 游戏框架简介
  • 16.4 公共类Aircraft_Activity
  • 16.5 游戏相关类
  • 16.5.1 游戏界面绘制类(GLGameView)
  • 16.5.2 游戏线程类(KeyThread)
  • 16.5.3 子弹类(BulletForControl)
  • 16.5.4 坦克类(TanKe)
  • 16.5.5 山地绘制类(LandForm)
  • 16.5.6 颜色圆面类(CircleForDraw)
  • 16.5.7 星空类(SkyNight)
  • 16.5.8 爆炸效果绘制类(DrawBomb)
  • 16.5.9 数字绘制类(NumberForDraw)
  • 16.6 该游戏中的着色器
  • 16.6.1 加载界面着色器
  • 16.6.2 地形着色器
  • 16.6.3 按钮着色器
  • 16.6.4 星空着色器
  • 16.6.5 生命值矩形着色器
  • 16.6.6 颜色圆面着色器
  • 16.7 游戏的优化与改进
  • 第17章 综合案例二——BN赛艇
  • 17.1 游戏背景及功能概述
  • 17.1.1 游戏开发的背景概述
  • 17.1.2 游戏功能介绍
  • 17.2 游戏的策划及准备工作
  • 17.2.1 游戏的策划
  • 17.2.2 Android平台下游戏的准备工作
  • 17.3 游戏的架构
  • 17.3.1 各个类简要介绍
  • 17.3.2 游戏框架简介
  • 17.4 主控制类(MyActivity)
  • 17.5 2D界面相关类
  • 17.5.1 欢迎界面类(WelcomeView)
  • 17.5.2 2D界面父类(MySFView)
  • 17.5.3 主菜单类(MenuView)
  • 17.5.4 2D界面绘制类(ViewForDraw)
  • 17.5.5 数据库工具类(DBUtil)
  • 17.5.6 Android系统版本对话框(AndroidVersionDialog)
  • 17.6 选船界面相关类
  • 17.6.1 着色器管理类(ShaderManager)
  • 17.6.2 围墙类(ColorLightRect)
  • 17.6.3 选船房间类(HouseForDraw)
  • 17.6.4 展台类(DisplayStation)
  • 17.6.5 赛艇类(Boat)
  • 17.6.6 选船界面(XCSurfaceView)
  • 17.7 游戏界面相关类
  • 17.7.1 进度条类(Process)
  • 17.7.2 3D物体父类(BNDrawer)
  • 17.7.3 3D物体控制类(TDObjectForControl)
  • 17.7.4 赛艇类(Boat)
  • 17.7.5 可碰撞物体父类(KZBJDrawer)
  • 17.7.6 可碰撞物体控制类(KZBJForControl)
  • 17.7.7 赛艇与可碰撞物体检测碰撞线程(ThreadColl)
  • 17.7.8 可吃物体父类(SpeedForEat)
  • 17.7.9 可吃物体控制类(SpeedForControl)
  • 17.7.10 晶体旋转线程(RotateThread)
  • 17.7.11 赛艇与晶体碰撞检测线程(ThreadForEat)
  • 17.7.12 比较两灌木距离摄像机距离类(MyComparable)
  • 17.7.13 单个灌木类(SingleShrub)
  • 17.7.14 灌木控制类(ShrubForControl)
  • 17.7.15 赛艇赛道类(RaceTrack)
  • 17.7.16 赛艇与桥碰撞检测类(PZZ)
  • 17.7.17 赛艇运动路径工具类(PathUtil)
  • 17.7.18 尾浪类(WeiLang)
  • 17.7.19 水面类(Water)
  • 17.7.20 游戏界面类(MyGLSurfaceView)
  • 17.7.21 运动监听线程(KeyThread)
  • 17.8 该游戏中的着色器
  • 17.9 游戏的优化与改进
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。