片段着色器光滑不透明

时间:2017-04-06 14:56:56

标签: opengl shader fragment-shader

鉴于

,我想要实现的目标非常简单
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
        Fillcombo();
    }

    void Fillcombo() {
        string constring = "datasource=localhost;port3306;username=username;password=password";
        string Query = "select * from hotel";
        MySqlConnection conDataBase = new MySqlConnection(constring);
        MySqlCommand cmdDataBase = new MySqlCommand(Query, conDataBase);
        MySqlDataReader myReader;
        try
        {
            conDataBase.Open();
            myReader = cmdDataBase.ExecuteReader();
            while (myReader.Read())
            {
                string sName = myReader.GetString("Rom_nr");
                comboBox1.Items.Add(sName);
            }

        }
        finally
        {
        }

在填充了给定颜色的中心点绘制一个圆圈。

圆圈的中心,颜色为100%,颜色沿半径逐渐消失。

这是我取得的成就

(bgColor:10,20,30,255,lightColor:100,100,30,255):

enter image description here

片段的着色器代码:

a center point
a radius
a color

问题是从中心到边缘的颜色渐变不是很明显(虽然在上面的屏幕截图中可能看起来很明显)。

我想知道是否有办法让它成为一个平滑的淡出圈?

任何建议都将不胜感激,谢谢:)

1 个答案:

答案 0 :(得分:0)

简单的回答:如果我想做那样的话,我会使用调整的phong照明。我认为矢量数学更适合渐变。 目前,您可以尝试将1.o更改为1.0LF。它是#version 400 core东西