three.js 杂记

ops/2024/11/14 6:11:37/
htmledit_views">

clip:

1:

着色器

  #ifdef USE_CLIP_DISTANCE

                    vec4 worldPosition = modelMatrix * vec4( position, 1.0 );

                    gl_ClipDistance[ 0 ] = worldPosition.x - sin( time ) * ( 0.5 );

#endif

                gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );

shaderMe~:

启用clipCullDistance属性后,开发者可以通过设置材质的clipDistances属性来定义剪裁平面。这个属性通常是一个数组,包含了每个剪裁平面的距离值。同样,cullDistances属性可以用来设置剔除距离。

 material.extensions.clipCullDistance = true;

2:

renderer.clippingPlanes=new THREE.Plane~;

renderer.localClippingEnabled

material.clippingPlanes=~

material.clipIntersection true/false

更改剪裁平面的行为,以便仅剪切其交叉点,而不是它们的并集

其他 clipShadows,alphaToCoverage,stencilFail,stencilZFail,stencilZPass

DecalGeometry  贴花效果网格

//红蓝视觉效果

effect = new AnaglyphEffect( renderer );

  effect.setSize( width, height );

 effect.render( scene, camera );

AsciiEffect

ParallaxBarrierEffect 实现视差屏障效果。这个效果通常用于创建3D场景中的深度感,通过让不同深度的物体以不同的速度移动来模拟人眼观察真实世界时的视差效果

PeppersGhostEffect是一种特殊的WebGL效果,它可以创建一种视觉上的“幽灵”效果,通常用于增强场景中的透明度和深度感

StereoEffect是一个用于在WebGL渲染中创建立体视觉效果的类或函数  vr

 textureCube.mapping = THREE.CubeRefractionMapping;

可以创建一个场景中的物体,当光线穿过它时,会显示出立方体贴图中定义的折射效果。这对于创建逼真的3D场景非常有用,尤其是那些需要展示透明或半透明物体的场景。

告诉Three.js引擎使用立方体贴图来计算折射效果。折射是指光线从一种介质进入另一种介质时速度发生改变,导致光线方向发生偏转的现象。在3D图形中,折射效果可以用来模拟水、玻璃等透明物质的效果。


http://www.ppmy.cn/ops/133480.html

相关文章

CNN中每一层的权重是一样的么?

在卷积神经网络(CNN)中,每一层的权重并不是完全相同的,但在同一层内是共享的。具体来说,CNN的权重共享机制是指:在卷积层中,同一卷积核(filter)在输入图像的不同区域进行…

微擎框架php7.4使用phpexcel导出数据报错修复

在使用微擎社区版时,用phpexcel导出数据,提示错误,经过搜索后得知是php版本问题。 之前一直是用的5.6现在改成了7.4。所以才发现了这个问题。 然后去gitee上看了下微擎官方的代码,好像也没有对这个问题进行修复。 找了下&#…

【蓝桥杯 2021 省 B2】特殊年份

题目描述: 今年是 2021 年,2021 这个数字非常特殊, 它的千位和十位相等, 个位比百位大 1,我们称满足这样条件的年份为特殊年份。 输入 5 个年份,请计算这里面有多少个特殊年份。 输入格式 输入 5 行,每行一个 4 位十…

matlab建模入门指导

本文以水池中鸡蛋温度随时间的变化为切入点,对其进行数学建模并进行MATLAB求解,以更为通俗地进行数学建模问题入门指导。 一、问题简述 一个煮熟的鸡蛋有98摄氏度,将它放在18摄氏度的水池中,五分钟后鸡蛋的温度为38摄氏度&#x…

mysql每日一题(上升的温度,date数据的计算)

日期之间的运算 日期类型的加法运算 data_add(now_data,interval 1 month) select date_add(now(), interval 1 day); -- 加1天 select date_add(now(), interval 1 hour); -- 加1小时 select date_add(now(), interval 1 minute); -- 加1分钟 select date_add(now(), inter…

Scala的Map集合练习

package gxyimport scala.collection.mutableobject Test25 {def main(args: Array[String]): Unit {//可变mapval map1 mutable.Map("123" -> "活着,余华,8888", "234" -> "朝花夕拾,鲁迅,7777", "456" -> &quo…

【go从零单排】go语言中testing的几种类型

🌈Don’t worry , just coding! 内耗与overthinking只会削弱你的精力,虚度你的光阴,每天迈出一小步,回头时发现已经走了很远。 📗概念 Go 语言中的 testing 包是用于编写和运行测试的标准库。它提供了丰富的功能&…

常用服务部署

elasticsearch单机版部署 es-cluster.yamlfilebeat.ymllocal-pv.yaml elasticsearch集群部署 es-cluster.6.ymles-cluster.yamles-cluster-single.yamlfilebeat.ymllocal-pv.yaml firefly部署 filebeat.ymlfirefly.yml grafana部署 grafana.ymllocal-pv.yaml filebeat部…