v-if 在字符串模板中,如 Handlebars,我们得像这样写一个条件块: <!-- Handlebars 模板 --> {{#if ok}} <h1>Yes</h1> {{/if}} 在 Vue.js,我们使用 v-if 指令实现同样的功能: <h1 v-if="ok">Yes</h1> 也可以用 v-else 添加一个 “else” 块: <h1 v-if="ok">Yes</h1…
w我用画画来形容他们之间的关系 场景就是纸张 相机就是我们的眼睛 物体就是在我们脑海中构思的那个画面 渲染器就是绘画这个动作 场景(Scene): 初始化:var scene = new THREE.Scene(); 添加物体:scene.add( 物体对象 ); 删除物体:scene.remove( 物体对象 ); 获取场景中所有子对象的列表:scene.children() 利用name属性,获取场景中某个特定的物体:scene.getChildByName() 简单雾化:scene.fog…
code&monkey   Ext JS学习第十六天 事件机制event(一) 此文用来记录学习笔记: 休息了好几天,从今天开始继续保持更新,鞭策自己学习 今天我们来说一说什么是事件,对于事件,相信你一定不陌生, 基本事件是什么?就类似于click.keypress.focus.mouseover等这些事件都是浏览器定义好的内置事件,我们直接使用即可.对于高级事件,无非就是自己去设计一个事件,就比如我们实际项目中,通常都伴随些业务逻辑,可能是曾删改查等...这些事件都是非原生事件,也就是浏览器无…
THREE.WebGLRenderer WebGL Render 用WebGL渲染出你精心制作的场景 介绍 在之前的介绍中, 已经介绍过场景, 相机, 光源, 有了这些后, 就可以形成一个可观的三维展示效果, 但是, 若想让它展示在网页上, 就需要渲染器渲染到网页上 那WebGL又是啥, 这里借用百度的一段解释 WebGL(全写Web Graphics Library)是一种3D绘图协议,这种绘图技术标准允许把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES…
因为工作需求,最近接触到了ThreeJs库,国内学习文档的确少,所以在这里写下bolgs记录学习史,并且给后面学习的人尽一份微博之力. 3D场景依靠WebGL技术.目前支持比较好的浏览器,谷歌.火狐.  要展示一个3D效果,使用ThreeJS库需要创建几个重要的东西.包括相机.场景. 渲染.形状.下面是几个Js库: Three.JS--核心库,3D场景.形状.光线等处理- Detector.JS--探测器,目前使用用途,判断浏览器是否支持WebGL  Stats.min.js--基本库,因为…
在之前因为项目需要使用WebGL技术做网页应用,但是苦于自己没有接触,只是使用过OpenGL.然后接触到了thre.js这个第三方库之后我突然心情很愉快,这将节省我很多时间. 过了这个项目之后,就再也没有看过它了,最近翻开我的个人记录发现了在角落边缘堆尘的three.js决定再看一下,然后记录下来以便以后翻看,毕竟多一个技能也挺好的. three.js简介 three.js是JavaScript编写的WebGL第三方库.提供了非常多的3D显示功能. Three.js 是一款运行在浏览器中的 3D…
通过上一篇文章我的three.js学习记录(一)基本上是入门了three.js,但是这不够3D,这次我希望能把之前做的demo弄出来,然后通过例子来分析操作步骤. 1. 示例 上图是之前做的一个demo,有点丑,希望不要介意. 这个主要是外面一层包裹着天空盒, 然后里面是一个由开顶的立方体做成的房子(暂且理解为房子)以及里面的家具构成,其中包括可以播放视频的电视,一个可以照的镜子,导入的沙发模型等 2. 操作步骤 2.1 准备工作 首先,我们需要上一篇文章的基础,这里不再赘述,我们直接进入主题,…
WebGL three.js学习笔记 使用粒子系统模拟时空隧道 本例的运行结果如图: 时空隧道demo演示 Demo地址:https://nsytsqdtn.github.io/demo/sprite/tunnel three.js的粒子系统 three.js的粒子系统主要是依靠精灵体来创建的,要实现three.js中的粒子系统创建,一般有两种方式. 第一种是在场景中使用很多歌THREE.Sprite创建单个的精灵,这样创建的每一个精灵体,我们都可以单独对它们进行操作,同时我们也可以用一个THR…
前言 JavaScript 3D library The aim of the project is to create an easy to use, lightweight, 3D library. The library provides <canvas>, <svg>, CSS3D and WebGL renderers.(该项目的目标是创建一个易于使用,轻量级的3D库.该库提供了<canvas>,<svg>,CSS3D和WebGL渲染器.) 示例 …
WebGL学习----Three.js学习笔记(5) 点击查看demo演示 Demo地址:https://nsytsqdtn.github.io/demo/360/360 简单网格材质 MeshNormalMaterial MeshNormalMaterial是一种不受渲染时使用的颜色影响的材质,它只与自己每一个面从内到外的法向量有关.法向量在webgl中用处十分广泛,光的反射,以及三维图形的纹理映射都与这个有关. 从图中可以看到,网格的每一面渲染的颜色都是不一样的,如果我们想要在物体表面添加法…
目前three.js是浏览器展现3D效果的一个很强大的js工具,遗憾的是没有特别系统而全面的文档(threejs官方文档感觉有些缺漏,可以和WebGL中文网的threejs教程对比着看).好了,根据WebGL中文网的threejs教程开始学习,因为教程里的部分代码已经不适用(过时)了,导致学习的时候有些磕磕绊绊,故记录下自己编写的代码,以便以后查阅. 1.index.html <!DOCTYPE html> <html lang="en"> <head&g…
WebGL three.js学习笔记 6种类型的纹理介绍及应用 本文所使用到的demo演示: 高光贴图Demo演示 反光效果Demo演示(因为是加载的模型,所以速度会慢) (一)普通纹理 计算机图形学中的纹理既包括通常意义上物体表面的纹理即使物体表面呈现凹凸不平的沟纹,同时也包括在物体的光滑表面上的彩色图案,所谓的纹理映射就是在物体的表面上绘制彩色的图案. 在three.js中使用纹理可以实现很多不同的效果,但是最基本的就是为网格体的每个像素指定颜色.等同于将一张纹理图片应用在一个几何体的材质上…
前言:在上一篇随笔BABYLON.js学习之路·前辈经验(一)中回顾了组内同事们长时间在Babylon开发实践中的总结出的学习之路和经验,这一篇主要对开发中常见的一些功能点做一个梳理,这里只作为温故知新. 一.相机   弧形旋转相机 —— 使用鼠标和光标键将相机绕着一个三维点(此处时0坐标处) 旋转 参数:  名称, 水平角(alpha), 垂直角(beta), 半径, 围绕的目标, 场景 var camera = new BABYLON.ArcRotateCamera("ArcRotateCa…
使用WebGL + Three.js制作动画场景 3D图像,技术,打造产品,还有互联网:这些只是我爱好的一小部分. 现在,感谢WebGL的出现-一个新的JavaScriptAPI,它可以在不依赖任何插件的情况下渲染浏览器中的3D图像-这让3D渲染操作变得异常简单. 随着虚拟现实和增强现实应用的发展,大型厂商们开始转向数字化触觉体验,这是令人动心的一项技术. 或者,至少那些已经投资的人这一年还抱有希望-11亿美金流入VR和AR领域. 从Abbey Road Studios的谷歌交互之旅到拍摄Dea…
WebGL three.js学习笔记 加载外部模型以及Tween.js动画 本文的程序实现了加载外部stl格式的模型,以及学习了如何把加载的模型变为一个粒子系统,并使用Tween.js对该粒子系统进行动画设置 模型动画demo演示(网页加载速度可能会比较慢) demo地址:https://nsytsqdtn.github.io/demo/naval_craft/naval_craft demo截图如下: 原模型截图: 在我们写three.js的网页的时候,大多时候并不需要我们去手动建立模型,一些…
此次的亮点不是three.js的3d部分,而是通过调用摄像头然后通过摄像头的图像变化进行简单的判断后进行一些操作.上篇中我通过简单的示例分析来学习three.js,这次是通过上一篇的一些代码来与摄像头判断部分的代码相互结合,弄一个新的东西,可以看下图 说明 这次的示例是我们可以通过一个摄像头隔空控制我们屏幕中的视频的播放. 原理其实也是很简单,我们看到的摄像头图像其实是通过获取到的图像数据然后再通过canvas 画上去的,这里有两层canvas 一层是我们的正常的摄像头输出,一层是我们的播放按钮…
THREE.JS第一个场景 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="https://cdn.bootcss.com/three.js/r67/three.js"></script> <script src="https://cdn.b…
目录 1. 概述 2. 详论 3. 问题 1. 概述 在文章<Unity3D学习笔记11--后处理>中论述了后处理是帧缓存(Framebuffer)技术实现之一:而另外一个帧缓存技术实现就是渲染纹理了.通常来说,我们渲染的场景会直接显示到屏幕的颜色缓冲区,但其实纹理和屏幕一样都是二维的,通过把场景渲染到纹理,可以实现很多特别的三维应用场景.三维渲染引擎中,通常给相机封装一个渲染目标(Render Target)的接口,如果不设置,就渲染到屏幕:如果将其设置成一个纹理对象,就渲染到纹理. 2.…
本文是[Knockout.js 学习体验之旅]系列文章的第3篇,所有demo均基于目前knockout.js的最新版本(3.4.0).小茄才识有限,文中若有不当之处,还望大家指出. 目录: [Knockout.js 学习体验之旅](1)ko初体验 [Knockout.js 学习体验之旅](2)花式捆绑 [Knockout.js 学习体验之旅](3)模板绑定 模板引擎 页面是由数据和HTML组件构成的,如何将数据嵌入到HTML组件里面呢?一个比较好的选择是使用模板技术. 回顾下第一篇([Knock…
习·D3.js 学习资源汇总 除了D3.js自身以外,许多可视化工具包都是基于D3开发的,所以对D3的学习就显得很重要了,当然如果已经有了Javascript的经验,学起来也会不费力些. Github主页:https://github.com/mbostock/d3/wiki 包括D3简介,案例,教程和公开课,以及之前提到的API参考等. Github教程页面:https://github.com/mbostock/d3/wiki/Tutorials -·-·-·-·-·-其他:-·-·-·-·…
WebGL学习----Three.js学习笔记(1) webgl介绍 WebGL是一种3D绘图协议,它把JavaScript和OpenGL ES 2.0结合在一起,通过增加OpenGL ES 2.0的一个JavaScript绑定,WebGL可以为HTML5 Canvas提供硬件3D加速渲染. WebGL技术标准免去了开发网页专用渲染插件的麻烦,可被用于创建具有复杂3D结构的网站页面,甚至可以用来设计3D网页游戏. 原生的WebGl比较复杂,主要通过对顶点着色器和片元着色器的操作,来实现渲染,但实…
1.DOM节点的常用属性(所有节点都支持) nodeType:元素1,属性2,文本3 nodeName:元素标签名的大写形式 nodeValue:元素节点为null,文本节点为文本内容,属性节点为属性值 关系属性:parentNode,childNodes,nextSibling,previousSibling,firstChild,lastChild ownerDocument:文档节点(document对象) 2.操作DOM节点(增/删/改) appendChild(node);给当前节点的…
1.文字形状 说起3d文字想起了早年word里的一些艺术字: 时间真快. 那么TextGeometry可以用来创建三维的文字形状. 使用文字形状需要下载和引用额外的字体库.这里,我们以 helvetiker字体为例.引用: <script type="text/javascript" src="你的路径/helvetiker_regular.typeface.json"></script> TextGeometry的构造函数是: THREE.…
一.官网 Nuxt.js - Universal Vue.js Applications https://nuxtjs.org/ 二.中文官网 Nuxt.js - Vue.js 通用应用框架 https://zh.nuxtjs.org/ 三.关联学习 Vue SSR 指南 https://ssr.vuejs.org/zh/ 四.概念介绍  Nuxt.js 是什么?  Nuxt.js 是一个基于 Vue.js 的通用应用框架. 通过对客户端/服务端基础架构的抽象组织,Nuxt.js 主要关注的是应…
文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Backbone源码结构 1: (function() { 2: Backbone.Events // 自定义事件 3: Backbone.Model // 模型构造函数和原型扩展 4: Backbone.Collection // 集合构造函数和原型扩展 5: Backbone.Router // 路由…
这个渲染程序是研一下学期的计算机图形学课程大作业,花了两三周学习使用了下 openGL 3.3+ 库,整合出了这个渲染程序,完成于 2013/07/05. 相对于老版本的库,新版本更开放,给了程序员更多的控制自由度,程序员可以利用自己掌握的图形学知识,渲染出更炫更高效的场景,但是使用起来更难了. 新版本有一个很重要的新特性 —— 着色语言(Shading Language),着色语言由显卡执行,功能更强大,效率更高. 新版本的库不再提供 glu.glut.glaux 等辅助库,不过有丰富的开源库…
Vue.js 2.x render 渲染函数 & JSX Vue绝大多数情况下使用template创建 HTML.但是比如一些重复性比较高的场景,需要运用 JavaScript 的完全编程能力,可以使用render函数. 1. 节点.树以及虚拟DOM 每个元素都是一个节点.每片文字也是一个节点.甚至注释也都是节点. 一个节点就是页面的一个部分.每个节点都可以有子节点. 比如上面的节点树就表示下面的代码: <div> <h1>My title</h1> Some…
本篇文章主要介绍了详解Nuxt.js Vue服务端渲染摸索,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正. Nuxt.js 十分简单易用.一个简单的项目只需将 nuxt 添加为依赖组件即可.Vue因其简单易懂的API.高效的数据绑定和灵活的组件系统,受到很多前端开发人员的青睐.国内很多公司都在使用vue进行项目开发,我们正在使用的简书,便是基于Vue来构建的.我们知道,SPA前端渲染存在两大痛点:(1)SEO.搜索引擎爬虫难以抓取客户端渲染的…
vue.js学习记录 文章已同步我的github笔记https://github.com/ymblog/blog,欢迎大家加star~~ vue实例 生命周期 beforeCreate:不能访问this.$el和this.$data用于初始化非响应式变量created:可以访问this.$data,不能访问到this.$el属性,this.$refs内容,用于ajax请求,created里赋值,data不用定义beforeMount:this.$el和this.$data都初始化了,挂载前thi…
一.为什么要用Nuxt.js 原因其实不用多说,就是利用Nuxt.js的服务端渲染能力来解决Vue项目的SEO问题. 二.Nuxt.js和纯Vue项目的简单对比 1. build后目标产物不同 vue: dist nuxt: .nuxt 2. 网页渲染流程 vue: 客户端渲染,先下载js后,通过ajax来渲染页面: nuxt: 服务端渲染,可以做到服务端拼接好html后直接返回,首屏可以做到无需发起ajax请求: 3. 部署流程 vue: 只需部署dist目录到服务器,没有服务端,需要用ngi…