Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Проблема с ДиректХ в С#

51K
12 августа 2009 года
shandor
1 / / 12.08.2009
Столкнулся со след проблемой. Значит работаю в C# 2008 Express Edition. Написал программу, где мне должно выводить окно с закрашенным цветом. ДиректХ вначале инициализируется, а вот в методе paint он мне хз что показывает. Вот код:
Цитата:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.DirectX;
using Microsoft.DirectX.Direct3D;

namespace WindowsFormsApplication1
{

public partial class Form1 : Form
{
public Device d3d;
public Mesh teapot;
public Form1()
{
InitializeComponent();
}

private void Form1_Load(object sender, EventArgs e)
{

try
{
// Устанавливаем режим отображения трехмерной графики
PresentParameters d3dpp = new PresentParameters();
d3dpp.BackBufferCount = 1;
d3dpp.SwapEffect = SwapEffect.Discard;
d3dpp.Windowed = true; // Выводим графику в окно
d3dpp.MultiSample = MultiSampleType.None; // Выключаем антиалиасинг
d3dpp.EnableAutoDepthStencil = true; // Разрешаем создание z-буфера
d3dpp.AutoDepthStencilFormat = DepthFormat.D16; // Z-буфер в 16 бит

d3d = new Device(0, // D3D_ADAPTER_DEFAULT - видеоадаптер по умолчанию
DeviceType.Hardware, // Тип устройства - аппаратный ускоритель
this, // Окно для вывода графики
CreateFlags.SoftwareVertexProcessing, // Геометрию обрабатывает CPU
d3dpp);
}
catch (Exception exc)
{
MessageBox.Show(this, exc.Message, "Ошибка инициализации");
Close(); // Закрываем окно
}

}

private void Form1_Paint(object sender, PaintEventArgs e)
{
// Очищаем буфер глубины и дублирующий буфер
d3d.Clear(ClearFlags.Target | ClearFlags.ZBuffer, Color.Green, 1.0f, 0);

d3d.BeginScene();

d3d.EndScene();
d3d.Present();

}


}
}
Вот вывод на экран:




Кто знает, в чем тут дело?

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог