如何创建Win32 GUI,看起来更像3DSMax, Unity Pro,或CryEngine 3



好的,所以我在c++中制作一个win32应用程序,我想知道如何为gui着色。我想要像3ds Max, Unity Pro或CryEngine 3那样给它上色。在这些应用程序中,它们的颜色是深灰色的。我如何将相同的颜色应用到我的win32应用程序?

我的项目是一个OpenGL游戏引擎

这些编辑器是通过自定义绘制元素完成的,要么使用实际的windows处理程序来完成,要么通过DirectX (Direct2D)或OpenGL进行硬件加速。

这里有一个关于WinAPI的所有者绘制控件的简短总结,它应该为你提供你需要的所有细节。或者,你可以使用像Qt这样的东西,它使控制皮肤非常容易,或者GTK,这是Chrome使用的皮肤。

对于硬件加速部分,它可以分为两个阶段:

  1. WinAPI补充Direct2D(而不是GDI/GDI+)或将整个屏幕作为硬件位面,并使用OpenGL/Direct3D自定义绘制窗口控件。
  2. 完全硬件加速,为此需要从头开始编写所有内容,或者使用CEGUI之类的东西。

最新更新