【unity项目实战】3DRPG游戏开发03—— 绘制low poly风格的场景

2023-10-10 00:10

本文主要是介绍【unity项目实战】3DRPG游戏开发03—— 绘制low poly风格的场景,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

搭建场景

拖入一颗树,按住V键,表示顶点吸附,点击树的底部,他就会自动吸附到相邻的平面上了
天空盒
如果你的摄像机位置不是很好,我们可以场景移动到合适的位置,可以点击摄像机,按下键盘ctrl+shift+F同步调整摄像机位置
在这里插入图片描述

绘制low poly风格的环境

安装Ploybrush插件,并导入样例(后面还要用到),我们导入URP,如果你没有用URP就导入第一个
在这里插入图片描述
打开Ploybrush窗口
在这里插入图片描述

第1个:调整地面高度
第2个:柔化
第3个:刷颜色
第4个:刷预设体进场景中
第5个:图片刷到场景中
在这里插入图片描述
按住shiftj+滚轮,调整笔刷内圈大小(Inner Radius),按住ctrl+滚轮调整笔刷外圈的大小(Outer Radius)
strength控制我们的密度
默认效果是突出地面,按住ctrl在刷就是凹陷地面
在这里插入图片描述
还可以选择柔化我们的地形,默认是刷不上颜色的,原因现在的材质不是我们PolyBrush的材质,
最快创建的方法是,我们选择刚才PolyBrush的样例,右键,新建材质,它默认就绑定了刚才新建位置出来的材质
在这里插入图片描述
在这里插入图片描述
然后我们把他拖到我们的地面上,你会发现我们刚才刷的颜色就有效果了
在这里插入图片描述
我们希望整个场景是这个颜色,我们可以选择颜色,点击flood即可
在这里插入图片描述
刷我们的预设体
我们全选,除了地面,拖入
在这里插入图片描述
我们选择我们的一些树,就可以绘制到地图上了,而且是随机选择某颗树绘制,想删除就ctrl+点按删除我们绘制的树
在这里插入图片描述
绘制时,可能会发现我们的预设体浮夸,我们只要勾选Use Pivot再绘制就可以了
在这里插入图片描述

ProBuilder插件 扩大地形

场景地形太小了,我们要如何把地图变大呢?
可能你会想到拉伸我们的地面,这样不好,因为绘制时你会发现它对应的顶点并没有增加
这时候就要使用ProBuilder插件了
在这里插入图片描述
安装完一定记得导入URP样本,如果没有的话创建的所有物体都是灰色的
在这里插入图片描述
打开窗口
在这里插入图片描述
选择icon的方式查看
在这里插入图片描述
选择绘制我们的平面
在这里插入图片描述

这个就是控制我们生成的顶点数量顶点越多越精细,也越耗性能,按自己需要设计,比如我们把他改为30x30
在这里插入图片描述
piovot控制我们绘制出的平面的轴心位置,默认在角边
在这里插入图片描述
如果你已经绘制完了,也可以点击这个图标把轴心移动到平面的中心,记得先选择平面
在这里插入图片描述

注意:好像是probuild的bug,我把地形改成low poly风格三角形地形时,绘制会出现bug,提示:Mesh.uv is out of bounds. The supplied array needs to be the same size as the Mesh.vertices array.UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&),这时候我们还是不要选择变为三角形吧,等待插件修复这个bug吧

这时候再用我们的polybrush绘制地形,我们发现地形是成形状绘制的,这并不符合我们的low poly风格,我们要变成三角形
在这里插入图片描述
我们回到probuild,选择地形,点击三角形图标即可
在这里插入图片描述
地形默认是白色,如果你想改变颜色可以选择新建个材质控制他
在这里插入图片描述

这篇关于【unity项目实战】3DRPG游戏开发03—— 绘制low poly风格的场景的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/176525

相关文章

QT6中绘制UI的两种方法详解与示例代码

《QT6中绘制UI的两种方法详解与示例代码》Qt6提供了两种主要的UI绘制技术:​​QML(QtMeta-ObjectLanguage)​​和​​C++Widgets​​,这两种技术各有优势,适用于不... 目录一、QML 技术详解1.1 QML 简介1.2 QML 的核心概念1.3 QML 示例:简单按钮

基于C#实现MQTT通信实战

《基于C#实现MQTT通信实战》MQTT消息队列遥测传输,在物联网领域应用的很广泛,它是基于Publish/Subscribe模式,具有简单易用,支持QoS,传输效率高的特点,下面我们就来看看C#实现... 目录1、连接主机2、订阅消息3、发布消息MQTT(Message Queueing Telemetr

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

Python日期和时间完全指南与实战

《Python日期和时间完全指南与实战》在软件开发领域,‌日期时间处理‌是贯穿系统设计全生命周期的重要基础能力,本文将深入解析Python日期时间的‌七大核心模块‌,通过‌企业级代码案例‌揭示最佳实践... 目录一、背景与核心价值二、核心模块详解与实战2.1 datetime模块四剑客2.2 时区处理黄金法

Spring Boot项目打包和运行的操作方法

《SpringBoot项目打包和运行的操作方法》SpringBoot应用内嵌了Web服务器,所以基于SpringBoot开发的web应用也可以独立运行,无须部署到其他Web服务器中,下面以打包dem... 目录一、打包为JAR包并运行1.打包为可执行的 JAR 包2.运行 JAR 包二、打包为WAR包并运行

SpringBoot实现接口数据加解密的三种实战方案

《SpringBoot实现接口数据加解密的三种实战方案》在金融支付、用户隐私信息传输等场景中,接口数据若以明文传输,极易被中间人攻击窃取,SpringBoot提供了多种优雅的加解密实现方案,本文将从原... 目录一、为什么需要接口数据加解密?二、核心加解密算法选择1. 对称加密(AES)2. 非对称加密(R

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

C#实现高性能Excel百万数据导出优化实战指南

《C#实现高性能Excel百万数据导出优化实战指南》在日常工作中,Excel数据导出是一个常见的需求,然而,当数据量较大时,性能和内存问题往往会成为限制导出效率的瓶颈,下面我们看看C#如何结合EPPl... 目录一、技术方案核心对比二、各方案选型建议三、性能对比数据四、核心代码实现1. MiniExcel