logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

shader编程-二维空间中使用矩阵实现物体的旋转、缩放、平移变换(WebGL-Shader开发基础03)

shader编程-二维空间中使用矩阵实现物体的旋转、缩放、平移变换1. 变换前物体的绘制2. 旋转的实现1. 变换前物体的绘制在进行变换操前先绘制出要操作的物体,我们就简单的绘制一个矩形来代表,利用之前的绘制矩形的代码稍作修改,之前用的是step函数,现在调整为smoothstep函数,因为旋转时使用step函数绘制的矩形边缘会出现锯齿,具体如下float box(vec3 st){float r

three.js在canvas画布上生成噪音图,然后创建凹凸贴图(vue中使用three.js79)

使用高光贴图创建色彩鲜明的地球1.demo效果2. 实现要点2.1 引入噪音函数库2.2在画布上绘制噪音图2.3 创建凹凸贴图材质的网格对象2.4 更新bumpScale4. demo代码1.demo效果2. 实现要点2.1 引入噪音函数库在public目录下的index.html文件中通过< script >标签引入perlin.js 文件<script type="text/

three.js创建简单动画(vue中使用three.js59)

简单动画1.demo效果2.知识要点2.1 three.js动画分类2.1.1基础动画2.1.2移动相机2.1.3变形和蒙皮2.1.4加载外部动画2.2 基础动画实现方式2.2.1 利用requestAnimationFrame()函数实现动画2.2.2 利用setInterval()或setTimeout()实现动画3.实现要点3.1 创建底板、方块、球体、圆柱并添加到场景3.1 实现方块、球体

#webgl#javascript#3d
shader编程-RayMarching与SDF结合开始三维探索(WebGL-Shader开发基础07)

RayMarching与SDF结合开始三维探索1. 单色背景颜色1. 单色背景颜色人们之所以可以看到物体,是因为光线从光源发出照射到物体,之后反射进入人们的眼睛,这样就看到了物体,在三维模型中使模型呈现在场景中,光线从光源出发,照射到物体,反射后到达相机,反之,同样可以从相机出发光线摄像物体之后反射到光源,RayMarching 算法就是从相机发射光线,具体请看下图从相机出发,向屏幕中的每一个像素

three.js后期处理-使用MirrorShader定制效果实现镜像效果(vue中使用three.js87)

使用MirrorShader定制效果实现镜像效果1.demo效果2. 知识要点2.1 MirrorShader介绍2.2 MirrorShader的使用步骤3. 实现要点3.1 相关文件引入3.2 创建效果组合器3.3 render中更新4. demo代码1.demo效果如上图,展示了使用MirrorShader镜像处理,side属性分别为0、1、2、3时的镜像效果2. 知识要点2.1 Mirro

three.js加载和使用纹理-设置material.bumpMap属性使用凹凸贴图创建皱纹(vue中使用three.js74)

加载DDS、PVR、TGA格式的纹理1.demo效果2. 实现要点2.1 创建地板2.2 创建凹凸贴图的物体2.3 创建普通贴图的物体3. demo代码1.demo效果2. 实现要点2.1 创建地板createFloor() {const publicPath = process.env.BASE_URLconst floorTex = new THREE.TextureLoader().load

three.js用视频输出作为纹理,使用VideoTexture视频纹理实现物体表面播放视频(vue中使用three.js81)

使用VideoTexture视频纹理实现物体表面播放视频1.demo效果2. 实现要点2.1 使用标签引入视频资源2.2 创建视频纹理材质4. demo代码1.demo效果2. 实现要点2.1 使用标签引入视频资源在public目录下的index.html文件中通过< script >标签引入相关文件文件<video id="video" style="display: none

three.js加载VTK格式模型(vue中使用three.js54)

加载VTK格式模型1.demo效果2.实现要点2.1 VTK模型放置路径2.2 加载VTK模型3.demo代码1.demo效果如上图,该demo通过VTKLoader加载了VTK格式的模型,将塑像呈现在页面中2.实现要点2.1 VTK模型放置路径vue中加载文件时默认的路径为public下,所以需要加载的文件放在该路径下,同时在vue的data属性中创建变量publicPath,此变量的值是vue

#webgl#javascript#3d
three.js粒子系统-通过THREE.PointsMaterial材质使用HTML5画布格式化粒子(vue中使用three.js42)

通过THREE.PointsMaterial材质使用HTML5画布格式化粒子1.使用画布格式化粒子介绍2.使用HTML5画布格式化粒子2.1创建Texture画布纹理2.2 创建粒子材质2.2 创建Points对象并添加到场景3.demo效果4.demo代码1.使用画布格式化粒子介绍老版的three.js提供了两种使用THML5画布格式化粒子的方法,即使用CanvasRenderer类和使用Web

#webgl
three.js之高级几何体-扫描体LatheGeometry(vue中使用three.js31)

LatheGeometry几何体介绍和使用1.LatheGeometry几何体介绍2.demo说明3.demo代码1.LatheGeometry几何体介绍LatheGeometry可以通过一条光滑的样条曲线绕Y轴旋转创建出立体几何体。创建LatheGeometry几何体时可输入以下参数:属性必须描述points是该属性是指定样条曲线的点,然后可以根据这条样条曲线旋转得到新的图形segments否该

#webgl#javascript
    共 57 条
  • 1
  • 2
  • 3
  • 6
  • 请选择