@ProLua

Страница 294 из 307
Дмитрий
12.05.2018
14:25:15
В стиме за 500 рублей :D А вообще на торрентах без проблем находится

Tverd
12.05.2018
14:29:41
Исходники на луа можно глянуть в Don't starve

на мой взгляд, довольно не плохой код, во всяком случае намного лучше и понятнее, чем в проджект зомбоид

Lucky
12.05.2018
14:42:09
Google
Tverd
12.05.2018
14:43:04
https://store.steampowered.com/app/219740/Dont_Starve/

Snusmumriken
12.05.2018
17:57:35
Исходники на луа можно глянуть в Don't starve
Имхо, DS не шибко организована, можно было бы дерево организовать с тем же возвратом локальных модулей. Часть - именно такая, но далеко не всё, особенно конкретные монстрики выглядят как будто их набивали всякой фигнёй как подушку.



Tverd
12.05.2018
17:58:48
Никто не говорит что идеальный код)

Snusmumriken
12.05.2018
17:58:59
Ну, типа "сишники пишут на луях как на сишке" : )

Tverd
12.05.2018
17:59:45
Это ещё не так плохо, как java программисты пишут на луа

Philipp
12.05.2018
18:25:48
А в чом тут трабла?

Рома
12.05.2018
18:30:40
А я когда в луа либах копаюсь, то это всегда один файл и это удобно. Например, опенрести, его пилит программист 80 левла, и каждый отдельный модуль - файл, будь то адаптер базы или сишный модуль. И это не плохо! Копирую с гитхаба один файл, разбираюсь, все тут. И код, я бы сказал, хороший, быстро можно понять что где

Код в десятке файлов не обязательно проще воспринимается, чем в одном

Конкретно для луа по такой схеме это лучше делать: если может понадобиться делать require на что-то отдельно - тогда вынести, если нет то не надо, а то ещё проблемы могут быть с поиском зависимостей

Dadaskis
12.05.2018
22:59:30
Как сделать многопоточность в Lua?

Snusmumriken
12.05.2018
23:01:13
Lanes например.

Или юзни FFi, открой треды, пихни туда новые LuaState, свяжи с пайпами оси.

Google
Dadaskis
12.05.2018
23:01:33
5.3 кстати

Snusmumriken
12.05.2018
23:01:43
Ну тогда lanes.

Alexey
13.05.2018
02:57:32
я использую llthreads2

Dadaskis
13.05.2018
12:56:41
Крч, я не понимаю как билдить эти библиотеки и вообще использовать. Если я у себя вызову require, то лады, но что о другом компе?

Пытался тыкать luarocks, не понял.

Что мне делать с либами? .-.

Lucky
13.05.2018
13:23:32
реквирь их наверно и дёргай функции

Dadaskis
13.05.2018
13:24:49
Просто тот же llthreads2 требует билда, в Lanes тож проблемы с makefile.

Странно что в luaRocks мне кидает постоянно ошибку "Current directory does not exists"

Эту ошибку кидает если в luaRocks выполняется условие (not fs.current_dir()) or fs.current_dir() == "".

Узнал что у меня выдаёт... Выдаёт nil. Какого фига?

Когда убрал строчки с проверкой ошибки то теперь выдаёт всегда luarocks help

Что ж делать то?

Philipp
13.05.2018
16:03:28
Переустановить Луарокс

Alexey
13.05.2018
19:16:33
Под какую ос надо собирать?

Ну и тебе точно нужно несколько потоков?

Dadaskis
13.05.2018
20:07:05
Windows 7 64 бит у меня, но хочется что бы запускалось и под 32 бит. Да, нужно, ибо делаю майн и подгрузка чанков вызывает фризы что сильно бесит. Компилятор MinGW GCC.

Philipp
13.05.2018
20:08:58
Лел

Как сложно

Луа в Майне с пакетами из Луарокса

Google
Philipp
13.05.2018
20:09:16
Это вщ как?

Dadaskis
13.05.2018
20:10:14
C++ движок, добавляю функции при помощи luabridge. Блоковая система сделана, чанки сделаны, ток генерация немног кривая, а ещё грёбанные фризы...

Philipp
13.05.2018
20:12:17
А

Dadaskis
13.05.2018
20:13:42
Вообще странноватый движочек у меня. Блоки заранее сделаны, к ним кастомизированные шейдеры можно разве что присобачить. Мышкой камера управляется самим движком, но всё-таки сенсу можно подкрутить и другие мелочи.

Это ещё не странно если подумать...

Вот добавление функций...



Если хочешь увидеть реализацию моего де... крч бери ссыль https://github.com/Dadaskis/NotMinecraftEngine

Tverd
13.05.2018
21:37:29
А чанки у тебя генерятся в луа или в С? Уже нашел, в луа...

Dadaskis
13.05.2018
21:40:07
Надо оптимизировать визуализацию, ибо она дерьмо.

Каждый раз инфа о блоках обновляется, зачем если можно запомнить? Но это уже дело оптимизации...

но почему-то в оптимизации первый пункт - это добавление многопоточности. Пытался потоки на С++ перенести на Lua, ток всё криво-косо и крашит.

В школке починю тогда генерацию чуток, а ещё надо сделать адекватным её, скорее всего вводить global height map... Чуток костыль, хотя юзабельно если подумать...

Мерлин
13.05.2018
21:44:16
Dadaskis
13.05.2018
21:44:39
Не совсем имею представление о Lua C API...

Мерлин
13.05.2018
21:45:19
вряд ли можно сделать внутри без того, чтобы переписывать весь рантайм

Dadaskis
13.05.2018
21:45:38
Я написал не подумав, ночь влияет всё-таки на мозги.

