Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515

Игра Кубик Рубик для Windows

09.08.2017, 09:14. Показов 5735. Ответов 64
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Опишу свой путь развития:
Я программист уже более 10 лет. Серьезно к трехмерной графике начал присматриваться в январе 2017 года.
В январе 2017 года начал изучать DirectX, OpenGL, C++, ООП подтянул.
Подтолкнуло меня изучать реалистичную трехмерную графику для своих будущих проектов, а именно хочу сделать помощник по расчету инженерных коммуникаций.

При изучении начал осознавать, что это оказалось достаточно сложным процессом, и перед этим решил получить небольшой опыт и поставил себе цель сделать две игрушки:
1. Игра лабиринт: Игра Лабиринт 3D (вторая часть) – генерация уникального большого лабиринта (4 уровня сложности)
2. Игра Кубик Рубик (эта тема посвящена тестированию этой игры)

Из всего опыта подметил больше всего – это умение правильно писать код. Так чтобы проекты писались очень быстро. Я в играх не использовал и пока не собираюсь вообще использовать подключаемые библиотеки типа GLUT. Можно без GLUTa делать приложения. Конечно не обошелся от помощи других профессионалов в этой сфере. Приходилось вставлять готовые открытые алгоритмы в программный код.

В общем, приложение должно работать на Windows7,8,10. Буду признателен, если проверите работу на windowsXP. Хотя ХP похоже уже не пользуется спросом.

Если получите ошибки в программе просьба: Прислать скриншот, указать операционную систему и видеокарту.

Управление в игре Кубик Рубик:

Вращение всего кубика: Удерживаете правую кнопку мыши и двигаете мышку по экрану. Причем двигать можно не только верх, вниз и по диагонали. Но можно и вокруг кубика и вы увидите, что-то новое в управлении… Такое управление я не видел в играх других производителей игр. Это была моя идея сделать такое движение. И мне помог ее сделать один опытный программист. Не знаю, только стоит его рекламировать или нет.
Вращение части кубика: Удерживайте левую кнопку мыши и двигайте мышку в ту сторону, в которую хотите, чтобы вращался механизм. Прицелились мышкой в нужный квадратик, и далее удерживайте левую кнопку мыши и двигайте в ту строну, в которую хотите, чтобы он повернулся.
Клавиша 1: Запутать кубик
Клавиша 2: Собрать кубик

Кстати игру написал на Visual Studio 2012 приложение win32 С++. Голый WinAPI+OpenGL, без всяких помощников вроде GLUTа. Использованы стандартные библиотеки <gl\gl.h> <gl\glu.h>, которые не нуждаются в подкреплении современных ОС Windows. Также потому что функции из этой библиотеки грузятся с драйверами видеокарты. Поэтому приложение должно запускать без проблем.

Возможно, что со старыми видеокартами будут проблемы из-за отсутствия функций. Хотя использовал в рисовании glBegin()glEnd(), чтобы максимально заставить работать на всех ПК. Может случайно захватил другие функции, просто не проверял код и не убирал лишнее.
Миниатюры
Игра Кубик Рубик для Windows  
Вложения
Тип файла: rar KubikRubik.rar (75.8 Кб, 71 просмотров)
5
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.08.2017, 09:14
Ответы с готовыми решениями:

Кубик-рубик
Решил написать программу по сборке кубика рубика для ленивых, идея состоит в том что пользователю на екране показывается кубик 3 на 3, с 6...

Дорисовать кубик рубик
Господа требуется через canvas на форме нарисовать кубик рубик Лицевую часть сделал, а вот боковую и верхнуюю не смог procedure...

Кубик Рубик в OpenGL - вращение
Недавно начал осваивать OpenGL, попытался сделать кубик рубика, но столкнулся с проблемой вращения его, до этого делал вращение только...

64
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
10.08.2017, 14:43
Студворк — интернет-сервис помощи студентам
-----------
1
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 08:16  [ТС]
Цитата Сообщение от DenNik Посмотреть сообщение
при запуске 8-9 раз выдает сообщение, но затем нормально работает
А Ваша видеокарта?
Скажите точную модель вашей карты: Панель управление -> Диспетчер устройств -> Видеоадаптеры

