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

Unity快速入门2 - 3D渲染

该网页练习在场景中新建和复用游戏物体,放置位置,更新材质,构建Prefab等操作。

一、编辑游戏物体

1. 打开附件中的项目,在Project窗口中 Assets >_Unity Essentials > Scenes 文件夹,在右边窗口中双击第4个文件 2_KidsRoom_3D_Scene,打开该项目,可以看到是一个空的场景。

2. 点击Project窗口中 Assets >_Unity Essentials > Prefabs > Rooms 文件夹,然后点击右边窗口的 01_Bedroom prefab(复用体),拖到左边的 Scene 窗口;

3. 可以使用 Alt, F和鼠标左键及其组合,将该房间游戏物体放置在场景中合适的位置,同时将场景中的视角位置调整好,使得Scene和Game窗口中视角位置类似,方便后续编辑室内家具摆放,如下图所示;

4. 在Scene窗口选中01_Bedroom 游戏物体,然后在右侧 Inspector 窗口中将Position中的X,Y, Z值都设为 0,如上图所示;

5. 在Project窗口中Assets >_Unity Essentials > Prefabs > Bedroom 文件夹,然后点击右边窗口的 Bed_Full_BR001复用体,将该床拖拽到左边的Scene窗口,使用鼠标和窗口工具栏将该床摆放在如下图位置,同样在房间中添加一个床头柜和地毯,见下图:

二、新建游戏物体

6. 在Hirarchy窗口中点击鼠标右键,在弹出的菜单中选择 3D Object > Sphere,然后在右侧Inspector窗口中将名字从 Sphere改为Ball,见下图

7. 在Inspector窗口的Transform属性中将 Scale 的值改为 X = 0.25, Y = 0.25, and Z = 0.25;Position to X = 1, Y = 2, and Z = -1,使得球的位置如下图所示,如果所给的Position值不符合你的场景,可以尝试设置不同的X,Y, Z值;

三、编辑材质

8. 在Project 窗口,在Assets>_Unity Essentials > Materials文件夹,在右边窗口点击鼠标右键,在弹出菜单中选择 Create > Folder,新建一个文件夹,取名为 "My Materials";

9. 双击该新建的文件夹,然后在窗口中点击鼠标右键,在弹出菜单中选择 Create > Mateiral, 取名为 "Ball_Mat";

10. 鼠标左键点击该新建的 Ball_Mat,然后拖拽该材质放到左边Scene窗口中的 Ball 游戏物体,可以看到该Ball表面颜色从黑色变为白色;

11. 确保Ball_Mat是选中的状态,在右侧Inspector窗口可以更改该材质的属性,下面更改了三个属性,可以看到球表面将随着数值改变而变化,在下面窗口中可以看到球表面材质的更新;

  • Base Map: The basic color of the object.

  • Metallic Map: How metallic the object looks.

  • Smoothness: How smooth the object looks.

12. 点击界面正中间上方的 Play 按键,运行游戏,可以看到游戏窗口中球是静止在空中的。退出游戏,下面将实现球落下的动作;

13. 在Hirarchy 窗口中选择 Ball 游戏物体,再在右侧 Inspector 窗口,点击最下方的 Add Component 按键,在弹出窗口上方输入 “Rigidbody”,再在下方列表中选择 Rigidbody 属性;

14. 点击界面正中间上方的 Play 按键,运行游戏,可以看到游戏窗口中球会从空中掉下来,然后在地板上不动了。退出游戏,下面将实现球弹起来的动作;

15. 点击 Project 窗口中 Assets > _Unity Essentiails > My Materials 文件夹,在右侧窗口中点击鼠标右键,在弹出菜单中选择 Create > Physics Material,命名为 "Ball_Physics",见下图:

16. 设置上述右边 Inspector窗口中的 Bounciness 值为 1 (最大的反弹效果),然后将该 Ball_Physics 材质拖拽到 Scene场景中的Ball(参见上述步骤10);

17. 点击界面正中间上方的 Play 按键,运行游戏,可以看到游戏窗口中球会从空中掉下来,然后从地板上弹起来,重复了几次弹起落下的动作后,就停在地板上了!

四、设置摄像头Camera

Unity中摄像头Camera所看到的场景将会是游戏时所看到的3D场景,在Scene窗口中可以设置Camera的参数,例如位置、对准的方向、视野大小等,如下视频所示:

camera 功能展示

18. 在Hirarchy窗口中,双击Camera游戏物体,在Scene窗口下方的工具栏中激活Camera选项,使得Camera所看到的场景图像窗口显示在Scene窗口右下角,如下图所示,可以看到该预览窗口中显示的场景和Game窗口中的场景一致

19. 用鼠标左键移动或旋转Scene窗口中Camera的位置,例如沿着三个坐标轴方向移动Camera,左下方的Camera小窗口和下方Game窗口中的图像会实时更新;

20. 在右侧的Inspector窗口,调整Camera属性中 Field of View边的滑杆来动态设置其大小,可以将值调小一点,使得更清晰的看到上述的弹跳红色小球;

21. 上述方法看到红色小球的方式可能比较粗笨,可以使用鼠标右键 + WASD组合在Scene场景中导航,找到一个自己满意的角度来查看小球,如下图所示,然后使用Ctrl+Shift+F (macOS: Cmd+Shift+F) 来自动调整Camera的位置和角度使之匹配当前在场景中所导航的位置。

22. 点击Play按键,在游戏窗口中看看Camera所看到的view是否一致,然后退出游戏,再点击Scene窗口下方的工具栏中的Camera工具,关闭右下角的Camera预览窗口。

五、编辑光照

该场景新建的时候有一个默认的Directional Light,用于照亮整个场景,其功能展示如下视频所示:

light

23. 在Hirarchy窗口中双击Direction Light游戏物体,在Scene窗口中将显示该光照,可以使用左边工具栏中的移动和旋转,先将该游戏物体移动到更低一点的位置,然后再旋转该游戏物体,可以看到地板上墙壁的阴影随着光照旋转而变化;

24. 在右侧的Inspector窗口中,点击Light属性下的Color右边的颜色框,在弹出的颜色选项菜单中选择一个自己喜欢的颜色,然后再Intensity中更改光照强度值,可以看到场景中的光照颜色改变,例如见下图

25. 可以尝试更改其他属性值,查看场景中关照的效果。

天空盒的更新

25. 一个快速更改场景光照的方法时更新天空盒 Skybox, 可以查看场景的环境采用了Skybox,见下图:

26. 可以在Lighting窗口中具体查看Skybox的材质,点击菜单 Window>Rendering>Lighting, 打开Lighting窗口,可以将该窗口并列在Inspector窗口边,然后在Lighting窗口中选择 Environment选项卡,可以看到本场景采用的Skybox材质为SkyBrightCloudy,见下图

27. 要更改Skybox材质,可以在Project窗口中点击 Assets>_Unity Essentials > Materials > Skyboxes 文件夹,在其右侧的窗口中,拖拽任意一个材质到Lighting窗口中Skybox Material 右边的编辑框,然后在Scene窗口中可以看到背景天空的变化,见下图示例:


http://www.kler.cn/a/541534.html

相关文章:

  • Web项目测试专题(二)用户界面UI测试
  • 鸿蒙harmony 手势密码
  • 原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
  • linux部署ollama+deepseek+dify
  • Linux磁盘空间使用率100%(解决删除文件后还是显示100%)
  • PDF 文件的安全功能概述
  • 【Python深入浅出】Python3邂逅MySQL:开启数据交互之旅
  • Python+wxauto:实现电脑端微信程序自动化
  • JDBC数据库连接池及相关练习(学习自用)
  • 云原生周刊:DeepSeek 颠覆人工智能
  • 基于springboot+vue的校园招聘网站的设计与实现
  • 《手札·数转篇》中小制造企业的信息化升级:MES系统的价值与应用
  • mysql 不是内部或外部命令,也不是可运行的程序或批处理文件
  • LeetCode-169多数元素
  • html+canvas地图画布实现快速拖动出现瓦片空白问题优化
  • 网络安全溯源 思路 网络安全原理
  • cppcheck静态扫描代码是否符合MISRA-C 2012规范
  • 1 推荐系统概述
  • 重启电脑之后vscode不见了
  • HTTP协议学习大纲
  • vLLM 安装记录 (含踩坑xformers)
  • #渗透测试#批量漏洞挖掘#ServiceNow UI Jelly模板注入(CVE-2024-4879)
  • 更换网络IP地址几种简单的方法
  • 计算机毕业设计SpringBoot+Vue.js+H5在线花店 花店app 鲜花销售系统 网上花店(app+web)(源码+文档+运行视频+讲解视频)
  • java后端开发day11--综合练习(二)
  • 【模型部署】大模型部署工具对比:SGLang, Ollama, VLLM, LLaMA.cpp如何选择?