|
0 / 0 / 0
Регистрация: 29.11.2020
Сообщений: 14
|
|
Как вывести на экран множество точек29.11.2020, 05:11. Показов 6986. Ответов 36
Уважаемые форумчане, добрый вечер! Пишу игру "Жизнь", нужно вывести на экран массив точек. Просто точек, не соединенных линиями.
Как нарисовать этот массив? Есть ли какая-нибудь glDrawPoints?
0
|
|
| 29.11.2020, 05:11 | |
|
Ответы с готовыми решениями:
36
Дано множество A из N точек на плоскости. Найти точку (вывести её номер и значение) среди всех точек этого множества
|
|
249 / 79 / 31
Регистрация: 29.03.2020
Сообщений: 497
|
|
| 03.12.2020, 13:33 | |
|
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||||||||
| 03.12.2020, 14:10 | |||||||||
|
Я вот не могу понять…это разве не одинаковые условия? Вход целые. if(SUM <2 || SUM>3) //if(SUM!=2 || SUM!=3) Верхнее пашет а нижнее не хочет- магия.
Вот так надобыло, Значит первый алгоритм вообще рекурсия рекурсии..очень сложный клеточный автомат. А этот намного проще. Но жизнь тут быстро угасает и скучно, надобы сделать прворку каждого фрейма: если живых точек меньше Порог то поменять правила для размножения, чтобы анимация оставалась а не зависала скучно и однообразно. Также хотел сделать проверку не области 3 на 3 а 5 на 5 с выбором какие точки брать, но не хочет пахать..где-то неуловимый баг.
0
|
|||||||||
|
6352 / 3523 / 1428
Регистрация: 07.02.2019
Сообщений: 8,995
|
|
| 03.12.2020, 14:16 | |
|
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
||||||
| 03.12.2020, 15:28 | ||||||
|
Да, забыл символ в 2 часа ночи…
//if(SUM <2 || SUM>3) if(SUM!=2 && SUM!=3) Добавлено через 46 минут Сделал коррекцию правил. Вместо if(SUM <2 || SUM>3) параметр R, меняет R=3 на R=4 это приводит к плавному размножению. if(SUM <2 || SUM>R) Если процент живых больше LimLifeUP то R=3, иначе если процент живых меньше LimLifeDN то R=4. Теперь игра бесконечна =). Надо поискать клеточные автоматы посложней…
0
|
||||||
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
||
| 03.12.2020, 19:33 | ||
|
0
|
||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 03.12.2020, 22:40 | |
|
На старом глуте и компе разбрасывал порядка 100 000 точек с альфой при 60 фпс. Значит растеризует на ГПУ =).
0
|
|
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
|
| 03.12.2020, 22:50 | |
|
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 03.12.2020, 23:45 | |
|
Antikl, Сделайте тест вывода пару млн. точек пусть выводит glpoint жирный такой квадратик пикселей 10 и софтверно. Очень сомневаюсь что ЦПУ такое вытянет.
Добавлено через 2 минуты А как ставить точку putpixel? Лезть в ассемблер? =)) Гуглите Нарисовать квадрат ассемблер…
0
|
|
|
с++
1282 / 523 / 225
Регистрация: 15.07.2015
Сообщений: 2,562
|
||
| 04.12.2020, 01:09 | ||
|
0
|
||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
||||||
| 09.12.2020, 16:33 | ||||||
|
Вспомнил, давно спрашивал тоже самое.
Нарисовать массив glDrawPixels Вот пофиксил на цветной рандом. Не уверен нужен ли тут такое data[y][x][0] = (int)255*(float)rand()/RAND_MAX;
0
|
||||||
|
0 / 0 / 0
Регистрация: 29.11.2020
Сообщений: 14
|
||||||
| 25.12.2020, 11:07 [ТС] | ||||||
|
Продолжаю возиться с точками. Хочу вывести "решетку" из красных точек 10x10.
В качестве хранителя данных использую трехмерный массив A с пятью слоями. Первый слой - координаты точек X, просто индексы. Второй слой - координаты Y, тоже индексы. Третий, четвертый и пятый - цвета R, G и B. Заполняю единицами только красный, синий и зеленый - нули. В функции void display сделал условие. Если запуск функции первый (IF Z = 0, и тут же меняем на Z = 1) , то заполняем массивы vertex и colors из трехмерного массива (из первого слоя берем X, из второго Y, из третьего красный цвет). Выводим решетку на экран. Когда первоначальная инициализация прошла (Z = 1), в условии ELSE заполняем красный цвет из массива A еще раз. Просто так, потом буду менять цвет в точках. Вместо решетки почему-то выводятся четыре разноцветных точки. На 95 строке пишет предупреждение "C6385: Чтение недопустимых данных из A[i][j]. Доступный для чтения объем равен 20 байт, однако считать можно только 24 байт". Что ему не нравится?
0
|
||||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||||||||||||||||||||||||||||||
| 25.12.2020, 13:40 | |||||||||||||||||||||||||||||||
|
Сделал по этому примеру
https://www.firststeps.ru/mfc/opengl/r.php?26 Работает.
С инт массивами вроде не пашет без отчета об ошибке( спасибо разработчикам), вроде там float это внутренний формат gl если это для скорости. Если даже будет инт в коде или еще как то он будет переводиться во флоат скрыто. Вот наколдовал. Бреинфаково выглядит это, не думаю что это правильно, как проще хз.
Вообще более правильно так
Добавлено через 6 минут вот так тоже пашет
0
|
|||||||||||||||||||||||||||||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 26.12.2020, 16:24 | |
|
Может кто знает как сделать раздельную компиляцию этого кода пост 32?
Раздельная компиляция
0
|
|
|
0 / 0 / 0
Регистрация: 29.11.2020
Сообщений: 14
|
||||||
| 27.12.2020, 09:22 [ТС] | ||||||
|
Если упростить задачу. Берем два двумерных массива: в одном координаты X, в другом координаты Y. Как мне их склеить в одномерный массив вершин?
Я написал два вложенных цикла for. Но почему-то опять не работает ((
0
|
||||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 27.12.2020, 13:12 | |
|
wxthplvl65, Вам уже написали 3 варианта рисования + пару вообще готовых прог.
1)Пост 24. Мой мод бесконечная игра жизнь. Рисует glBegin(GL_POINTS); 2)Пост 30. Рисует glDrawPixels. 3)Пост 32. Рисует glDrawArrays. 10 000 точек с заданием цвета каждой. А тут вчера раздолбал пример раздельная компиляция этой же проги, каждая функция в отдельном файле с парой десяток строк. Раздельная компиляция Это намного удобней листания простыни из 100500 строк и кучей функций которые отвлекают. Так делают уже настоящие программисты в больших проектах. Что вам еще надо для экспериментов? Хз… Берите работающий пример и изменяйте под себя.
0
|
|
|
|
|||||||
| 27.12.2020, 14:23 | |||||||
|
+ в одномерном массиве нужно учитывать строку - добавлять смещение целую строку из 10 эл-тов i*10
0
|
|||||||
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||
| 27.12.2020, 20:13 | |||
|
Сравните бреинфак код
0
|
|||
| 27.12.2020, 20:13 | |
|
Помогаю со студенческими работами здесь
37
Из множества целых чисел 1.10 выделить множество чисел, на которые делится без остатка число 7. Вывести это множество на экран Сформировать множество точек по заданному правилу и вывести координату последней точки
Вывести множество на экран На плоскости заданы множество точек А и множество прямых В (каждая прямая задается значениями коэффициентов ур Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
|
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика
Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
|
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации:
В классе Работник добавить:
накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни
коэффициентПрезентеизма — снижает продуктивность. . .
|
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день.
Для работы необходим браузер,. . .
|
|
Модель здравосохранения 16. Слишком хорошие и здоровые сотрудники уходят, недовольные зарплатой
anaschu 23.05.2026
Отладка увольнений и настройка производительности
Сегодня во второй половине дня разобрались с механикой увольнений и настроили коэффициент сложности заданий. Вот что было сделано.
. . .
|
Как я стал коммунистом))) Модель сохранения здоровья сотрудников, запись блога номер 15
anaschu 23.05.2026
Внезапно хорошее здоровье сотрудников не нужно капиталистам?))
|
Модель здравоСохранения 15. Как мы чинили AnyLogic модель рабочего коллектива: сочленение диаграммы состояний болезней и поломок в ресурспул
anaschu 23.05.2026
Как мы чинили AnyLogic модель рабочего коллектива
Сегодня разобрались с пятью багами, из-за которых модель либо падала с ошибкой, либо давала совершенно бессмысленные результаты. Каждый баг был. . .
|
Диалоги с ИИ
zorxor 23.05.2026
Насколько я понимаю - Вы - Искусственный Интеллект. Это так?
Да, всё верно. Я — искусственный интеллект.
Я представляю собой большую языковую модель, созданную для помощи в самых разных задачах. . . .
|