Another workaround, now with "stealing" CViewSetup. That's not a proper fix, but at least it works for now. So if somebody have some fresh ideas - share them please :p Note: don't use this workaround with previous one.
---------- 1. Add CViewSetup g_View; before "void CViewRender::SetUpView()". 2. Add g_View = m_View; at the end of CViewRender::SetUpView(). 3. Before "C_VGuiScreen::DrawModel" add #include "view_shared.h" #include "iviewrender.h" extern CViewSetup g_View; 4. Replace code between "ComputePanelToWorld();" and "return 1;" with this: CMatRenderContextPtr pRenderContext( materials ); pRenderContext->MatrixMode( MATERIAL_PROJECTION ); pRenderContext->PushMatrix(); CViewSetup viewModelSetup( g_View ); viewModelSetup.zNear = g_View.zNearViewmodel; viewModelSetup.zFar = g_View.zFarViewmodel; viewModelSetup.fov = g_View.fovViewmodel; render->Push3DView( viewModelSetup, 0, NULL, view->GetFrustum() ); pRenderContext->DepthRange( 0.0f, 0.1f ); g_pMatSystemSurface->DrawPanelIn3DSpace( pPanel->GetVPanel(), m_PanelToWorld, m_nPixelWidth, m_nPixelHeight, m_flWidth, m_flHeight ); // Finally, a pass to set the z buffer... DrawScreenOverlay(); pRenderContext->DepthRange( 0.0, 1.0 ); render->PopView( view->GetFrustum() ); pRenderContext->MatrixMode( MATERIAL_PROJECTION ); pRenderContext->PopMatrix(); ---------- _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders