Синтаксис:
Используется csharp
public static void CreateLineMaterial() //Параметры материала линии (взято из стандартной справки)
{
if( !lineMaterial )
{
lineMaterial = new Material( "Shader \"Lines/Colored Blended\" {" +
"SubShader { Pass { " +
" Blend SrcAlpha OneMinusSrcAlpha " +
" ZWrite Off Cull Off Fog { Mode Off } " +
" BindChannels {" +
" Bind \"vertex\", vertex Bind \"color\", color }" +
"} } }" );
lineMaterial.hideFlags = HideFlags.HideAndDontSave;
lineMaterial.shader.hideFlags = HideFlags.HideAndDontSave;
}
}
public static void DrawLine(Vector3 p1, Vector3 p2, Color colr)
{
CreateLineMaterial();
lineMaterial.SetPass( 0 );
GL.Begin( GL.LINES );
GL.Color(colr);
GL.Vertex(p1);
GL.Vertex(p2);
GL.End();
}
{
if( !lineMaterial )
{
lineMaterial = new Material( "Shader \"Lines/Colored Blended\" {" +
"SubShader { Pass { " +
" Blend SrcAlpha OneMinusSrcAlpha " +
" ZWrite Off Cull Off Fog { Mode Off } " +
" BindChannels {" +
" Bind \"vertex\", vertex Bind \"color\", color }" +
"} } }" );
lineMaterial.hideFlags = HideFlags.HideAndDontSave;
lineMaterial.shader.hideFlags = HideFlags.HideAndDontSave;
}
}
public static void DrawLine(Vector3 p1, Vector3 p2, Color colr)
{
CreateLineMaterial();
lineMaterial.SetPass( 0 );
GL.Begin( GL.LINES );
GL.Color(colr);
GL.Vertex(p1);
GL.Vertex(p2);
GL.End();
}
... то линия рисуется вполне нормально (нужным цветом по нужным координатам), но как только я начинаю передвигать камеру неважно в каком направлении, то вокруг это линии (в некоторых рандомных местах на расстоянии 1-2 пикселя от лини) начинают мерцать белые полоски. После того как камера останавливается, то о5 все ОК. Подскажите пожалуйсто как убрать это мерцание? Заранее всем спасибо.