我知道一点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);
}
但我有一个小问题,我想让这条线成为彩虹色:
但我不知道该怎么做,如果有人能指出我正确的方向,我会很高兴!祝你有愉快的一天!
答案 0 :(得分:2)
有很多方法可以实现你想要的东西,但我想所有这些都是幻觉。
例如,您可以使用链接的位图作为纹理,并将其映射到细长的矩形网格。另一种方法是绘制n个线段,每个线段具有不同的颜色。总之,他们会形成一条看起来像你想要的线。当然,你需要弄清楚如何自己生成颜色,但算法可能非常简单。
我认为还有涉及着色器的解决方案。