Chat:Ru/2020-08-30
MadKnight: Pyhesty у шарпов под капотом куча сгенерированных ифов
MadKnight: например, на arr[i] как минимум 2 ифа
MadKnight: генерится
vrabosh: надо себя приучить хотябы по 1 пазлу каждый день решать
_Lion_: доброе утро:wave:
MadKnight: hihi
MadKnight: vrabosh зачем пазлы? лучше го логику развивать
vrabosh: как?
MadKnight: vrabosh в PvP конечно
vrabosh: там долго. надож всю игру пройти.
MadKnight: да ты её в 3 строчки пройдёшь
MadKnight: го
vrabosh: сначало прокачать простенькое, потом когда уже мозг прокачался можно пвп рвать всех
MadKnight: 3 строчки - это сложно?)
vrabosh: я имею введу надо весь кодингейм пройти
MadKnight: неееее
vrabosh: как нет.. яж геймер. я должен пройти
MadKnight: так пройди гоночки
vrabosh: что за пвп? чтото особенное?
MadKnight: https://www.codingame.com/ide/puzzle/coders-strike-back
MadKnight: ага
vrabosh: я для этого не знаю как расчитывать куда ставить точку куда я хочу
MadKnight: а куда ты хочешь?
vrabosh: еще неизучил работу с точками на плоскости
MadKnight: ща тебе туториал скину
vrabosh: хочу чуть левее правее, чтоб занос был правельей
MadKnight: http://blog.wolfire.com/2009/07/linear-algebra-for-game-developers-part-1/
MadKnight: так вычти вектор скорости
MadKnight: из чека
MadKnight: x - vx
vrabosh: мне пока это не понятно
MadKnight: вот тебе и левее правее
MadKnight: ну смотри
MadKnight: тебя заносит вправо - движешься влево
vrabosh: я только начинаю учить 7 класс)
MadKnight: да тут изи
MadKnight: там ничего такого нету
MadKnight: изучай, не бойся
vrabosh: а как узнать координату левее?
MadKnight: у тебя есть вектор скорости
MadKnight: он указывает вправо
MadKnight: просто вычти его
MadKnight: и получишь влево
MadKnight: x - vx
MadKnight: y - vy
vrabosh: х - это координата куда я еду?
vrabosh: а v это что?
MadKnight: чекпоинта
MadKnight: v - velocity
MadKnight: скорость
vrabosh: что реально так просто?
MadKnight: da
MadKnight: целишься ровно в обратную сторону от стороны заноса
vrabosh: а как определить занос вверх или вниз? право это или лево?
MadKnight: можешь vx умножить на 3
MadKnight: да тебе вектор нужен
MadKnight: координаты
vrabosh: мне надо полностью эту тему понимать, чтоб я мог реально программить а не гадать.. и каждый раз спрашивать
MadKnight: ну смотри
MadKnight: у тебя есть вектор скорости
vrabosh: ну то что ты написал.. не срабоатет..
vrabosh: а если я сверху вниз еду направо.
MadKnight: каждый ход игра делает pod.x + pod.vx
vrabosh: а если сверху вниз налево
MadKnight: в любом случае вверх зацелится
MadKnight: чтобы сильнее поворачивать
vrabosh: мне самому надо узнать как полностью работать с координатами точками и векторами.. и тогда смогу чтото сделать
MadKnight: яж тебе ссыль дал
MadKnight: читай читай
MadKnight: не отвлекайся
vrabosh: отрывками читать не прикольно
MadKnight: не отрывайся
vrabosh: буду полный курс изучать
vrabosh: как изучу, тогда и порву пвп кого нить)
MadKnight: в полном курсе - куча куча лишнего
MadKnight: что не нужно для игр
MadKnight: https://www.youtube.com/watch?v=ZoMmiQes_lE
MadKnight: видосик тогда посмотри
vrabosh: а ты чисто математически делаешь или ии прирутил?
MadKnight: какой ии?
MadKnight: что значит ии?
vrabosh: обучалка
vrabosh: через тензер хз
vrabosh: у тебя машины агрятся?
vrabosh: не дают дургим проход?
MadKnight: da
MadKnight: но это тоже математически можно
vrabosh: как ты это делаешь?
MadKnight: ифаешь расстояние, едешь к чеку, поворачиваешься, ифаешь расстояние снова, и в какой-то момент начинаешь ускоряться
vrabosh: ну вот ты понимаешь скорость противника, куда он направляется. через сколько где будет.. умеешь расчитывать как свою машину туда направить.. и при этом чтоб угол был такой чтоб он отскачил в невыгодное направление
MadKnight: не, я просто расстояния сравниваю
MadKnight: что я ближе к чеку
MadKnight: +число ходов чтобы повернуться
MadKnight: машинка 18 градусов в ход поворачивается
vrabosh: а мне хочется научиться както глобально мыслить.. все аспекты задействовать..
vrabosh: без ифов..
vrabosh: желательно в этом случае.. а чисто на формуле
vrabosh: и я хз как научиться мыслить как математик виртуозно.. это либо сидеть 6 класс решать неделю задачки, потом 7 класс решать.. итд.. либо хз
vrabosh: это нудно так решать эти задачки.
vrabosh: а если их не нарешать, начинаю путаться в прастранстве..
vrabosh: с минусами плюсами.
vrabosh: либо общую тему понять.. и все остально отдать нейронке. пускай она путается с минусами плюсами верхом низом)
vrabosh: хорошо себя натренировать создавать нейронки.. в это направлении копать.
vrabosh: вообщем сложный босс)
vrabosh: и уровень и скиллы под него еще надо качать) и экипировкой хорошей запостись.
vrabosh: я просто любил в игры игать задротные, так лучше здесь задротить, чем в ВоВ)
vrabosh: может заодно и в жизни пригодиться)
gsomix: vrabosh, https://vas3k.ru/inside/39/#scroll30
Кажется, это рабочая схема. Я сужу по своему опыту, но мои попытки изучить любую сложную тему с самых основ — всегда проваливались. :)
vrabosh: gsomix я основы стараюсь быстро пройти, не углубляюсь.. типа прощупываю територию, параллельно строю у себя по уже проверенной эффективной схеме.. а потом когда территория изучина можно строить стратегию.. ну и надо поределить где противник(цель)
vrabosh: типа как в старкрафте
vrabosh: MadKnight для начало хотелось бы научиться находить самый быстрый путь для машинки математически.. не интуитивно подбирать циферки
vrabosh: Допустим таса треугольник, вершина вверху, начинаю слева.
ConstantBolzmann: их вообще учить не надо
vrabosh: Я алгоритм делаю т.к. еслиб сам играл вручную.. Чуть перед правой точкой занос вниз, скорость чуть сбросить, чтоб угол пройти..
ConstantBolzmann: это инструмент надо просто понять как работает, на примере рея пока ты формулу не увидешь и код в котором его пускают ты не поймешь сути
vrabosh: Но правильно эфективно ли это на самом деле? как доказать? Это просто мой жизненый опыт и все.. без доказательвта.
ConstantBolzmann: тоесть нужен контекст задачи и чоткое толкование того условия которое ты не понимал
ConstantBolzmann: надо найти такой ресурс где человек будет говорить в слух что делает, и тут же обьяснять что он делает
ConstantBolzmann: преподователи в школе кстати так же делают
ConstantBolzmann: потомучто с наскокока не разобраться и пока ты будешь писать за преподователем чтото понимать начнешь
vrabosh: ConstantBolzmann твои советы не интересны, т.к. я не знаю правельные ли они, ты не можешь доказать это т.к. у тебя нет достижений.. Допустим мысли других участников мне ценны, т.к. я вижу их результаты, я знаю, что они точно шарят.. а по тебе я определить не могу..
vrabosh: поэтому ты зафлуживаешь канал, и мои вопросы не видят другие.. тем самым я не получу ответы.
ConstantBolzmann: а что ты вообще хочешь то?
ConstantBolzmann: пока я увидел твою стену текста не понял о чем речь
vrabosh: ConstantBolzmann чтобы ты не вязывался в мою дискусию с другими участниками
vrabosh: и чтобы ты не читал мой текст)
ConstantBolzmann: тоесть ты думаешь если человек пишет 2д игры не понимает сути координат?
ConstantBolzmann: напиши 2д игру начнешь разбираться координатами
vrabosh: ConstantBolzmann у меня уже сложилось мнение, что ты нуб. Я тоже нуб:) А нубам тут лучше спрашивать у толковых людей совета.. а не слушать от нубов)
vrabosh: а здесь достатчоно толковых.
ConstantBolzmann: нуб в чем простите?
vrabosh: ConstantBolzmann в 2д играх) покажи скрин 2д игры своей
ConstantBolzmann: я тебе кидал свои игры
ConstantBolzmann: они мимо твоих глаз прошли както
vrabosh: то нубские знания
vrabosh: раз ты шаришь в 2д "физики", то возьми золото хотябы в гоночках
vrabosh: Coders Strike Back - вот название игры
vrabosh: хотябы серебро.. что мне кажется тебе на это неделю надо будет
vrabosh: я могу ошибатся. но такое у меня впечатление о тебе сложилось.. и как я могу от тебя слышать советы когда такое впечатление?
ConstantBolzmann: я эти гоночки могу написать
gsomix: ConstantBolzmann, давай по чесноку, ты пока не пишешь игры, а только работаешь с чужими туториалами. :)
gsomix: Копируешь и немного модифицируешь.
ConstantBolzmann: обидно вам ребят я вижу
ConstantBolzmann: слова то вы используете знакомые
vrabosh: ConstantBolzmann ты канал засоряешь.. если хочешь писать советы, пиши в личку мне.. я прочту отвечу
ConstantBolzmann: вас то кодерами тоже можно не назвать
ConstantBolzmann: пока ты тут флудил я 2 игры состряпал
vrabosh: если ты шаришь, тебе взять серебро в гоночках будет полчаса делов
ConstantBolzmann: у тебя проблема на этом сайте
ConstantBolzmann: а у меня нет проблем я тут идеи беру
vrabosh: и советы раскидать успиваешь. зачем ты даешь советы?
ConstantBolzmann: потомучто написав бота в этой игре ты не будешь до конца понимать процесса
ConstantBolzmann: и завтра же все забудешь
vrabosh: вот зачем ты мне это сейчас написал? совет этот?
ConstantBolzmann: потомучто школьники учат так
gsomix: ConstantBolzmann, я не программист, но мне не стремно и не обидно. :)
vrabosh: ConstantBolzmann зачем ты меня хочешь научить?
ConstantBolzmann: мне тоже но игры которые я написал их написал я
gsomix: ConstantBolzmann, копировать туториалы тоже не стремно, это нормальный путь обучения. Просто не нужно выдавать это за свои игры.
gsomix: Давайте на этом закончим. :)
ConstantBolzmann: а ты судишь по последнему посту
ConstantBolzmann: доказывать тебе знание я не буду тем более я знаю как говорят людям что они не они в реале
ConstantBolzmann: вот ты щас так же делаешь
vrabosh: ConstantBolzmann кароче, не давай мне советы и прочее.. хорошо?
ConstantBolzmann: не пиши сюда в чат тогда бредни свои
vrabosh: нечего, я их всеравно игнорю
vrabosh: впустую пишешь
ConstantBolzmann: ты до конца хотябы 1 идею свою доведи
ConstantBolzmann: и не спрыгивай со своих проблем которые ты и сам себе напридумывал
vrabosh: у меня нет идей)
vrabosh: и проблем..
ConstantBolzmann: тогда линкуй бота
vrabosh: что значит линкуй?
vrabosh: зачем?
ConstantBolzmann: ты покажешь его для себя хотябы законечен он нет
vrabosh: vk.com/vchatcoin - лови
vrabosh: что ясно?
ConstantBolzmann: код показывай
vrabosh: это секрет.. с чего это код должен показывать?
vrabosh: я что опенсорсер?
vrabosh: ты у виндовса попроси чтоб код показали)
ConstantBolzmann: ну а ктото в 2020 полезет в вк бота твоего смотреть?
vrabosh: я могу игру свою скинуть, посмотришь js код
vrabosh: там 200к регистраций и каждый день более 1000 чел играет
ConstantBolzmann: если ты игру написал тогда какие вопросы могут быть о столкновениях и матрицах?
vrabosh: я браузерку написал. там нет математики вообще
ConstantBolzmann: это не важно где ты написал
ConstantBolzmann: суть везде одна
ConstantBolzmann: опять ты забыл то ты писал
vrabosh: в бойцовский клуб играл? вот подобную
vrabosh: где посути ты бьешь противника , он тебя.. и одиваешь шмотки качаешь
ConstantBolzmann: молодец не играл
vrabosh: там нет движения как такогового
vrabosh: это тоже самое что сайт просто написан..
vrabosh: с особыми правилами.. игры разные бывают
ConstantBolzmann: ну теперь твоя задача посмотреть как 2д в играх работает а потом столкнуться хотябы с гранью экрана и отлететь
ConstantBolzmann: вот раберись с этим хотябы
ConstantBolzmann: gsomix думаешь QT так сложен, что чужой код будет чужим, к сожалению в QT знаний не надо даже опенжеля там класс уже готов для всего зайди сам в хедер и проверь
ConstantBolzmann: https://doc.qt.io/qt-5/qglwidget.html
ConstantBolzmann: и без туториалов и обьяснений других носителей ты сам ничего не напишешь
gsomix: ConstantBolzmann, я не понял, что ты мне хочешь сказать.
ConstantBolzmann: не написавши ни одной игры ты взялся судить меня
ConstantBolzmann: вот иди и напиши хотябы
ConstantBolzmann: чтоб было честно чтоб ты в теме хотябы был
ConstantBolzmann: вот я змейку сам писал
ConstantBolzmann: какойто ноунейм в инете пишет что не я
ConstantBolzmann: напиши не змейку хотябы
ConstantBolzmann: в кути все готово, для справки тебе, там думать не надо, там класс уже есть а вот если ты захочешь большего или побольше чистого с++ придется углубится а в кути и не придется углублятся развернул класс и нарисовал игру
ConstantBolzmann: змейку я с сокобана писал по твоей логике я сокобан должен был написать и я рисовал пикселями
ConstantBolzmann: так что холодные истории что не я писал
ConstantBolzmann: плюс я написал таймер
amurushkin: ConstantBolzmann: игры в студию
ConstantBolzmann: вобщем я имею права говорить что змейку матрицу и буквопад я лоично прям сам написал
ConstantBolzmann: и если посидеть в моем контейнере я не присуждаю себе консольный шутер он вообщето для других целей у меня
ConstantBolzmann: там упрощеные алгоритмы с физикой и рендером
ConstantBolzmann: https://github.com/richkirl/snake
amurushkin: а посложнее что нибудь писал? я вот очень давно xonixа копию писал на делфях и opengl. но получилось то говно без графики )) я его никому не показываю
ConstantBolzmann: https://github.com/richkirl/testbuildopenglqt
ConstantBolzmann: я сейцчас курю мануалы
ConstantBolzmann: в глфв и пишу енжины
ConstantBolzmann: 2д есть уже вот 3д доделываю
ConstantBolzmann: но в глфв не все понятно
amurushkin: у меня еще платформер есть типа марио. 1 уровень. чувачок бежит и прыгает :) но игрой это называть еще рано все таки
amurushkin: но к слову сказать у меня и идей нет для игр
ConstantBolzmann: ну у меня в змейке гейм овер есть очки есть проверка с собой есть впринципе я могу ее игрой назвать
ConstantBolzmann: вот матрица да тут не хватило знаний
ConstantBolzmann: на кути твои идеи взлетят
ConstantBolzmann: там знать минимум надо
ConstantBolzmann: ну и таймер запилешь и все
amurushkin: так я и говорю идей нет :) если бы было четкое понимание что я хочу сделать то делал бы наверное
ConstantBolzmann: бродилку пили в 2д)
ConstantBolzmann: хотябы 5 уровней можно
ConstantBolzmann: щас я так понял на них тренд)
ConstantBolzmann: а в 3д можно и не придумывать лабиринт сварганил или генерецию
ConstantBolzmann: спавн зомбей
ConstantBolzmann: у меня в анриале нету идей
ConstantBolzmann: мысль по древу расплескивается и идея улетучивается там глаза разбегаются хочется сразу всего
gsomix: Все, я сваливаю с дискорд. :)
gsomix: Кажется, ConstantBolzmann будет вечно флудить в этом чате.
ConstantBolzmann: не я сваливаю мне пора как раз
ConstantBolzmann: а вот это да с туториала
ConstantBolzmann: http://chat.codingame.com/pastebin/b0424348-a03a-4142-9449-f4b5eb9a650b
ConstantBolzmann: ну и что что с туториала
ConstantBolzmann: туториал мировой
ConstantBolzmann: я его переделаю под себя
ConstantBolzmann: amurushkin самое простое намутить скринсейвер или продакшн ролики в 3д с еффектами
gsomix: ConstantBolzmann, подумай на досуге почему тебя здесь уже несколько раз банили. ;)
vrabosh: MadKnight как находить максимально эфективный проход для одной машинки?
ConstantBolzmann: да уж лучше пусть забанят еще раз я не буду уже ничего делать
ConstantBolzmann: напиши ему в личку хватит флудить врабошь
gsomix: ConstantBolzmann, один грамотно сформулированный вопрос — это не флуд. Обсуждение паззлов и мульти — не оффтопик.
gsomix: ConstantBolzmann, ты не способен уложить свою мысль меньше, чем в десять сообщений — это флуд. А еще мы постоянно читаем, как ты рассуждаешь про жль и свои игры — это оффтоп.
gsomix: Я тебе предлагал найти более подходящий чат, например, про разработку игр. Могу даже посоветовать пару в телеграме или дискорде.
ConstantBolzmann: поучи другого когонибудь
ConstantBolzmann: соседа своего
ConstantBolzmann: и не пиши мне в личку
ConstantBolzmann: сразу закрываю неглядя
ConstantBolzmann: какой вопрос? о том что ему чужую голову надо потомучто он любой вопрос постит в чат?
ConstantBolzmann: помнится мне хейт Ульяна начался с того что я спрашивал помощи в пазлах
ConstantBolzmann: давай иди комунить другому свои песни пой
ConstantBolzmann: и да я требую бана потомучто я читать тут тоже не могу кое кого
ConstantBolzmann: лучше меня забанить
gsomix: ConstantBolzmann, а может ты просто сам не будешь сюда писать? :)
gsomix: Какой смысл тебя банить, если завтра ты новый аккаунт заведешь?
ConstantBolzmann: нет я буду сюда писать
gsomix: Зачем ты сюда пишешь? :)
gsomix: Я обсуждаю паззлы и ботов. Тебе же интереснее писать про игры и жль. Почему сюда?
ConstantBolzmann: Врабошь полотно текста написал не по делу
ConstantBolzmann: пока он писал как мне пол года назад Мэд писал мог бы загуглить
ConstantBolzmann: вот и за такой фигни лучше в бан меня отправить у меня тоже своя позиция есть
gsomix: ConstantBolzmann, он писал это в рамках топика.
gsomix: По делу.
ConstantBolzmann: от того что ты напишешь по делу он не перестанет писать каждый день бред что он учит куда идет и что смотрит
ConstantBolzmann: а в жль конкретные явления просматриваются так что не флуд это
ConstantBolzmann: а исследование полноценное
vrabosh: Подскожите разве эта координата на попадает в робм? Will -5 7
vrabosh: в пазле Darts, там длина квадрата 20
vrabosh: это второй вариант
gsomix: ConstantBolzmann, какое исследование? :)
ConstantBolzmann: если я буду тебя игнорить надеюсь поймешь
gsomix: ConstantBolzmann, ты просто новичокдилетант с завышенной самооценкой, который не может адекватно оценить свои достижения. Ты, конечно, молодец, что изучаешь что-то, но это не делает тебя очень важным и значимым. Не настолько, чтобы все читали только твои рассуждения.
gsomix: Я просто не понимаю, почему ты облюбовал именно этот чат и флудишь тут, споришь с модераторами и заводишь клонов, когда тебя банят.
ConstantBolzmann: а почему ты мне пишешь?
vrabosh: тролит
ConstantBolzmann: и чтото доказываешь?
gsomix: ConstantBolzmann, потому что ты задрал уже всех, а в твоем флуде тонут полезные обсуждения.
ConstantBolzmann: а ты почему флудишь сейчас?
vrabosh: потомучто сейчас и так флуда дофига.. когда вокруг флудт смысла уже придерживаться правельного общения нет
ConstantBolzmann: так это не моя вина
gsomix: Я вот жалею, что не могу покинуть #ru комнату. :)
gsomix: И оставить толкьо #world.
vrabosh: надо меру знать, если чат чистый, люди обсуждают чтото, то лучше не лесть.. если чат зафлужен и хочется чтото сказать.. то можно и сказать
ConstantBolzmann: тебя это тоже касается
vrabosh: чувствоввать меру надо. если видишь что сейчас разговор не потеме, о чемто левом, то чегобы самому непообсуждать тотже жль
vrabosh: но если идет тема конкретная, человек хочет пользу получить.. то зачем забивать канал внетему?
ConstantBolzmann: да и тебе надо чтобы тоже такое говорили и почаще
vrabosh: я то сам знаю, что меня иногда загоняет) каюсь)
ConstantBolzmann: это не оправдывает тебя за все твои строки
vrabosh: ну да
ConstantBolzmann: ну вот и диалог окончен
gsomix: Ок. Наверное, через клиента можно только в #world зайти. :)
vrabosh: gsomix да там скорей всего можно, то только всеравно волей не волей в чат заглядываешь)
vrabosh: или его здесь можно отключить?
gsomix: vrabosh, можно адбоком вырезать.
gsomix: Лишь бы не читать ConstantBolzmann.
vrabosh: тогда можно посто сделать расширение, которые вырезает сообщения тех пользователей которых указываешь
gsomix: Контекст теряется.
gsomix: Кто-то же еще с ним иногда разговаривает, когда он в адекватном состоянии.
MadKnight: что у вас тут происходит
MadKnight: vrabosh выучил геометрию?
MadKnight: gsomix нет же, почему только в world ?
MadKnight: я и в ru заходил
ConstantBolzmann: пускай гсо будет белым
ConstantBolzmann: и не разбанивай
ConstantBolzmann: это моя лично просьба
MadKnight: а это разве не 2й твой акк?
MadKnight: 1й уже забанили?)
ConstantBolzmann: просто забань я лучше соло поиграю как мне нравится
gsomix: MadKnight, это уже третий аккаунт на моей памяти. А я совсем недавно тут.
MadKnight: ну оке
ConstantBolzmann: гсо не слушай он тут типо все знает но ничо не знает
gsomix: А я все ждал, когда же и мне дадут краткий ник кириллицей.
vrabosh: MadKnight вот уже простенькие задачки решаю) решил Darts
MadKnight: vrabosh это всё по векторам?)
vrabosh: нет
amurushkin: вашу мать как можно было заапрувить такой клеш. ошибки помоему в тексте налицо You need to paint the area of the incircle of an equilateral triangle of side l meters. The paint supplier provides you a can of paint to cover A m². How many cans of paint do you need to paint the area of the incircle?
vrabosh: кстати, а есть математика законы которые решают такие здачки?
vrabosh: (a+b)<c + .... + n==m / 3 ... итд
vrabosh: т.е. сравнения с другими операциями?
vrabosh: сравнния дают 0 или 1, ну а дургие плюсуют минусуют эти нули единицы..
vrabosh: a<b + a<b - можно типа сделать 2*(a<b)
amurushkin: я в той задаче даже условие не понял. набрал 25% и второе место на удивление
Pyhesty: :joy: кто-то значит понял больше)
amurushkin: ага 1 понял остальные как и я )))
Uljahn: Мэд, где пропадал?
Uljahn: а, всё, логи прочитал
gsomix: Все-таки в нормальной IDE намного приятнее работать. :)
amurushkin: с любым хорошим инструментов приятно работать
**MatchruMeow Помахал лапкой.
gsomix: MatchruMeow, привет!
Uljahn: крутая ава
gsomix: Переписал бота для Tron Battle.
gsomix: Теперь буду несколько дней код причесывать. :)
Dmitry_Mandzyuk: ребята, всем привет
Dmitry_Mandzyuk: а я все борюсь с осциллографом
Dmitry_Mandzyuk: подскажите, если считанные данные забивать в список, а по мере отрисовки удалять использованные элементы списка и при этом скорость считывания больше скорости отрисовки и удаления использованных элементов, это в итоге приведет к забиванию оперативной памяти?
Kaskad: привет
Kaskad: а что за осцилограф? пазл?
Dmitry_Mandzyuk: не, пытаюсь написать программу для usb осциллографа
wlesavo: Dmitry_Mandzyuk тебе же все равно в реальном времени отрисовывать, дискретизируй так чтобы скорость отрисовки не страдала
amurushkin: или скипай кадры если не успеваешь
wlesavo: ну и я примерно об этом. вообще кривая отрисовка может прямо нормально проблем доставлять
Uljahn: можно вообще рисовать только последнее значение из полученных, тогда проблем с синхронизацией не будет :)
amurushkin: ну по идее и проблем с отрисовкой быть не должно. это же быстро нарисовать линию от точки к точки. в самом простейшем виде
Uljahn: у него там 250кк измерений в секунду, вроде
Uljahn: или ты про линии между последними измерениями?
Uljahn: а если ещё фильтр замутить типа скользящего среднего, будет вообще красиво
amurushkin: не нужно рисовать все 250кк. у него же есть какой то размер изображения. вот посчитать сколько делений в одном пикселе. и так и рисовать
Dmitry_Mandzyuk: ох, замутить можно много чего, мне на сайберфоруме подсказали как через мьютексы организовать очередь с двумя потоками, считывания и записи в файл, но ничерта не работает xD
Dmitry_Mandzyuk: вот измышляю
amurushkin: а в файл тебе зачем писать?
Uljahn: вроде кольцевой буфер предлагали изначально
Dmitry_Mandzyuk: думаю если сделать поток чтения, который запихивает в std::list, а потом из этого списка вытаскивать и рисовать потихоньку
Dmitry_Mandzyuk: с кольцевым не получается, поток чтения с осца опережает поток передачи данных на отрисовку
amurushkin: так ты не рисуй все подряд. а через N
Dmitry_Mandzyuk: а мне важна точность отрисовки, нужно все рисовать
Dmitry_Mandzyuk: на максимальной частоте считывания
Uljahn: ты хочешь все 250кк точек отрисовать??
amurushkin: 250кк точек в секунду? не верю
Uljahn: в реалтайме?
Dmitry_Mandzyuk: не в реалтайме
Dmitry_Mandzyuk: с запаздыванием
Dmitry_Mandzyuk: в реалтайме я так понимаю мне надо сохранять это все в очередь
amurushkin: я когда то работал в проекте там у нас отрисовывали графики работы с шахтных комбайнов
amurushkin: так вот там брали приходящие данные. сжимали например до 1 значения в секунду. и потом из базы брали и рисовали. я там еще потом кешей навнедрял и стало норм
amurushkin: задержка у нас была 5 минут правда
amurushkin: пока от шахты данные прийдут. пока воркер обработает
MadKnight: о, мурушк
Uljahn: данных поступает больше, чем выводится, поэтому невыведенные данные будут накапливаться, и память в один момент закончится, т.е. придётся либо скипать каждые N, либо блоками. в первом случае пострадает точность, во втором - на графике будут разрывы
amurushkin: и вот дребезжание контактов могло положить базу данных. потому что сжать много тысяч значений было уже тяжелее
amurushkin: данных поступает больше чем видно. я бы так сформулировал
amurushkin: а 250кк байт в секунду и может в файл не успеть записать
MadKnight: го об интересных вещах в ЛС amurushkin
Dmitry_Mandzyuk: тут как бы не совсем 250кк байт. У осца задается частота дискретизации и он возвращает массив 4x4096
amurushkin: я считаю что нужно определиться с масштабом, какая максимальная детализация. и лишние данные отбрасывать
MadKnight: go v lc amurushkin
Dmitry_Mandzyuk: Мэд, а ты где пропадал?
Uljahn: в дискорде
Dmitry_Mandzyuk: а, просто сюда не заходил чтоли?
Uljahn: угу, я в логах прочитал, его уже спрашивали об этом
Dmitry_Mandzyuk: понятно
Uljahn: "хотел поменьше в чатиках сидеть и побольше кодить" :smirk:
Uljahn: так, значит частота дискретизации всё же задаётся. а можно задать меньше, чем 250MHz?
Uljahn: 4х4096 - это измерения 4 каналов, видимо. АЦП у нас 8 разрядный вроде бы, т.е. по 4к измерений на канал что ли?
Dmitry_Mandzyuk: да, ацп 8миразрядный
Dmitry_Mandzyuk: частоту можно задать меньше
Dmitry_Mandzyuk: но по итогу осц должен фигачить на максимальной частоте
amurushkin: я правильно понимаю что если частота 250МГц а буфер 4к то нам надо его читать со скоростью почти 60МГц,
Dmitry_Mandzyuk: да, что-то около того получается
Uljahn: мне кажется, единственный реальный выход - делать обработку на GPU :)
amurushkin: тогда писать в файл наверное не вариант
Dmitry_Mandzyuk: мне сейчас и не надо в файл, но выходит что и очередь делать не вариант так как оперативка со временем кончится
Dmitry_Mandzyuk: просто родная программа как-то это все делает
Uljahn: а исходников нет? или ты про SDK?
Uljahn: родная прога успевает и данные записывать, и выводить?
Dmitry_Mandzyuk: родная успевает
Dmitry_Mandzyuk: исходников нет, только dllки от sdk
amurushkin: и какой обьем файла за минуту получается?
Dmitry_Mandzyuk: за минуту не скажу, за секунд 5 1,62Мб для одного канала
Dmitry_Mandzyuk: 339968 строк в файле, одна строка это один замер АЦП
Uljahn: 1,2Мб замеров примерно (+400к переводов строк), это по 250к замеров в секунду примерно :slight_smile:
Uljahn: с этим уже можно жить, и мегагерцы тут непонятно откуда взялись
Dmitry_Mandzyuk: что значит непонятно откуда?
Uljahn: тут или 0.25Мгц, или 250кГц
Dmitry_Mandzyuk: а ну я пока тестирую, выставляю частоту дискретизации в 1мкс
Uljahn: :upside_down:
MadKnight: раньше у вас диалоги попроще были
MadKnight: вы уже не те