Snusmumriken
Библиотека типа protobuf — не? Она автоматом приводит структуры к нужным типам.
Snusmumriken
Так что ты везде можешь лепить int64, тот же протобуф переведёт их куда надо по схеме.
Anonymous
Библиотека типа protobuf — не? Она автоматом приводит структуры к нужным типам.
Мир это куча оборудования. Даже которое имеет память условно 1-2 мб. Работал когда то в Embeded? А писал свою собственную реализацию работы с памятью С/С++ очень полезно в геймдев. Без кастомных аллокаторов боль
Snusmumriken
Во-о-о-от, уже появляются частности.
Anonymous
Вот скажи как мне решать эти задачи без типов?
Snusmumriken
Ембед — это немножко другой мир если что, отличный от всего того о чём мы говорим.
Anonymous
Думаешь если бы можно было написать что то типо Skia на JS /Java/ Go не написали бы?
Anonymous
Просто без управления памятью где ты экономишь каждый возможный байт. Становится грустно.
Snusmumriken
Думаешь если бы можно было написать что то типо Skia на JS /Java/ Go не написали бы?
Её можно написать на жаве или го без особых проблем и потерь.
Anonymous
Могу привести пример. Есть такой фреймворк Ebiten на Go вот он в 32 битно версии жрет 200 мб рам. А в 64 битной 400 угадайте почему?
Anonymous
Ага конечно нельзя
Snusmumriken
Когда нам стало не насрать на оперативку в 2022 году?
Anonymous
Ты предлагаешь делать простые игр на 8-16-32 гб ?
Anonymous
А сложные в 64 гб?
Snusmumriken
Они такие уже давно
Snusmumriken
Лет пять как
Snusmumriken
На тему игр. Что жрёт память в играх, скажи пожалуйста. Код? Нет.
Anonymous
Потому что все на С++
Anonymous
Разве нет?
Snusmumriken
Нет, не поэтому. Что жрёт память в играх?
Anonymous
Зависит от типа игры. От фрагментации до GC
Snusmumriken
Ре! *та-да-та-та-та* Су! *та-да-та-та-та* Рсы! *та-да-та-та-та* Ре Су Рсы!
Anonymous
А они где хранятся пардон?
Snusmumriken
В файликах. Ну, знаешь? png, mql. mp3, ogg
Anonymous
А они где хранятся?
Snusmumriken
Где только ни хранятся.
Anonymous
В памяти
Anonymous
А управляет памятью что?
Snusmumriken
Твоя мама
Snusmumriken
Прости, не удержался
Anonymous
:D правильно RAM / VRAM
Snusmumriken
Никаких оскорблений, прошу заметить
Anonymous
а кто управляет этой памятью?
Snusmumriken
:D правильно RAM / VRAM
Чел. От более или менее качественного аллокатора для ресурсов игры, потребление особо не уменьшится. +- 5% ни на что не повлияет.
Anonymous
правда?
Anonymous
ой почему во всех играх EA кастомные аллокаторы
Anonymous
А в ммо
Anonymous
а в юнити
Anonymous
хм...
Snusmumriken
По другим причинам.
Anonymous
Потому что фрагментация памяти жестокая штука с дефотными аллокаторами
Snusmumriken
В простой игре тебе тем более не нужен кастомный аллокатор. Разом грузишь всё и вперёд.
Anonymous
Я то думаю почему ренпи так лагает
Snusmumriken
Не поэтому.
Anonymous
потому что разом все грузит..
Snusmumriken
Чел. В простой игре ты ничего не выгружаешь и сразу используешь. Тебе не нужны аллокаторы.
Anonymous
2гб музыки удачи
Anonymous
Обычныя японская новелла
Snusmumriken
Лол, музыка это отдельная фигня, и для неё кстати тоже не нужен кастомный аллокатор. Делается точно так же как с буферизированной графикой. В один буфер подгружается кусочек, пока другой буфер играет (и таких буферов штук пять). Никаких аллокаций.
Anonymous
да-да...у тебя все так просто и хорошо. Но игры как лагали так и лагают
Anonymous
60FPS на консолях то ли повезло, то ли ждем.
Anonymous
и.т.д. и.т.п.
Snusmumriken
Всякие ААА и прочие ммо отличаются одной такой штукой, под названием "динамическая подгрузка ресурсов", потому что У НИХ КАК РАЗ столько ресов, что ни в одну оперативку не влезут. И вот они как раз дёргают кастомную аллокацию.
Anonymous
Конечно, балбесы..вот бы сейчас от типов отказаться и написать все на Lua и не лагало бы.
Anonymous
Luajit же быстрй.
Anonymous
Вопрос в том, где найти не балбесов....
Oleg
Luajit же быстрй.
Быстрым должен быть не ЯП, быстрым должен быть алгоритм. :)
Anonymous
Anonymous
Все камбекаю в питон
Snusmumriken
Конечно, балбесы..вот бы сейчас от типов отказаться и написать все на Lua и не лагало бы.
Вопрос в том, что ты ведёшь себя как балбес когда льёшь подобное в чатис. Что делают нормальные люди, которые пишут на луа ААА: 1. Выгружают куски, которым место в сишке — в сишку. Луа плохо парсит из-за встроенного стрингбуфера, например. 2. Используют сишку во всех других местах где место сишке. 3. Используют луа где место луа. И ты опять таки привязываешься к языку, как будто язык это святой грааль и исключает всё остальное.
Oleg
Я когда писал первую игру на паскале споткнулся об ограничение памяти в 640к. Потому что был балбес. :) И она дико торозила кстати.
Snusmumriken
так ты утверждаешь что типы это лишнее. Вопрос как СИ без типов это будет нормально?
Типы — это охрененно лишнее. Пусть сишка трахается с типами. Да, я напишу на сишке парсер моделек и выгружу его в луа через сишную же сдату, а дальнейшую логику с моделькой по её расстановке и анимации сделаю на луях. Никаких проблем не вижу.
Anonymous
Понял принял. И с памятью тоже она?
Hello, World! 🎄
так ты утверждаешь что типы это лишнее. Вопрос как СИ без типов это будет нормально?
Си без типов это вот возьмите Python он же без строгой типизации или другой скриптовой яп
Snusmumriken
Не мешай троллякать, я жду пока дойдёт, если дойдёт.
Anonymous
какая разница что?
Snusmumriken
какая разница что?
Смотри, представим игрушку. Тебе надо увеличить игровую модельку вдвое. Тебе нужны для этого типы?
Anonymous
я бы посмотрел пример где мне типы помешают хм..
Hello, World! 🎄
Например нафига скриптовых языках типы нужны ?- их там нет
Snusmumriken
Например нафига скриптовых языках типы нужны ?- их там нет
Они там есть местами, и сама типизация присутствует почти везде.
Snusmumriken
смотря какая моделька.
Нет, не важно какая моделька.
Anonymous
а js это С++ а там типы есь.