Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512

3D Шахматы

03.08.2025, 22:08. Показов 9186. Ответов 154
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Создал за несколько дней шахматную оболочку для движка Stockfish 17.1. Кому не лень, предлагаю тестировать, задавать вопросы или просто прикалываться

Ссылка на игру: https://royalxxx.itch.io/chess-3d

Размер архива: 47 МБ (размер игры: 199 МБ)



Почему создал?
Не нашел ни одной нормальной трехмерной игры, которая работала бы с движком.
Есть 3д шахматы с очень красивой графикой, но с корявыми движками и без движковых настроек. Например, как Chess Titans из винды, Chess Ultra или программы ChessBase - там вообще на трехмерной доске не играбельно.
И наоборот, есть хорошие 2д оболочки для работы с uci движками, но без красивого 3д вида.
К тому же, давно не публиковал игру в https://royalxxx.itch.io/, хочу добавить туда эту игру.

Как установить:

Разархивировать исполняемый файл в любое место, желательно в отдельную папку, поскольку после первого запуска в папке, где будет лежать данный файл, создадутся два других файла:
engine_path.cfg - в этом файле можно указать путь к шахматному движку. Но не обязательно это делать, если движок Stockfish 17.1 будет лежать рядом с игрой. Но если на компе уже есть данный движок (допустим, вы используете для другой шахматной оболочки), то можно будет указать в этом файле путь к вашему движку и не понадобится дублировать движок.
settings.cfg - это файл настроек. Не для редактирования, поэтому я его зашифровал. Если удалить данный файл, то игра вернется к дефолтным настройкам.

Таким образом, нужно разархивировать игру в отдельную папку, бросить в эту папку движок Stockfish 17.1, скачанный из официального сайта, и запустить игру.

Почему Stockfish 17.1?
Это сильнейший движок в мире.

Почему я не распространяю движок в комплекте с игрой?
Stockfish 17.1 доступен бесплатно на официальном сайте https://stockfishchess.org/download/. Причем, там доступны разные версии под разные инструкции процессора. Чтобы не распространять вместе с игрой все движки (64-bit, POPCNT, AVX2, BMI2, AVX-512, VNNI-256, VNNI-512) - а каждый весит до 80 МБ, я решил, что лучше будет, если каждый сам скачает то, что подходит его устройству. Например, я использую BMI2-версию, поскольку она быстрее версий 64-bit, POPCNT и AVX2, а вот AVX-512 и другие мой проц не поддерживает. Версия 64-bit самая медленная, но поддерживается всеми 64-битными процами, POPCNT тоже будет поддерживаться многими, даже устройствами 15-летней давности. AVX2 это версия, для современных процессоров и дефолтная для скачивания на сайте стокфиша. Если ваш процессор поддерживает BMI2, как у меня, то ставьте эту версию, она быстрее AVX2. Ну а если у вас поддерживает и AVX-512, то ставьте последнюю.

Stockfish 17.1
Игра работает только с Stockfish 17.1. С другими движками или с другими версиями Stockfish (например, 16) игра не будет работать.

Вкладка игры:
- можно играть с движком или с другим человеком. Если включен переключатель движка, после хода игрока, движок сделает ход.
- кнопка Engine Move (или клавиша G) заставляет движку сделать ход, независимо от состояния переключателя движка
- кнопка Hint (клавиша H) выводит подсказку
- Flip View (клавиша F) поворачивает доску
- Reset View (клавиша R) восстанавливает положение камеры. Кстати, камера поворачивается нажатой правой кнопкой мыши.
- New Game (клавиша N)
- Copy FEN копирует в буфер обмена FEN текущей позиции

Вкладка Engine:
Тут настраивается сам движок. Внимание: если вы что-то поменяли, для применения настроек нужно обязательно нажать на кнопку Set Options.
На этой вкладке можно настроить:
Threads - количество потоков процессора . Вы не можете выставить больше, чем количество процессоров на вашем устройстве. Даже на одном потоке движок очень силен. Если прям хочется получить максимальные Nps, то выставляйте максимум. С другой стороны, если все процессоры будут работать на вычислениях, то возможно не хватит ресурсов для игры.
Depth Limit - максимальная глубина ходов (а скорее полуходов) для движка. По умолчанию, выставлен максимум 145.
Skill Level - сила движка, по умолчанию 20 - максимум, т.е. будет играть на полную силу.
Вместо настройки силы движка посредством Skill Level, можно использовать более понятную опцию - лимитирование по рейтингу Эло от 1320 до 3190. Стокфиш этот рейтинг потом переводит в нужный Skill Level.
Hash - размер хештаблицы. Дефолтно 16 МБ. Сделал так, чтобы не можно было выставить больше, чем доступный размер ОЗУ без учета файла подкачки. Сколько не жалко, столько и дайте движку памяти. Это усилит движок. А вообще, можно посмотреть на то, как быстро заполняется хеш и если вы видите, что хеш на пределе, то можно увеличить размер.
Time - время на ход для движка в секундах. Чем больше вы дадите, тем глубже движок сможет анализировать.
Обратите внимание, что для подсказок можно выбрать свои собственные Depth и Time. Например, вы можете дать на подсказки больше времени, чтобы подсказка была сильнее, чем ваш соперник-движок))

Depth vs Time
Если движку дать очень много времени, но выставить глубину, то это даст гарантию, что все ходы движка будут иметь одинаковую гарантированную глубину.
Если движку дать очень большую глубину, но выставить время, то это гарантирует, что движок сделает ход за заданное время, но глубина будет колебаться - например, в эншпиле будет больше, чем в дебюте.
Не рекомендую давать движку одновременно и много времени и разрешать искать до очень большой глубины, поскольку вы рискуете ждать очень долго.

Интерфейс:
Цвет фона, панелей полностью настраиваются. Также можно настроить материалы доски, фигур и прочего (выделения клетки, доступных ходов, подсказки, шаха, мата...).

Графика:
Window Mode - режим экрана
Scale - соотношение от нативного разрешения. При 1.0 - будет нативное разрешение. 0,5 - будет половина от нативного, и т.д. Влияет на качество и производительность.
Antialiasing - сглаживание. Дефолтно на 2х. Можно увеличить, но имейте в виду, что может повлиять на fps.
VSync - вертикальная синхронизация.
Я добавил возможность лимитирования fps, поскольку заметил, что для данной игры необязательно играть на 120 или 240 fps. Это игра не про графику, зачем насиловать GPU.
С помощью данной фичи можно лимитировать fps и снизить нагрузку на GPU. Например, я выставляю 60. Кстати, заметьте, что VSync тоже лимитирует fps на уровне частоты монитора.
Для удобства и правильной настройки, я также добавил отображение fps в реальном времени.

Вывод движка:
После каждого обдумывания движка (ход или подсказка), выводится:
-Оценка позиции в пешках или в количестве полуходов до мата. Положительные - в пользу Белых, отрицательные - Черных.
-Глубина хода
-Скорость движка в узлах в сек - Nodes per second (NPS) - удобно для настройки потоков или тестирования производительности устройства
-Процент заполнения хеш-таблицы. Если видите, что таблица быстро заполняется, то можно увеличить размер хеша.
-Реальное время обдумывания движка.

Сохранения:
Игра сохраняет все настройки. Также, будет сохранена текущая игра, но только если был сделан выход из игры не во время работы движка.

Что не реализовано:
1. Не реализовал все ничейные ситуации. В ничейных ситуациях сейчас игра прерывается только при пате. У меня возникли некоторые сомнения касательно необходимости реализовать другие ситуации:
- Недостаточность материала - возможно, в будущем даже добавлю авто определение недостаточного материала...
- Троекратное повторение одной и той же позиции - это правило актуально, когда играешь с человеком.
- Обе стороны сделали 50 последних ходов без взятия и без хода пешкой - это правило работает, только когда игрок заявил, иначе игра продолжается до 75 ходов. Это правило тоже актуально, когда играешь с человеком.
- Игроки согласились на ничью - тоже не вижу смысла в реализации фичи, когда движок просит ничью...
- Один из игроков просрочил время или сделал второй невозможный ход - в моей игре таймеров нет, поскольку это только актуально, когда играешь с человеком.
Вообще, думаю вместо реализации всей этой ахинее, актуальной только на турнирах с людьми, сделать так, что когда оценка нулевая на определенной большой глубине, то просто выводится инфа, что стоит прекратить бессмысленную игру.
2. Не реализовано создание игры из кастомной позиции. Могу быстро реализовать настройку позиции по FEN, но вот реализация настройки позиции путем выставления вручную фигур требует некоторого времени. Возможно, добавлю в будущем.
3. Подключение дебютных книг. Не собираюсь реализовать, поскольку не вижу смысла.
4. Подключение EGBT Syzygy для движка. Реализуется легко, но движок и без них очень быстро анализирует в эндшпиле.
5. Поддержка Chess 960. Возможно, добавлю в будущем.
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.08.2025, 22:08
Ответы с готовыми решениями:

Шахматная программа
Проводится набор участников для совместной работы над шахматной программой. Направление вызвало...

