[ d ] [ b / cu / dev ] [ r ] [ a / ts ] [ ci ] [ gnx / int ] [ misc ] [ dev / stat ]
[Burichan] [Futaba] [Gurochan] [Tomorrow] [Архив-Каталог] [Главная]

Файл: 7118cd632eddd22b7a4b6559bff5e2fa.jpg -(251 KB, 810x810, 7118cd632eddd22b7a4b6559bff5e2fa.jpg)
251 No.9999   [Ответ]
http://sourceforge.net/projects/rr-rr/
Предыдущий тред: >>4274
Пропущено 149 сообщений и 77 изображений. Для просмотра нажмите "Ответ".
>> No.26016  
Файл: eab5aeaf7edde6e28fc2a660c3d0cb3a.png -(3256 KB, 1200x1800, eab5aeaf7edde6e28fc2a660c3d0cb3a.png)
3256
>>26014 >>26015
Сказал же буквально на днях, всё будет, хорош шуметь.
>Третий тролль сказал: «Прощайте! Ненавижу болтунов».

За прошлый год я, хотя ничего не делал, стал парадоксальным образом в промышленных масштабах натыкаться на баги Free Pascal, отчего потерял терпение и повадился громко плакать о них на багтрекере в противоположность тому, как ранее натыкался на них раз в год и обходил переформулированием кода. Последние две недели плотно занимался https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/179, а вообще из всего, в чём засветился, мне больше всего нравится https://gitlab.com/freepascal.org/fpc/source/-/issues/39360 («копание в ассемблерном коде», да). Не подумайте, мне были жесть как нужны, соответственно, карманная база Юникода и ускорение генерации шума Перлина до уровня, когда текстуру с ним можно генерировать на месте, а не таскать с собой, здесь нет никаких проблем с приоритетами. Ну или, может, и есть самая малость, но кто сказал, что я прямо сейчас не возьму и не пойду дорисовывать Сырну?!
>> No.26018  
>>26016
>Сказал же буквально на днях
Где??
Но вообще, контрибы в язык - это ты малаца, завидно даже.
>> No.27280  
Гиде билды?
>> No.27282  
Файл: e2d39d729650d44e2f68be3d6fafde8b.jpg -(190 KB, 1684x2048, e2d39d729650d44e2f68be3d6fafde8b.jpg)
190
Хорош бампать, я сам бампну, когда придёт время.

Недавно гулял с сестрой в лесу. Она при всём уважении к моим хикки-привилегиям выразила заинтересованность в доступном объяснении, чем я занимаюсь целыми днями. Я сказал, что если честно, то делаю скорее не непосредственно свои проекты, а разные штуки для Паскаля (до этого сам похвастался, как сделал по просьбе человека с жёлтой аватаркой https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/446 за 1 день и €250; у человека свои причины улучшать совместимость с Delphi: https://www.mail-archive.com/fpc-devel@lists.freepascal.org/msg41878.html, но конкретно эти классы — очевидный бред и полная чушь и совершенная мерзость, решающая несуществующую проблему и не имеющая отношения к маршалингу, и мне стыдно за это; ковыряние с ассемблерным кодом в миллион раз лучше, одно моё творчество над стандартной функцией CompareByte ускоряет абьюзящие её программы на 10~20% в целом). Она спросила, зачем мне Паскаль, я сказал, что для той игры, которую показывал 10 лет назад. Она сделала сочувственное лицо и спросила, неужели я её до сих пор не доделал. Кажется, мой ответ заключался в том, что я ничего не делал всё это время, потому что мне было грустно, что у меня нет друзей. Этот ответ вроде как верен, и если не уточнять, что причина что-то делать у меня была точно такая же, даже удовлетворителен. *вздох*

Потом я рассказал, как один человек (вот он же это прочитает и поймёт, насколько скучно я живу...) принёс на свидание со мной планшет и заставил зарисовать некоторые идеи под дулом пистолета, и она сказала, что со мной только так и надо. *вздох*
>> No.27283  
>>27282
>Хорош бампать
Раз в полтора года слишком часто, нужно было хотя бы до круглой даты дотянуть? xP

Гиде можно добавиться к тебе во френды? Спрашиваю исключительно из личного интереса, может хочу поиграть в это поделие, а еще втереться к тебе в доверие и украсть всю интеллектуальную собственность, ха-ха-ха. В любом случае, добавление меня ни к чему не обязывает, мне комфортно сидеть и ничего не писать и ничего не получать. Но может мы что-то напишем, возможно даже по этой игре. Да!
>> No.27824  
Файл: 1710219386854.jpg -(44 KB, 1024x576, 1710219386854.jpg)
44
>>27282
О как, как увидел ник твой в fpc gitlab, так сразу подумал, о чем-то связанным с аиб, а сегодня и на этот тред наткнулся.
Спасибо за то, что делаешь в fpc dev.
>> No.27964  
Файл: 88124045_p0.jpg -(1740 KB, 1332x1800, 88124045_p0.jpg)
1740
>>27824
Я переделал менеджер памяти до предположительно идеального состояния, ТЕПЕРЬ-ТО ЗАЖИВЁМ:

https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/694 — это во многом просто переписывает старый, чтобы я мог вносить дальнейшие изменения так, как будто он мой,

https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/994 — это добавляет пробрасывание достаточно больших запросов напрямую функциям ОС, мимо всей остальной механики менеджера (ну почти; заголовок всё-таки нужен), как это обычно и делают, чтобы, если ты выделил 10 Мб, выделил ещё 1 Кб, которые разместились в том же блоке, и освободил изначальные 10 Мб, этот гигантский блок не оставался висеть из-за этого килобайта. Феномен висения 1 Кб в N-мегабайтном блоке, конечно, никуда не девается и вообще фундаментально неустраним в системе без перемещающего GC, но это хотя бы ограничивает N сверху,

https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/1005 — основное усовершенствование и одна из лучших вещей, которые я сделал в жизни :D, это добавляет красно-чёрное дерево фрагментов свободного пространства (rbtree_best_fit из https://www.boost.org/doc/libs/latest/doc/html/interprocess/memory_algorithms.html), без этого фрагментированные случаи рисковали напороться на аналог того, на что жёлтый человек напоролся в самом FPC в https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/994#note_2476334544, хотя у переписывания из !694 был малюсенький побочный эффект, компенсирующий часть таких случаев — я даже сначала наивно думал, что все. Промышленные менеджеры памяти «обычно» вроде как не используют деревья, и я даже до сих пор не разобрался, как они вообще работают (битовые поля там какие-то, хз...), но по виду они сосут у моего (либо это неправда, либо они зато, возможно, дают меньшую фрагментацию: такую «очевидную» последовательность из занятых и свободных блоков, что в Boost.Interprocess / FPC, по самой её природе при желании можно фрагментировать в хлам, просто с красно-чёрным деревом это перестаёт быть большой проблемой), поэтому и не так интересно разбираться, как конкретно с руками, без... они это делают.
Сообщение слишком длинное. Полный текст.
>> No.27974  
Файл: 170612052134.png -(153 KB, 400x480, 170612052134.png)
153
>>27964
> старый менеджер памяти выделял арены для маленьких размеров (≤540 байт) напрямую у ОС
Жесть какая.

Я не вдавался в подробности, у FPC прям свой, с нуля, менеджер памяти, или форк одной из версий FastMM?
>> No.27977  
Файл: 104037347_p0.png -(4403 KB, 1668x2343, 104037347_p0.png)
4403
>>27974
Был свой и теперь свой, я даже идеи не крал, а переизобретал как естественные решения найденных проблем, кроме того, что вот сейчас ещё заставил себя разобраться, что же всё-таки FastMM делает со средними блоками и зачем ему битовые поля, понял, что так и правда лучше по совокупности (я бы сказал, плюс-минус то же самое, но тай-брейк для меня — −1,3 Кб кода), и украл: https://gitlab.com/freepascal.org/fpc/source/-/merge_requests/1029.

Современные Менеджеры Памяти™ работают примерно одинаково в своей исходной сути, то есть в самом по себе выделении памяти. Делим блоки на МАЛЕНЬКИЕ, СРЕДНИЕ, и БОЛЬШИЕ.

МАЛЕНЬКИЕ округляются вверх до определённых размеров (у меня это 16 взятых с потолка значений: 16, 32, 48, ..., 480, 544) и выделяются в аренах, рассчитанных на N блоков такого же размера. 800-байтная арена для 100-байтных блоков может выглядеть как
[#0:100][#1:100][#2:100 своб][#3:100][#4:100][#5:100 своб][#6:100][#7:100]

freelist: #2, #5
Такой подход позволяет выделять и освобождать такие блоки, в среднем, мгновенно: просто взять из freelist или вернуть во freelist. Что полезно, т. к. они встречаются гораздо чаще бо́льших: в таком варианте ≤540 байт — в ≈100 раз, а FastMM считает «маленькими» ≤≈2'600 байт, так что там, наверное, ещё на порядок-два чаще.
Сообщение слишком длинное. Полный текст.
>> No.27978  
Файл: 1392138716821.png -(384 KB, 600x800, 1392138716821.png)
384
>>27977
Очень интересно, спасибо за подробное объяснение :3


Файл: 20230805_210628.jpg -(3430 KB, 4608x3456, 20230805_210628.jpg)
3430 No.27180   [Ответ]
Кому советов от дедов? Говорите номер совета, я пошлю. За один совет принимаю одну няшную пикчу. Советы отличные!

подобрал книжку в парке в шейринге
Пропущено 41 сообщений и 27 изображений. Для просмотра нажмите "Ответ".
>> No.27255  
Файл: 0x0e.jpg -(437 KB, 796x2628, 0x0e.jpg)
437
>>27250
>>27252
Высылаю
>> No.27256  
Файл: 0x0f.jpg -(185 KB, 704x932, 0x0f.jpg)
185
>>27250
>>27252
>> No.27260  
Прочитал https://rakhim.org/summary-of-concurrency-is-not-parallellism-a-talk-by-rob-pike/ . КарGo-культ какой-то. Не вижу преимуществ между 100500 юзерспейсных псевдо-тредов с чем-то вроде встроенного интерпретатора

while(true){
switch(taskChunkId){
case a:
...
break;
case b:
...
break;
}
}

перед подходом, когда на задачу выделяется по треду, делающему её от и до, ну а когда переключение контекста происходит - оно всё равно происходит в основном, когда I/O идёт. В результате нет лишнего оверхеда на всякую фигню, нет лишнего оверхеда на message passing, ну а оверхэд на хранение состояния треда можно минимизировать, избавляясь от ненужных данных тогда, когда они перестали быть нужными.
>> No.27536  
Файл: image00313.jpg -(623 KB, 848x1200, image00313.jpg)
623
А можно мне совет 0x65, пожалуйста!

>>27260
????
>> No.27789  
Файл: hr_0004ec.jpg -(474 KB, 1280x1917, hr_0004ec.jpg)
474
Запрашиваю 0x0B
>> No.27790  
Файл: 0x65.jpg -(164 KB, 952x1007, 0x65.jpg)
164
>>27536
Я думал тред уже все, прости что поздно.
В примере у авторов крыша потекла кмк.
>> No.27791  
Файл: 0x0B.jpg -(214 KB, 1090x392, 0x0B.jpg)
214
>>27789
>> No.27792  
>>27791
Совет дельный. Правда если понимать его только в разрезе производительности, эффект может оказаться краткосрочным.
>> No.27818  
Файл: image00073.jpg -(680 KB, 848x1200, image00073.jpg)
680
>>27790
Думаю, что особенной проблемы в этом нет. Как никак, а Автобус не из быстрых борд (хотя казалось бы имеет колёса и двигатель).

>спойлер
Ну, совет действительно странный. И скорей достоин рубрики "вредные советы".

Запрашиваю 0х3D
>> No.27955  
Можешь страницу 34?


Файл: fff.txt -(3 KB, x, fff.txt)
3 No.27933   [Ответ]
gdagasdg
>> No.27934  
Файл: гп.txt -(3 KB, x, гп.txt)
3
キタ━━━(゚∀゚)━━━!!
>> No.27935  
Файл: гп.txt -(1 KB, x, гп.txt)
1
キタ━━━(゚∀゚)━━━!!
>> No.27936  
Файл: гп.txt -(2 KB, x, гп.txt)
2
キタ━━━(゚∀゚)━━━!!
>> No.27938  
Файл: 1600759195050.jpg -(174 KB, 1280x960, 1600759195050.jpg)
174
>>27933
pastebin.com и аналоги пожалуйста.


Файл: Chara1.png -(12 KB, 288x256, Chara1.png)
12 No.27844   [Ответ]
и какие советы можете дать по ведению, хостинге и прочьей лабуде.
>> No.27845  
Ни на каком. Их и так больше, чем людей на них.
>> No.27846  
>>27844
>язык
Чем шизодней выбор - тем круче. Например, можно на брейнфаке.

>и какие советы можете дать по ведению
Рекомендации на 2025 от ведущих специалистов в этой сфере:
  • отпишись на Колчане;
  • семёнство в треде обсуждения других имиджборд на Доброчане;
  • зайди в гости к Обезьяне;
  • создай статью восхваляющую борду на Колчевики и Неолурке;
  • пили сомнительные фишки в движок;
  • напиши манифест и носись с ним;
  • поссорься с админами какой нибудь нормальной борды и обязательно кричи о том какие они гады на каждом углу.
> хостинге
Подкроватный хостинг ОФК.


Файл: 5.jpg -(659 KB, 3310x2216, 5.jpg)
659 No.27839   [Ответ]
Кто готов взяться
За 2к ₽
>> No.27840  
>>27839
Учитывая средние зарплаты программистов и сегодняшние цены в магазинах, за 2к деревянных можно будет только вкратце обсудить, что этот плагин должен делать.
>> No.27861  
>>27840
То-то нынче джуны грызут друг-друга за копейки.


Файл: 59067429-7acfef00-8866-11e9-9e30-15755f5547a2.png -(216 KB, 858x519, 59067429-7acfef00-8866-11e9-9e30-15755f5547a2.png)
216 No.27741   [Ответ]
Прив, разрабатываю игру типа Cataclysm, хочу ускорить отрисовку игры в консоли Windows. я использую флаг ENABLE_VIRTUAL_TERMINAL_PROCESSING, чтобы поддерживать escape-последовательности как в эмуляторах терминалов linux. Дело в том, что обычная отрисовка довольно медленная. Даже если я устанавливаю цвет текста через WinAPI, то скорость отрисовки не сильно отличается от скорости вывода символов вместе с escape-последовательностями. у меня появилась идея просто перед отрисовкой склеить все символы вместе и в нужных местах поставить esc-последовательности, чтобы вывести всю строку разом, но это вообще никак не улучшило положение.
Заранее говорю, что я знаю, что можно не отрисовывать всё заново, а просто рисовать в местах, где что-то меняется. проблема в том, что при движении, сдвигается вся карта, так что проще уж сразу все отрисовать, чем тратить время на отличающихся мест.
Надеюсь на ваши советы, хоть и понимаю, что это пиздец какая немного специфичная проблема
>> No.27747  
Самый вменяемый способ работать с консолью в виндузе - использовать собтсвенную отрисовку (а там хоть через вулкан).
CMD.EXE это не то чем оно тебе кажется, не трогай его. Даже все индусы МС не смогли сделать из этого костыльного монстра нечто нормальное, лучше не пытайся и пиши сразу свой вывод, будет лучше быстрее надежнее и понятнее чем cmd.exe
>> No.27748  
Рекомендую попробовать ConEmu для означенной цѣли.

https://conemu.github.io/
>> No.27751  
>>27748
okay mate :cool:
>> No.27752  
>>27747
а на линуксе можно и терминал юзать, там он настолько шустрый, что даже есть стирать и перерисовывать всё 60 раз в секунду, то даже мерцаний не будет видно
>> No.27807  
Файл: 80e783b98258868b37f185ff4b97caaa.jpg -(314 KB, 1075x1518, 80e783b98258868b37f185ff4b97caaa.jpg)
314
>>27741
ENABLE_VIRTUAL_TERMINAL_PROCESSING действительно медленная, но не до невозможности, я делал то же самое и у меня в итоге вышел почти приемлемый для полноэкранной анимации FPS. В моём случае узким местом было формирование строки, то есть, буквально, формирование и копирование RGB-циферок стандартными функциями. Проверь, не так ли это в твоём случае, то есть сколько раз в секунду ты можешь хотя бы сформировать строку без её вывода. Если проблема действительно в этом, то предвыдели буфер по максимуму, то есть столько, сколько понадобится в худшем случае — для смены обоих цветов в каждой ячейке экрана, и заполняй его руками без аллокаций, то есть заноси буквы через buf[pos++] = '[' и цифры компонентов RGB-цветов через buf[pos++] = c / 10 % 10.

И да, содержимое всего экрана ты должен вывести в один вызов. Это не только быстрее, но и выполняется без мерцания, разрывов, и подобных артефактов, в отличие от вывода построчно или попиксельно.

И да, вывод всего прямоугольника через WriteConsoleOutput намного быстрее, если тебя устраивают 16 цветов. А то судя по скриншоту, устраивают, а я растеоретизировался. :D


Файл: 17017860917060.jpg -(179 KB, 1028x1280, 17017860917060.jpg)
179 No.27308   [Ответ]
Набираем людей для коллективной подготовки к поступлению в НМУ - лучший математический ВУЗ РФ. Начинаем 01.01.2024, заканчиваем 01.07.2024. Никаких предварительных знаний иметь не нужно, от вас требуется только упорство и дисциплинированность. Все бесплатно, просто чат единомышленников.

@sswerbitskibrigade
>> No.27311  
>>27308
Общение все идет через телеграм? Иных каналов связи нет?


Файл: library-catalog_618FIJZEYH.jpg -(117 KB, 960x586, library-catalog_618FIJZEYH.jpg)
117 No.27174   [Ответ]
Всем доброго фидбэка.
Задался вопросом, что такое кибернетика и чем она отличается от информатики.
Знаю, что кибернетика тесно связана с петлями обратной связи. Поговаривают также, что её основал Норберт Винер, однако сам термин появился гораздо раньше. Слышал про ученых, которых причисляли к кибернетикам в СССР: Глушков, Михалевич. Также, в этих ваших википедиях, туда относят статистиков и разработчиков разных алгоритмов из XVIII-XIX веков (например, Корсакова Семёна Николаевича).

Я учился в ВУЗе на специальности Прикладная информатика (в экономике) и там довольно основательно учили информатике, статистике, эконометрике и другим интересным вещам. Изучая кибернетику, подчерпну ли я что-то для себя новое? Существует ли вообще такая отдельная наука и, если да, какие учебники и в какой последовательности по ней лучше читать?
>> No.27175  
Начал читать Введение в кибернетику Глушкова В.М.
Из нового для себя материала могу отметить почти всю четвертую главу «Самоорганизующиеся системы», особенно её начало. В целом книга выглядит как обзор нескольких тем, включая логику, программирование, устройство вычислительных машин и абстрактные вычислительные машины.
>> No.27176  
Файл: loffit-norbert-wiener-matematico-fundador-de-la-ci.jpg -(182 KB, 900x650, loffit-norbert-wiener-matematico-fundador-de-la-ci.jpg)
182
Насколько я понимаю, чтобы понять суть дисциплины, следует начинать с книги, в которой она впервые упоминается. Я имею ввиду книгу Норберта Винера "Кибернетика: или управление и связь в животном и машине".
>> No.27177  
В Википедии упоминается статья Максвелла "О регуляторах". Издавалась в СССР:
Максвелл, Д.К. Теория автоматического регулирования (линеаризованные задачи) / Д.К. Максвелл, И.А. Вышнеградский, А. Стодола - Москва : Изд-во АН СССР, 1949. - 430 с.
Книга не абстрактна, а довольно конкретна в описании управления скоростью двигателей.

Вышеупомянутая же книга Н. Винера также издавалась в Советском Союзе:
Н. Винер. Кибернетика - Москва : Госэнергоиздат, 1958. - 214 с.
Также, второе издание есть в Интернет-архиве: https://archive.org/details/B-001-003-828/


Файл: teach.png -(99 KB, 1278x896, teach.png)
99 No.27173   [Ответ]
https://github.com/movepointsolutions/teach/releases/tag/v1.1


Файл: загруженное (1).jpg -(70 KB, 800x450, загруженное (1).jpg)
70 No.27166   [Ответ]
Играл недавно в игрулю Outer Wilds. Доставило дичайше. Хочу написать в таком стиле сюжет для нри. В центре сюжета будет корабль чужих и петля времени. Персонаж которого я веду солдат армии. Поливой хирург если быть точнее. Так вот вопрос, как разрабатывать такие нелинейные квесты? Что бы он по разным местам шарился в репитативе. Искал инфу и способ выйти из петли? А то я раньше только линейные сюжеты делал и при том ни один из них не был детективным и с расследованиями.
>> No.27167  
Возьми произведения с похожим нелинейным сюжетом и попробуй внимательно рассматривать их с точки зрения использованных авторами ходов. Можешь даже выписывать себе куда-нибудь понравившиеся.
>> No.27168  
Файл: CpKr-rGUMAI2L0m.jpg -(1187 KB, 4096x2304, CpKr-rGUMAI2L0m.jpg)
1187
>>27166
>Так вот вопрос, как разрабатывать такие нелинейные квесты? Что бы он по разным местам шарился в репитативе.
Не так давно сделал сюжет для небольшого нелинейного квеста на 5 локаций, по которым шароебишься в репетативе, как раз чтобы попробовать силы в таких квестах.

ТЛДР, чтобы описать сюжет для такого квеста, после обычной преамбулы надо описывать:
  • Локации
  • Переходы между локациями
  • Предметы на локации
  • Действия на локации
Действия у тебя будут:
  • Те что дают ЛОР или подсказку
  • Те что дают предмет
  • Те которые требуют предмет
К этим действиям всегда есть какие-нибудь условия, например время суток на локации, наличие другого предмета, и т.д. Их тоже надо описывать.

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

Сообщение слишком длинное. Полный текст.
>> No.27171  
>>27168
Спасибо. Есть от чего оттолкнуться
>> No.27172  
>>27171
В контексте моего пикрелейтеда "оттолкнуться" звучит мрачновато (⌒_⌒;)

Но ты спрашивай если что.


[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23]

[ d ] [ b / cu / dev ] [ r ] [ a / ts ] [ ci ] [ gnx / int ] [ misc ] [ dev / stat ]
[Burichan] [Futaba] [Gurochan] [Tomorrow] [Архив-Каталог] [Главная]