Добавлено через 9 минут
Цитата Сообщение от DenNik Посмотреть сообщение
при запуске 8-9 раз выдает сообщение, но затем нормально работает
Проверьте пожалуйста у Вас запускается игра лабиринт: Игра Лабиринт 3D (вторая часть) – генерация уникального большого лабиринта (4 уровня сложности)
Именно хочу убедиться те функции у вас работают? Или нет.
По ошибке понятно, что проблема в том, что в программе не убраны лишние загрузки функций у видеокарты. В вашей карте отсутствуют функции, поэтому вышла ошибка.
Скажите точную модель вашей карты: Панель управление -> Диспетчер устройств -> Видеоадаптеры

Добавлено через 33 минуты
Грузится штук 30 функций с видекарты, и какие-то функции отсутсвуют на вашей карте.
Мы можем конечно их проверить, но мне нужно приготовить файл, для теста
И вы должны мне прислать название каждой ошибки. Так я смогу определить способности вашей видеокарты.
0
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 08:24  [ТС]
Приготовил файл(KubikRubik3.exe), где выскачет ошибка с названием неработающей функции у видеокарты.
Просьба прислать скриншот каждой ошибки и я сделаю анализ работы вашей видеокарты.
Вложения
Тип файла: rar KubikRubik3.rar (66.5 Кб, 5 просмотров)
0
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 09:57
Цитата Сообщение от infobos Посмотреть сообщение
А Ваша видеокарта?

Цитата Сообщение от infobos Посмотреть сообщение
ошибка с названием неработающей функции у видеокарты.
в порядке появления

1
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 09:58
видеоадаптер встроенный
1
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 10:04
на ВинХР тестировал, ни одной ошибки. видеокарта тоже встроенная
1
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
11.08.2017, 10:09
DenNik, ты лучше скажи модель материнки и процессора. Из этого можно точно выяснить, что за видеокарта там встроена и где она встроена (в материнке или в процессоре)
1
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 10:13
Evg, проц в посте 20, карта - в 24. или нужно прдробнее?

Добавлено через 1 минуту
ой, материнки. щас постморю ))
1
Evg
11.08.2017, 10:15

Не по теме:

Цитата Сообщение от DenNik Посмотреть сообщение
Evg, проц в посте 20, карта - в 24. или нужно прдробнее?
Модель процессора действительно есть (просто на предыдущую страницу надо лазить), а что означает Q45/Q43 - я, честно говоря, не совсем понимаю. То ли винда не уверена в том, что у тебя там стоит, то ли что-то ещё

1
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 10:18
Evg, проц, память, плата
Миниатюры
Игра Кубик Рубик для Windows   Игра Кубик Рубик для Windows   Игра Кубик Рубик для Windows  

1
827 / 244 / 47
Регистрация: 24.01.2013
Сообщений: 750
11.08.2017, 12:13
Evg, DenNik, да это видео еще в мат.плате, совсем старая версия...
1
 Аватар для eXPonent
99 / 52 / 27
Регистрация: 21.05.2012
Сообщений: 1,170
11.08.2017, 14:03
очень неплохая идея, ещё было бы неплохо создать алгоритмы сборки
Что бы к примеру я написал свой алгоритм сборки
и комп пытается его по этому алгоритму собрать, возможно людям будет очень интересно придумывать именно свои алгоритмы сборки, а не самостоятельно собирать кубик рубик
алгоритмы возможно будет просто писать через if-else (задачи для муравьев)
сама же прога будет внутри себя будет пробегать по муравьиным алгоритмам
1
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 15:00  [ТС]
Цитата Сообщение от eXPonent Посмотреть сообщение
очень неплохая идея, ещё было бы неплохо создать алгоритмы сборки
Что бы к примеру я написал свой алгоритм сборки
и комп пытается его по этому алгоритму собрать, возможно людям будет очень интересно придумывать именно свои алгоритмы сборки, а не самостоятельно собирать кубик рубик
алгоритмы возможно будет просто писать через if-else (задачи для муравьев)
сама же прога будет внутри себя будет пробегать по муравьиным алгоритмам
А можете намекнуть что-за такие муравьиные алгоритмы? Статьи, термины, названия, как работает?
0
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 16:23  [ТС]
DenNik, Спасибо за скриншоты!
По вашей встроенной карте: Проблема именно в отсутствие работы этих функции у видеокарты. Ваша карта старая и не поддерживает их вот и весь фокус. Возможно драйвера не имеются, я вашу видеокарты не мониторил по характеристикам. А версия этих функций начинается от OpenGL 3.0 и заканчивается версией до 4.5.

