当前位置: 首页 > wzjs >正文

模仿的网站做一样违法吗镇江建设质量监督站网站

模仿的网站做一样违法吗,镇江建设质量监督站网站,免费建站软件排行榜,网站运营 网站建设文章目录 1. 引言:从零构建一个 3D 场景1.1 目标与成果预览1.2 前置条件 2. 初始化 Babylon.js 场景2.1 创建 HTML 骨架2.2 初始化引擎与场景 3. 创建基础几何体3.1 立方体(Box)3.2 球体(Sphere)3.3 平面(P…

在这里插入图片描述

文章目录

  • 1. 引言:从零构建一个 3D 场景
    • 1.1 目标与成果预览
    • 1.2 前置条件
  • 2. 初始化 Babylon.js 场景
    • 2.1 创建 HTML 骨架
    • 2.2 初始化引擎与场景
  • 3. 创建基础几何体
    • 3.1 立方体(Box)
    • 3.2 球体(Sphere)
    • 3.3 平面(Plane)
    • 3.4 其他基础几何体(快速预览)
  • 4. 调整物体属性
    • 4.1 位置、旋转与缩放
    • 4.2 父子层级关系
  • 5. 总结与下一章预告
    • 5.1 关键知识点回顾
    • 5.2 下一章预告


1. 引言:从零构建一个 3D 场景

上一章简单介绍了项目中如何引入Babylon.js,并且举例创建了一个正方形的代码。
这一章详细介绍一下Babylon创建不同形状物体的功能。

1.1 目标与成果预览

  • 最终效果:在浏览器中展示包含立方体、球体、平面的交互式场景,可旋转/缩放视角。
  • 核心知识点:场景初始化、几何体创建、坐标系理解、基础交互。

1.2 前置条件

  • 已完成开发环境配置(参考前一篇文章)。
  • 基础 HTML/JavaScript 语法熟悉。

2. 初始化 Babylon.js 场景

2.1 创建 HTML 骨架

  <!DOCTYPE html><html><head><title>第一个 3D 场景</title><script src="https://cdn.babylonjs.com/babylon.js"></script></head><body><canvas id="renderCanvas"></canvas><script src="app.js"></script></body></html>

2.2 初始化引擎与场景

在这里插入图片描述

  // app.jsconst canvas = document.getElementById("renderCanvas");const engine = new BABYLON.Engine(canvas, true); // 初始化引擎const createScene = () => {const scene = new BABYLON.Scene(engine);// 添加相机const camera = new BABYLON.ArcRotateCamera("camera", -Math.PI/2, Math.PI/2.5, 10, new BABYLON.Vector3(0, 0, 0), scene);camera.attachControl(canvas, true);// 添加光源const light = new BABYLON.HemisphericLight("light", new BABYLON.Vector3(0, 1, 0), scene);return scene;};const scene = createScene();engine.runRenderLoop(() => scene.render());

此时成功创建了Babylon场景,由于没有任何模型,此时场景看起来空空荡荡的。


3. 创建基础几何体

在这里插入图片描述

3.1 立方体(Box)

  • 代码实现
    const box = BABYLON.MeshBuilder.CreateBox("box", { size: 2,          // 边长height: 3,        // 单独设置高度(覆盖 size)faceColors: [     // 每个面的颜色(可选)new BABYLON.Color4(1,0,0,1), // 前面红色new BABYLON.Color4(0,1,0,1), // 背面绿色// ... 其他面]}, scene);box.position = new BABYLON.Vector3(-3, 0, 0); // 设置位置
  • 关键参数解析
    • size:统一尺寸,或通过 width/height/depth 单独设置。
    • faceColors:为立方体每个面指定颜色(需启用 hasVertexAlpha)。

添加创建长方体的代码后,场景中成功添加一个符合我们参数的模型:边长为2,高度为3,六个面包含多个颜色。

3.2 球体(Sphere)

在这里插入图片描述

  • 代码实现
    const sphere = BABYLON.MeshBuilder.CreateSphere("sphere", { diameter: 2,     // 直径segments: 32      // 细分面数(影响光滑度)}, scene);sphere.position = new BABYLON.Vector3(0, 0, 0);
  • 关键参数解析
    • segments:值越大球体越光滑,性能消耗越高。

与长方体的代码相似,通过BABYLON.MeshBuilder.CreateSphere函数成功添加了一个球体,属性可以配置

3.3 平面(Plane)

在这里插入图片描述

  • 代码实现
    const plane = BABYLON.MeshBuilder.CreatePlane("plane", { size: 5, sideOrientation: BABYLON.Mesh.DOUBLESIDE // 双面渲染}, scene);plane.position = new BABYLON.Vector3(3, 0, 0);plane.rotation.x = Math.PI/2; // 旋转为水平面
  • 关键参数解析
    • sideOrientation:默认为单面渲染,设置为 DOUBLESIDE 可双面可见。

3.4 其他基础几何体(快速预览)

  • 圆柱体(CreateCylinder)、圆锥体(CreateCylinder 调整参数)、地面(CreateGround)。
  • 这里不再赘述,可以通过Babylon提供的API自己动手尝试,亲自动手实践才能印象更深。

4. 调整物体属性

4.1 位置、旋转与缩放

在这里插入图片描述

  • 坐标系系统:右手坐标系(X右,Y上,Z向前)。
  • 代码操作
    box.position = new BABYLON.Vector3(2, 1, -3); // 位置box.rotation = new BABYLON.Vector3(0, Math.PI/4, 0); // 弧度制旋转box.scaling = new BABYLON.Vector3(1, 2, 1); // 缩放

4.2 父子层级关系

在这里插入图片描述

  • 将物体附加到另一个物体,实现联动
    sphere.parent = box; // 球体随立方体移动/旋转

此时球体的中心会自动定位到长方体的中心,两者会联动


5. 总结与下一章预告

5.1 关键知识点回顾

  • 立方体、球体、平面创建
  • 调整物体的位置、旋转与缩放
  • 父子层级关系

5.2 下一章预告

  • 《Babylon.js 中的相机(Camera)与视角控制》:详解自由相机、弧形旋转相机、跟随相机等类型及交互配置。

文章转载自:

http://rfV42cry.jqbmj.cn
http://ucTRUZaT.jqbmj.cn
http://oVKxSMfg.jqbmj.cn
http://CLVU102R.jqbmj.cn
http://MTiDcS3i.jqbmj.cn
http://c3GhaZqy.jqbmj.cn
http://U3xQ6LXu.jqbmj.cn
http://R5szch7w.jqbmj.cn
http://9BkOndTQ.jqbmj.cn
http://tE8Gm7Yx.jqbmj.cn
http://RwE6W4Ax.jqbmj.cn
http://4E0eoa9B.jqbmj.cn
http://JkVOi3Jy.jqbmj.cn
http://OoSg6rA0.jqbmj.cn
http://vl7r9hbA.jqbmj.cn
http://QqYLyJvc.jqbmj.cn
http://M8YCTzmr.jqbmj.cn
http://p6S68vrm.jqbmj.cn
http://zrS8bUCb.jqbmj.cn
http://kgznRQta.jqbmj.cn
http://1SFkN6fU.jqbmj.cn
http://TC4iGxCj.jqbmj.cn
http://EsoOvk1o.jqbmj.cn
http://pOfpMEJE.jqbmj.cn
http://H5MEg1Ns.jqbmj.cn
http://Nl93rEuA.jqbmj.cn
http://RBTcQjjy.jqbmj.cn
http://UIInzT9D.jqbmj.cn
http://1VTCRtNn.jqbmj.cn
http://kU5zWwW7.jqbmj.cn
http://www.dtcms.com/wzjs/703673.html

相关文章:

  • 网站加速器怎么开百度搜索风云榜小说
  • 厦门网站建设做二维码签到的网站
  • 成都市做网站的公司wordpress启用cookies
  • 大型门户网站建设企业网站平台建设意见
  • 网站打开403自己的电脑做服务区 网站
  • 重庆长寿网站设计公司哪家专业免费的wordpress模板下载地址
  • 做装修那个网站好自助建站系统模板
  • 网站地址大全oneinstack. WordPress
  • 网站建设费可摊几年wordpress文章代码显示插件
  • 广东圆心科技网站开发建站教程详解重庆璧山网站制作公司电话
  • 旅游网站建设的好处同城做哪个网站推广效果好
  • 平度网站建设ld4python基础教程电子书
  • 双语网站建设报价虹桥网站建设
  • joomla 做的网站商标 做网站 是几类
  • 招聘网站可以做劳务派遣吗简述网站开发基本流程
  • 设计做兼职最好的网站网站制作客户资料
  • 石家庄局域网网站建设厦门建设局长
  • 提供温州手机网站制作哪家便宜seo需要会网站建设吗
  • 给网站做伪静态模板和网站的区别
  • 郑州市建设工程信息网站昆明网络营销服务公司
  • 网站建设seopptwordpress secondary title
  • 私人做网站需要多少钱效果好的东莞品牌网站建设
  • 建设网站知乎最容易做的门户网站
  • 重庆所有做网站的公司排名四川宜宾建设局官方网站
  • 百度推广网站一年多少钱seo百度关键词优化
  • 政务网站建设浙江项目管理师
  • 我有网网站建设有wordpress使用经验
  • wdcp网站建设wordpress 加文章分享
  • 网站开发介绍人拿多少钱手机怎么同步连接wordpress
  • 广州网站建设公司小程序合肥工程建设信息平台