位置: 编程技术 - 正文

Three.js基础学习教程(three.js菜鸟教程)

编辑:rootadmin

推荐整理分享Three.js基础学习教程(three.js菜鸟教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:three.js中文教程,three.js 教程,three.js stl,three.js入门指南,three.js入门指南,three.js 入门,three.js 入门,three.js入门指南,内容如对您有帮助,希望把文章链接给更多的朋友!

一、Three.js官网及使用Three.js必备的三个条件

1.Three.js 官网 actually be able to display anything with Three.js, we need three things: A scene, a camera, and a renderer so we can render the scene with the camera.)

大致意思是使用three.js可以实现任何显示的东西,必须满足三个条件: a scene场景、a camera相机、a renderer渲染器. 三者缺一不可。

二、使用Three.js必备三个条件(a scene场景、a camera相机、a renderer渲染器)之间的关系 

如上图所示,来说明a scene场景、a camera相机、a renderer渲染器三者之间关系[/code]

1.场景scene是一个物体的容器【通俗理解装东西的嘛】,开发者可以将需要的角色放入场景中,例如苹果,葡萄。同时,角色自身也管理着其在场景中的位置。

2.相机camera的作用就是面对场景,在场景中取一个合适的景,把它拍下来。【可以想象成人的眼睛】

3.渲染器renderer的作用就是将相机拍摄下来的图片,放到浏览器中去显示

三、通过上述理论来实践官网案例

效果图如下

官网案例实现源码

通过官网案例不难发现,camera照相机默认的观察方向是屏幕的方向(z轴负方向),当变化坐标以后,就要将照相机指向原点,才能观察到物体

z轴负方向???因此这里很有必要说说三维坐标(如下图)

照相机指向原点???来说说相机camera相机(很重要!!想象一下人看不到东西是什么感觉).

Three.js基础学习教程(three.js菜鸟教程)

案例中采用透视相机(从视点开始越近的物体越大、远处的物体绘制的较小的一种方式、和日常生活中我们看物体的方式是一致的。)

var camera = new THREE.PerspectiveCamera(fov, aspect , near,far)

new THREE.PerspectiveCamera(fov, aspect , near,far) 透视相机视野角:fov 这里视野角(有的地方叫拍摄距离)越大,场景中的物体越小,视野角越小,场景中的物体越大纵横比:aspect相机离视体积最近的距离:near相机离视体积最远的距离:far

综上,相信结合上述三维坐标、相机图理解相机、就应该变得很简单咯哦.接下来接着修改上述案例(说明 后面案例鼠标滚动放大缩小、三维旋转都是基于相机来实现的)

四、将官网案修改且设置相机朝向及相机位置

利用[lookAt]方法来设置相机的视野中心。 「lookAt()」的参数是一个属性包含中心坐标「x」「y」「z」的对象。

设置相机的上方向为正方向y轴 camera.up.x = 0; camera.up.y = 1/*相机朝向--相机上方为y轴*/; camera.up.z = 0;

五、实现旋转立方体

旋转动画原理相机围绕y轴旋转,不断修改相机x、z轴位置,并且保持场景中的物体一直再相机的视野中,实时将相机拍摄下来的图片,放到浏览器中去显示

实现效果图如下所示

旋转立方体——案例源码

至此完毕,附上个人绘制思路流程图

【参考资料】

使用3D引擎threeJS实现星空粒子移动效果

使用3D引擎threeJS实现星空粒子移动效果 three.js是JavaScript编写的WebGL第三方库。提供了非常多的3D显示功能。Three.js是一款运行在浏览器中的3D引擎,你可以用它创建各种三维场景,包括了摄影机

Bootstrap table使用方法汇总 bootstrap-table是在bootstrap-table的基础上写出来的,专门用于显示数据的表格插件。而bootstrap是来自Twitter,是目前最受欢迎的前端框架。Bootstrap是基于HTML、

js 毫秒转天时分秒的实例 实例如下所示:formatDuring:function(mss){vardays=parseInt(mss/(***));varhours=parseInt((mss%(***))/(**));varminutes=parseInt((mss%(**))/(*));varseconds

标签: three.js菜鸟教程

本文链接地址:https://www.jiuchutong.com/biancheng/369814.html 转载请保留说明!

上一篇:three.js实现3D视野缩放效果(three. js)

下一篇:使用3D引擎threeJS实现星空粒子移动效果(3d引擎开发)

  • 小规模纳税人取得增值税
  • 合伙企业税务筹划点
  • 应纳税所得额怎么计算应纳税额
  • 其他应付款和其他应付款可以重分类
  • 一般纳税人简易征收最新政策2023
  • 计提资本公积的处理
  • 差旅费哪些可以抵扣进项税
  • 报账单大写金额填写方式
  • 资产负债表月报期末余额怎么填
  • 小规模开专票要计提附加税吗
  • 房地产会计预收账款明细科目
  • 外商投资企业采取发包、出租经营
  • 怎么算应纳税收多少
  • 房屋契税是按照发票上的不含税价格交吗
  • 汇算清缴亏损在后期弥补时怎么做会计处理?
  • 公司办理食品许可证
  • 红字撤销需要带什么去税务局
  • 工会疗养政策对比
  • 以提供劳务为主营业务的企业
  • 年底结账会计分录一定要做吗
  • 装修计入固定资产
  • 应交税金成负数
  • 非独立核算的分公司是什么意思
  • 在PDF里怎么将A4缩小转换为一半打印出来
  • 损益类科目为什么不影响利润
  • 计提无形资产累计摊销9083.33
  • 公司向外单位借款摘要怎么写
  • 外贸企业出口退税计算公式
  • 会计审核票据如何签字
  • 税没申报不能领发票吗
  • 应用程序出现异常怎么办
  • rapapp.exe - rapapp是什么进程 有何作用
  • 长期病假解除劳动合同怎么赔偿
  • 境外汇款所得税缴纳规定
  • 拔罐的好处和坏处除湿
  • 销售退回会计处理与税务处理
  • php ssl
  • idea添加web项目
  • 劳务报酬可以扣除合理支出吗
  • php功能模块
  • php封装数据库连接
  • 微信小程序设计规范(官方)文档
  • python yolo
  • dedecms插件
  • 破产审计需要几年的账
  • 农副产品免税了还需要缴纳个人所得税吗
  • 电子税务局怎么注册
  • 所得税费用期末结转吗
  • 专票和普票都是13个点嘛
  • 资源税类的税种是
  • 安全生产费实际发生
  • 个体户如何填报工商年报资金数额
  • 净资产越来越少会有什么风险
  • 企业被列入经营异常名录可以注销吗
  • 卖旧固定资产计入哪个科目
  • 计提社保公积金个税会计分录
  • 员工借款怎么处理
  • 经营租赁不动产租赁发票开具要求
  • 水果销售公司怎么起名字好听
  • 生产企业代理出口退税
  • 非营利医疗机构由谁批准
  • window所有程序在哪里
  • 如何将用户加入某个组
  • 在linux系统中命令
  • linux mount -o remount
  • win8系统如何关闭杀毒系统
  • windowsxp怎么装windows7
  • sysscjh.exe是什么文件
  • windows10如何取消密码开机
  • 在linux系统中有一个重要的概念
  • unity脚本编写教程
  • jquery实现select选择框内容左右移动代码分享
  • 浅谈双减背景下的高效课堂
  • 开源安卓app
  • python 举例
  • 西安市地税局各科科长
  • 安家费购房补贴区别
  • 多张发票怎么粘贴在a4纸上面
  • 出租场地的税费
  • 广东省通用机打发票怎么开
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设