Я просто не глядя модифицоровал существующий проект и начал писать на нем игру кубик рубик. И оставил в проекте кубик рубик эти функции.

Там функции для использования буфера в памяти видеокарты, но они в игре не задействованы, поэтому после серии всплывания окон игра продолжает работать:
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
GL_framebuffer_object - v3.0
PFNGLGENFRAMEBUFFERSPROC  generate framebuffer object names  генерировать имена объектов фреймбуфера
PFNGLBINDFRAMEBUFFERPROC  bind a named framebuffer object  связать именованный объект фреймбуфера
PFNGLFRAMEBUFFERTEXTURE2DPROC
PFNGLCHECKFRAMEBUFFERSTATUSPROC
PFNGLDELETEFRAMEBUFFERSPROC
 
PFNGLISFRAMEBUFFERPROC   determine if a name corresponds to a framebuffer object  определить, если имя соответствует объект фреймбуфера
PFNGLGENERATEMIPMAPPROC  OpenGL 3.3 generate mipmaps for a specified texture target  создать mip на указанные цели в текстуры (сглаживание пикселей)
PFNGLTEXIMAGE2DMULTISAMPLEPROC  OpenGL 4.5  establish the data storage, format, dimensions, and number of samples of a multisample texture's image  создание хранилища данных, Формат, размеры и количество образцов изображения мультисэмплинга текстуры


Я просил Вас проверить игра лабиринт у Вас запустится или нет?: Игра Лабиринт 3D (вторая часть) – генерация уникального большого лабиринта (4 уровня сложности)
В игре лабиринт были использованы минимальное количество функций у видеокарты и выбраны минимальные версии OpenGL. Хотелось бы узнать насколько ваша карта справится с этой игрой - лабиринт.

Сейчас убрал все загрузки функций с видяхи: KubikRubik4.exe
Прикрепил: KubikRubik4.rar
Вложения
Тип файла: rar KubikRubik4.rar (65.1 Кб, 5 просмотров)
1
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 16:45  [ТС]
Цитата Сообщение от eXPonent Посмотреть сообщение
очень неплохая идея, ещё было бы неплохо создать алгоритмы сборки
Что бы к примеру я написал свой алгоритм сборки
и комп пытается его по этому алгоритму собрать, возможно людям будет очень интересно придумывать именно свои алгоритмы сборки, а не самостоятельно собирать кубик рубик
алгоритмы возможно будет просто писать через if-else (задачи для муравьев)
сама же прога будет внутри себя будет пробегать по муравьиным алгоритмам
Я сам кубик рубик собирал по формулам из инета. Сам не смог догадаться как его собирать.
А Вы говорите о алгоритмах по сборке. Я не стану этим заниматься, потому что чувствую это задача не одной недели. А мне на хлеб надо зарабатывать...
Найти кротчайший путь сборки кубика - задачу наверно можно выполнить методом поиска комбинаций. Чувствую времени на поиск уйдет гигантское (часы...). Сначала придется найти эти формулы через поиск комбинаций, потом их записать в готовые формулы и запускать по команде. Времени на интеллектуальный труд уйдет много.
Хотя нет, тупо собирать по формулам, которые есть в инете.
0
Житель Земли
 Аватар для DenNik
3004 / 3026 / 390
Регистрация: 26.07.2011
Сообщений: 11,465
Записей в блоге: 1
11.08.2017, 19:42
Цитата Сообщение от infobos Посмотреть сообщение
проверить игра лабиринт у Вас запустится или нет?:
именно на том ПК смогу только в понедельник проверить
1
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
11.08.2017, 19:51
Перекомпилируйте для Windows 32 и тогда еще много и много людей смогут протестировать ваш кубик-рубик
1
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 19:54  [ТС]
Цитата Сообщение от fever brain Посмотреть сообщение
Перекомпилируйте для Windows 32 и тогда еще много и много людей смогут протестировать ваш кубик-рубик
И так сделано под windows x32. Проверьте работу последнего файла: KubikRubik4.rar
Или Вы о чем?
1
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
11.08.2017, 19:57
Цитата Сообщение от infobos Посмотреть сообщение
Хотя нет, тупо собирать по формулам, которые есть в инете
Интересно бы взглянуть, я однажды обычное решение кратчайшего маршрута искал около часа
пока не вытерпел и сам его не изобрел с нуля

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

Добавлено через 2 минуты
Цитата Сообщение от infobos Посмотреть сообщение
И так сделано под windows x32
Скачал из первого поста. Извиняюсь, теперь заработало.
1
Строитель
 Аватар для infobos
460 / 77 / 4
Регистрация: 18.06.2010
Сообщений: 515
11.08.2017, 20:13  [ТС]
Цитата Сообщение от fever brain Посмотреть сообщение
Где же вы собираетесь черпать формулы нахождения кратчайших маршрутов для создания всех цветов хотябы одной стороны ?
Я не собираюсь это делать! Как пример, запустить поиск кротчайшего пути через тупой перебор различных комбинаций. Написать алгоритм, который будет сохранять приоритетные формулы. И потом найти тысячи готовых решений, которые будут сравниваться с комбинацией кубика и выдавать кратчайший путь для игрока. Но я не буду этим заниматься.

Добавлено через 13 минут
Вернее миллиарды комбинаций кубика сократить до значимых формул. Уничтожить повторения комбинаций. Уничтожить еще всякие лишние операции и оставить самые короткие пути. Потом эту базу коротких формул применять к сущестующей запутанности кубика. К примеру проверить по базе тысячи комбинаций кубика с существующей запутанностью и предложить эту формулу. Мы просто за ранее на каждую запутанную комбинацию будем иметь самый короткий путь сборки, который ранее нашли и записали как приоритетные формулы сборки.

Тупо на каждую запутанность будем иметь уже записанное решение комбинаций. У нас просто за ранее будет база со множеством решений.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.08.2017, 20:13

Кубик рубик с разными гранями
Купил кубик рубик с разными гранями. Не могли бы подсказать как его собрать. Алгоритмы сборки.

Кубик рубик С++ & OpenGL
Здравствуйте, я начал изучать С++ и мне дали задание сделать кубик рубика на С++ и OpenGL, до этого был front-end программистом, базу знаю....

Как сделан этот кубик рубик?
Как сделан этот кубик рубик? как сделаны эти стрелочки?

Кубик-рубик: реализовать управление мышью
Есть рабочая программа Кубик Рубика, помогите обработать управление мышью, чтобы можно было мышью собирать его? using System; ...

Кубик рубик с разными цветами+подпись
в Pascal Срочно нужно, заранее спасибо!!


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Просветление в 5 секунд
kumehtar 10.07.2026
Андрей Веретенников выдал фразу недавно: "Вам не обязательно кем-то себя считать"
Эксперимент с картинкой-обложкой на CodinGame
Adler 10.07.2026
Решил на днях провести эксперимент. У меня есть аккаунт на CodinGame, ТОП-3 по РФ среди 2200 участников (в разделе соревнования по программированию ИИ-ботов). Там есть обложка, куда можно влепить. . .
GitDOS: Когда я решил скрестить MS-DOS, GitHub и Claude
MaGz GoLd 08.07.2026
Привет, Киберфорум! Хочу поделиться своим проектом, который, надеюсь, вас заинтересует. GitDOS — это веб-приложение, которое позволяет запускать DOS в браузере с тремя крутыми фичами: диски живут в. . .
Учебный мини "цифровой двойник" = (Сервер = Java + Flask_питон )+(3D = Гугловскаая 4T nvideo + google colab) +( WMS = Odoo на Docker)
anaschu 07.07.2026
Увидел в требованиях к вакансии создателя имитационных моделей связку (REst + Api + WMS + Anylogic + питон + 3D Nvideo), и решил посмотреть, что это такое. Из этого всего я работал более менее. . .
Море в объективе
kumehtar 06.07.2026
Хотел написать много проникновенных слов, но передумал. Оно само - говорит. Кто слышит тот слышит.
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 лет и более. Наверное, закисление почвы происходит сезонно в средней. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru