Страница: 1 |
Вопрос: Vsync | Добавлено: 20.02.06 13:45 |
Автор вопроса: ![]() |
Можно ли из программы учуять момент, когда луч ЭЛТ заканчивает последнюю строчку пикселей в кадре? Желательно без DirectX.
И еще. Можно ли узнать, сколько времени тратит луч на прорисовку одной строчки пикселей? |
Ответы | Всего ответов: 8 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 373-509-101 Вопросов: 56 Ответов: 330 |
Профиль | Цитата | #1 | Добавлено: 20.02.06 14:06 |
На счет второй части, нужно узнать количество строк, частоту обновления экрана, и получить время на обновление одной строки. Хотя возможно это бред. |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() Вопросов: 0 Ответов: 1876 ![]() |
Профиль | Цитата | #2 | Добавлено: 20.02.06 15:04 |
Чё будем делать на TFT? |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 20.02.06 15:12 |
Хотя возможно это бред Почему же бред? Логично. Вот только где гарантия, что время между кадрами почти совпадает с временем пробега луча.
Я даже не могу найти, как определить частоту кадров монитора. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 23.02.06 16:40 |
Чё будем делать на TFT?
'function IsTFT retrieves a non-zero value if the user has a TFT montor.
'otherwise it retrieves zero. '''''''''''''''''''' '(C) Morpheus ![]() '''''''''''''''''''' Function IsTFT() As Long IsTft = MsgBox("Do you have an LCD Monitor?", vbYesNo) = vbYes End Function Я это вполне серьезно: предоставлю пользователю выбор. У меня у самого то он LCD. Неужели никто не писал гаму с вертикальной синхронизацией? |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #5 | Добавлено: 14.06.06 13:59 |
Помогите! Очень хочется! |
Номер ответа: 6 Автор ответа: ![]() ![]() ICQ: 237822510 Вопросов: 28 Ответов: 1182 |
Профиль | Цитата | #6 | Добавлено: 14.06.06 15:05 |
Знаю, что можно даже управлять лучем. Координаты, интенсивность и т.п., но как не знаю. Вернее не пробовал. |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #7 | Добавлено: 14.06.06 15:22 |
Знаю, что можно даже управлять лучем. Что-то мне с трудом в это верится. Так можно поставить луч в одну точку на белый цвет, она и выгорит через полчаса.
А еще интересно: что будет, если я захочу управлять лучом на LCD-мониторе? Ну да ладно, продолжу гуглить. |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ![]() ![]() ICQ: 345743490 Вопросов: 42 Ответов: 385 |
Web-сайт: Профиль | Цитата | #8 | Добавлено: 08.07.06 22:27 |
Нашел. WaitForVerticalBlank, из directdraw.
Теперь проблема. Не работает. Private Declare Function WaitForVerticalBlank Lib "ddraw" _
пишет, что Alias "WaitForVerticalBlank" (ByVal Flags As Long, ByVal hEvent As Long) As Long Can't find DLL entry point IDirectDraw_WaitForVerticalBlank in ddraw . Посмотрел depends'ом - действительно, ddraw.dll такой функции не экспортирует.
Описание функции: IDirectDraw2::WaitForVerticalBlank
Как ее вызвать? Помогите!
The IDirectDraw2::WaitForVerticalBlank method helps the application synchronize itself with the vertical-blank interval. HRESULT WaitForVerticalBlank( ![]() HANDLE hEvent ); Parameters dwFlags Determines how long to wait for the vertical blank. DDWAITVB_BLOCKBEGIN Returns when the vertical-blank interval begins. DDWAITVB_BLOCKBEGINEVENT Triggers an event when the vertical blank begins. This value is not currently supported. DDWAITVB_BLOCKEND Returns when the vertical-blank interval ends and the display begins. hEvent Handle of the event to be triggered when the vertical blank begins. This parameter is not currently used. Return Values If the method succeeds, the return value is DD_OK. If the method fails, the return value may be one of the following error values: DDERR_INVALIDOBJECT DDERR_INVALIDPARAMS DDERR_UNSUPPORTED DDERR_WASSTILLDRAWING QuickInfo Windows NT: Use version 4.0 or later. Windows: Use Windows 95 or later. Available as a redistributable for Windows 95. Windows CE: Unsupported. Header: Declared in ddraw.h. Import Library: Use ddraw.lib. See Also IDirectDraw2::GetVerticalBlankStatus, IDirectDraw2::GetScanLine |
Страница: 1 |
|