45. 圆形平面设置纹理贴图

你可以思考下,怎么实现矩形图片剪裁为圆形渲染。

其实很简单,可以通过圆形几何体CircleGeometry创建一个网格模型Mesh,把一张图片作为圆形Mesh材质的颜色贴图,这样就可以把一张方形图片剪裁渲染为圆形效果。

javascript 复制代码
//CircleGeometry的顶点UV坐标是按照圆形采样纹理贴图
const geometry = new THREE.CircleGeometry(60, 100);
//纹理贴图加载器TextureLoader
const texLoader = new THREE.TextureLoader();
const texture = texLoader.load('./texture.jpg');
const material = new THREE.MeshBasicMaterial({
    map: texture,//map表示材质的颜色贴图属性
    side:THREE.DoubleSide,
});
const mesh = new THREE.Mesh(geometry, material);

本质原理

CircleGeometry的UV坐标会对颜色纹理贴图.map进行提取,CircleGeometry的UV坐标默认提取的就是一个圆形轮廓。

相关推荐
代码猎人11 小时前
前端怎么精通Vue2核心原理
前端
夏天要喝冰可乐11 小时前
我用 WorkBuddy 做了个「GitHub 考古所」:输入一个用户名,出土你的编程人格档案
前端·github
乘风gg11 小时前
AI coding 时代最值钱的东西,软件工程(下)
前端·ai编程·claude
用户114818678948411 小时前
虚拟滚动与无限滚动的完整心法
前端
核验笔记的老王11 小时前
前端表单防呆实践:如何排查自动填充导致的提交失败?
前端
用户4061220811111 小时前
Vue vs React 核心差异全对比
前端
李纲明11 小时前
微信小程序 web-view 打开空白或提示未配置业务域名:校验文件、HTTPS 与跳转域名排查
前端·微信小程序·https·web-view·小程序开发·业务域名
涛涛ing12 小时前
一个框架为了“不水合”,把HTML注释都删了
前端
计算机魔术师12 小时前
AI渗透框架3小时破云,中国黑客组织正在升级打法
前端
蒲公英内测分发12 小时前
智能手环出海测试,海外合作方分散在不同国家,Android 测试包怎么持续分发和更新?
android·前端·人工智能·测试工具·智能手表