Godot着色器中是否有双浮点数据类型?

问题描述

我正在尝试在 Godot 中使用着色器,我需要一个非常精确的计算(不仅仅是浮点数)。是否可以在 Godot 着色器中使用双倍?我搜索了文档,但什么也没找到...

编辑:我制作了一个 Mandelbrot 集资源管理器,并在一些缩放后使用浮点数将图像全部像素化,因为达到了精度限制,我认为使用双倍我可以进一步放大在不损失质量的情况下。你可以看看我的代码 here btw

解决方法

Godot 在着色器中不支持 FP64,因为 OpenGL 3.3/OpenGL ES 3.0 不强制要求在 GPU 上支持它们。 GPU 上的双倍成本高昂,而且在消费类 GPU 上经常会出现问题,因此它们不适合大多数实时应用程序(尤其是需要以高帧率运行的游戏)。