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

html5 国外网站百度官方优化指南

html5 国外网站,百度官方优化指南,做网站云主机,王野 天启写在前面的话 Sceneform-EQR是基于(filament)扩展的一个用于安卓端的渲染引擎。故本文内容对Sceneform-EQR与Filament都适用。 需求场景 在使用Filament加载三维场景的过程中,一个3D场景对应加载一个背景纹理。而这样的话,即便…

写在前面的话

Sceneform-EQR是基于(filament)扩展的一个用于安卓端的渲染引擎。故本文内容对Sceneform-EQR与Filament都适用。

需求场景

在使用Filament加载三维场景的过程中,一个3D场景对应加载一个背景纹理。而这样的话,即便有多个3D场景是同一个风格,但由于背景颜色不同,也需要UI设计师准备不同的背景切图。这不仅仅会造成资源的浪费,也会增大UI设计师的工作。

要解决的问题:在Filament引擎中采用一份背景切图实现不同3D场景的背景颜色的定制化。

具体步骤

  1. 我们要基于Filament材质系统定制一个能够支持背景融合的材质文件。
    已知Filament提供了以下参数类型:
    在这里插入图片描述

已知在Filament引擎中获取指定纹理的颜色值的方法如下:

  • 从图片纹理“background”获取(u,v)位置的颜色值的方法。

t1(u,v) = texture(materialParams_background, getUV0())

  • 从视频纹理“video”获取(u,v)位置的颜色值的方法。

t2(u,v) = texture(materialParams_video, getUV0())

  • 获取颜色纹理的颜色值的方法。

t3(u,v) = blendColor

定制支持背景融合的材质文件:
(1)在已知部分中,我们采用t1(u,v) ,t2(u,v) ,t3(u,v)来表示三种不同类型纹理的获取纹理坐标为(u,v)的颜色值的方法,而在实际的需求中,我们为了实现复杂的视觉效果,往往会使用更多数量的纹理对象。为了简化后续表述,现统一采用T(u,v)代替t1(u,v) ,t2(u,v) ,t3(u,v)表示方法,来表示获取指定纹理对象的纹理坐标为(u,v)的颜色值。

(2)为了控制不同纹理的影响程度,我们引入了权重,从而实现我们通过调节xi的值就可以达到调节3D场景背景效果的目的。
在这里插入图片描述

说明:xi表示第i个纹理的权重值,n表示用于背景融合的纹理数量,wi 表示第i个纹理的在融合后的背景中的影响程度。

(3)结合获取纹理坐标为(u,v)的颜色值公式T(u,v)和权重公式,我们可以得到新颜色值的计算公式Y(u,v)如下:
在这里插入图片描述

说明:i表示纹理对象的索引,xi表示第i个纹理的权重值,n表示用于背景融合的纹理数量, 表示第i个纹理对象在UV坐标为(u,v)的位置获取到的颜色值。
通过上式,我们即可将n个纹理按指定权重进行颜色值的融合,从而得到最终生成的用于3D场景背景渲染的纹理上的坐标为(u,v)的点的颜色值。(见图2)

(4)最后,我们通过编译Filament得到的桌面工具“matc.exe”,使用它编译材质。最终
到可用于Filament引擎在Android平台下加载的材质文件(mat.filamat)。

  1. 在Android平台下读取“matc.exe”工具编译所得的材质,在3D场景中实现基于此材质的背景渲染。
    (1)通过 Filament的VertexBuffer.Builder和IndexBuffer.Builder创建顶点和顶点索引,然后构建场景背景的Mesh对象。
    (2)基于“mat.filamat”构建Material对象,然后将其传入Mesh对象。
    (3)最后,我们可以通过Material对象的相关set方法,实时将材质参数传入Filament引擎,从而通过既定的片段着色器进行多种纹理的背景融合。

附图说明

1、通常的实现方式,添加遮罩View去实现背景的叠加显示。
在这里插入图片描述

图1.叠加遮罩View的实现方式
2、实现多个源纹理的坐标为(u,v)的点的颜色值的融合。
若将这两个源纹理均采用相同的权重进行融合,则融合的效果可参考下图。
在这里插入图片描述

图2.两个源纹理采用的权重

3、通过融合的方式生成新背景纹理的流程图如下:
在这里插入图片描述

图3.生成新纹理的流程

http://www.shuangfujiaoyu.com/news/52743.html

相关文章:

  • 周村有做网站广告的吗大学生网页设计主题
  • 国内b2b网站a片新东方线下培训机构官网
  • 前端做网站的兼职长春做网站公司长春seo公司
  • 怎样做国际网站平台软文推广一般发布在哪些平台
  • 做网站平台多少钱网站如何优化排名
  • 有没有做字的网站网页制作平台有哪些
  • 手机网站怎么做301什么是百度搜索推广
  • 网站开发规划最近一周新闻大事摘抄
  • WordPress文字按钮变色搜索引擎seo是什么意思
  • 网络营销的概念?如何做谷歌优化
  • 在什么文件中加入什么代码告诉搜索引擎蜘蛛网站地图的文件位置?优化大师如何删掉多余的学生
  • 在线看视频网站怎么做的杭州上城区抖音seo有多好
  • 音乐网站界面百度搜索引擎的使用方法
  • 沈阳企业网站开发惠州网络推广
  • 山东通信局报备网站谷歌浏览器手机版免费官方下载
  • 一个专做特卖的网站建网站的详细步骤
  • 网页浏览器软件有seo排名点击器原理
  • 大连网站建设渠道企业站seo
  • 怎么建设企业网站网站测试的内容有哪些
  • 如何利用微信进行企业网站推广景德镇seo
  • 网站建设人员培训纲要百度发广告怎么发
  • 造作网站模版百度推广怎么优化
  • 二手车网站建站创建网站的公司
  • 网站360做的标记如何取消郑州百度推广代运营
  • 数据可视化网站今日国内新闻头条新闻
  • 南京设计网站的公司长沙网站优化
  • 网站制作的步骤不包括邯郸seo
  • 大连做网站的科技公司百度关键词排名点
  • 西安响应式网站建设服务提供商网站宣传推广文案
  • 深圳有做网站的公司吗seo教学免费课程霸屏