threejs

1.场景清空,释放内容

// 假设你已经有一个Three.js的场景对象scene
 
// 函数:清空场景中的所有对象
function clearScene(scene) {
    while(scene.children.length > 0){
        const object = scene.children[0];
        
        if(object.isMesh) {
            // 如果有几何体和材质,也进行清理
            object.geometry.dispose();
            if(object.material.isMaterial) {
                cleanMaterial(object.material);
            } else {
                // 材质组是数组,所以我们需要遍历它
                for(const material of object.material) cleanMaterial(material);
            }
        }
        
        scene.remove(object);  // 从场景中移除对象
    }
}
 
// 辅助函数:清理材质资源
function cleanMaterial(material){
    material.dispose(); // 清理材质
    if(material.map) material.map.dispose(); // 清理贴图
    if(material.lightMap) material.lightMap.dispose();
    if(material.bumpMap) material.bumpMap.dispose();
    if(material.normalMap) material.normalMap.dispose();
    if(material.specularMap) material.specularMap.dispose();
    if(material.envMap) material.envMap.dispose();
    // ... 清理其他你使用的材质资源
}
 
// 使用方法:
clearScene(scene);

2.选中物体

        如果放在像若依这种前端框架中,会有菜单栏导致计算坐标的位置发生偏移

使用clientX配合getBoundingClientRect函数计算坐标即可

相关推荐

  1. threejs

    2024-07-10 05:00:07       22 阅读
  2. three.js捋文档的记录笔记(五):threejs引入

    2024-07-10 05:00:07       33 阅读
  3. Threejs之相机基础

    2024-07-10 05:00:07       65 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-10 05:00:07       53 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-10 05:00:07       55 阅读
  3. 在Django里面运行非项目文件

    2024-07-10 05:00:07       46 阅读
  4. Python语言-面向对象

    2024-07-10 05:00:07       56 阅读

热门阅读

  1. python 进阶教程--PIL图像处理

    2024-07-10 05:00:07       24 阅读
  2. CSS 图标:简化设计,优化用户体验

    2024-07-10 05:00:07       26 阅读
  3. C# 中使用模式匹配 备忘

    2024-07-10 05:00:07       23 阅读
  4. 【selenium】元素等待

    2024-07-10 05:00:07       20 阅读
  5. HTMLtable表转C#DataTable

    2024-07-10 05:00:07       29 阅读
  6. WPF设置全局样式

    2024-07-10 05:00:07       24 阅读
  7. AJAX学习笔记上(学习自用)

    2024-07-10 05:00:07       28 阅读
  8. linux之段错误的分析

    2024-07-10 05:00:07       24 阅读
  9. 三级_网络技术_11_路由设计技术基础

    2024-07-10 05:00:07       19 阅读
  10. Ubuntu上如何安装nvm包管理器

    2024-07-10 05:00:07       23 阅读