【发布时间】:2022-09-23 23:39:15
【问题描述】:
是否可以在屏幕的边框上画一条线,比如一条宽度一致的“内联”,比如说 10 像素,这样它就可以与屏幕的边缘对齐,即使在圆角处也是如此?
像这样:
with the wanted inline (Orange line)
有统一的解决方案吗?
我想要实现的是在每个屏幕上始终与屏幕边框形状相同的线条,无论角的半径如何
标签: c# unity3d mobile screen draw
是否可以在屏幕的边框上画一条线,比如一条宽度一致的“内联”,比如说 10 像素,这样它就可以与屏幕的边缘对齐,即使在圆角处也是如此?
像这样:
with the wanted inline (Orange line)
有统一的解决方案吗?
我想要实现的是在每个屏幕上始终与屏幕边框形状相同的线条,无论角的半径如何
标签: c# unity3d mobile screen draw
我认为这在正常情况下是不可能的,因为 Unity 将屏幕视为矩形,因此它不会为您提供有关屏幕角落形状的信息。
然而,这并非不可能。您可以使用SystemInfo.deviceModel 来获取设备的型号,然后您可以从服务器或类似的东西中检索其屏幕形状的信息。有了这些信息,您可以将其传递给后处理着色器,该着色器将评估从每个像素到屏幕角落的最小距离,如果该距离小于您定义的某个值,您可以用不同的方式绘制它。
【讨论】: