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

3D场景的制作步骤

1. [3D场景]建模的使用目的

使用地形生成编辑器在模拟自然地形效果上有很大的优势,但是也有局限性。在表现比较规整的地形,比如一现代化城市,初具规模的小镇,地下宫殿等等就存在这样的局限。因为使用地形编辑器建立地形时,地表贴图的数量不能太多,选择的地表贴图的数量越多游戏的运行效率就越低,适合选择2~3张贴图。而城市中的地面上所需要的贴图会非常多,车行道、人行道、草坪等远不止三张,而且城镇的街道是非常规整的,这是地形生成编辑器不能做到的。还有很重要的一点,就是用这种方法制作的地面非常省面。

2. [3D场景]必备的能力

需要熟练掌握3ds max工具的操作。还需掌握一些灯光、渲染器的使用以及光照图烘培的操作。

image.png

3. [3D场景]建模的知识点

视角范围:视角范围是玩家在游戏中所能看到的游戏场景的范围,视角是随着玩家的移动不停变换的,基于这点才有了场景分块的必要性。需要更多3D建模资料点击👉🏼加入👈🏼 获取3D游戏建模福利

场景分块:在游戏中不管你的视角在哪个位置,可能你的视角方向上只能看到几百个面的模型。如果将整个场景一起导出,游戏中会把整个场景的模型一起渲染。场景中模型的数量不宜很多,过多的模型会严重影响游戏的效率及运行速度。在这种情况下,可以采用分块导出来提高效率。如果将场景分块导出,就会只渲染视角范围内的模型,不会渲染完全看不见的模型。

整体建模场景优化是以分割成一块块的近似正方型的区域来导出的。

光照图:给场景中的建筑及路面覆盖一层光照图。光照图的大小对场景中阴影部分的清晰程度以及整体场景的氛围的烘托有很大的影响,从这句话还可以看出,光照图不单单生成阴影而且可以给模型上覆盖新的颜色,这由环境光及灯光的颜色来决定。需要根据每个模型来设置光照图的大小,光照图最大不能超过1024×1024。

渲染器:用于渲染光照图。原则上在max里能打出什么样的效果,就能在游戏场景里得到什么效果。不同的渲染器渲染的时间和质量是不同的,渲染效果越好所花的时间越久。

灯光:用于照亮场景赋予场景氛围。灯光的设置对场景的氛围至关重要,没有灯光就没有光照图,就没有阴影,没有氛围,整个场景就会缺乏立体感。

高度图:用于控制玩家的角色所能行走的高度及范围。

碰撞:用于控制摄像机和模型是否碰撞。

四方连续:每张贴图有4个方向的边缘,四方连续的贴图就是无论这张贴图的任意一边都可以和另外3个边非常完美的结合,看不出接缝。

4. 制作流程

建模场景和灰度图生成场景的前期准备相差无几,即分析地形布局,了解策划需求等。所不同的是,灰度图生成的场景是先有地表,然后再到编辑器中去添加建筑,摆设等物件。由于物件摆的位置不正确(如建筑没有挨着地面等)造成的问题可以很方便在场景里进行调整。而建模场景就有很大的不同,所有的工作都在max里完成,制作上需要更加严谨,如果出现以上问题,需要修改的时间就会比较长。

地表模型制作

对于制作流程和工作安排来说,场景中的建筑可以先于地形或同时开始制作。制作建模场景是个比较长的过程,制作中地形会根据不同的视角和视觉效果而不断调整,整个建模场景中,地形的规划和制作尤为重要。地形决定了建筑和摆设放置的位置及玩家可以行走的路线。

相关文章:

  • 【精讲】后台项目 采用vue2框架 完整版内含详细注释 2
  • mac vscode debug安装调试moodle
  • PyTorch(一)安装与环境配置
  • 全网最牛自动化测试框架系列之pytest(7)-yield与终结函数
  • JSR303校验(1)
  • Nacos - 支持PostgreSQL
  • CFD网格质量评估标准
  • 网课答案公众号题库系统
  • 详解AVL树(二叉搜索平衡树)【C++实现】
  • 网课答案公众号搭建方法
  • 牛客网练习题(函数部分)
  • 仿everything的文件搜索工具项目详解:Part3
  • React中this.setState方法原理解析(详解)
  • jquary
  • nginx-vts监控模块
  • Codepen 每日精选(2018-3-25)
  • CSS盒模型深入
  • GitUp, 你不可错过的秀外慧中的git工具
  • JavaScript DOM 10 - 滚动
  • JavaScript 基础知识 - 入门篇(一)
  • leetcode388. Longest Absolute File Path
  • leetcode98. Validate Binary Search Tree
  • scrapy学习之路4(itemloder的使用)
  • vue脚手架vue-cli
  • 从PHP迁移至Golang - 基础篇
  • 给新手的新浪微博 SDK 集成教程【一】
  • 关键词挖掘技术哪家强(一)基于node.js技术开发一个关键字查询工具
  • 免费小说阅读小程序
  • 区块链分支循环
  • 入手阿里云新服务器的部署NODE
  • 数据科学 第 3 章 11 字符串处理
  • 我的业余项目总结
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • gunicorn工作原理
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • #14vue3生成表单并跳转到外部地址的方式
  • #define
  • (保姆级教程)Mysql中索引、触发器、存储过程、存储函数的概念、作用,以及如何使用索引、存储过程,代码操作演示
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (一)Linux+Windows下安装ffmpeg
  • (中等) HDU 4370 0 or 1,建模+Dijkstra。
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (总结)Linux下的暴力密码在线破解工具Hydra详解
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .Net Core和.Net Standard直观理解
  • .NET Framework .NET Core与 .NET 的区别
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .net 简单实现MD5
  • .NET 指南:抽象化实现的基类
  • .net反混淆脱壳工具de4dot的使用
  • /deep/和 >>>以及 ::v-deep 三者的区别
  • [20160807][系统设计的三次迭代]
  • [C#] 我的log4net使用手册