【问题标题】:Star Wars holographic effect in GLSL / HLSL shaderGLSL / HLSL 着色器中的星球大战全息效果
【发布时间】:2011-07-03 15:05:04
【问题描述】:

有人知道如何在 HLSL / GLSL 中实现类似《星球大战》的全息效果吗?

【问题讨论】:

  • 不是每个人都看过这个,你能试着更详细地描述一下你在找什么吗。
  • @James:我认为this 是这个意思
  • @Ben Voigt:这与from what I thought 的不同之处很有趣:-)
  • @Damon:我猜在 Ep 4-6 中从红色全息发射器(Ep 1-3)到蓝色(更高能量)的过渡可能与现实世界中的红色 LED -> 蓝色 LED 平行.或者它可能只是为了凉爽因素。
  • 冒着跑题的危险,在我看来,新剧集(1-3)就酷感而言完全失败了,无论如何。它们非常适合 Startrek TNG,但不适用于发射超级激光需要 5 名工程师半分钟工作的故事情节,推动计算机上的 20 个杠杆控制我卧室的大小(有许多闪烁的灯,因为每个 真正的电脑有!)。老电影更具原创性......但是,回到主题......我认为如果需要现代“红色”变体,还需要添加一些绽放。

标签: opengl glsl direct3d hlsl


【解决方案1】:

编辑:
我的回答是指“经典”的蓝色全息外观,而不是 Ben 在互联网上发现的更现代的第 1-3 集电影中更艳丽、偏红的外观(问题并不清楚需要哪一个)。 如果需要更现代的红色外观,显然必须使用红色而不是蓝色,并为“光环”添加绽放效果(阈值/明亮通道,模糊,添加到图像,例如参见 here )。

(原答案)
这看起来更像是一种半透明的、不太准确的蓝色“黑白”效果。

因此,我会计算亮度(类似于dot(color.xyz, vec3(0.67, 0.21, 0.14)),虽然均匀的权重(0.333)可能看起来也不错),并仅在蓝色通道中输出,可能会添加一些偏差并乘以一些增益,以使它有点可调整。

然后启用 alpha 混合,并使用恒定的 alpha 调整它,使其尽可能透明。

可能还可以在亮度中添加一点 Perlin 噪点,让它有点“不那么准确”,看起来有点“不完美”,就像电影中的那些全息图一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    相关资源
    最近更新 更多