ThreeBaseObject.js 967 B

1234567891011121314151617181920212223242526
  1. import { BoxGeometry, Mesh, MeshStandardMaterial } from "../Three/Three.js"
  2. import { getColor } from './ThreeColor';
  3. export const allBaseObject = [] // 返回所有基础模型
  4. // 创建地面
  5. export const box = new Mesh(
  6. new BoxGeometry(20, 20, 20), // 设置立方体的大小
  7. new MeshStandardMaterial({ // 设置材质
  8. color: 'rgb(36, 172, 242)', // 设置材质的颜色
  9. metalness: 0.5, // 金属度 (1 最像金属,0 最不像金属)
  10. roughness: 0 // 粗糙度(0 最光滑,1 最粗糙)
  11. })
  12. )
  13. box.name = 'box' // 设置模型 name
  14. // 给模型添加鼠标移入事件
  15. box.addEventListener("mouseenter", () => {
  16. box.material.color = getColor("#ff3366") // 修改材质颜色为红色
  17. })
  18. // 给模型添加鼠标移除事件
  19. box.addEventListener("mouseleave", () => {
  20. box.material.color = getColor("rgb(36, 172, 242)") // 恢复模型的材质
  21. })
  22. allBaseObject.push(box) // 添加到模型数组