【问题标题】:sparkling lights in opengl es 2.0 android?opengl es 2.0 android中的闪闪发光的灯?
【发布时间】:2011-11-11 03:54:20
【问题描述】:

我想为我的应用程序创建一个装饰灯之类的东西。它应该是一个非常微小但可见的灯,就像手机中的 LED 指示灯一样。我希望它有不同的颜色,如红色、绿色等。

我是opengl的新手。我知道诸如使用顶点渲染对象并为其提供纹理之类的事情。我还尝试了定向光和环境光之类的东西。但它是唯一的光源。所以我试着像一个有纹理的球体一样做一个有光的球体。但它看起来并不自然。

我看到一些网站包含点精灵之类的东西。我不确定这是否是我的解决方案。谁能给我一种解决方案来获得装饰灯。

示例代码或教程链接将非常有帮助。另外请让我知道如何控制光的颜色。感谢您的时间和帮助。

【问题讨论】:

    标签: android animation opengl-es 3d opengl-es-2.0


    【解决方案1】:

    如果对象本身就是光,则不需要灯光来为对象着色。

    如果您使用的是 opengl-es 2.0,那么您必须有一些着色器。从固定颜色着色器开始:

    precision mediump float;
    
    uniform vec4 myColour;
    
    void main() {
       gl_FragColor = myColour;
    }
    

    无论 myColour 设置为什么颜色,它都会为该对象着色。要设置该颜色,请查看如何设置制服。

    然后您想考虑边缘的外观,上面的着色器将具有锐利的边缘,因为您可能需要轻微的发光效果或模糊效果。恐怕这超出了我的经验。

    Render Monkey http://developer.amd.com/archive/gpu/rendermonkey/pages/default.aspx 是一个在安装 Android 之前在 PC 上试用着色器的好工具,它是免费的,并且有很多很好的示例,您可能会觉得有用。

    【讨论】:

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