当前位置: 首页 > news >正文

信誉好的扬中网站建设南昌市新农村建设网站

信誉好的扬中网站建设,南昌市新农村建设网站,网站建设seo运营规划,wordpress数据库配置文件本文简介 本文介绍 Three.js 的基础方法#xff1a;监听材质加载。 在 《Three.js 基础纹理贴图》 里介绍了如何给图形贴图#xff0c;贴图前需要先把纹理加载好。我们基于这篇文章继续讲解如何监听材质加载成功或者失败。 监听单个材质 我们使用 TextureLoader 的 load() 方… 本文简介 本文介绍 Three.js 的基础方法监听材质加载。 在 《Three.js 基础纹理贴图》 里介绍了如何给图形贴图贴图前需要先把纹理加载好。我们基于这篇文章继续讲解如何监听材质加载成功或者失败。 监听单个材质 我们使用 TextureLoader 的 load() 方法加载纹理时第一个参数传入纹理的路径之后还可以多接受3个函数类型的参数。 根据 Three.js 的 TextureLoader.load 文档介绍这几个参数是 【参数1】url: 文件的URL或者路径。【参数2】onLoad: 材质加载完时调用【参数3】onProgress: 材质加载过程中调用实例包含 total 和 loaded 。但文档说了在 Three.js r84 时启用了 TextureLoader 进度事件。【参数4】onError: 在加载错误时被调用。 先上一个官方的例子 js // 初始化一个加载器 const loader new THREE.TextureLoader(); // 加载一个资源 loader.load( // 【参数1】资源URL textures/landoceanicecloud2048.jpg, // 【参数2】onLoad回调 function ( texture ) {// 【才材质加载成功后执行】const material new THREE.MeshBasicMaterial( {map: texture} ); },// 【参数3】目前暂不支持onProgress的回调 undefined,// 【参数4】onError回调 function ( err ) {console.error( 材质加载失败 ); } ) 从官网给出的例子中可以看到【参数3】原本用来监听材质加载进度的 onProgress() 方法用了 undefined 来代替占着位。 监听多个材质 如果要加载多个材质我们可以使用 LoadingManager 来监听这个方法可以配合 TextureLoader 一起用的。 LoadingManager 可以监听材质加载结果(成功或失败)也可以监听材质加载进度。 LoadingManager(onLoad, onProgress, onError) 接受3个回调函数作用分别是 onLoad: (可选) 所有加载器加载完成后将调用此函数。onProgress: (可选) 当每个项目完成后将调用此函数。onError: (可选) 当一个加载器遇到错误时将调用此函数。 我们需要在 new THREE.TextureLoader(loadingManager) 时将 loadingManager 传入。9 举个例子 js // 省略部分代码 // 设置加载管理器 const loadingManager new THREE.LoadingManager( function() { console.log(图片加载完成) }, function(url, loaded, total) { console.log(图片加载中本次加载的材质${url}第 ${loaded}/${total} 个材质) }, function(err) { console.log(图片加载失败, err) } ) // Three提供的纹理加载器 const textureLoader new THREE.TextureLoader(loadingManager) // 导入纹理贴图基础贴图 const imgTexture1 textureLoader.load(../assets/images/140.jpg) const imgTexture2 textureLoader.load(../assets/images/141.jpg) 此时控制台会依次输出 图片加载中本次加载的材质../assets/images/140.jpg第 1/2 个材质 图片加载中本次加载的材质../assets/images/141.jpg第 2/2 个材质 图片加载完成 这是在 140.jpg 和 141.jpg 都存在的情况下会这样输出。 假设要加载2个材质其中一个材质是存在的另一个材质不存在就会分别输出每个材质的结果。 js // 省略部分代码 // 导入纹理贴图基础贴图 const imgTexture1 textureLoader.load(../assets/images/140.jpg) // 该材质是存在的 const imgTexture2 textureLoader.load(../assets/images/100.jpg) // 该材质不存在 这种情况会这样输出 图片加载失败 ../assets/images/13.jpg 图片加载中本次加载的材质../assets/images/13.jpg第 1/2 个材质 图片加载中本次加载的材质../assets/images/140.jpg第 2/2 个材质 图片加载完成 可以在 onError 里监听到当前哪个材质加载失败参数会将加载失败的材质路径返回给开发者。 日常开发推荐使用 LoadingManager 尤其是要监听加载多个材质时用 LoadingManager 可以帮我们实现加载进度条。 推荐阅读 《Three.js 起飞》 《Three.js 场景 Scene》 《Three.js 辅助坐标轴》 《Three.js 性能监视器 Stats》 《Three.js 这样写就有阴影效果啦》 《Three.js 基础纹理贴图》 点赞 关注 收藏 学会了
http://www.sadfv.cn/news/85166/

相关文章:

  • html5手机移动app网站制作教程手机网站商城建设答辩问题
  • 微商软件商城总站wordpress 发文章漏洞
  • 免费购物网站制作室内设计师招聘简章
  • 重庆孝爱之家网站建设网站开发预算报表
  • 北京企业网站建站哪家好长沙网站建设市场低价
  • 学做蛋糕网站中山seo扣费
  • 蓝色网站特点贵州app开发公司
  • 易物网网站建设管理常州城投建设招标网站
  • 山西网站开发建设网站企业案例
  • 免费有趣的网站塑胶制品塘厦东莞网站建设
  • 今标 网站建设天津市今天新闻头条
  • 什么网站有项目做WordPress.AMP
  • 2010年最具人气的平面设计师必备网站公益建设网站的作用
  • 淘宝客网站根目录网站的备案流程
  • 中英文网站为什么要分开做app比网站的优势
  • 网站重新设计网站建设分解结构
  • 北京改网站公众号编辑 wordpress
  • 东莞网站建设公司辉煌大厦哪里可以接网站开发项目做
  • 揭阳网站建设托管网站建设网站公司哪家好
  • 网站建设织梦怎么样网站建设的五类成员
  • 公司网站设华为外包一般能干多久
  • 网站彩票网站开发石碣做网站优化
  • 公司做网站的费用怎么做账十大保洁公司
  • 建网站难不难注册公司后每年要交什么费用
  • 广州做网站建设的公司哪家好电子简历手机版免费
  • 优秀建筑方案设计文本seo快速排名软件首页
  • 宁波模板建站源码建筑招投标信息网
  • 58同城 网站建设 推广排名电子兼职网站建设
  • 网站建设中的咨询服务深圳 网站优化公司排名
  • 网站很卡如何优化网页微信版能破解通讯录吗