C ++ DirectX多色线

时间:2015-03-10 13:23:41

标签: c++

我知道一点C ++,我想制作自己的小游戏。我已经弄明白了如何划线,这就是它的样子:

void DrawLine(int bx, int by, int bw, D3DCOLOR COLOR) 
{ 
    D3DRECT rec; 
    rec.x1 = bx - bw;//makes line longer/shorter going left 
    rec.y1 = by / by; 
    rec.x2 = bx + bw;//makes line longer/shorter going right 
    rec.y2 = by + 1;//makes line one pixel tall 
    d3ddev->Clear(1, &rec, D3DCLEAR_TARGET, COLOR, 0, 0); 

}

但我有一个小问题,我想让这条线成为彩虹色: enter image description here

但我不知道该怎么做,如果有人能指出我正确的方向,我会很高兴!祝你有愉快的一天!

1 个答案:

答案 0 :(得分:2)

有很多方法可以实现你想要的东西,但我想所有这些都是幻觉。

例如,您可以使用链接的位图作为纹理,并将其映射到细长的矩形网格。

另一种方法是绘制n个线段,每个线段具有不同的颜色。总之,他们会形成一条看起来像你想要的线。当然,你需要弄清楚如何自己生成颜色,但算法可能非常简单。

我认为还有涉及着色器的解决方案。