[00:45:41] <valexey> наверно потому, что он один раз уже от нас сбежал? :-)
[00:45:49] <valexey> ну и чтобы не быть мгновенно затролленным дизером :-)
[02:15:40] <vlad2> похож-похож
[08:36:10] <vlad3> Еще интересная особенность грамматики: унарный оператор может быть использован только в начале выражения.
[08:36:43] <vlad3> Т.е. вот это некорректно: "i1 * -i2"
[08:37:06] <vlad3> надо вот так: "i1 * (-i2)"
[09:30:57] <vlad3> Так. Блюр скомпилялся и отработал за 25 сек. Это много или мало? :)
[09:41:15] <vlad3> да, дизер живенько отреагировал ;)
[15:15:20] <valexey> vlad2: в яблочко :-)
[17:51:56] <valexey> Services.DoLater - какой-то калечный.
[18:16:37] <vlad2> Древний код. Что ты от него хочешь? :)
[18:18:46] <vlad2> 16Гц - это как-то совсем мало. Виндовый таймер должен быстрее быть.
[18:31:14] <valexey> у Петра походу пригорело :-)
[18:31:48] <valexey> Анимация в 15 кадров в секунду - хватит всем!
[18:33:28] <valexey> Похоже эту шарманку нужно как-то вручную крутить.
[18:45:59] <vlad2> Сделай в отдельном потоке. Я так понимаю там все будет хорошо, если в GC не лезть.
[18:49:49] <vlad2> Уж лучшек бы Петр свой opengl крутил, энтропии было бы меньше.
[18:58:14] <valexey> Во! Гыгы. Костыльное решение: сделать ДВЕ (или более) Action'a. :-)
[18:58:17] <valexey> Частота возврастает кратно!
[19:04:33] <valexey> Хотя нет, не прокатит.
[19:04:45] <valexey> В этом случае они вызываются одновременно. А мне нужны вызовы разнесенные по времени.
[19:06:45] <vlad2> Ага.
[19:06:50] <vlad2> Чудес не бывает.
[19:06:54] <vlad2> Делай в треде ;)
[19:07:12] <vlad2> Я тут недавно имплементил свой таймер.
[19:07:32] <vlad2> Там все просто ;)
[19:07:39] <valexey> Непосредственно в треде нельзя - там рисование будет.
[19:07:54] <valexey> Ну, то есть там будет дергаться каллбэк который будет приводить к рисованию.
[19:08:04] <vlad2> Виндовый GDI позволяет рисовать из другого потока.
[19:08:17] <valexey> А OpenGl виндовозный же? ;-)
[19:08:40] <vlad2> А тебе OpenGL нужен???
[19:08:44] <valexey> Ну я еще минут 40 помучаюсь, и плюну пока - 16 кадров хватит для первого шара.
[19:08:57] <valexey> Угу. А иначе BB не позволяет работать с растром :-)
[19:09:17] <valexey> А в WinAPI напрямую я лезть не хочу.
[19:10:11] <vlad2> F самому крутить очеред можно в ББ?
[19:10:50] <valexey> Да вот надо бы зарыться в Kernel или что там у него вместо того.
[19:11:00] <valexey> Найти главный цикл и расфигачить :-)
[19:11:31] <valexey> Как я понимаю, просто так к себе вытащить главный цикл там низзя. Там же всякие сборщики мусора и прочее.
[19:11:38] <valexey> трап-хендлеры.
[19:12:15] <valexey> Блин. Хочу банально рисовать картинку 30 или 60 кадров в секунду. И уже такая засада. Пичаль..
[19:13:01] <vlad2> В смысле может у фрэймворка выставлена какая-нибудь ProcessMessages своя. Чтоб ее самом можно было крутить. С хэндлерами и т.д.
[19:13:21] <vlad2> Модальные диалоги там есть? Как они работают?
[19:13:50] <valexey> Есть. Это обычные модальный диалоги виндовозные, как я понимаю.
[19:14:11] <valexey> Вообще.. При выборе меню например, там все замирает.
[19:14:21] <valexey> То есть моя бэкграйнд-таска перестает писать в лог.
[19:14:54] <valexey> А теперь представь себе, ну например медиаплеер на базе ББ :-) В менюшку зашел - играть перестало.
[19:16:54] <valexey> Хотя для проигрывания там вообще задержка должна быть не более 20 или даже 10 мс
[19:18:54] <vlad2> О.
[19:18:56] <vlad2> Я понял.
[19:19:05] <vlad2> Надо просто тупо повеситься на виндовый таймер.
[19:19:10] <vlad2> SetTimer и вперед.
[19:19:15] <vlad2> Оно будет рабоать.
[19:19:20] <vlad2> Даже когда менбшка показывается.
[19:19:34] <vlad2> Правда придется подолбюаться с биндингами к апи.
[19:21:45] <valexey> Ога. Но я вроде почти что-то понял и что-то нашел. Ну, то есть я медленно и уныло ищу где эта периодическая штука в сырцах ББ, которая дергает акшены каждые 60-62 мс
[19:22:21] <vlad2> А. Погоди.
[19:22:34] <vlad2> У виндового таймера всю жизнь предел был порядка 50мс.
[19:22:59] <vlad2> Ао всяком случае в 95-й.
[19:23:19] <vlad2> Потом вроде меньше сделали, но никто уде не вверит и если нужно точнее 50мс - делают свой.
[19:24:19] <vlad2> Дизер и Петр нашли друг друга :)
[19:24:36] <valexey> Ищу по исходникам ББшным знаешь как?
[19:24:41] <valexey> ЧЕРЕЗ ФАР!
[19:24:47] <vlad2> ;)
[19:24:55] <vlad2> Встроенных поиск никакойГ?
[19:25:14] <valexey> Он по исходникам не ищет. Только по докам.
[19:26:14] <vlad2> Че, правда? Это ж лол.
[19:26:52] <valexey> Угу
[19:27:19] <vlad2> У кого надо - ищет :)
[19:27:38] <vlad2> Не, я помню - я искал как-то.
[19:30:05] <valexey> Ну может я не через тот поиск, и есть какой-то правильный...
[19:30:28] <valexey> Мне ведь надо найти не того кого данный модуль использует, а того кто использует данный модуль.
[19:45:52] <valexey> vlad2: видал как решилось? и я таки зелез в тот код - как ни странно, но именно в этих менюшках главный цикл приложения в ББ
[19:45:55] <valexey> никогда бы не подумал
[19:46:08] <valexey> и эти Actions там дергаются именно по таймеру.
[19:46:34] <vlad2> Так ты там просто выставил меньше мс?
[19:46:38] <valexey> Угу.
[19:47:02] <valexey> сейчас еще посмотрю насколько там хм... разброс большой.
[19:47:19] <valexey> то есть точность.
[19:49:08] <valexey> да, норм. каждые 15-16 мс теперь зовется.
[19:49:54] <valexey> vlad2: но твой метод тоже сгодился бы :-)
[19:50:08] <valexey> Более того, я сейчас это попробую проверить.
[19:50:33] <valexey> То есть ведь ничто не мешает переназначить извне через WinApi эту штуку.
[19:53:20] <valexey> vlad2: да, работает твой метод :-)
[19:53:30] <valexey> Просто замещаем таймер.
[19:54:06] <valexey> Мегастрочка: res := WinApi.SetTimer(HostWindows.main, 1, 1000, NIL);
[19:54:32] <valexey> Это конечно платформозависимый плохой хак. Но хоть так :-)
[20:42:02] <valexey> дас. моя английская языка хромает на все ноги :-)
[20:44:06] <vlad2> Да ладно, там dct понятно :)
[22:29:59] <vlad2> http://demotivation.me/images/20130505/rwkcxb2ae3bj.jpg
[23:26:42] <valexey> :-)
[23:32:27] <vlad2> Я вас там, кстати, пасхальных зайцев уже популиризовали?
[23:33:19] <valexey> неа
[23:33:42] <valexey> Только яйца
[23:34:58] <valexey> ААА1!! Начало координат слева-внизу!!111
[23:35:14] <vlad2> Где-то это было уже...
[23:35:16] <vlad2> На спенктруме?
[23:36:08] <valexey> угу.
[23:36:22] <valexey> На спектруме было
[23:36:27] <valexey> И, походу, в OpenGL тоже
[23:36:35] <valexey> Ну, либо это специфика OpenGL в BB :-)