创建一个绿色三角形C ++ DirectX

时间:2018-02-13 06:18:47

标签: c++ winapi directx rendering game-engine

所以我试图创建一个绿色三角形,但绝对不知道如何继续。我是DirectX和win32世界的新手,现在输了。我玩弄了我的教授给出的椭圆代码。这是代码。我理解这一点,但对接近三角形绝对毫无头绪。我正在考虑制作三条直线,但不能走远。救命啊!

brush->SetColor(D2D1::ColorF(red, green, blue, alpha));
rendertarget->DrawEllipse(D2D1::Ellipse(D2D1::Point2F(x, y), radius, radius), brush, 3.0f); 

将brush和rendertarget定义为

ID2D1HwndRenderTarget* rendertarget;
ID2D1SolidColorBrush* brush; 

1 个答案:

答案 0 :(得分:2)

对于Direct2D,您应该在GitHub上查看这些Windows 7时代的经典Win32桌面示例。 Direct2D是一个“矢量图形”或“演示图形”库,用于绘制圆形矩形,实心圆等,从而在Windows早期取代古老的GDI API。您可以在其中编写2D游戏,但由于这些游戏大多只是精灵,因此它可能不是最简单的解决方案。 Direct2D / DirectWrite / WIC API非常低级,因此如果您是目标Windows 10,则应该强烈考虑使用Win2D库进行Direct2D编程。

对于Direct3D 11,您应该查看DirectX Tool Kit tutorials。对于2D和3D游戏,Direct3D可能是游戏开发的更好选择。您可以使用工具包的SpriteBatch做很多事情。如果您想使用'原始'Direct3D,请在GitHub上查看SimpleTriangle PCUWP