webgpu之旅03

news/2024/11/13 4:26:09/
19854902 319854902 319854902 319854902 webgpu交Q流群

我们找个例子看看别人的renderer three.js v152
首先init函数
看见中间有个对象 WebGPURenderPipelines
跟进去看看
在这里插入图片描述
这个构造函数里可以看见有这么些数据

get( renderObject ) {const device = this.device;const cache = this._getCache( renderObject );let currentPipeline = cache.currentPipeline;if ( this._needsUpdate( renderObject ) ) {// release previous cachethis._releasePipeline( renderObject );// get shaderconst nodeBuilder = this.nodes.get( renderObject );// programmable stageslet stageVertex = this.stages.vertex.get( nodeBuilder.vertexShader );if ( stageVertex === undefined ) {stageVertex = new WebGPUProgrammableStage( device, nodeBuilder.vertexShader, 'vertex' );this.stages.vertex.set( nodeBuilder.vertexShader, stageVertex );}let stageFragment = this.stages.fragment.get( nodeBuilder.fragmentShader );if ( stageFragment === undefined ) {stageFragment = new WebGPUProgrammableStage( device, nodeBuilder.fragmentShader, 'fragment' );this.stages.fragment.set( nodeBuilder.fragmentShader, stageFragment );}// determine render pipelinecurrentPipeline = this._acquirePipeline( stageVertex, stageFragment, renderObject );cache.currentPipeline = currentPipeline;// keep track of all used timescurrentPipeline.usedTimes ++;stageVertex.usedTimes ++;stageFragment.usedTimes ++;}return currentPipeline;}

首先会从cache里找找current pipeline
然后看看是不是需要update,然后需要更新就把原来的pipeline删了,重新构建一个,放进cache
结束
remove dispose比较简单
_acquirePipeline就是把shader啥的作为参数构建新的pipeline
_computeCacheKey就是计算key
大概就这些关键信息
继续看renderer
很多函数名和Webgl一样的, 比如getClearAlpha啥的,这些行为都和以前一样的
接下来 render函数
在这里插入图片描述

先把几个特别的东西update一下
_projectObject
在这里插入图片描述

然后这个是把通过裁剪判断的物体收集一下,再排序一下
在这里插入图片描述
东西收集好了,要开始了,但是有点长,下次继续

19854902 319854902 319854902 319854902 webgpu交Q流群

http://www.ppmy.cn/news/292586.html

相关文章

锂电池技术

三元锂电池 三元锂电池的三元素分别叫“镍”“钴”“锰”,配方分别有111,523,811,代表这三种元素在这个电池里所占含量百分比: 111就是各33.33%523就是镍50%,钴20%,锰30%811就是镍80%&#xf…

九龙证券|铁锂电池是什么?铁锂电池的工作原理和优点介绍

铁锂电池是锂电池家族中的一类电池,全名是磷酸铁锂锂离子电池,正极资料主要为磷酸铁锂资料。因为其功能特别适合于动力方面的应用,因此也有人叫它“锂铁动力电池”。(以下简称“锂铁电池”) 铁锂电池的工作原理&#x…

太阳能电池片制造工艺

太阳能电池又称为“太阳能芯片”或“光电池”,是一种利用太阳光直接发电的光电半导体薄片。它只要被满足一定照度条件的光照到,瞬间就可输出电压及在有回路的情况下产生电流。在物理学上称为太阳能光伏(Photovoltaic,缩写为PV&…

三元锂电池 VS 磷酸铁锂电池

三元锂电池 三元锂电池是指正极材料以镍盐、钴盐、锰盐/铝酸锂 三种元素,负极材料以石墨,电解质以六氟磷酸锂为主的锂盐锂电池。 具有能量密度高,安全稳定性好,支持高倍率放电等优异的电化学特性,以及价格适中的成本优…

霍克锂电池结构

霍克磷酸铁锂动力电池使用注意事项 使用电池前应认真阅读《用户使用手册》,防止误操作。电池应牢固安装,避免受强烈冲击或震动。非专业人士不得拆卸电池器件,否则易造成短路等重大安全事故。电池充放电口与外部充电和负载的插头连接应正确可…

施努卡:锂电池生产线设备(锂电池生产主要有些什么设备)

中国是世界上锂电池生产的主要基地,同时是第二大生产国和出口国。作为新能源行业,锂电池有着非常广阔的发展前景。 如今,它的应用已经非常普遍。我们手上拿的手机、手表、工作用的电脑、上下班开的电动车、家用小电器,都用到锂电…

锂电池SOH

电池健康状态(SOH)评估对电池的使用、维护和经济性分析具有指导意义,然而电池的健康状态评估缺少针对性的整理和总结。本文综述了锂电池健康状态的定义、影响因素、评估模型以及研究难点。 锂电池的老化是一个长期渐变的过程,电池的健康状态受温度、电流…

关于锂电池的二三事

为了解释的更清楚,我录制了一个视频,详情可以参看:我的这个B站视频 这是目录0.0 背景参数指标一些使用方法 背景 锂电池是我们日常生活中和制造东西时经常见到和使用的一种东西,但是有很多细节可能很多人了解的不是很清楚&#x…