全部商品分类

您现在的位置: 全部商品分类 > 电子电脑 > 计算机技术 > 程序与语言

TypeScript图形渲染实战(基于WebGL的3D架构与实现)

  • 定价: ¥109
  • ISBN:9787111642664
  • 开 本:16开 平装
  •  
  • 折扣:
  • 出版社:机械工业
  • 页数:346页
  • 作者:编者:步磊峰
  • 立即节省:
  • 2020-01-01 第1版
  • 2020-01-01 第1次印刷
我要买:
点击放图片

导语

  

内容提要

  

    为了让广大3D图形爱好者能够快速地学习WebGL图形编程,本书按照循序渐进的方式,由浅入深地讲解了WebGL图形编程的相关知识点。本书理论结合实践,可以让3D图形爱好者少走弯路,直击3D图形开发中的核心要点。
    本书共10章,分为3篇。第1、2章为数据结构基础篇,主要介绍如何构建TypeScript开发调试环境,并以范型编程方式实现和封装了动态类型数组、关联数组、双向链表、队列、栈和树等数据结构。第3~7章为WebGL图形编程基础篇,围绕着如何建立一个WebGLApplication框架应用体系和WebGLUtilLib渲染体系而展开,并且详细介绍了3D图形编程中的一些常用数学基础知识。第8~10章为开发实战篇,在使用WebGLApplication框架和WebGLUtilLib框架的基础上实现了对id Software公司开源的Quake3 BSP及Doom3 PROC场景的解析和渲染,并且介绍了Doom3 MD5骨骼蒙皮动画原理、解析与渲染的相关知识点。
    本书特别适合对3D图形开发、WebGL图形编程、游戏开发等感兴趣的技术人员阅读,还适合JavaScript程序员及想从C、C++、Java和C#等强类型语言转HTML 5开发的程序员阅读。另外,编程爱好者、高校学生及培训机构的学员也可以将本书作为兴趣读物。

作者简介

    步磊峰,现为上海斐繁信息科技有限公司技术负责人。计算机图形编程资深爱好者。有超过15年的编程经验。擅长C、C++、C#、Java、JavaScript、TypeScript等编程语言。在作者的程序人生中,曾经写过3D程序、跨平台UI引擎、Java页游服务器和微信服务器,并为国内的多个大型国营金融机构开发过多款移动端App。个人最大的成就是通过内部培训,为公司培养了20多个C语言、C++及移动端的开发人才。
    微信公众号:随风而行之青衫磊落险峰行

目录

前言
第1篇  数据结构基础
  第1章  SystemJS与Webpack
    1.1  准备工作
      1.1.1  安装Node.is
      1.1.2  安装Viusal Studio Code
    1.2  安装和配置SystemJS
      1.2.1  安装SystemJS
      1.2.2  使用SystemJS
      1.2.3  第一个TypeScript程序
    1.3  安装和配置Webpack
      1.3.1  安装Webpack
      1.3.2  配置Webpack
      1.3.3  调用build命令
      1.3.4  配置tsconfig.json文件
      1.3.5  调用build和dev命令
      1.3.6  使用watch命令
      1.3.7  联合使用watch和dev命令
      1.3.8  使用Webpack压缩打包源码
    1.4  SysemJS VS.Webpack
    1.5  编译(Compile)VS.转义(Transpile)
    1.6  断点调试
      1.6.1  安装及配置Debugger for Chrome扩展
      1.6.2  断点调试TypeScript程序
      1.6.3  VS Code Debug快捷键
    1.7  本章总结
  第2章  TypeScript封装和实现常用容器
    2.1  ArrayBuffer、DataView及类型数组实现原理
      2.1.1  C/C++模拟JS/TS中的ArrayBuffer对象
      2.1.2  C/C++模拟JS/TS中的DataView对象
      2.1.3  C/C++版CDataView VS.JS/TS版DataView
      2.1.4  C/C++模拟JS/TS中的Float32Arrav对象
      2.1.5  C/C++版CFloat32Array VS.JS/TS版Float32Array
      2.1.6  JS/TS中的类型数组对象
    2.2  封装动态类型数组
      2.2.1  TypedArrayList的成员变量及构造函数
      2.2.2  TypedArrayList的push方法
      2.2.3  TypedArrayList的slice方法和subarray方法
      2.2.4  TypedArrayList的其他方法和属性
      2.2.5  capacityChangedCallback回调函数
    2.3  封装关联数组
      2.3.1  JS/TS中的关联数组
      2.3.2  TypeScript索引签名
      2.3.3  ES 6 Map对象
      2.3.4  封装成Dictionary字典对象
      2.3.5  测试Dictionary对象
      2.3.6  红黑树还是哈希表
    2.4  实现SGI STL风格双向循环链表
      2.4.1  泛型的ListNode结构
      2.4.2  List中的头节点
      2.4.3  双向循环概念
      2.4.4  List的查询与遍历操作
      2.4.5  List的插入操作
      2.4.6  List的删除操作
      2.4.7  List的push/pop/push_front/pop_front操作
    2.5  封装队列与栈
      2.5.1  声明IAdapter泛型接口
      2.5.2  实现AdapterBase抽象基类
      2.5.3  实现Queue子类和Stack子类
    2.6  实现通用树结构
      2.6.1  树结构的内存表示
      2.6.2  树节点添加时的要点
      2.6.3  树节点isDescendantOf和remove方法的实现
      2.6.4  实现addChild等方法
      2.6.5  查询树结构的层次关系
      2.6.6  广度/深度优先遍历算法
      2.6.7  队列及栈在广度/深度优先遍历中的应用
      2.6.8  广度/深度线性遍历枚举器
      2.6.9  树结构枚举器的实现
      2.6.10  测试树结构迭代器
  ……
第2篇  WebGL图形编程基础
  第3章  WebGLApplication框架
  第4章  WebGL基础
  第5章  WebGLUtilLib渲染框架
  第6章  3D图形中的数学基础
  第7章  多视口渲染基本几何体、坐标系及文字
第3篇  开发实战
  第8章  解析与渲染Quake3 BSP场景
  第9章  解析和渲染Doom3 RPOC场景
  第10章  解析和渲染Doom3 MD5骨骼蒙皮动画