我在Unity场景中的主摄影机上附加了一个脚本,该脚本使我能够使用良好的旧版OpenGl线绘制以原点为中心的等距网格。
如Unity文档(there)中所述,我在“ OnPostRender”事件上启动图形;问题是线条只能在游戏视图中绘制,而不能在编辑视图中绘制(即使使用[ExecuteInEditMode]指令也是如此)。
有没有办法将它们吸引到那里?
-
顺便说一句,这是该函数的代码(C#):
void OnPostRender()
{
CreateLineMaterial();
// set the current material
lineMaterial.SetPass( 0 );
GL.Begin( GL.LINES );
GL.Color(mainColor);
// Draw x lines
for (int x = - gridSizeX / 2; x <= gridSizeX / 2; x++) {
GL.Vertex3 (- gridSizeX / 4 + x, - gridSizeX / 8, 0 - x * 0.5f);
GL.Vertex3 (gridSizeX / 4 + x, gridSizeX / 8, 0 - x * 0.5f);
}
// Draw y lines
for (int y = - gridSizeY / 2; y <= gridSizeY / 2; y++) {
GL.Vertex3 (- gridSizeY / 4 + y, gridSizeY / 8, 0 - y * 0.5f);
GL.Vertex3 (gridSizeY / 4 + y, - gridSizeY / 8, 0 - y * 0.5f);
}
GL.End();
}
最佳答案
天哪,我知道会是这样。我整个下午都陷入困境,当我最终决定在这里提交问题时,我实际上找到了解决方案。
因此,对于您浪费的时间,我深表歉意。
顺便说一句,解决方案只是在OnDrawGizmos事件上绘制网格...
关于c# - GL.Lines Unity3D(C#)-线未在编辑 View 中呈现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21358494/