Мерлин
13.05.2018
21:45:53
всё ок )

я тоже тут перлы генерирую

Philipp
13.05.2018
21:46:06
всё ок )
Ты хто такой я тебя здесь не видел

Google
Philipp
13.05.2018
21:46:07
:D

Dadaskis
13.05.2018
21:46:10
Хотя если подумать, можно сделать методы в Engine которые контролят луа стейты из луа.

Мерлин
13.05.2018
21:46:20
Ты хто такой я тебя здесь не видел
я тут чуть ли не с основания, емнип

Хотя если подумать, можно сделать методы в Engine которые контролят луа стейты из луа.
у меня в голове примерно такая картинка: несколько стейтов сидят в разных потоках, между ними в очередях бегают сериализованные сообщения хотя, если можно обойтись без сериализации, то будет круто, но надо придумать способ запаковывать таблицы с глубоким копированием

Dadaskis
13.05.2018
21:49:30
у меня в голове примерно такая картинка: несколько стейтов сидят в разных потоках, между ними в очередях бегают сериализованные сообщения хотя, если можно обойтись без сериализации, то будет круто, но надо придумать способ запаковывать таблицы с глубоким копированием
Ну я могу сделать несколько стейтов в разных потоках, в Engine добавить метод который будет управлять стейтами из луа. Скорее всего будут ещё wrapper'ы методов luabridge... Лады, все-равно на инфе нефиг делать, забацаю.

Dadaskis
13.05.2018
21:50:45
Библю Fast-noise, а там беру значения шума и через билинейную интерполяцию.

Поэтому global height map будет юзабелен.

Dadaskis
13.05.2018
21:51:31
За 45 минут такое себе :D
Ну, успевал как-то кубик рисовать в ОГЛе, а это изи.

Мерлин
13.05.2018
21:51:54
у а я помню развлекался клеточными автоматами для генерации пещер и лабиринтов

Philipp
13.05.2018
21:52:10
у а я помню развлекался клеточными автоматами для генерации пещер и лабиринтов
У меня серия статей про разные алгоритмы генерации лабиринтов есть))

Dadaskis
13.05.2018
21:52:27
У меня идея для пещер с TNT, т.е делаю рандомные линии, кривые и т.д, и подрываю.

Philipp
13.05.2018
21:52:31
Ну, успевал как-то кубик рисовать в ОГЛе, а это изи.
Ну кубик в ОГЛе значительно проще чем система сообщений между lua-VM, сериализатором данных и очередью

Мерлин
13.05.2018
21:52:34
может вспомню молодость кхе кхе

Philipp
13.05.2018
21:52:41
а можно линк?
Там только 2/6 статей

4/6 лежат черновиками

:D

Google
Dadaskis
13.05.2018
21:52:54
Да давай их, будет интересно.

Philipp
13.05.2018
21:53:02
В закрепе канала

Мерлин
13.05.2018
21:53:35
У меня идея для пещер с TNT, т.е делаю рандомные линии, кривые и т.д, и подрываю.
будет не очень красиво, я через это проходил даже броуновская частица с вырезанием по радиусу будет лучше

Dadaskis
13.05.2018
21:54:23
Мерлин
13.05.2018
21:58:42
лучше всего у меня получались пещеры прогонкой нескольких единиц-десятков итераций модифицированной игры Жизнь регулируя параметры пороговых значений зарождения/гибели клетки можно управлять ветвистостью и толщиной проходов

Philipp
13.05.2018
21:58:59
Жизнью мне не нравится генерить

Мерлин
13.05.2018
21:59:01
единственное что эта штука работает только в заранее заданном объёме

Dadaskis
13.05.2018
21:59:23
В закрепе канала
Какое приблизительное название статейки про генерацию лабиринтов?

Philipp
13.05.2018
21:59:26
@Dadaskis а ты в каком классе, коли не секрет?

Philipp
13.05.2018
21:59:42
8
Ладно, пожалуй, ты меня переплюнул :D

Я в 8 конечно писал на ++, но не тридэ, потому что не любил тридэ

Мерлин
13.05.2018
22:00:10
Жизнью мне не нравится генерить
ну там довольно специфично опрять же, нужно контролировать достижимость

Dadaskis
13.05.2018
22:03:40
Я пытался в 6-ом чёт творить на Java, ел песок крч. 7-ой познакомился с паскалём и олимпиадным программированием, это дало знание о алгоритмах и как-то думать начал как программить, но к концу 7-ого понял что действовать надо и херня весь этот паскаль. Начал учить Java, летом смог калькулятор кривой сделать. Я и ранее слышал о плюсах, не придавал никакого значения думал мол "С-подобный язык, и чем он отличается?..", далее увидел видео где чел делал майн за 7 дней на плюсах и ОГЛе, это дало как-то мотивацию. А потом узнал что олимпиады и на плюсах можно писать, и в целом решил изучить плюсы (ибо терпеть грёбанный паскаль надоело и хотел нового), терь на них полгода сижу.

Philipp
13.05.2018
22:04:35
Я где-то с ~12 начал программировать, может раньше. Почти сразу, после череды языков, перешел на C, а потом на C++

А потом психанул и ушел в Луа

Но из-за своей молодости, была явная нехватка воли и концентрации, да и внимание рассеивал на всё. В целом, логично и предсказуемо, но в позволило настроиться на нужное мышление и понять, как и что работает в фундаменте

Мерлин
13.05.2018
22:05:41
я начинал с AVR ASM потом сишечка потом луа и питон, для лабы особенно сейчас пишу прод на Go. переползаю потихоньку на rust, смотрю в стороону котлин

Страница 294 из 307