Скачал и попробовал разобраться в Dxsdk81 для MASM. Примеры, связанные с Direct3d в Fullscreen'e не работали на моем компьютере (Seleron 700MHz, видео 16Mb, 1600x1200x32 ) - не создавался девайс DirectX установлен 9.0 Пробовал менять разрешение - и Windowed перестал работать На чужих машинах все нормально. Подскажите, plz, в чем может быть проблема...
По-моему для 1600x1200x32 видео маловато, мякго говоря. Да, и еще, почеву в заголовек d3d8, а потом говоришь про 9?
Возможно... посмотри в сторону параметра vertexprocessing при создании девайса. Может быть не получается создать с аппаратной обработкой вершин. Вставь софтварную... хотя это особой роли не играет. Вполне может быть что не хватает памяти видео. Для такого режима только на один буфер отводится около 8 метров. А нужно же еще под Z и под двойную буферизацию, например, такой же на 8 метров. Можно попробовать в структуре задать только один буфер без Z и двойной буферизации. Если с такими параметрами все будет создано значит памяти маловато для большего.
При запуске Fullscreen устанавливаются свои разрешения и bpp и я предполагаю, что current режим не играет роли. Я так понимаю, что DirectX 9 поддерживает все предыдущие версии (в том числе и 8).
Dronas Все штатные 3D примеры из DirectX SDK 8.1 for Masm32 на http://vertexland.narod.ru/data/directx_masm.htm asmfan Нашёл решение? - поделись - у меня такой же глюк на PII с MagicGraph 128XD keYMax а можно пример заполнения D3DPRESENT_PARAMETERS для случая когда видеопамяти, впритык на режим D3DFMT_R5G6B5 ? Я перебрал все комбинации, какие смог придумать - результат "CreateDevice failed !" как для окна, так и для FullScreen По идее, же раз DirectX 8.1 установлен то он должен всё программно эмулировать даже на слабенькой карте? и Z буфер ему ничего не должно бы мешать в обычной оперативке разместить?
Y_Mur Жаль у меня дома кроме двухметровой S3 Trio ничего нет интересно на ней попробовать будет... кстати, можно запустить тот же riva tuner или аналогичные программы и посмотреть капсы поддерживаемые dx на установленном видео и уже от этого отталкиваться... да тот же dxdiag запустить и выбрать на одно из закладок проверку видео. По очереди идут тесты dx7 dx8 dx9
ДиректДиаг сказал, что 3D не доступно - обновите драйвер А самый новый драйвер, который удалось нагуглить поддерживает аж DirectDraw 1 Т.е. получается, что Direct3D в отличие от OpenGL ничерта не эмулирует, а только опирается на драйвер. А кстати кто-нибудь что нибудь знает про интерфейс, который драйвер предоставляет тому же DirectX или OpenGL по идее это тоже должно быть как-то стандартизировано?
Да уж больно кривой путь через "прямой" доступ Такие структуры наворачивает, что вызывает сомнения в его "прямизне", интересно вдруг существует более приличная альтернатива
может поздновато но... на старых видяхах уменьшите разрешение, количество бэк буферов Определите формат поверхностей GetAdapterDisplayMode(видяха может не поддерживать некоторые) в примерах MAL , если нет текстур, при создании текстуры передавайте d3dpp.BackBufferFormat вместо формата который там.Сам года 1,5 назад замучился. на Intel 815 и старых ATI RAGE не работало. 2 keYMax в примерах к 9 DХ те же грабли.