首页 > 其他分享 >47. 矩形Mesh+背景透明png贴图

47. 矩形Mesh+背景透明png贴图

时间:2024-09-27 09:22:18浏览次数:9  
标签:贴图 const 47 THREE Mesh new 矩形 png

three.js项目开发中,把一个背景透明的.png图像作为平面矩形网格模型Mesh的颜色贴图是一个非常有用的功能,通过这样一个功能,可以对three.js三维场景进行标注。

整体思路:创建一个矩形平面,设置颜色贴图.map,注意选择背景透明的.png图像作为颜色贴图,同时材质设置transparent: true,这样png图片背景完全透明的部分不显示。

// 矩形平面网格模型设置背景透明的png贴图
const geometry = new THREE.PlaneGeometry(60, 60); //默认在XOY平面上
const textureLoader = new THREE.TextureLoader();
const material = new THREE.MeshBasicMaterial({
    map: textureLoader.load('./指南针.png'),        
    transparent: true, //使用背景透明的png贴图,注意开启透明计算
});
const mesh = new THREE.Mesh(geometry, material);
mesh.rotateX(-Math.PI / 2);

网格地面辅助观察GridHelper

// 添加一个辅助网格地面
const gridHelper = new THREE.GridHelper(300, 25, 0x004444, 0x004444);

矩形平面PlaneGeometry设置颜色贴图

const geometry = new THREE.PlaneGeometry(60, 60);
const textureLoader = new THREE.TextureLoader();
const material = new THREE.MeshBasicMaterial({
    map: textureLoader.load('./指南针.png'),
});
const mesh = new THREE.Mesh(geometry, material);

开启透明transparent: true

const material = new THREE.MeshBasicMaterial({
    map: textureLoader.load('./指南针.png'),   
    //transparent: true:使用背景透明的png贴图,注意允许透明   
    transparent: true, 
});

旋转平移矩形平面

PlaneGeometry矩形平面默认是在XOY平面上,如果你想平行于XOZ平面,就需要手动旋转。

mesh.rotateX(-Math.PI/2);//平行地面:矩形Mesh默认单面可见,注意旋转-Math.PI / 2

如果你不想矩形平面Mesh与地面网格线重合,可以通过位置属性.position偏移。

mesh.position.y = 1;//适当偏移,不与地面重合

标签:贴图,const,47,THREE,Mesh,new,矩形,png
From: https://blog.csdn.net/Miller777_/article/details/142585117

相关文章

  • P8475 「GLR-R3」雨水 题解
    关于这道题目卡\(O(n\logn)\)但是放\(O(n^2)\)我也是很疑惑。我们发现,题目要求的是字典序最小的序列。但凡涉及了字典序最小,答案或多或少的都会带点贪心思想。那我们也来贪一贪。考虑当前枚举到第\(i\)个点,如果后面有比它更小的数,那显然把它们交换过来是更优的。如果有多......
  • P8474 「GLR-R3」立春 题解
    俗话说的好:“打表出奇迹”,所以我们这一题打表计算。其实确实可以打表来找规律。通过打表,我们可以获得如下的结果:1 12 33 214 3155 9765…… ……然后观察可得:\[1\times3=1\times(2^2-1)=3\]\[3\times7=3\times(2^3-1)=21\]\[21\times15=21\t......
  • STA475 R to simulate data
    STA475 Assignment #1 (Fall 2024)InstructionsDue date: Friday September 27th at 11:59pm•  No-questions-asked grace period until Monday September 30th at 5pm•  No late submissions will be accepted after this timeWhere to s......
  • P4447 [AHOI2018初中组] 分组
    [AHOI2018初中组]分组题目描述小可可的学校信息组总共有$n$个队员,每个人都有一个实力值$a_i$。现在,一年一度的编程大赛就要到了,小可可的学校获得了若干个参赛名额,教练决定把学校信息组的$n$个队员分成若干个小组去参加这场比赛。但是每个队员都不会愿意与实力跟自己过于......
  • 什么是 Service Mesh
    ServiceMesh作为下一代微服务技术的代名词,初出茅庐却深得人心一鸣惊人,大有一统微服务时代的趋势。那么到底什么是ServiceMesh?一言以蔽之:ServiceMesh是微服务时代的TCP/IP协议。有了这样一个感性的初步认知,我们再来看到底什么是ServiceMesh。提到ServiceMesh,就不得不提微......
  • 【高中数学/对数/比大小】a=log(11,13) vs b=log(41,47)
    【问题】请比较两数a=log(11,13)与b=log(41,47)的大小。【解答】a=log(11,13)=log(11^3,13^3)=log(1331,2191)b=log(41,47)=log(41^2,47^2)=log(1681,2209)因为真数2191很接近2209而底数1331明显小于1681故指数a必大于bEND......
  • Leetcode 1472. 设计浏览器历史记录
    1.题目基本信息1.1.题目描述你有一个只支持单个标签页的浏览器,最开始你浏览的网页是homepage,你可以访问其他的网站url,也可以在浏览历史中后退steps步或前进steps步。请你实现BrowserHistory类:BrowserHistory(stringhomepage),用homepage初始化浏览器类。void......
  • P4780 Phi的反函数 题解
    因为\(\varphi(x)\)的值只与\(x\)的不同质因子有关,又因为\(2^{31}\)之内的数的质因子个数不超过\(10\),所以容易枚举\(10\)个位置上填入的质因子打出朴素的暴力,简单剪枝后得到\(20\)分。注意需要先判掉\(x=n+1\)的情况。考虑优化:因为\(\varphi\)的值只与质因......
  • MANE-4740 Thermal and Fluids Engineering
    MANE-4740ThermalandFluidsEngineeringLaboratoryResultsHomework1–ACLabFall2024Foreachofthefollowinggroupsofdataorcomputedquantities,organizeyourresultsintoplots, tables,orotherfiguresasyouthinkbest(unlesstoldto plot th......
  • P3478 STA-Station/换根 $dp$ 板子
    P3478[POI2008]STA-Stationlink给定一个\(n\)个点的树,请求出一个结点,使得以这个结点为根时,所有结点的深度之和最大。一个结点的深度之定义为该节点到根的简单路径上边的数量。对于全部的测试点,保证\(1\leqn\leq10^6\),\(1\lequ,v\leqn\),给出的是一棵树。思路:树......