Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Vsync Добавлено: 20.02.06 13:45  

Автор вопроса:  Victor | Web-сайт: vt-dbnz.narod.ru | ICQ: 345743490 
Можно ли из программы учуять момент, когда луч ЭЛТ заканчивает последнюю строчку пикселей в кадре? Желательно без DirectX.

И еще. Можно ли узнать, сколько времени тратит луч на прорисовку одной строчки пикселей?

Ответить

  Ответы Всего ответов: 8  

Номер ответа: 1
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #1 Добавлено: 20.02.06 14:06
На счет второй части, нужно узнать количество строк, частоту обновления экрана, и получить время на обновление одной строки. Хотя возможно это бред.

Ответить

Номер ответа: 2
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #2 Добавлено: 20.02.06 15:04
Чё будем делать на TFT?

Ответить

Номер ответа: 3
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #3
Добавлено: 20.02.06 15:12
Хотя возможно это бред
Почему же бред? Логично. Вот только где гарантия, что время между кадрами почти совпадает с временем пробега луча.

Я даже не могу найти, как определить частоту кадров монитора.

Ответить

Номер ответа: 4
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #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
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #5
Добавлено: 14.06.06 13:59
Помогите! Очень хочется!

Ответить

Номер ответа: 6
Автор ответа:
 AndreyMp



ICQ: 237822510 

Вопросов: 28
Ответов: 1182
 Профиль | | #6 Добавлено: 14.06.06 15:05
Знаю, что можно даже управлять лучем. Координаты, интенсивность и т.п., но как не знаю. Вернее не пробовал.

Ответить

Номер ответа: 7
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #7
Добавлено: 14.06.06 15:22
Знаю, что можно даже управлять лучем.
Что-то мне с трудом в это верится. Так можно поставить луч в одну точку на белый цвет, она и выгорит через полчаса.

А еще интересно: что будет, если я захочу управлять лучом на LCD-мониторе?
Ну да ладно, продолжу гуглить.

Ответить

Номер ответа: 8
Автор ответа:
 Victor



ICQ: 345743490 

Вопросов: 42
Ответов: 385
 Web-сайт: vt-dbnz.narod.ru
 Профиль | | #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(
  ;DWORD dwFlags,
  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 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам