Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
1

Cards II (Pre-Pre-Alpha) 0.05

09.05.2024, 13:54. Показов 4935. Ответов 98
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Кое-кто тут недавно утверждал, что я не могу сделать что-то не глобальное, только гигантскую MMORPG, которая будет делаться 25 лет. Много было и грязи, и кое-чего еще похуже... Поэтому - вот маленький проект! Так как ссылка на скачивание Карт была недавно удалена, то я решил сделать их сиквел - Cards II! (Ссылка ведет на сайт, там уже можно скачать EXE или искать скриншоты, скрипты для Linux и т. д.) Это первый проект от компании Red-Star-Soft, получивший вторую мажорную версию! Предыдущая была на устаревшем движке, эта разработана на движке, который не скоро устареет, в трех измерениях, с камерой, небом и прочими атрибутами 3D! При этом трассировки, Lumen, Nanite и другие опции, требующие мощного компьютера и современной видеокарты, здесь отключены, благодаря чему игра запустится даже на среднебюджетном ноутбуке 5-летней давности! Вот какие функции доступны в первой версии:
- Уже можно удалять одинаковые карты.
- Уже есть бонусные белые карты.
- Уже есть помощь, показывающая правила игры и комбинации клавиш.
К сожалению, подсказки и перемешивание карт пока что в разработке. Есть баг, что если отображается сообщение, одинаково можно нажимать на карты. Также есть проблема, что картинка помощи была позаимствована из старой версии и не отображает то, что игра стала трехмерной. Вот трехмерный скриншот новой игры, если не верите:
Cards II (Pre-Pre-Alpha) 0.05

Надеюсь, в этот раз хоть кто-то соблаговолит протестировать.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.05.2024, 13:54
Ответы с готовыми решениями:

Как вытащить все данные между тегами <pre></pre>
Добрый вечер! Ребята, как получить текст с страницы? Сама страница: &lt;html&gt;&lt;head&gt;&lt;link...

Вставка тега <pre></pre> в файлы директории
Здравствуйте, форумчане! Не подскажете как можно средствами php вставить тег &lt;pre&gt;&lt;/pre&gt; во все...

Pre-alpha Season Unreal Tournament
Качаю последнюю версию, которая уже в разработке, потому что 3 для меня не актуальна - накувыркался...

Вывести ответ сервера в <pre></pre>
Добрый день! Подскажите, пожалуйста, как мне в примере ниже сделать так, чтобы значение data...

Hash Function Efficiency v0.1 pre-Alpha (May 11th, 2017)
Вот код, для наглядности (cyberforum.ru - не сохраняет оригинал кода! может не компилироваться) ...

98
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 11:39 41
Author24 — интернет-сервис помощи студентам
Нужно что-то типа такого.
Почитайте документацию по структуре объектов в godot
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 11:43  [ТС] 42
-_human_-, заработало! Только сцена слишком темная. Как исправить?
Миниатюры
Cards II (Pre-Pre-Alpha) 0.05  
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 11:44 43
Т.е. var card = get_node("res://Cards/Card.tscn").new(); будет использоваться, если уже где-то есть созданный объект, к которому Вы хотите обратиться, например, для изменения каких-то параметров. Но делается это не через системный путь, а через дерево сцены - https://docs.godot.community/t... _tree.html

А если нужно создать новый экземпляр сцены, то нужно загрузить сцену - load или preload через системный путь, инициализировать её, изменить нужные параметры и после этого её загрузить

Добавлено через 15 секунд
И да, точки с запятой не нужны
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
4323 / 2192 / 966
Регистрация: 01.06.2021
Сообщений: 7,551
10.05.2024, 11:44 44
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Nonexistent function 'new' in base 'PackedScene'
Вполне логичная ошибка.
PackedScene.new() это если вы в коде создаете

Если же вы хотите получить Node из PackedScene, то для этого есть instantiate(). Кстати, перед вызовом данной функции можно еще сделать проверку can_instantiate().
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 11:45  [ТС] 45
Цитата Сообщение от -_human_- Посмотреть сообщение
И да, точки с запятой не нужны
Почему?
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 11:46 46
Etyuhibosecyu, для настроек окружения в 3д сценах есть нода world_environment.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
4323 / 2192 / 966
Регистрация: 01.06.2021
Сообщений: 7,551
10.05.2024, 11:46 47
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
Только сцена слишком темная. Как исправить?
https://docs.godotengine.org/e... nment.html
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 11:48 48
Потому что язык gdscript использует пробелы или табы вместо точек с запятой, если я ничего не путаю
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
4323 / 2192 / 966
Регистрация: 01.06.2021
Сообщений: 7,551
10.05.2024, 11:50 49
-_human_-, да, синтаксис как у Python. Хотя, в GDScript есть даже статическая типизация, чего нет в питоне.
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 11:53 50
Etyuhibosecyu, по поводу cards II - очень неудобный угол обзора, плохо видны дальние объекты. Плюс явно хочется, чтобы картинка была более сглаженной.

Добавлено через 1 минуту
Плюс интересно было бы знать, просчитывается ли при генерации поле так, чтобы победа всегда была возможна, или это просто рандом?
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
4323 / 2192 / 966
Регистрация: 01.06.2021
Сообщений: 7,551
10.05.2024, 11:53 51
Цитата Сообщение от -_human_- Посмотреть сообщение
Плюс явно хочется, чтобы картинка была более сглаженной.
MSAA включается в настройках проекта, еще можно включить FXAA для вьюпорта

https://docs.godotengine.org/e... asing.html
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 11:56  [ТС] 52
Цитата Сообщение от -_human_- Посмотреть сообщение
очень неудобный угол обзора, плохо видны дальние объекты.
А какие дальние объекты, небо?
Цитата Сообщение от -_human_- Посмотреть сообщение
Плюс явно хочется, чтобы картинка была более сглаженной.
Ну, тут шейдер, текстура с белой цифрой, затем подмена белого на нужный цвет. Проверка идет >=192 по R, G и B, а там, где меньше на переходе, подмена не работает.

Добавлено через 2 минуты
Цитата Сообщение от -_human_- Посмотреть сообщение
Плюс интересно было бы знать, просчитывается ли при генерации поле так, чтобы победа всегда была возможна, или это просто рандом?
Ну, там сначала идет генерация карт подряд, а затем Shuffle, так что теоретически, наверное, возможны расклады, где нельзя победить, но их немного.
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 12:03 53
Цитата Сообщение от Etyuhibosecyu Посмотреть сообщение
А какие дальние объекты, небо?
Дальние фишки плохо видны, нужен либо меньший угол обзора либо возможность вращать поле для обзора

П.С.
Выражаюсь, конечно, очень понятно в кавычках...
Под меньшим углом имелся в виду угол к нормали

Добавлено через 6 минут
Особенно проблема с 3д заметна в том, что спустя некоторое время дальние фишки скрываются за более близкими из-за уменьшения высоты столбика.
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 12:04  [ТС] 54
Цитата Сообщение от -_human_- Посмотреть сообщение
Дальние фишки плохо видны, нужен либо меньший угол обзора либо возможность вращать поле для обзора
Там 30 градусов, вот на Godot сделал 45, к сожалению, пока карты не раскрашены и не текстурированы, но угол видно, так лучше?
Cards II (Pre-Pre-Alpha) 0.05
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 12:07 55
Etyuhibosecyu,
Особенно проблема с 3д заметна в том, что спустя некоторое время дальние фишки скрываются за более близкими из-за уменьшения высоты столбика.
Проблема не исчезнет, в простейшем случае можно сделать фишки круглыми, цифры заменить на точки и дать игроку возможность вращать стол вокруг центральной оси для обзора. Если все это сделать для смартфона, то будет какая-никакая мобильная времяубивалка
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 12:38  [ТС] 56
Новая проблема.
Код
	var prefab = load("res://Cards/Card.tscn");
	for i : int in range(forms_array.size()):
		var card : Node = prefab.instantiate();
		add_child(card);
		card.get_node("StaticBody3D/CSGMesh3D").get_material().set_shader_parameter("texture_albedo", forms_array[i].texture);
		card.get_node("StaticBody3D/CSGMesh3D").get_material().set_shader_parameter("color", forms_array[i].color);
		card.position = Vector3((i % 8 + i / 8 % 8 - 7) * 0.2, i / 64 * 0.02, (i % 8 - i / 8 % 8) * 0.1);
Вроде бы устанавливаю текстуру и цвет у каждой карты отдельно, а все карты одного цвета и с одной текстурой:
Cards II (Pre-Pre-Alpha) 0.05

Может, у материала тоже есть что-то в стиле instantiate()?
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 12:47  [ТС] 57
Все, починил.
Код
		var mat : Material = card.get_node("StaticBody3D/CSGMesh3D").get_material().duplicate()
		card.get_node("StaticBody3D/CSGMesh3D").set_material(mat)
		mat.set_shader_parameter("texture_albedo", forms_array[i].texture)
		mat.set_shader_parameter("color", forms_array[i].color)
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 12:48 58
Не знаю, в чём проблема, мне проще искать ошибки обладая на руках всем проектом, но как минимум, зачем нужно вот это:
var card : Node = prefab.instantiate();
Почему не
Код
var card = prefab.instantiate()
card.get_node("StaticBody3D/CSGMesh3D").get_material().set_shader_parameter("texture_albedo", forms_array[i].texture)
card.get_node("StaticBody3D/CSGMesh3D").get_material().set_shader_parameter("color", forms_array[i].color)
card.position = Vector3((i % 8 + i / 8 % 8 - 7) * 0.2, i / 64 * 0.02, (i % 8 - i / 8 % 8) * 0.1)
add_child(card)
0
Труд вопреки насмешкам
 Аватар для Etyuhibosecyu
312 / 174 / 40
Регистрация: 13.07.2017
Сообщений: 3,608
Записей в блоге: 8
10.05.2024, 12:50  [ТС] 59
Цитата Сообщение от -_human_- Посмотреть сообщение
но как минимум, зачем нужно вот это:
Вы имеете в виду " : Node"? Это чтобы явно указать тип, чтобы не тратить впустую ресурсы на упаковку/распаковку из Any.
0
72 / 57 / 19
Регистрация: 18.05.2021
Сообщений: 256
10.05.2024, 12:52 60
Etyuhibosecyu, А, я несколько другой синтаксис для этого помнил...
0
10.05.2024, 12:52
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.05.2024, 12:52
Помогаю со студенческими работами здесь

Тэг PRE
Всем привет, есть довольно таки специфический вопрос, хоть я и знаю, что к тэгу pre мало какие...

Отличие <pre> от <p>
Скажите, в чём отличие между этими тегами?

перенос и <pre>
столкнулся с такой проблемой - если текст выводить с помощью &lt;pre&gt; то если например текст вводился...

Тег <pre>
Как сделать так, что несколько тегов &lt;pre&gt; будут идти в одну линию, причем по верхнему краю ...

BusyBox 0.61 pre
Товарищи форумчаны, столкнулся сей проблемой на BusyBox, у меня ADSL модем ZTE W300, мне необходимо...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Человек и информация
hw_wired 28.01.2025
Введение: роль информации в познании мира В современном мире информация играет фундаментальную роль в процессе познания окружающей действительности. Она представляет собой совокупность сведений об. . .
Компьютер и информация
hw_wired 28.01.2025
Эволюция вычислительных машин История развития вычислительной техники начинается задолго до появления первых электронных устройств. Человечество всегда стремилось упростить процесс вычислений и. . .
Информационные технологии
hw_wired 28.01.2025
Введение в современные технологии работы с информацией В современном мире информационные технологии стали неотъемлемой частью практически всех сфер человеческой деятельности. Они существенно. . .
Информация вокруг нас
hw_wired 28.01.2025
Основные понятия информации В современном мире понятие информации является фундаментальным и охватывает практически все сферы человеческой деятельности. Информация представляет собой совокупность. . .
Компьютер для начинающих
hw_wired 28.01.2025
Введение в мир компьютерных технологий В современном мире информация стала одним из важнейших ресурсов человечества, определяющим развитие общества и технологий. Наша жизнь неразрывно связана с. . .
[golang] 189. Rotate Array
alhaos 28.01.2025
Повороты рукоятки, целочисленный слайс нужно сдвинуть на целое положительное число. Мне очень нравится решение на GO / / https:/ / leetcode. com/ studyplan/ top-interview-150/ package topInterview . . .
КуМир: решение задач на матрицы
bytestream 28.01.2025
КуМир представляет собой среду для обучения программированию, которая включает в себя мощные инструменты для работы с матрицами. Матрица в программировании - это двумерный массив, состоящий из. . .
КуМир: решение задач на строки
bytestream 28.01.2025
В системе программирования КуМир работа со строковыми данными является одним из важнейших аспектов создания программ. Строки представляют собой последовательности символов, заключенные в кавычки,. . .
КуМир: решение геометрических задач
bytestream 28.01.2025
Программирование геометрических задач в среде КуМир становится всё более актуальным в обучении школьников и студентов. КуМир — это разработанная в России обучающая программная среда, предназначенная. . .
КуМир, исполнитель Водолей: Задачи и решения
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир (Комплект Учебных МИРов) представляет собой образовательную среду для обучения основам программирования и алгоритмизации. Исполнитель Чертежник работает на координатной плоскости, где может. . .
Rust или Go? А может C++?
hw_wired 28.01.2025
С каждой новой технологией или методологией появляются новые языки программирования, призванные решать конкретные задачи либо улучшать аспекты производительности и безопасности. Среди множества. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru