在Unity中画出流畅的线条真的那么难吗?

2024-01-19

一段时间以来,我一直在尝试在 Unity 中绘制平滑的线条,但使用线条渲染器时,我只获得了锯齿状的线条,且边角不是圆角的,特别是当曲率角度非常小时。我在质量设置中增加了抗锯齿的值,并尝试了不同的材质,但没有任何改变。我还尝试在每次鼠标移动时实例化一个球体,但它会在各个球体之间产生一些间隙,特别是当鼠标快速移动时。我知道有一个名为 Vectrosity 的插件可以实现此目的,但是有没有一种方法可以在不使用它的情况下实现此目的?


通过从一组点生成网格可以获得一些好的结果。

其算法如下:

  1. 您有一组点,可以用贝塞尔曲线生成。
  1. 对于每个点,获取到下一个点的方向向量v = (p2 - p1) (以蓝色标记)。然后将该向量旋转 90 度normal = v.y, -v.x 标记为红色.
  1. 这说明我们将使用点位置的每个法线。现在,您可以在两个方向上将此向量乘以所需的线宽度。
  1. 在这些位置创建顶点。
  1. 添加索引以形成三角形。会是这样的[i, w/2 + i, w/2 + i + 1] where i是当前索引,并且w是顶点总数。
  1. 创建其他三角形。又像[i, w/2 * i + 1, i + 1]
  1. 以及最终的结果。您可以添加更多点以使线条更平滑。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Unity中画出流畅的线条真的那么难吗? 的相关文章

  • 获取 System.Drawing.Font 宽度?

    我正在使用 Net 工具进行一些 2D 绘图 System Drawing Font uses a GetHeight 返回以像素为单位的高度 我缺少一个GetWidth 检索宽度 我应该用什么 Use Graphics MeasureSt
  • 快速像素绘图库

    我的应用程序以每像素的方式生成 动画 因此我需要有效地绘制它们 我尝试过不同的策略 库 但结果并不令人满意 尤其是在更高分辨率的情况下 这是我尝试过的 SDL 好的 但是慢 OpenGL 像素操作效率低下 xlib 更好 但仍然太慢 svg
  • 从脚本启用/禁用 GameObject 组件 [Unity3D]

    我需要获取一个脚本中设置的布尔值 放入名为 bouclier 的变量 以启用或禁用游戏对象 该变量位于游戏对象 Player 中 此处右下角 我需要启用或禁用这个游戏对象 Bouclier01 为此 我将脚本附加到游戏对象 Bouclier
  • Unity 中图像的 onClick 事件

    是否可以在 Unity 中将 onClick 功能添加到图像 画布的组件 var obj new GameObject Image NewImage obj AddComponent
  • 优化 - 步进可能表现奇怪:iOS/Unity

    我正在尝试将 Unity 集成到 iOS 应用程序中 我已经遵循了这个教程http www agnosticdev com blog entry swift integrating unity and vuforia ios swift p
  • 画布未在顶部渲染

    我使用画布和 Unity UI 元素作为 HUD 我希望 HUD 能够领先于一切 但事实并非如此 以前没有使用过 Cardboard 但我相信你可以通过相机剔除来解决这个问题 只需按照以下步骤操作 Canvas 1 选择Canvas并将图层
  • 如何让游戏音频在某个点循环播放

    我的游戏中有一场风暴 所以我制作了一个环境音频文件 它慢慢成长为一场风暴 雨逐渐消失 然后变成一个可循环的风暴音频文件 我是这样做的 Play intro clip and merge into main loop var introTim
  • Unity 对象不围绕枢轴点旋转

    突然 由于某种原因 统一编辑器中的对象开始围绕其重心旋转 至少我认为是这样 而不是其枢轴点 我尝试将对象放置在一个空对象内 该对象将像往常一样用作新的枢轴点 但这并没有改变任何东西 这是一些设置还是一些更新的功能 我怎样才能阻止它 检查编辑
  • 如何制作一连串的ggplots并在它们之间绘制箭头?

    对于一个项目 我需要绘制一些图并在它们之间放置箭头作为序列的指示 我想知道我是否可以用 ggplot 来做到这一点 是否可以使用 ggplot2 绘制一个干净的大箭头并将其添加到最终的多重图中 作为示例 我使用此代码来绘制绘图 librar
  • 使texture2D在运行时/脚本Unity3D中可读[重复]

    这个问题在这里已经有答案了 我有一个插件 可以让我访问 Android 手机图库中的图片 这给了我一个Texture2D类型的纹理 然后我想使用 GetPixels 函数对其进行编辑 但默认情况下它未设置为可读 如何使纹理可读 以便我可以在
  • 如何使用 Unity 在 Android 设备上以各种宽高比显示游戏的相同部分?

    我从 Libgdx 引擎转向 Unity 是一名初级程序员 我尝试在 Unity 中为 Android 和 iOS 设备制作游戏 但在宽高比 分辨率缩放方面遇到问题 在 Libgdx 中 如果您开发了一些东西 您可以指定 默认 分辨率 并且
  • 自定义窗口上的 Unity 自定义检查器

    我有一个显示对象列表的自定义窗口 每个对象都有一个自定义检查器编辑器 是否可以在自定义窗口内显示自定义检查器 你不能强迫Unity3D将自定义检查器绘制在检查器窗口之外的其他位置 顺便说一句 您可以手动实例化Editor using 编辑器
  • 在原生 Android 应用程序中集成多个 Unity 游戏

    我有一个原生 Android 应用程序 我想在其中嵌入多个 Unity 游戏 我跟着link https medium com davidbeloosesky embedded unity within android app 7061f4
  • 为什么 UIGraphics.GetCurrentContext 返回 null?

    我有一个 UIViewController 其中包含 2 个子视图 从 UIView 派生的类 它们使用 UIGraphics GetCurrentContext 进行自定义绘图 该绘图在应用程序启动时工作正常 我像这样连接视图控制器的 V
  • TextMeshPro 中不显示西里尔字母

    TextMeshPro 中不显示西里尔字母 显示方块而不是俄语字母 我在网上寻找其他人对同一问题的分析 但我什么也不明白 也没有帮助 在 Asset Creator 中 十六进制似乎被正确指示 但仍然没有 谁能帮我找出问题所在 在此输入图像
  • Unity IAP 无法在 Apple Testflight 中工作

    过去几天尝试让 IAP 在我的第一个游戏应用程序的 TestFlight 上运行时遇到问题 IAP 在 Unity Editor 假商店 和 Google Play 内部测试轨道 上运行良好 我没有从苹果商店收到任何产品价格 并且购买按钮没
  • 橡皮擦在 iOS 绘图中不起作用

    我正在做一个绘图项目 其中有一个橡皮擦选项 下面给出的代码适用于我启动应用程序并绘制一些线条并继续使用橡皮擦时的代码 它工作正常 我得到了橡皮擦效果 现在第二种情况是我画了大约10条线 然后单击 撤消按钮 并撤消整个事情 然后我重做整个事情
  • 如何在 unity3d C# 中让相机跟随物体?

    我有一个名为 Ball 的对象 我向它添加了键盘交互性 WASD 来移动球 我需要摄像机留在后面并跟随球 但我遇到了错误 using UnityEngine using System Collections public class bal
  • 使物体跟随旋转且差异很小

    我正在使我的对象跟随另一个对象的旋转 我希望我的对象以很小的差异旋转 也就是说 从当前的旋转来看 它不应该与另一个对象完全旋转 其旋转应该存在差异 使其旋转主要对象旋转的 10 我该怎么做呢 using System Collections
  • 使用 Protobuf-net,我收到有关 List 未知线路类型的异常

    我已经开始将 Unity iOS 游戏转换为使用 Protobuf net 保存状态 看起来一切正常 直到我将此实例变量添加到GameState ProtoMember 10 public List

随机推荐

  • 变量初始化列表

    是否有可能创建一个initializer list变量 例如函数参数 参见函数test 下面的代码有效 Clang 和 GCC 都没有抱怨任何事情 但我只是想确保这没问题 include
  • ChromeProxyService:无法评估表达式

    通常 当从列表渲染时 我会看到 Flutter 抛出以下内容 从下面的示例中 请参阅 PositionedTilesState ChromeProxyService Failed to evaluate expression tiles C
  • 使用泛型类型的运算符时出错[重复]

    这个问题在这里已经有答案了 我正在学习 Rust 我不明白为什么下面的代码会出错 use std ops Mul use std ops Add struct Vec2
  • Vue js将多个样式属性绑定到一个元素

    这会将背景颜色属性绑定到 td 元素 td Some text td 但是 如果我不仅想绑定背景颜色 同时还想绑定前景色 正常颜色属性 该怎么办 如何将多个样式属性绑定到一个元素 首先 css中没有前景色 您可以使用多种样式 并以逗号分隔k
  • 如何在react中解析xml文件?

    我尝试过使用一些库 但似乎找不到任何答案 我有一个 React 网站 我正在使用表单上传文件 我正在寻找一种方法来解析XML文件 并到达它的孩子 但我似乎找不到方法来做到这一点 My form
  • HikariCP多线程每个线程单独连接

    致 stackoverflow 社区的人们 我正在寻求一些帮助来解决我在 HikariCP 连接池方面遇到的问题 高水平 我正在尝试使用线程池创建多个线程 我的计划是为每个工作线程提供与 HikariCP 各自独立的连接 但 HikariC
  • 将 Xcode 8 与 iOS 11 结合使用

    我想在 iOS 11 中使用 Xcode 8 我应该升级我的 Xcode 吗 但是 我的代码无法由新编译器构建 因此我想继续使用 Xcode 8 我怎样才能做到这一点 苹果在 WWDC 2017 上公布了 iOS 11 的多项新功能 截至目
  • 新版 Google Play 服务中的“Listener”发生了什么变化

    在 Android Studio 中 我已更新 Google Play 服务 com google android gms play services 6 1 11 to com google android gms play servic
  • 我的代码发出错误“应用程序:不是过程”或“调用非过程”

    在执行我的代码期间 我在不同的方案实现中遇到以下错误 Racket application not a procedure expected a procedure that can be applied to arguments give
  • Bootstrap:如何识别Bootstrap版本?

    我想更新网站上的 Bootstrap 但我不知道安装的版本 如何仅使用 bootstrap css 和 bootstrap min js 文件来识别 bootstrap 版本 CSS 文件中没有版本 min js 文件包含以下注释 Boot
  • 错误:postgresql 中不存在用于更新的列[重复]

    这个问题在这里已经有答案了 我正在尝试将一行文本插入到该列为空的列中 下面列出了错误 任何帮助是极大的赞赏 UPDATE public meditech ar test4 SET filename text WHERE filename i
  • 对 Unity 项目执行版本控制的最佳方法 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我正在开发我的第一个大型 Unity 项目 这是一个游戏 我有很多资产 现在他们使用超过 200 Mbs 的硬盘 我想使用像 GIT 这样的控制
  • 更新到 jruby-1.7.13 后,在 jruby 中要求自制 gem 失败

    我使用了 jruby 1 7 0 和测试框架 Test Unit TestCase 现在我更新了一些gems 导致我使用MiniTest Test进行测试 所以我也升级到了jruby 1 7 13 我也有一个 rake 任务 它使用 jav
  • 打印出 SQL 单个查询 (Yii 1.x)

    我有一个使用 CDbCriteria 生成的大量查询 如下所示 schema Yii app gt db gt schema builder schema gt commandBuilder how to echo out this que
  • 灵活的数组成员,不必是最后一个

    我试图弄清楚 C 中是否有一种解决方法可以在结构中拥有灵活的数组成员 这不是最后一个 例如 这会产生编译错误 typedef struct attribute packed uint8 t slaveAddr lt The slave ad
  • Web API 空白参数值被转换为 null

    我有一个简单的 Web API 服务 大约有 10 种不同的 GET 操作 这些操作根据输入参数返回各种数据库记录的 JSON 输出 对于一个特定端点 一个空格 应该是一个有效的参数 但它被转换为 null 有没有解决的办法 例如网址是 h
  • 是否有返回当前类/方法名称的函数? [复制]

    这个问题在这里已经有答案了 在 C 中 是否有返回当前类 方法名称的函数 当前班级名称 this GetType Name 当前方法名称 using System Reflection MethodBase GetCurrentMethod
  • 找不到gunicorn命令,但它在我的requirements.txt中

    我正在 Heroku 上部署 Django 应用程序 该应用程序已成功部署 但当我想在提供的 http 链接上查看该应用程序时 出现以下错误 gunicorn在我的requirements txt file 2020 02 21T16 22
  • 包含类型的类型的模板函数重载

    我正在尝试执行以下操作 include
  • 在Unity中画出流畅的线条真的那么难吗?

    一段时间以来 我一直在尝试在 Unity 中绘制平滑的线条 但使用线条渲染器时 我只获得了锯齿状的线条 且边角不是圆角的 特别是当曲率角度非常小时 我在质量设置中增加了抗锯齿的值 并尝试了不同的材质 但没有任何改变 我还尝试在每次鼠标移动时