本章的主要内容 1 three.js有哪些可用的光源 2 什么时候用什么光源. 3 如何调整配置各种光源 4 如何创建镜头炫光 一 光源 光源大概有7种, 其中基础光源有4种 环境光(AmbientLight会它的颜色会添加到整个场景和所有对象的当前颜色上), 点光源(PointLight空间中的一点,朝所有的方向发射光线), 聚光灯光源(SpotLight这种光源有聚光的效果,类似于台灯,吊灯,手电筒), 方向光(DirectionalLight也称无限光,从这种光源发出的光线可以看作是平行的…
材质就像物体的皮肤,决定了几何体的外表,例如是否像草地/金属,是否透明,是否显示线框等 一 材质 THREE.js的材质分为多种,Three.js提供了一个材质基类THREE.Material, 该基类拥有three.js所有材质的公有属性,分为三类:基础属性,融合属性,高级属性 基础属性:ID,name,透明度,是否可见,是否需要刷新等 融合属性:决定了物体如何与背景融合 高级属性:可以控制WEBGL上下文渲染物体的方法,大多数情况下,是不会用这些属性,我们这里不再讨论 1.1 基础属性 属性…
本章主要做了下面的工作 1 生成一个简单的场景,该场景的物体只有平面和坐标轴 2 在第一个demo的基础上添加光源和方块物体,并生成阴影 3 在第二个demo的基础上,增加动画,使得方块进行旋转 4 在第三个demo的基础上,增加图形操作界面,改变方块旋转的速度 5 在第四个demo的基础上,我们使用ascII效果(这个没有做出来,不知道为什么asciieffect没有定义) 在下面的demo中, 1 生成了场景,相机,渲染器,几何体(平面),材质(几何体和材质进行组合,组成物体),坐标轴, 2…
工作原因需要用到nodejs,于是找到了<node.js开发指南>这本书来看看,作者BYVoid 为清华大学计算机系的高材生,年纪竟比我还小一两岁,中华地广物博真是人才辈出,佩服. 言归正传: 1.为什么会想写这篇文章? 答:因为在看这本书的过程中,因为nodejs版本升级后用法跟书中不同了. 另外因为nodejs这东西真的不错,值得学习. 2.我的例子与书中例子的区别? 答:nodejs版本不同,我例子中用的是最新版本.数据库不同,书中用的是mongdb,我用的是mysql. models-…
<Node.js开发指南>项目地址https://github.com/BYVoid/microblog好不容易找到的基础版教程,但书中是基于express2的,而现在用的是express4了,本文主要介绍项目实现过程中遇到的各种问题及其解决方案:也是初学,所以有错的地方还望各位不吝指教,项目基于express4,IDE用的是WebStorm,数据库是MongoDB,完全运行起来之后package.json中的dependencies如下:"dependencies": {…
KeyboardJS 开发指南 - 与 Three.js 配合使用的捕捉键盘组合键库 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的漂亮人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino.否则.出自本博客的文章拒绝转载或再转载,谢谢合作. A JavaScript library for bindi…
电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍:<Three js开发指南> pdf下载地址:链接: https://pan.baidu.com/s/1uyX24NV833ZNRqXuIHHlig 密码: qasg…
由于ejs的升级,<node.js开发指南>中使用的 partial 函数已经摒弃,使用foreach,include代替 原来的代码是: <%- partial('listitem',items) %> 改成: <ul> <% items.forEach(function(listitem){%> <% include listitem%> <%}) %> </ul>…
1.Node.js是什么 Node.js是一个让JS运行在服务器端的开发平台,它可以作为服务器向用户提供服务.Node.js中的javascript只是Core javascript,或者说是ECMAJavaScript的一个实现.2.Node.js能做什么 JS是为客户端为生,而Node.js是为网络而生.利用它可以轻松的开发出很多网站.社交应用.服务器等等. Node.js内建有一个HTTP服务器支持,可以实现一个网站和服务器的组合.3.异步式I/O和事件驱动 Node.js最大的特点就是采…
第一章:node简介 介绍了node是什么:node.js是一个让javascript运行在服务器端的开发平台, node能做些什么:[书上的] 具有复杂逻辑的网站 基于社交网络的大规模Web应用 Web Socket服务器 TCP/UDP套接字应用程序 命令行工具 交互式终端程序 带有图形用户界面的本地应用程序 单元测试工具 客户端Javascript编译器 node能做些什么:[网上比较好的一段说明]: NodeJS的作者说,他创造NodeJS的目的是为了实现高性能Web服务器,他首先看重的…
1.Node.js 简介 Node.js 其实就是借助谷歌的 V8 引擎,将桌面端的 js 带到了服务器端,它的出现我将其归结为两点: V8 引擎的出色: js 异步 io 与事件驱动给服务器带来极高的 吞吐量/硬件性能 比例. 2.安装和配置Node.js 安装的话基本是分为 Windows 和 POSIX(为*unx 和 Mac等系统的统称). 2.1.在 Windows 上,很简单,访问官网,下载对应的安装包安装即可. 2.2.在 POSIX 上安装 大都可以从相应的包管理器上进行安装(非…
3.1 开始使用Node.js编程 3.1.1 Hello World 将以下源代码保存到helloworld.js文件中 console.log('Hello World!'); console.log('%s:%d', 'hello', 25); 找到文件位置,执行node helloworld.js.结果如下: 3.1.2 Node.js命令行工具 输入:node --help可以看到详细的帮助信息. 除了直接运行脚本外,node --help显示的用法中说明了另一种输出hello wor…
什么是模块? 一个node.js文件就是一个模块,这个文件可能是js代码,json或者编译过的C/C++扩展 创建及加载模块 //a.js var name; exports.setName = function(thyName){ name = thyName; }; exports.sayHello = function(){ console.log("hello"+name); }; //b.js var myModule = require('./a.js'); myModul…
鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录:1.新建一个Service Ability2.完善代码逻辑3.JS端远程调用4.<从微信小程序到鸿蒙js开发>系列文章合集 除轻量级智能穿戴设备,现鸿蒙支持的手机.汽车.TV.手表.平板等属于富鸿蒙,在JS语言的项目中也有Java模块,并提供了JS跨语言调用Java方法的技术.现需要实现查看商品评论时,统计出长评.中评和短评的比例,这里将评论数据请求来后调用Java进行计算. JS调用Jav…
近期出现一款魔性的消除类HTML5游戏<神奇的六边形>,今天我们一起来看看如何通过开源免费的青瓷引擎(www.zuoyouxi.com)来实现这款游戏. (点击图片可进入游戏体验) 因内容太多,为方便大家阅读,所以分成四部分来讲解. 本文为第三部分,主要包括: 11.显示出3个形状 12.形状的拖放处理 13.形状放入棋盘的实现 14.界面管理 15.消除行 若要一次性查看所有文档,也可点击这里. 十一. 显示出3个形状 1. 在Scripts/ui创建文件:Pool.js,绘制3个形状. v…
Node.js简介 Node是一个可以让JavaScript运行在服务器端的平台,抛弃了传统平台依靠多线程来实现高并发的设计思路,而采用单线程.异步式I/O.事件驱动式的程序设计模型. 安装和配置Node.js 安装配置简单,无需多说. Node.js快速入门 异步式I/O与事件式编程 回调函数 用异步的方式读取一个文本内容为"test content"的文件,代码如下: var fs = require("fs"); fs.readFile("test.…
.gui本章的主要内容 1 场景中使用哪些组件 2 几何图形和材质如何关联 3 正投影相机和透视相机的区别 一,Three所需要的基本元素 场景scene:一个容器,用来保存并跟踪所有我们想渲染的物体 相机camera:场景scene中保存了所有我们想要渲染的物体,但是这些物体哪些是希望被看到的,由相机来决定,即相机决定了哪些东西将要在屏幕上渲染,场景渲染的时候会自动将camera添加进去 光源:光源会对物体如何显示,以及生成阴影时物体如何使用产生影响 渲染器render:负责计算指定相机角度下…
由于express升级到3.0,造成这本书看起来more and more蛋疼.记录少许坑儿,方便后来人. 一.node.js在windows下的安装 书中在两处介绍了两种方式,其实现在的node.js在windows下只需要下载一个.msi文件安装就可以,那个什么python支持可以浮云了. 二.express中使用ejs创建工作目录 1.书中给出的 express -t ejs projName 参数-t在3.0中已经改为-e. 默认安装的为jade而不是ejs,所以创建出来的目录结构会不一…
在开发时如果修改了js内容,不能通过刷新浏览器直接看到效果,必须通过重启nodejs程序才能看到,这样显然不利于开发调试,supervisor可以实现这个功能,监视对代码的改动,并自动重启nodejs,使用npm安装supervisor,如果使用的是Linux或Mac,直接键入可能会有权限错误,可以使用第二个命令安装: npm install -g supervisor  (window) sudo npm install -g supervisor (Linux.Mac) 安装完成,启动程序通…
1.核心模块 核心模块是Node.js的心脏,由一些精简高效的库组成,为其提供了基本的API.2.全局对象 global.所有的的全局变量都是其属性.其根本的作用是作为全局变量的宿主.3.全局变量 1.process:描述当前Node.js的进程状态的对象,提供一个与操作系统的简单接口. 方法 process.argv 命令行参数数组 三个参数1.node 2.脚本文件名 3.运行参数 1.process.stdout: 标准输出流,通常使用的console.log()向标准输出打印字符,而pr…
本章的主要内容: 一, 通过Three.js自带的功能来组合和合并已有的几何体,创建出新的几何体 二, 从外部资源中加载网格和几何体 1 前面的章节中,我们学习到,一个几何体创建的网格,想使用多个材质的方法: var mesh=THREE.SceneUtils.createMultiMaterialObject(geometry,[material1,,material2]); 看似一个网格中有一个几何体,多个材质,其实该网格拥有与材质数量相对应的几何体,每个几何体都对应一种材质,形成一个网格,…
使用粒子可以很容易的创建很多细小的物体,例如雨滴雪花等 本章主要内容: 1 使用ParticleBasicMaterial(基础粒子材质)来创建和设计粒子 2 使用ParticleSystem来创建一个粒子集合 3 使用已有的几何体来创建一个粒子系统 4 让粒子和粒子系统动起来 5 用纹理给粒子造型 6 使用ParticleCanvasMaterial在画布上为粒子造型 名称 描述 Sprite粒子 参数是material,生成的sprite可以设置position和scale等属性直接添加到场…
本章的主要内容: 一,高级几何体-凸面体ConvexGeometry,扫描体LatheGeometry,管状几何体TubeGeometry: 二,使用拉伸几何体ExtrudeGeometry将一个二维图形生成三维图形,并基于从外部引入的SVG图片生成一个三维图形: 三,基于three.js提供的ParamtericGeometry对象的公式定制自己的图形 四,使用TextGeometry创建三维文字 五,使用二元操作从已有的几何体中创建出新的几何体: 1  ConvexGeometry--凸面体…
一 基础几何体 1 二维图形:二维图形都是基于x和y轴构建的,即展示的形式就是他们都是“直立”的,如果希望这些二维图形躺下,则需要将几何体沿着x轴向后旋转1/4圈 mesh.rotation.x=-Math.PI/2; 1.1 PlaneGeometry:平面几何体 new THREE.PlaneGeometry(width,height,widthSegments,heightSegments) <!DOCTYPE html> <html> <head> <ti…
全局对象 Node.js中的全局对象是global 所有全局变量(除了global本身以外)都是global对象的属性 最根本的作用为全局变量的宿主 全局变量 //满足以下条件的是全局变量 a.在最外层定义的变量 b.全局对象的属性 c.隐式定义的变量(未定义直接赋值的变量) process 用于描述当前Node.js进程状态的对象,提供了一个与操作系统的简单接口 process.argv process.argv是命令行参数数组,第一个元素是node,第二个元素是脚本文件名,从第三个元素开始每…
1. Node.js 使用了单 线程.非阻塞的事件编程模式 Node.js 最大的特点就是采用异步式 I/O 与事件驱动的架构设计.对于高并发的解决方 案,传统的架构是多线程模型,也就是为每个业务逻辑提供一个系统线程,通过系统线程切 换来弥补同步式 I/O 调用时的时间开销.Node.js 使用的是单线程模型,对于所有 I/O 都采用 异步式的请求方式,避免了频繁的上下文切换.Node.js 在执行的过程中会维护一个事件队 列,程序在执行时进入事件循环等待下一个事件到来,每个异步式 I/O 请求…
ejs视图引擎中使用partial函数: <ul><%- partial('listitem', items) %></ul> 报错:partial is not defined: 原因: express 3.0+摒弃了partial,加入了include方法代替partial. 解决办法: (1)通过express-partials模块: 1.1 该项目下npm install express-partials; 1.2  app.js文件中引入express-par…
1.在win下,命令行工具express -h无效,因为4.x版本的express需要安装express-generator才可以使用express命令,npm install -g express-generator只会就好了. 安装express-generator和express时候,都可以在后面加@4.2来指定4.2版本 http://blog.csdn.net/jonahzheng/article/details/33758645…
1.1 Node.js概述 / 2 1.1.1 使用Node.js能够解决什么问题 / 2 1.1.2 实现高性能服务器 / 2 1.1.3 非阻塞型I/O及事件环机制 / 2 1.1.4 Node.js适合开发的应用程序 / 31.2 安装Node.js / 31.3 Node.js中的模块 / 4 1.4 一个简单的示例应用程序 / 61.5 小结 / 8 curl -i -X GET http://localhost:1337 curl -i -X POST -H "Content-Typ…
10.1 使用domain模块处理错误 / 272 10.1.1 domain模块概述 / 272 10.1.2 创建并使用Domain对象 / 274 10.1.3 隐式绑定与显式绑定 / 276 10.1.4 绑定回调函数与拦截回调函数 / 279 10.1.5 domain堆栈的弹出与推入 / 280 10.1.6 Domain对象的销毁 / 28610.2 Node.js中的断言处理 / 286 10.2.1 equal方法与notEqual方法 / 287 10.2.2 strictE…