UE5自动生成地形一:地形制作

news2024/11/26 8:27:47

UE5自动生成地形一:地形制作

  • 常规地形制作
  • 地形编辑器
  • 地形管理
  • 添加植被
      • 手动修改部分地形的植被
  • 置换贴图
  • 全局一致纹理制作地貌裸露岩石
  • 地形实例

常规地形制作

  • 地形制作入门

  • 地形导入部分
    选择模式:地形模式。选择地形子菜单:管理->导入

  1. UE单位是cm。在选择模式用鼠标中键按住测量,跟导入的png高度图的量纲做对比,对scale进行调整。

地形编辑器

  • 使用传统的Gaea地形编辑器

地形管理

  • 多个地形管理,子关卡,样条工具使用
    在这里插入图片描述
    创建子关卡,并将原地形的部分移动保存到子关卡中。
  • 选择地形 - 移动地形(面板选择移动,然后点击一下被选的地形)- 点击右侧持久关卡里,点击一个子关卡,这样就算移动到子关卡里了。点击子关卡的可视,若被隐藏了就说明移动成功。
  • 若打开某个子关卡是全黑的,说明没加光照。

子关卡用处:制作开放世界,可以分片加载子关卡

  • 样条操作

    按住ctrl点左键,创建控制点,ue会自动把控制点连接。勾选自动旋转会更平滑。
  • 选中控制点也可以手动旋转- 在这里插入图片描述
  • 将两个无关线条连接:按住shift选中两个线条,在空白位置ctrl+左键拼接:在这里插入图片描述
  • 样条曲线的参数,可以查文档在这里插入图片描述
  • 点击上图中所有样条(或仅选中) 按钮,来让地形按照样条生成。

添加植被

ue的一种根据材质自动添加植被的功能

打开地形的材质球
在这里插入图片描述

打开材质编辑器,新加一个草地输出在这里插入图片描述

编辑新加的草地输出材质
在这里插入图片描述

  1. 先获取每层的权重范围,通过增加一个layersample。
    在这里插入图片描述
    将此节点的参数名称填写为图层名称

在这里插入图片描述
在这里插入图片描述

  • 给grass也增加几个元素,用来接受不同层的权重信息。
    在这里插入图片描述

上述的layer sample节点如此增加多个,来获取不同层的权重,然后将权重输出给grass。
在这里插入图片描述
到这里已经能混合不同层的权重了,还需要草地的材质。
我们新做一个材质
在这里插入图片描述

  • 新建3个草地类型
    在这里插入图片描述
    然后把新建的草地类型添加到Grass的数组元素里.

手动修改部分地形的植被

在这里插入图片描述
在地形窗口使用绘制。

置换贴图

可以提供一个表面凹凸纹理细节,效果会比凹凸贴图和法线贴图更好。但是消耗很大,会把表面模型细分,并存在内存上。
个人开发暂时不用这功能。

全局一致纹理制作地貌裸露岩石

经常会在地形地貌上使用此纹理。
用途:地形在过度拉伸时,避免贴图也被同步拉伸。
使用前后对比。(对于近乎垂直的部分还是有一定拉伸,可以考虑雕刻一下坡度或者别的方案)
在这里插入图片描述在这里插入图片描述

  • 纹理制作过程:新建一个材质球。光照参数选无光照。拖一张贴图进来,右键转为贴图对象在这里插入图片描述

  • 添加一个全局一致纹理
    在这里插入图片描述
    按住S左键空白处,添加一个默认参数
    在这里插入图片描述在这里插入图片描述

  • export float是控制alpha通道

  • 后续把高光,AO,粗糙,置换的贴图用rgba通道混合(可以用substance designer工具)成一张贴图作为texture obj。

  • ue也提供了直接混合的组件节点,不需要上述一堆操作:在这里插入图片描述

地形实例

我们在地形编辑器(world machine,gaea等)上制作后导入ue。
在往地形上贴图前,提取对不同地形通道遮罩,并且根据一定参数完成将不同地形间过渡混合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1651028.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

吴恩达深度学习笔记:深度学习的 实践层面 (Practical aspects of Deep Learning)1.13-1.14

目录 第二门课: 改善深层神经网络:超参数调试、正 则 化 以 及 优 化 (Improving Deep Neural Networks:Hyperparameter tuning, Regularization and Optimization)第一周:深度学习的 实践层面 (Practical aspects of Deep Learning)1.13 梯度检验&#…

蓝桥杯单片机之模块代码《AT24C02》

过往历程 历程1:秒表 历程2:按键显示时钟 历程3:列矩阵按键显示时钟 历程4:行矩阵按键显示时钟 历程5:新DS1302 历程6:小数点精确后两位ds18b20 历程7:35定时器测量频率 文章目录 过往历…

微信小程序(Taro)获取经纬度并转化为具体城市

1、获取经纬度 申请权限,想要使用微信小程序获取经纬度的方法是要申请该方面的权限。 获取经纬度的方法有很多选择其中一个使用就好。 我使用的是Taro.getFuzzyLocation() 在app.config.js中需要添加设置 requiredPrivateInfos: ["getFuzzyLocat…

安装numpy遇到的问题

安装numpy的时候提示无法安装如下: (venv) E:\works\AI\venv\Scripts>pip install numpy pandas matplotlib jupyter -i https://pypi.douban.com/simple Looking in indexes: https://pypi.douban.com/simple WARNING: Retrying (Retry(total4, connectNone, r…

怎么把图片尺寸在线修改?5种方法调整方式介绍

在日常生活和工作中,我们经常遇到需要调整图片尺寸的情况,无论是为了适应自媒体文章内容中的图片、还是上传社交媒体平台要求,调整图片尺寸是一项非常有用的技能。在本教程中,我们将介绍几个方便快捷的图片处理工具,帮…

c++编程(10)——string

欢迎来到博主的专栏——c编程 博主ID&#xff1a;代码小豪 文章目录 <string>string类的接口构造、析构、与赋值重载构造函数赋值重载运算符 元素访问operator[] 容量修改器对string对象的操作迭代器 std::string是定义在c标准的一个类&#xff0c;定义在标准库<strin…

【JavaEE初阶系列】——Servlet运行原理以及Servlet API详解

目录 &#x1f6a9;Servlet运行原理 &#x1f6a9;Servlet API 详解 &#x1f393;HttpServlet核心方法 &#x1f393;HttpServletRequest核心方法 &#x1f388;核心方法的使用 &#x1f534;获取请求中的参数 &#x1f4bb;query string &#x1f4bb;直接通过form表…

如何更好地使用Kafka? - 事先预防篇

要确保Kafka在使用过程中的稳定性&#xff0c;需要从kafka在业务中的使用周期进行依次保障。主要可以分为&#xff1a;事先预防&#xff08;通过规范的使用、开发&#xff0c;预防问题产生&#xff09;、运行时监控&#xff08;保障集群稳定&#xff0c;出问题能及时发现&#…

【自动驾驶|毫米波雷达】初识毫米波雷达射频前端硬件

第一次更新&#xff1a;2024/5/4 目录 整体概述 混频器&#xff08;MIXER&#xff09; 低通滤波器&#xff08;LPF&#xff1a;Low-Pass filter&#xff09; 数模转换器&#xff08;ADC&#xff1a;Analog to Digital Converter&#xff09; 毫米波雷达功能框图 整体概述 完…

分布式与一致性协议之ZAB协议(六)

ZAB协议 成员发现 成员发现是通过跟随者和领导者交互来完成的&#xff0c;目标是确保大多数节点对领导者的关系没有异议&#xff0c;也就是确立领导者的领导地位。成员发现的实现流程如图所示。 1.领导者选举结束&#xff0c;节点进入跟随者状态或者领导者状态后&#xff0…

微软 AI 研究团队推出 SIGMA:一个开源研究平台,旨在推动混合现实与人工智能交叉领域的研究与创新

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

YzmCMS 7.0任意函数调用RCE 漏洞研究分析

YzmCMS是一款基于YZMPHP开发的一套轻量级开源内容管理系统,YzmCMS简洁、安全、开源、免费,可运行在Linux、Windows、MacOSX、Solaris等各种平台上,专注为公司企业、个人站长快速建站提供解决方案。 YzmCMS 某些接口调用了 db_pdo类的where方法 导致了远程命令执行漏洞&#xf…

PLC学习笔记

PLC学习笔记 前言一、一些基操知识二、GX works2编程2.1 位逻辑1.2 中间寄存器1.3 PLC的扫描方式 总结 前言 我这个人真的是太渴望知识了~ 一、一些基操知识 一般X表示输入&#xff0c;Y表示输出。一般八个为一组X0~X7M表示中间寄存器&#xff0c;M0~M7时间T、计数C 二、GX …

操作系统:线程相关知识

目录 1.生产消费者模型 1.1.概念引入 1.2.基于阻塞队列的生产消费模型 1.3.POSIX信号量 1.3.1.再识信号量 1.3.2.信号量接口的学习 1.4.基于环行队列的生产消费模型 1.5.深刻理解生产消费模型 2.可重入函数与线程安全 1.生产消费者模型 1.1.概念引入 生产者-消费者模型…

AI换脸免费软件Rope中文汉化蓝宝石版本全新UI界面,修复部分已知错误【附下载地址与详细使用教程】

rope蓝宝石版&#xff1a;点击下载 注意&#xff1a;此版本支持N卡、A卡、CPU&#xff0c;且建议使用中高端显卡&#xff0c;系统要求win10及以上。 Rope-蓝宝石 更新内容&#xff1a; 0214版更新&#xff1a; ①&#xff08;已修复&#xff09;恢复到以前的模型荷载参数。有…

Hadoop3:HDFS的架构组成

一、官方文档 我这里学习的是Hadoop3.1.3版本&#xff0c;所以&#xff0c;查看的也是3.1.3版本的文档 Architecture模块最下面 二、HDFS架构介绍 HDFS架构的主要组成部分&#xff0c;是一下四个部分 1、NameNode(NN) 就是Master节点&#xff0c;它是集群管理者。 1、管…

Stack数据结构设计模板

第三章 栈、队列、数组 1.栈 1.1 顺序栈 #define MaxSize 20 typedef int ElemType; //顺序栈的定义 typedef struct {ElemType data[MaxSize];int top; }SqStack; // 初始化顺序栈 void InitSqStack(SqStack &S){S.top -1; }; // 入栈(增) bool Push(SqStack &S,El…

RabbitMQ之消费者并发消费

为什么要引入消费者的并发消费&#xff1f; 当生产者的推送速度是远远超过消费者的能力的&#xff0c;可以提高消费者的消费速度。比如在java中我们可以启动多个 JVM 进程&#xff0c;实现多进程的并发消费&#xff0c;从而加速消费的速度&#xff0c;在mq中也可以通过设置配置…

Git系列:Git Stash临时保存与恢复工作进度

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

python从0开始学习(五)

目录 前言 1、顺序结构 2、选择结构 2.1双分支结构 2.2多分枝结构 2.3嵌套使用 2.4多个条件的链接 总结 前言 在上篇文章中&#xff0c;我们学习了python中的运算符&#xff0c;本篇文章继续往下讲解。本篇文章主要讲解程序的组织结构。 1、顺序结构 顺序结构是程序按照…