位置: 编程技术 - 正文

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引擎开发)

  • 税务师考试给个税表吗
  • 工业企业结转成本表格模板
  • 收到公司发来的材料,计入会计分录
  • 企业卖车需要交印花税吗
  • 2021年专项附加扣除必须要确认吗
  • 进项抵扣联丢了怎么办
  • 新个税系统如何操作
  • 清算期间,公司是否可以经营
  • 资产类期末借方余额怎么算
  • 结存材料物资会计分录怎么做?
  • 事业基金弥补收支差额是什么意思
  • 实收资本叫别人代缴可以不
  • 河道工程维护管理费征收
  • 公司投资另一个公司的投资款怎么入账
  • 中国银行结算包括哪些内容?怎么做会计分录?
  • 出口退税是按进项税额吗
  • 餐饮增值税发票税率
  • 退回所得税怎么处理
  • 统借统还如何缴纳增值税
  • 个税公司承担怎么做账计入其他应收款怎么平账
  • 企业所得税季度预缴
  • 企业交纳房产税,土地使用税、车船使用税应借记( )账户
  • 统一社会信用代码证
  • 应补退所得税额是什么
  • 小规模纳税人增值税免征额
  • 合伙制创投企业与合伙制创投基金
  • 为什么贷款利息变高了
  • 回收站右键菜单修改
  • 事业单位个税手续费返还需要上缴财政吗
  • 免税收入要减去吗
  • 公司向股东借款合法吗
  • system进程有什么用
  • PHP:Memcached::getServerList()的用法_Memcached类
  • PHP:token_get_all()的用法_Tokenizer函数
  • PHP:stream_get_transports()的用法_Stream函数
  • 存货包括生产成本,在资产负债表中表示
  • 笔记本电脑保养与维护
  • 被雪覆盖的山峰
  • php的fopen
  • 工地事故赔付
  • 伊斯塔神
  • php的什么函数可以判断变量是否存在
  • 前端常见错误
  • php的execute
  • thinkphp框架怎么用
  • php发送post请求api
  • 2021市场发展
  • 房租费发票可以抵扣增值税吗
  • 公司现金发放证明
  • 如何更好的使用银行承兑汇票
  • 增值税是在年末怎么处理
  • 持有待售资产属于
  • ubuntu 14.04 安装分区教程
  • 政府会计的会计要素有哪几个?会计要素之间的关系如何?
  • 出口企业出口退税流程
  • 含税金额和税额的关系
  • 专项应付款在借方
  • 主营业务成本暂估怎么算
  • 医院收费票据可以入账吗
  • 合伙企业与公司相比,有什么优势呢?
  • mysql查看查询耗时
  • samba webui
  • 自动隐藏桌面图标
  • linux xfs 扩容
  • 电脑没有声音了是怎么回事
  • linux命令shell脚本
  • python里面import
  • unity3d模型怎么制作
  • javascript的
  • android中的webview
  • go 与 python
  • unity 版本控制
  • jquery使用教程
  • python编程完全入门教程
  • socket客户端发送数据
  • jquery.form.min.js
  • unity打包后的程序闪退
  • Javascript字符串对象函数
  • jquery常用操作
  • 关于返回
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设