Просто держите Lua переменную со значением таблицы (объекта) в каком-то пространстве, чтобы сборщик мусора её не удалял. Ещё есть функция lua_ref(), которая может добавить любое Lua значение во внутренний реестр.
C, C++, OpenGL, OpenAL, Bullet/Box2D, glfw, glm, glew, GLSL, vectors, matrices и вся линейная алгебра. Форматы данных, структуры данных. Пайплайн рендеринга и механизмы работы видеокарты. Ну и UI фреймворк какой-нибудь.
Многие клиенты не выдвигают требований к движку, поэтому я просто объясняю им, что корона это хороший выбор и они часто соглашаются. Я советую продолжать изучать корону.
Если хотите быть максимально востребованным, то скорее всего вам нужен Unity 3D.
Интересная задача. Я бы смотрел в сторону распределения плотности огурцов по полю с построением теплиц в этих центрах и в других локальных максимумах (тут перебор по максимумам).
Или использовал бы алгоритмы кластеризации для группировки близких огурцов. Вот, например, статья на хабре habrahabr.ru/post/101338
Там же снизу написано, если вам нужна сборка под другую архитектуру или разрядность - обратитесь к ним через форму обратной связи. Они дадут вам корректные deb файлы, которые вы уже сможете установить на RPi.
В зависимости от поведения ваших объектов, возможно придумать что-то более эффективное (более узконаправленное). Обычно это либо слежение в районе какой-то одной точки, либо кэширование результатов.
По TCP приходит сигнал в сетевую карту, та вычленяет из него пакет и перенаправляет в ядро ОС, ядро уже смотрит какому приложению отдать этот пакет. Находит Apache и передаёт ему, тот парсит пакет, выделяет запрос, парсит запрос и дальше по программе.