Готические Шахматы и Шахматы Януса
Программы - компьютерные противники, реализующие сабж? - где скачать? (можно лицензионные и платные...

разработка программы "Шахматы"
помогите пожалуйста с разработкой шахматной программы, ну или кто знает ссылки на такие разработки,...

154
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 16:52  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от 8Observer8 Посмотреть сообщение
У Godot есть какое-то ограничение?
да, вот это

Цитата Сообщение от Royal_X Посмотреть сообщение
Игра работает только с Stockfish 17.1.
тут имеется в виду, Stockfish 17.1 для винды

Цитата Сообщение от Royal_X Посмотреть сообщение
Чтобы делать веб-версию, нужно перейти на stockfish js
Добавлено через 4 минуты
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Типа вы в начале в Godot выбрали Desktop-проект и теперь Godot не позволяет его собирать в веб и это нельзя переключить теперь на сборку для веб?
проект можно экспортировать под абсолютно всё. Но я всегда говорю, что нельзя создать одну игру и ждать, что она будет работать абсолютно одинаково на винде, линуксе, андроиде, браузере. К каждой платформе нужно подойти отдельно, заняться правильной настройкой и оптимизацией. Прям если тупо перенести десктопную игру в веб, то игра будет тормозить, особенно 3d игра. Вот, например, https://royalxxx.itch.io/3d-minesweeper-web. Тут при взрыве мин, особенно при первом взрыве есть некоторые тормоза. На десктопе такого нет. Просто веб версия очень ограниченная и слабая. Соответственно, разработчик перед экспертом в веб должен немного оптимизировать сложные вещи. В вышеупомянутой игре я это не сделал, поскольку сама игра написана за несколько часов... и я спешил экспортировать.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 16:55
Цитата Сообщение от Royal_X Посмотреть сообщение
проще, но в браузере производительность игр низкая, особенно 3D
Да там у вас простая графика, хоть и 3D. Неужели даже эта игра тормозит в браузере? Не верю. Я тоже собирал из Godot, правда, 2D-демки. Там же элементарно собирается в несколько кликов. Хотя бы эту игру можно собрать? Я понимаю, что "Atomic Heart" бы тормозил в браузере. Или это именно какая-то проблема Godot, что его сборка плохо работает на веб в 3D? А есть какая-то демка, которая показывает проблему после сборки из Godot в 3D?

Может у вас ноутбук ещё слабее чем у меня. У меня Assus K53SV на i3 от 2011 года. У меня 3D следующие браузерные игры на летают:

Они с мультиплеером. В них не надо регистрироваться. Можно зайти, как гость. Они от первого лица. Я играл в них по 15-20 минут, как минимум. Ни каких тормозов или большого нагревания ноутбука не было.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 17:10  [ТС]
Цитата Сообщение от 8Observer8 Посмотреть сообщение
А есть какая-то демка, которая показывает проблему после сборки из Godot в 3D?
я же привел ссылку https://royalxxx.itch.io/3d-minesweeper-web. При первом взрыве мин какие-то тормоза. Видимо, это связано со спецификой системы частиц годот в браузере.

Добавлено через 1 минуту
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Неужели даже эта игра тормозит в браузере?
не знаю, эту игру не пробовал экспортировать под веб, поскольку она работает с стокфиш для винды

Добавлено через 1 минуту
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Да там у вас простая графика, хоть и 3D.
наверное, все будет ок с этой игрой. Тут нет спецэффектов, шейдеров, системы частиц. К тому же графика настраивается.

Добавлено через 2 минуты
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Может у вас ноутбук ещё слабее чем у меня.
у меня ноут не игровой (нет дискретной графики), но без проблем тянет даже UE крайней версии
Intel® Core™ i9-13900H

Добавлено через 8 минут
Цитата Сообщение от 8Observer8 Посмотреть сообщение
или большого нагревания ноутбука не было
нагревается, когда не выставлен лимит на fps и отключена вертикальная синхронизация - в этом случае fps очень высокий и излишний
в этих шахматах я уже реализовал настройки графики, в том числе возможность ограничить fps
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 17:14
Цитата Сообщение от Royal_X Посмотреть сообщение
Тут при взрыве мин, особенно при первом взрыве есть некоторые тормоза. На десктопе такого нет. Просто веб версия очень ограниченная и слабая. Соответственно, разработчик перед экспертом в веб должен немного оптимизировать сложные вещи.
Да, немного тормозит при ходьбе и повороте камеры. При взрыве игра зависла примерно на 15-20 секунд и появилось сообщение:



Я сам мучился какое-то время с экспортом в веб из Unity. Потом решил, ну его. Лучше писать на Three.js, Babylon.js, Phaser, Pixi.js, либо на чистом WebGL и т.д. При желании можно собрать EXE с помощью WebKit (всего лишь 5 лишних MB), а для Android можно собирать на Cordova. Какие-то большие игры я всё равно не напишу, а ради удовольствия можно небольшие писать, которые весят мало, быстро запускаются и не тормозят в браузере.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 17:15
Цитата Сообщение от Royal_X Посмотреть сообщение
я же привел ссылку https://royalxxx.itch.io/3d-minesweeper-web. При первом взрыве мин какие-то тормоза. Видимо, это связано со спецификой системы частиц годот в браузере.
Это произошло потому что вы ответили раньше меня. Я ответил позже и не видел вашего ответа. Но я не стал править свой ответ.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 17:15  [ТС]
Цитата Сообщение от 8Observer8 Посмотреть сообщение
При взрыве игра зависла примерно на 15-20 секунд
у меня зависает не так долго, до 5 сек. Причем, это зависание только перед первым взрывом. Если продолжить игру, то при следующем взрыве все норм.\
***
это пример того, почему нельзя десктопную игру экспортировать в веб без предварительной оптимизации.

но шахматы вряд ли будут так тормозить, там нет системы частиц и прочих эффектов

Цитата Сообщение от 8Observer8 Посмотреть сообщение
в веб из Unity
на юньке немного лучше, чем на годот. Unity лучше оптимизирует игру под веб. А в годот нужно оптимизировать вручную.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 17:17
Цитата Сообщение от Royal_X Посмотреть сообщение
нагревается, когда не выставлен лимит на fps и отключена вертикальная синхронизация - в этом случае fps очень высокий и излишний
в этих шахматах я уже реализовал настройки графики, в том числе возможность ограничить fps
Это, видимо, имеется ввиду Desktop-версия, потому что в браузере, по-моему, FPS всегда ограничен 60 кадрами в секунду.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 17:30  [ТС]
Цитата Сообщение от 8Observer8 Посмотреть сообщение
FPS всегда ограничен 60 кадрами в секунду
если верить инету, то это ограничение, равно как VSync, отключается

Добавлено через 8 минут
Цитата Сообщение от 8Observer8 Посмотреть сообщение
При взрыве игра зависла примерно на 15-20 секунд
кстати, это баг от годот и на форумах пишут, что связан с системой частиц. Возможно, для веб-версии вообще стоит убрать спецэффекты взрыва.

интересно, что если после одного взрыва закрыть игру и зайти снова, то этого фриза больше не будет. Такое чувство, что перед первым взрывом игра создает некий кеш.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 17:54
Цитата Сообщение от Royal_X Посмотреть сообщение
это пример того, почему нельзя десктопную игру экспортировать в веб без предварительной оптимизации для веб.
Это касается только Godot, Unity и т.д., которые собирают в WebAssembly. Если, например, взять Three.js, то там намного проще. Там по мере добавления объектов, эффектов и т.д. можно видеть, как меняется производительность и сразу принимать меры.

Добавлено через 13 минут
Цитата Сообщение от Royal_X Посмотреть сообщение
если верить инету, то это ограничение, равно как VSync, отключается
Я тоже погуглил. Да, можно отключить VSync и ограничение FPS. Например, в Chrome можно можно отключить VSync и ограничение FPS если кликнуть правой кнопкой по ярлыку Chrome, выбрать Properties и в поле Target добавить ключи:

--disable-gpu-vsync --disable-frame-rate-limit
Тогда при запуске двойным кликом по ярлыку это должно сработать, но это не рекомендуется делать - какие-то проблемы перечисляются, я не вникал. По умолчанию VSync и ограничение FPS включено, а из веб-приложения их нельзя отключить.

Добавлено через 8 минут
Цитата Сообщение от Royal_X Посмотреть сообщение
интересно, что если после одного взрыва закрыть игру и зайти снова, то этого фриза больше не будет. Такое чувство, что перед первым взрывом игра создает некий кеш.
Цитата Сообщение от Royal_X Посмотреть сообщение
Да, почти не зависает - 2-3 секунды. Но бомбы взрываются раз в секунду. Так должно быть? Долго ждать, когда они все взорвутся. Пока они взрываются можно перемещаться почти без тормозов. В целом, при перемещении у меня может где-то 20 FPS. Хорошо бы FPS выводить.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 17:57  [ТС]
8Observer8, я сейчас попробую экспортировать на новой версии godot. Если проблема все еще будет, то я уберу взрывы вообще.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 18:16
Цитата Сообщение от Royal_X Посмотреть сообщение
у меня ноут не игровой (нет дискретной графики), но без проблем тянет даже UE крайней версии
Intel® Core™ i9-13900H
Моё определения игрового устройства - если на устройстве можно играть хотя бы в одну любую игру (пусть и очень старую), то это устройство игровое. Например, игра "Три в ряд". Либо если можно играть на эмуляторе NES, PlayStation и т.д. Понятно, что когда говорят "игровой ноутбук" то имеется в виду ноутбук, который тянет высокотребовательные современные игры. Но эти определения субъективные. Кто во что играет. Я часто видел, как люди играют в игры типа "Три в ряд", когда сидят, например, в общественном транспорте. Такая игра будет работать даже на очень старом смартфоне и в браузере. Значит, если можно играть в какую-либо игру на старом смартфоне и в браузере, значит, они являются игровыми для определённых игр и определённых людей.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 18:27  [ТС]
8Observer8, вообще мой комп тянул всё, что я запускал, хотя у него нет дискретной графики. Работают даже игры на крайней версии UE, хотя есесена не на максимальных настройках графики. Единственный раз, когда реально игра не запустилась, проблема была связана с тем, что интегрированная графика не поддерживает DX12 SM6 полностью и эта игра была для обладателей RTX... Но я не игроман.
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 18:30
Цитата Сообщение от Royal_X Посмотреть сообщение
я сейчас попробую экспортировать на новой версии godot. Если проблема все еще будет, то я уберу взрывы вообще.
Скидывайте, не торопитесь. Мне как уведомление от GMail придёт на телефон, то я сразу затестю, если ещё не уйду гулять.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 19:07  [ТС]
8Observer8, короче, в инете все пишут, что так у всех. Типа перед первой генерацией частиц происходит кеширование. И в это время игра фризится. Есть какие-то методы для устранения проблемы, например, имитация первой генерации частиц во время старта игры. Т.е. делать это кеширование в начале игры, скрытно запустив эффект. Но мне все эти танцы с бубном не нравятся. Я просто удалю взрывы в моей игре https://royalxxx.itch.io/3d-minesweeper-web для веб версии.

Добавлено через 27 минут
8Observer8, обновил игру. Теперь без взрывов. Эти фризы реально раздражали. Кто хочет взрывы - пусть скачает.

Добавлено через 2 минуты
8Observer8, но мой кубик норм в браузере https://royalxxx.itch.io/cube-web
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 19:30
Да, сейчас не тормозит при взрывах. Теперь я понял, что не нужно было дожидаться, когда взорвутся все мины, а нужно нажимать R для перезапуска. Может лучше кнопку выводить "Try again"? Скорее всего, не все redme.txt или описание читают. Но эта деталь с перезапуском должна быть очевидной. В целом интуитивно - например, как открывать ячейки в виде подсказки с подсветкой.

Если отвернуться от поля и смотреть на стену, то почти плавное перемещение. Может мины содержат избыточные полигоны? Как будто бы на них не Normal Map, а сложная геометрия. Может ручки мин сделать текстурой или вообще их убрать и никто этого не заметит, а может логично, что у мин есть ручки, их же как-то таскают, но будут ли игроки придираться к отсутствию ручек, не знаю. Может ручка мины - мелочь. Нужно тестировать, как будет без ручек.

Я играл зимой или весной в очень похожего Сапёра от первого лица, но на Unity. Я себе отметил, что надо повторить что-то близкое. Я сегодня утром, ещё до того, как увидел тему, пытался моделировать цифры в 3D в Blender'е - пока даже двойку не сделал. Я именно такие хотел, как у вас. А где вы взяли их? Сами сделали? Если они есть в бесплатном доступе, то дайте пожалуйста, ссылку, а если сами сделали, то не будут просить чтобы вы все выложили в открытый доступ, потому что это труд и время и эта работа стоит денег. Я бы сам сделал цифры для практики в 3D-моделировании, но эти, что у вас мне потравились, хотелось бы поизучать, как они сделаны в Blender если это возможно. Или хотя бы одну двойку можно скинуть?

P.S. Иногда забываю с кем на вы, а с кем на ты. Мне кажется лучше на вы, так проще.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 19:36  [ТС]
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Теперь я понял, что не нужно было дожидаться, когда взорвутся все мины, а нужно нажимать R для перезапуска.
Раньше на R можно было нажать в любое время, но не во время взрывов мин. Т.е. нужно было ждать, пока все мины взорвутся.
Сейчас, т.к. я убрал взрывы, на R можно нажать в любое время без исключений .
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 19:36
Цитата Сообщение от Royal_X Посмотреть сообщение
но мой кубик норм в браузере https://royalxxx.itch.io/cube-web
У меня в Chrome выводится Progress Bar. Он доходит до конца, а потом серый экран. В консоль выдаётся две ошибки:

[.WebGL-0x275c00f20d00] GL_INVALID_OPERATION: glDrawElements: It is undefined behaviour to have a used but unbound uniform buffer.
[.WebGL-0x275c00f20d00] GL_INVALID_OPERATION: Error: 0x00000502, in ..\..\third_party\angle\src\libANGLE\ren derer\d3d\d3d11\ResourceManager11.cpp, rx::ResourceManager11::allocate:496. Internal D3D11 error: HRESULT: 0x80070057: Error allocating PixelShader
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 19:40  [ТС]
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Я именно такие хотел, как у вас. А где вы взяли их? Сами сделали?
в этой игре всё, кроме мин, создается через код. Там нет заранее смоделированных мешей.
Объемные цифры тоже через код. Создаю MeshInstance3D, к которому прикрепляю TextMesh. Godot в отличие от других движков может создать что угодно через год...
0
9953 / 2954 / 497
Регистрация: 05.10.2013
Сообщений: 8,075
Записей в блоге: 242
15.08.2025, 19:41
В FireFox тоже серый экран после загрузки Progress Bar. Весь лог из Chrome:
Миниатюры
3D Шахматы  
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6309 / 3031 / 1053
Регистрация: 01.06.2021
Сообщений: 11,512
15.08.2025, 19:44  [ТС]
8Observer8, у тебя WebGL 2 работает? https://webglreport.com/?v=2

Добавлено через 29 секунд
Цитата Сообщение от 8Observer8 Посмотреть сообщение
Иногда забываю с кем на вы, а с кем на ты.
в интернете всегда можно на ты)

Добавлено через 1 минуту
Цитата Сообщение от 8Observer8 Посмотреть сообщение
У меня в Chrome выводится Progress Bar. Он доходит до конца, а потом серый экран.
это очень странно, учитывая, что кубик был сделан в 3-й версии годот и системные требования намного ниже
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.08.2025, 19:44

Крик души (шахматы)
Я возмущен Играл с компьютером в шахматы (Опера Виджет) меня поразило какой долбоклюй их кодировал...

Задача про шахматы
Cсылка на изображение с условием: ВОТ ССЫЛКА вот не получается сделать. ну само собой что задача...

Шахматы. восемь фигур одного цвета
Задан вопрос по шахматам, можно ли расставить на доске восемь фигур одного цвета, чтобы они держали...

Шахматы.
Поле шахматной доски определяется парой чисел, каждое из которых не превосходит 8: 1е число - номер...

Шахматы: может ли белая фигура пойти на поле ef, не попав при этом под удар черной фигуры?
Поле шахматной доски определяется парой чисел, каждое из которых не превосходит 8: 1е число - номер...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
Оказывается, Unreal Engine позволяет качество на порядки выше, чем было в Lineedge
Etyuhibosecyu 05.07.2026
Жаль, конечно, что я не узнал об этом, пока Lineedge существовала, а то бы Noname2331 написал, что волки превращаются в пиксельную кашу, а я бы его попросил скачать какую-нибудь бриллиантовую или Pro. . .
Doom для терминала без стрельбы и монстров. 3D Raycasting на ascii.
dcc0 05.07.2026
Попросил нейронную сеть deepai. org написать рейкастинг 3D с библиотекой ncurses для Linux. Чтобы можно было ходить на стрелочки. Чтобы стены были отрисованы символами. Справилась. Первый вариант. . .
Установка статуса документа по условию
Maks 05.07.2026
Алгоритм из решения ниже реализован на нетиповом документе "НарядПутевка" разработанного в КА2. Задача: в табличной части "Материалы" документа при записи автоматически устанавливать статус. . .
Сезонность и суточность закисления почв
anaschu 04.07.2026
200 часов это все равно моловато. Есть ситуации, но нестандартные, когда смена происходит за 5 лет. Но обычно это 50 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
В чем ценность человеческого опыта в глобальном смысле?
kumehtar 03.07.2026
Возможно, ценность человека не в том, что он однажды достигает мудрости, а в том, что он становится носителем карты пути. Он знает не только истину, но и последовательность внутренних изменений,. . .
интеграция AnyLogic с самописным REST API и переход на Odoo
anaschu 03.07.2026
Успешная интеграция AnyLogic с самописным REST API и переход на промышленную Odoo WMS Сегодня проделал огромный путь от простой симуляции физических процессов до построения полноценной. . .
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru