Простейший способ рисования линии, точки, пикселя? - PullRequest
1 голос
/ 28 сентября 2011

Я использую SlimDX и C #.

Можете ли вы сказать мне, как нарисовать простую линию и пиксель, используя directx9? Я не хочу, чтобы эта линия была текстурированной, трехмерной или затененной, или на нее влияло освещение.

Я просто хочу нарисовать простую двухмерную сплошную линию и пиксель.

1 Ответ

2 голосов
/ 28 сентября 2011

Простое использование dx9 делает эти тривиальные задачи трудными. Он не был создан для выполнения таких операций 2D. Конечно, есть способы сделать это. Как создание VertexBuffer с вашими точечными или линейными данными и рендеринг его как LineList или PointList. Но накладных расходов только для этого много. Microsoft поняла такого рода ограничения, поэтому они вернули идею DirectDraw (которую было нелегко использовать для этих задач, а также) в виде Direct2D , именно для таких вещей, НО, и это возможно делает его бесполезным для вас, он работает только на Vista и Windows7. Если нет, я бы определенно использовал Direct2D для этого, который также обернут в SlimDX.

Если это не вариант, вам нужно решить, нужен ли вам DX9 в конце концов, и, возможно, переключиться на GDI или прикусить пулю и выбрать для этого трудный способ использования D3D9. Я знаю, что SlimDX имеет класс Line в SlimDX.Direct3D9.Line, который может вам немного помочь.

...