首页 > 其他分享 >BSP画刷的概述和使用方法

BSP画刷的概述和使用方法

时间:2023-09-13 10:56:59浏览次数:56  
标签:画刷 盒体 模型 BSP 几何体 添加 概述

什么是BSP画刷

BSP(Binary Space Partitioning,二进制空间分区)画刷是UE早期设计关卡的主要工具

后来,随着静态网格体的优点越来越明显,BSP画刷在大型模型创建中的作用已经相对减少。

但由于BSP画刷不需要借助第三方3D建模软件便能独立完成三维模型制作,

因此其快捷、不需引入第三方软件等的优点仍具有一定的实用价值。

用途

尽管现在主要使用StaticMeshes(静态网格物体)来制作关卡,但是BSP画刷在绘制关卡草图等方面仍然有效,现在开发关卡的标准工作流程是:

▲设计出关卡草图及关卡路径。

▲运行关卡测试流程和游戏性。

▲修改布局并反复测试

▲起始的光照环节

▲对碰撞及性能问题的游戏测试。

▲润色。

BSP画刷的模式

UE中BSP画刷共有4种模式:选择、地形、植物和笔刷编辑,如图所示:

img

BSP画刷工具的选择模式

相较于之前的版本,4.27BSP画刷工具将常用的7种几何体放置在“放置actor”的“几何体”目录下

使用时只需要将对应的几何体拖到视口便可以创建相应的模型,如下图所示。

BSP画刷的其他模式放置在“模式”工具栏中,如图所示。

image-20230829094245075

BSP画刷的类型

在UE中,BSP画刷设计了“添加”、“减去(挖空)”两种几何体类型。

拖拽“添加”类型到视口中,可在视口中添加对应的模型; 拖拽“减去(挖空)”类型几何体到视口中,

其他BSP创建模型和“减去”类型相交的部分会补减去(注:减去类型对非BSP画刷创建的类型无效)

添加类型

image-20230829105801490

减去(挖空)

image-20230829110613449

中空,墙壁厚度设置

我们用画刷添加的盒体,默认是没有添加中空的

image-20230829111514374

这样的话,我们进入盒体就什么都没有,也就是没有墙壁,这时候我们勾上中空

image-20230829111624723

可以看到,进入盒体之后,有墙壁了

有墙壁那肯定厚度的调整

image-20230829112405394

几何体

几何体属性面板中有“选择”和“对齐”两个选项。

通过使用选择选项可在对表面进行材质和纹理的处理对相邻或是相同表面进行批处理,可增强工作效率。

对齐是对表面材质或纹理进行对齐。

image-20230829114601607

image-20230829114612812

表面属性

image-20230829115018365

​ 你可以平移、旋转、缩放材质的纹理

画刷设置

笔刷类型

修改模型的类型,可将模型修改为添加型或减去型。

笔刷形状

修改笔刷的形状,从而把模型修改为7种常用模型,如下图所示。

img

X、Y、Z

分别修改模型三个维度的大小。

墙壁厚度、中空

这两个属性不一般配合使用,中空主要用来设置模型内部是的空间属性,

不选默认为实心,勾选后模型内部为空心;墙壁的厚度用来设置中空模型的墙壁厚度。

排序

和PS和PPT中的图片相类似,UE中的模型也有其叠放顺序,如减去型模型只能减去其下层的添加型模型,不能减去其上层的模型,其叠放顺序可使用表面属性中的排序进行调整,如图所示:

img

固体性

固体:画刷是画刷的默认类型,具有以下属性。

▲阻挡游戏中的玩家和射弹;

▲可以是添加型或减去(挖空)型;

▲在周围画刷中创建BSP分割。

半固体:可以放置在关卡中且不会对周围的世界几何体创建BSP分割的碰撞画刷,具有以下属性。

▲阻挡玩家喝射弹,就像固体画刷一样;

▲只可以是添加型,绝对不可以是减去(挖空)型;

▲不会在周围画刷中创建BSP分割。

非固体:在周围时间几何体也不会创建BSP分割的非碰撞画刷。它们具有可视化的效果,但是使用任何方式都无法与它们互动,具有以下属性。

▲不会阻挡玩家或射弹;

▲只可以是添加型,绝对不可以是挖空型;

▲不会再周围画刷中创建BSP分割。

BSP 画刷工具的编辑

image-20230829141126917

img

编辑

直接在视口中选择面、边缘或顶点。使用操纵器来平移、旋转或缩放现有几何体。

image-20230829141502374

在笔刷编辑界面

按住ctrl键的同时复选模型的多个顶点,而后沿最后一个顶点上的坐标轴移动可调整选中顶点所构成的线或面,如下图所示。

另外,视口界面可调出模型的三视图,在不同的视图中可方便框选所要调整的项点,提高模型的修改效率。

image-20230829142609741

分割

创建一系列锚点,以此创建阻挡体积或自由形状几何体。

注意:必须在2D视口中拥有聚焦才能使用笔面工具。

在一个正交视口中创健至少3个锚点,使用空格健确定锚点。

在第一个锚的上方创键一个锚来完放形状。使用带ExtrudeDepth的bAutoExtrude来创建一个3D形状。

选中一条直线,使用分割功能可以以线的中点为项点在模型中创建一个垂直于直线的平面,如下图所示,分别在正方形的两条边上创建一个平面。

image-20230829142838297

分割完后

image-20230829142935885

结合

将选择的所有顶点合并到首个选择的顶点,即选择的第一个顶点就是结合最终的顶点。

image-20230829143251738

优化

合并可形成单个凸面多边形的所有多边形,以此优化选定的几何体。

如上图中,金字塔模型中冗余的面太多,选中金字塔后点击优化后要削除多余的面,如下图所示

优化前

image-20230829144242260

优化后

image-20230829144322521

编辑案例-做一个屋顶

1.选一个好看的材质 ,拉出一个盒体

image-20230829145027613

2.使用编辑里面的切割工具,切割成四份

image-20230829145311894

3.选中中间的点结合旁边的点

选中,结合之前

image-20230829145541716

image-20230829145701623

结合之后

image-20230829145725500

再结合另一边

image-20230829150019943

这样就出现了一个屋顶,

我们再切换一下试图,来进行拉伸,位移

image-20230829150516177

试图切换后

image-20230829150627349

拉伸

image-20230829150729277

移动

image-20230829150852510

切换一下视图,可以看到一个房顶

image-20230829151008696

使用BSP工具搭建场景

上面说了这么多,现在开始搭建一个场景

创建地面和基本盒体

使用几何体 -> 盒体 -> 设置x,y

image-20230829152110098

再拉出一个盒体,并设置x,y,z 为500

image-20230829152332777

添加第三人称工具包

image-20230829152601849

image-20230829152631062

添加完成后,在下面的路径中会有小白人

image-20230829152835122

把这个小白人拖到场景中

image-20230829153120959

设置小白人的控制

上面只是添加了一个第三人称角色,但是还没有设置角色的控制,选中小白人

在搜索详情中输入 poss ,设置自动控制玩家,选择玩家0

image-20230829153624369

运行

在设置完成后,点击运行,即可呈现小白人控制

image-20230829154054713

构建“别墅”雏形

首先在上面基础上面,修改下 盒体

image-20230829162503585

让它看起来像个房子,并且可以设置一下门面的材质

再构建一个挖空型 盒体画刷,制造一个门

image-20230829162657748

看正面效果

image-20230829162815682

制作第二层和地板

选择这个"房子的盒体",复制一个,并进行压扁,这样一个地板就出现了

image-20230829163431756

设置压缩

image-20230829163504252

再次复制一个,成为第二层,这样我们操行有点古怪的房子就出现了

image-20230829163839720

参考资料

https://zhuanlan.zhihu.com/p/576290823

标签:画刷,盒体,模型,BSP,几何体,添加,概述
From: https://www.cnblogs.com/makalochen/p/17698933.html

相关文章

  • RocketMQ-(9-1)-MQTT-EventBridge概述
    RocketMQMQTT概览传统的消息队列MQ主要应用于服务(端)之间的消息通信,比如电商领域的交易消息、支付消息、物流消息等等。然而在消息这个大类下,还有一个非常重要且常见的消息领域,即IoT类终端设备消息。近些年,我们看到随着智能家居、工业互联而兴起的面向IoT设备类的消息正在呈爆炸式......
  • RocketMQ教程-(4)-领域模型概述
    ApacheRocketMQ是一款典型的分布式架构下的中间件产品,使用异步通信方式和发布订阅的消息传输模型。通信方式和传输模型的具体说明,请参见下文通信方式介绍和消息传输模型介绍。ApacheRocketMQ产品具备异步通信的优势,系统拓扑简单、上下游耦合较弱,主要应用于异步解耦,流量削峰填......
  • 01_计算机系统概述
    计算机系统概述操作系统的概念(定义)概念:操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理的组织调度计算机的工作和资源的分配;以提供给用户和其他软件方便的接口和环境;他是计算机系统中最基本的系统软件。操作系统的层次结构:执行一个程序前需要将该程序放到内......
  • Redis7 10大数据类型(概述)
    一、概述二、数据类型1、redis字符串(String)String(字符串)string是redis最基本的类型,一个key对应一个value。string类型是二进制安全的,意思是redis的string可以包含任何数据,比如jpg图片或者序列化的对象。string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是51......
  • 1. Java语言概述
    1.Java语言概述1.Java技术体系JavaSE(JavaStandardEdition)标准版JavaEE(JavaEnterpriseEdition)企业版JavaME(JavaMicroEdition)小型版2.Java开发环境介绍‍JDK(javaDevelopmentkit):是Java程序开发工具包,包含JRE和开发人员使用的工具。JRE(JavaRun......
  • 建议收藏!Harmony应用配置文件概述(Stage模型)
     一. 应用配置文件每个应用项目必须在项目的代码目录下加入配置文件,这些配置文件会向编译工具、操作系统和应用市场提供应用的基本信息。在基于Stage模型开发的应用项目代码下,都存在一个app.json5及一个或多个module.json5这两种配置文件。app.json5主要包含以下内容:● ......
  • 火山引擎DataLeap的数据血缘用例与设计概述
    更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群数据血缘描述了数据的来源和去向,以及数据在多个处理过程中的转换。数据血缘是组织内使数据发挥价值的重要基础能力。本文从字节的数据链路概况开始,介绍了数据血缘在字节的应用场景,总体设计,数据模......
  • 火山引擎DataLeap的数据血缘用例与设计概述
     更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 数据血缘描述了数据的来源和去向,以及数据在多个处理过程中的转换。数据血缘是组织内使数据发挥价值的重要基础能力。本文从字节的数据链路概况开始,介绍了数据血缘在字节的应用场景,总......
  • EDAS 产品概述
    企业级分布式应用服务EDAS(EnterpriseDistributedApplicationService)是一个应用PaaS平台,一站式集成微服务、可观测、任务调度等技术;以专业易用的应用全生命周期管理、流量及容量治理等功能,配合业务视角的验收、资源管控与成本优化能力,助力企业应用架构云原生化升级。EDAS 应用扩......
  • Maven--Maven概述
    一、maven的作用  1)maven可以管理jar文件  2)自动下载jar和他的文档,源代码  3)管理jar直接的依赖,a.jar需要b.jar,maven会自动下载b.jar  4)管理你需要的jar版本  5)帮你编译程序,把java编译为class  6)帮你测试你的代码是否正确。  7)帮你打包文件,形成jar文件,或者......