Методы для динамической (алгоритмической) графики

Вероятно, что неработающие соединения разрываются GCP. Вам необходимо установить параметры поддержки активности gRPC для вашего клиента. Примерно так:

    "connection-options": {
        "grpc.max_receive_message_length": -1,
        "grpc.max_send_message_length": -1,
        "grpc.keepalive_time_ms": 120000, 
        "grpc.http2.min_time_between_pings_ms": 120000, 
        "grpc.keepalive_timeout_ms": 20000, 
        "grpc.http2.max_pings_without_data": 0, 
        "grpc.keepalive_permit_without_calls": 1 
    }

См. https://fabric-sdk-node.github.io/release-1.4/tutorial-grpc-settings.html для получения подробной информации об их настройке Узел SDK

6
задан Adam Davis 6 October 2008 в 13:29
поделиться

4 ответа

В некотором смысле, Вы находитесь в в значительной степени тех же разработчиках игр ситуации где во время Tandys, Спектров и ранних ПК. Так, вот моя рекомендация:

Необходимо считать записи Michael Abrash на компьютерной графике. Они были записаны во время, где сопроцессор с плавающей точкой был дополнительной частью аппаратных средств, и они описывают много основных методов (строки Bresenham, и т.д.) используемый в старом (предположительно, 'плохо') представленный в программном обеспечении днями.

Можно прочитать большую часть его "Черного списка" здесь.

Additionaly, можно, вероятно, найти много старых файлов BBS, что большинство людей раньше назад в день изучало графику, программирующую здесь. Просто поиск Графики, Строк, и что нет.

Надежда, которая помогает!

Обновление: Я также вспоминаю использование этого в моих первых попытках рисования вещей на экране. Не может сказать, сколько времени я потратил попытку понять математику позади него (хорошо, для ярмарки я был похож 15 в то время). Очень хороший (и простой) введение в 3D, и очень хороший премьер-министр на преобразованиях, заполнителях полигона и интерполяции.

8
ответ дан 8 December 2019 в 18:43
поделиться

Какие данные Вы покажете на экране?

Если это не фотографические изображения, Вы могли бы рассмотреть использование палитры. Например: 256 цветовых палитр с помощью 8 бит на пиксель потребовали бы 20 КБ, (плюс 256 x 2 байта для справочной таблицы), который, по крайней мере, лучше, чем 40 КБ.

3
ответ дан 8 December 2019 в 18:43
поделиться

Некоторые идеи, которые объединили бы хорошую графику и низкую память:

  • Фоны хранилища и спрайты во флэш-памяти.
  • Хранилище динамично генерировало графику в RAM с помощью палитры для половины байтов.
  • Используйте функцию работы с окнами жидкокристаллического драйвера, чтобы только обновить часть экрана, Вы должны.
0
ответ дан 8 December 2019 в 18:43
поделиться

Я полагаю, что основная техника для контакта с этим видом ситуации состоит в том, чтобы разделить экран на узкие горизонтальные дорожки и только буферизовать две таких дорожки в RAM. Одна дорожка будет отображена при рендеринге следующего вниз. Когда сканирование 'луч' поражает следующую дорожку (и исчерпывает прерывание для Вас для ловли), Вы подкачиваете два и начинаете опускать следующую дорожку.

Противный побочный эффект этого состоит в том, что это, у Вас есть трудно синхронизирующие пределы на то, сколько времени можно потратить на рендеринг каждой дорожки. Таким образом, я предполагаю, что было бы заманчиво придерживаться чего-то скучного, но предсказуемой производительности, как спрайты.

Немного offtopic, но это - то, как DS Nintendo 3D аппаратные средства работает. Вы видите его, при попытке представить слишком много полигонов вокруг той же y-координаты - то уловки будут случайным образом мерцать и выбывать, поскольку экранное обновление настигает аппаратные средства рендеринга.

Кроме того, я был бы второй предложение другого плаката, чтобы Вы использовали рендеринг palettised. Очень трудно сделать быструю математику на пикселях на 16 битов, но быстрее в 8 битах, если Вы умны о том, как Вы размечаете свою палитру.

2
ответ дан 8 December 2019 в 18:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: