М.Двач / Gamedev

Этого треда уже нет.
Это копия, сохраненная 6 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

2 Кб, 300x50
LibGDX-тред 3 апр 2016, 08:47 250576 В конец треда | Веб

Java + LibGDX = Desktop/Android/BlackBerry/iOS/HTML5 games

Давайте обсудим опыт использования данной библиотеки - как помогла/помешала вам претворить в жизнь свои идеи? С какими подводными камнями столкнулись? Какие игры пишете на ней и рекомендуете писать?

Сурс: https://libgdx.badlogicgames.com/index.html

Ответы250587251323281047384318400080404325468523644337

2 3 апр 2016, 08:52 2 250577

Сам пишу спэйсшип-шутан для дроида, около сотни спрайтов на экране. Физику Box2D решил не использовать, т.к. слишком много сущностей приходится плодить, плюс с багами тяжело разбираться. Проще, мне кажется, самому обсчитать коллизии.

К слову, в движок встроена мощная система частиц, и редактор к ней (который, правда, отказывался сохранять и загружать файлы, так что пришлось копаться в его исходниках и пересобирать). Не знаю, правда, насколько это ресурсоёмко - на андроиде пока не тестировал.

Ответы468523

43 Кб, 642x505
3 3 апр 2016, 10:08 3 250587

>>250576 (OP)
Пишу на нём свой рожалик.
>подводными камнями
Мне неудобна система координат y-up, которая в libgdx по-умолчанию. В большинстве критических мест, правда, есть возможность создать y-down через особые конструкторы и т.п. Но всё равно, где-нибудь привязка к y-up обязательно вылазит. Например, в гуе (scene2d). Изрядно с ним помучился.

Ответы250597253991258587260354468523

4 3 апр 2016, 10:50 4 250594

Анасы, сколько gd-шник - одиночка, пишущий под андроиды всякие, может зарабатывать на своих приложухах?
gd-шник средней криворукости и одарённости.

Ответы250595250596316543

5 3 апр 2016, 10:55 5 250595

>>250594
0. Кирилл, который собирается пилить говнецо под мобилки для заработка обречен на провал.

Ответы250600

6 3 апр 2016, 10:57 6 250596

>>250594
Мониторь плеймаркет. Найди платные игры разного качества (по своим силам), посмотри цену и примерное кол-во скачиваний. Если что интересного найдёшь, вбрасывай.

7 3 апр 2016, 11:01 7 250597

>>250587
Y-up это когда ордината увеличивается снизу-вверх? Ну так вроде более естественно для матана.

8 3 апр 2016, 11:54 8 250600

>>250595
Нахуй иди. Тебе вопрос нормально поставили.

Ответы250621250629

9 3 апр 2016, 13:05 9 250621

>>250600
Пернул тебе в лицо за такие вопросы. Сделай одолжение - выпились. Избавь мир от высранного тобой мусора.

Ответы250622

10 3 апр 2016, 13:08 10 250622

>>250621
Мусоришь здесь главным образом ты.
Съебись и не возвращайся.

Ответы250627

11 3 апр 2016, 13:32 11 250627

>>250622
>Мусоришь здесь главным образом ты
Но я не заливаю говно на google market. Ты ошибся

Ответы250630

12 3 апр 2016, 13:35 12 250629

>>250600
Все верно тебе ответили, если не готов вкладываться в раскрутку то твою игру никто даже не увидит в плотном потоке фекалий.

Ответы250630

13 3 апр 2016, 13:38 13 250630

>>250627
Мы не на google market, наркот ты ебаный.
>>250629
Так ты ещё и семён, блять. Я что-то про раскрутку спрашивал? Ты что несёшь вообще? Прочитай вопрос внимательно или пиздуй в начальную школу- попроси научить тебя общаться с людьми.
Но не отвечай, блядь, на вопросы, не понимая, о чём тебя спрашивают. А тем более не исходи на говно, только зайдя в тред.

Ответы250635250636411872

14 3 апр 2016, 13:46 14 250635

>>250630
Пссс-пссс тебе на ебало.

Ответы250638

15 3 апр 2016, 13:46 15 250636

>>250630
Хуй саси

Ответы250638

16 3 апр 2016, 13:49 16 250638

>>250635
>>250636
Ну зачем ты в этом треде? Ты же просто бессмысленно гадишь вокруг себя.

17 3 апр 2016, 13:58 17 250639

>>250625
А я и не делал. Ну, т.е., не пришлось пока. Так то в сторону behavior trees посматриваю, но это всё потом. Сейчас, пока ещё я не определился с тем, какие вообще будут возможности в игре, ИИ в конечном виде делать рано. Пока у меня все NPC просто следуют такой модели: ходят рандомно (подбирают предметы, воскрешают трупы союзников), пока не увидят враждебный юнит (не только игрока), вычисляют путь до него (астаром), идут туда (или стреляют-нюкают, если умеют). Если в процессе цель неизвестно куда пропала (ушла из зоны видимости, например) - идут на последнюю известную точку. Ну и, когда хп мало, начинают убегать в сторону "от ближайшего врага". Вот и весь "ИИ".

18 3 апр 2016, 14:25 18 250646

Я этот либгдх даже установить не смог.

Ответы250648

19 3 апр 2016, 14:28 19 250648

>>250646
Его не надо устанавливать.
1. Качаешь.
Готово.

Ответы309770

20 3 апр 2016, 14:37 20 250651

>>250647

FAILURE: Build failed with an exception.

What went wrong:
Task 'clean' not found in root project 'НАЗВАНИЕ_ПАПКИ'.

Try:
Run gradlew tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

BUILD FAILED

Total time: 59.334 secs

Где "НАЗВАНИЕ_ПАПКИ" - дефолтная директория командной строки Windows.

Ответы250662

21 3 апр 2016, 15:02 21 250662

>>250653
>>250651

Там же сейчас вроде идёт приложение-установщик, который настраивает проект, создаёт и копирует все файлы.

22 3 апр 2016, 15:03 22 250663

>>250653
Не работает у меня gradle, как я понял. Не видит файлы в папке, а ищет их в дефолтной директории.

23 4 апр 2016, 03:37 23 250798

Единственный подводный камешек - не полностью контролируемая game loop. В остальном замечательная либа. Рендерит картинки, играет звуки, что ещё надо?. Идеальный уровень абстракции лично для меня: ниже уже байтоёбство, выше уже конструктор. Местами не хватает некоторых удобных методов, есть либо без нужных мне параметров, либо с нужными и кучей ненужных. Но если пишешь на Kotlin, то и это не проблема.

Ответы250804250808

24 4 апр 2016, 06:07 24 250804

>>250798
>не полностью контролируемая game loop
Поясни, пожалуйста.

Ответы250809

25 4 апр 2016, 07:39 25 250808

>>250798
А ещё LibGDX не поддерживает изкоробки скелетную анимацию. Библиотека есть только у мегадорогого Спайна. Короче, ненужно.

Ответы418201

26 4 апр 2016, 07:46 26 250809

>>250804
Ты не можешь контролировать как зовётся метод render. Он просто будет зваться и всё. Поэтому чтобы написать правильную петлю, способную рендерить так часто как можно и считать состояние с фиксированным рейтом, приходится маленько изъёбываться. Ну вообще это довольно легко одолимая проблема.

Ответы268767

27 5 апр 2016, 04:17 27 251001

Ох ты ж ёжики. Почему-то только сейчас увидел, как изящно у них сделана передача данных из тредов в рендерящий тред:
https://github.com/libgdx/libgdx/wiki/Threading
Надо раскурить более детально как в JVM синхронизация устроена, возможно, ещё одной маленькой проблемой станет меньше.

Ответы251144

28 5 апр 2016, 07:04 28 251004

>>250672
В чем вообще профиты грэдла? Почему грэдл, а не ант/мавен?

Ответы251169

29 5 апр 2016, 17:44 29 251144

>>251001
Бро, в чём профиты мультитредовости в 2д игре? В смысле, там же простая логика: читай ввод -> просчитывай положение/состояние -> рисуй.

Ответы251192251200

sage 30 5 апр 2016, 18:54 30 251153

>>251126
>хотя должно быть видно
Нет.
Алгоритмы los разные и выдают разные результаты. Это нормально. Если бы ты делал максимум-реализм-3д, да, было бы не очень удобно, что монстр тебя не видит, так как у вас между центрами моделек стенки кусок, а ты его видишь, потому что тебе достаточно, чтобы его левый мизинец в камеру попадал, чтобы предположить, что он есть. А для рогалика то какая разница? Просто ещё один элемент абстракции. По правилам игры ты видишь только то, что на одной брезенхемовской линии лежит с твоей клеткой и всё.

31 5 апр 2016, 19:41 31 251169

>>251004
Хз зачем, но антом точно не надо пользоваться - устаревшее говно мамонта. А мавен ещё вполне норм - не у всех ХМЛфобия.

32 5 апр 2016, 21:00 32 251192

>>251144
Да, читай-считай-рисуй это хорошо, а вот за сеть я почему-то переживаю. Сеть охота в отдельном треде вести. Сеть блокирующая и явно является io. Гайды не рекомендуют вести io в рендертреде.

Ответы251205

33 5 апр 2016, 21:48 33 251200

>>251144
А физдвижок?

34 5 апр 2016, 22:22 34 251205

>>251192
Кстать, по поводу разработки сетевого движка есть хорошая статья:
http://ithare.com/64-network-dos-and-donts-for-game-engine-developers-part-iib-protocols-and-apis-continued/
(в либгиске я на сколько понял ничего такого особого полезного для сети и нет).

Ответы251206251218

35 5 апр 2016, 22:27 35 251206

>>251205
http://ithare.com/64-network-dos-and-donts-for-game-engine-developers-part-i-client-side/
Точнее, вот, первая статья.

36 6 апр 2016, 00:15 36 251218

>>251205
Ух ты, славная статья, спасибо! Я читал только gafferongames на эту тему, надо прочитать ещё эту.

37 6 апр 2016, 13:16 37 251306

>>251302
Даун конченый. Любое IDE для быдлокода на жаве сойдёт.
Всё равно не осилишь ничего дельного.

38 6 апр 2016, 13:21 38 251309

>>251302
>Чтобы не ебать себе мозги с редакторами, компиляторами, функционалом и проч
Дегенерат ебучий. Тебе кнопка "Сделать всё заебись" нужна? Не хочешь ебать себе мозги - спизди у мамки 100 рублей и иди блейзера купи, выпей в падике.
Нахуя ты в /gd/ зашёл, уёбище? Становись дворником - не будешь ебать себе мозг ничем.
Пидор.
Уходи.

39 6 апр 2016, 13:32 39 251316

>>251314
>полноценный IDE для разработки игр
"Дайти мине прилажение, где я кнопка нажму и сразу получица игра года и я милион заработаю! Только штоб писать код не надо было, я не прагармировать хочу а игры делать хорошие. Если нада код писать или там думать гденибудь то это говно ни давайте. Кампилятор разбираться не хочу я жи игру буду делать и ни прилажение, я в игры с 8 лет играю всё придумол как надо делать".
>я хочу разработкой заниматься
"Толька чтоп без всяких кампилятарав и редактарав, я вам ни канфуций в этой сложной хуйне расбиратса"
Проваливай уже отсюда, игродел мамкин.

Ответы251318

40 6 апр 2016, 13:42 40 251318

>>251316
Долбоеб. Простейший встроенный графический редактор, интерфейс для подключения библиотек или модулей, редактор сцен и прочая мелочь, вот что мне нужно. При чем тут твои маняфантазии? Тебе в голову не приходит, что правильная организация работы может ускорить разработку и сделать ее более удобной?

Ответы251320290906

41 6 апр 2016, 13:44 41 251320

>>251318
ynyty

Ответы251321251322

42 6 апр 2016, 13:45 42 251321

>>251320
У тебя тут персональный раковник или ты просто после школы расслабиться зашел?

Ответы251323

43 6 апр 2016, 13:47 43 251322

>>251320
Какой unity ему? Ты что? Там же мышкой много двигать надо и клавиатурой пользоваться.
И думать придётся. Ему проще надо, чтоб за 5 минут GTA VII накалябать.

44 6 апр 2016, 13:56 44 251323

>>251321
>>250576 (OP)

45 6 апр 2016, 14:27 45 251327

>>251325
>IntelliJ IDEA
>>251302
>не ебать себе мозги с редакторами, компиляторами, функционалом
Ты тоже умом не вышел. Он просил же без сложной хуйни.

Ответы251330251331

46 6 апр 2016, 14:33 46 251330

>>251327
Без сложной хуйни пусть берет фпс креатор.

47 6 апр 2016, 14:36 47 251331

>>251327
Пусть пишет свои редакторы или ищет готовые решения. Если не может, то ynuti его выбор

70 Кб, 300x100
48 6 апр 2016, 14:54 48 251336

>>251332
>инструментов, которые в ней отсутствуют
Нет кнопки "сделать пиздато".

>Смущает обрезанная версия
Ты даже десять процентов возможностей идеи не будешь использовать, дегенерат. Как установишь и обосрешься в самом начале на создании libgdx проекта - прибегай, мы тебя будем ждать.

Ответы251344

49 6 апр 2016, 15:10 49 251342

Пустой проект на HTML5 билдится 2 минуты, что я делаю не так?

50 6 апр 2016, 15:13 50 251344

>>251336
Через 2 года он сделает змейку толщиной в 1 пиксель и придёт нассать тебе на ебало.

51 6 апр 2016, 15:56 51 251358

>>251332
Бро, не смущайся. Отсутствует только всякий кровавый энтерпрайз. Всё что нужно для комфортной разработки с LibGDX там есть. Базарю, после неё никакая другая Java IDE не вкатит. Она чуть ли не думает за тебя. Стоп, почему Java? Она ж полиглот.

Ответы251360

sage 52 6 апр 2016, 16:00 52 251360

>>251358
А ОП - хуеглот, азазаззаз

53 6 апр 2016, 16:07 53 251361

Как насчёт использования Jython с Libgdx? Правда, исполнение Jython возможно только на десктопной JVM. Кто-нибудь пробовал?

Ответы251363

54 6 апр 2016, 16:13 54 251363

>>251361
Надо смотреть, как там дела с GC. LibGDX, да и вообще геймдев на Java, не любит GC. Если на Jython можно не мусорить, то должно сработать. Другие JVM-языки вполне ок пашут.

sage 55 6 апр 2016, 19:39 55 251398

>>251383
>встроенного редактор сцен для Libgdx
Overlap2D

56 6 апр 2016, 20:03 56 251408

>>251399
Убогий кусок кала высранный любителем, как и все написанное на жаве впрочем. Неюзабельно.

57 7 апр 2016, 08:33 57 251540

>>251286
А расскажи плиз подробнее. По сайту не очень понятно. Там просишь либу сериализовать произвольный pojo? А потом когда десериалиация на другом конце, можно десериализовать в существующий объект, а не чтоб новый создавался? Типа чтобы не плодить мусор.

Ответы251752

sage 58 7 апр 2016, 14:09 58 251611

>>251573
Как же юнитидебилов корёжит от самого лучшего 2д-движка.
http://www.slant.co/topics/341/~2d-game-engines
И самого популярного на гитхабе:
https://github.com/showcases/game-engines
Даже мне, ненавистнику Джавы, нечего сказать против него. Придётся пользоваться.

59 7 апр 2016, 16:20 59 251633

>>251302
Рекомендую виртуальную машину Java версии 1.8

60 8 апр 2016, 05:19 60 251752

>>251540
Посмотрел. Если кому интересно - Kryonet мусорить будет. По ходу велосипеда не миновать.

61 8 апр 2016, 18:04 61 251901

>>251800
Хм, слушай, приятель, беру слова обратно, вчитался повнимательнее - класс Kryo весьма хитрожопо реализован и по ходу всё pool'ит, как и сабж треда. Видать жопой смотрел. Не первый раз причем уже такая паранойя. В прошлый раз померещилось, что мусорит java.net.DatagramSocket, с утра на свежую голову перечитал код - нихера.

Ответы252181252338

62 8 апр 2016, 20:27 62 251930

>>251332
>Спасибо. Из того, что я нашел на их сайте могу сделать вывод что штука очень удобная. Смущает обрезанная версия, и нет четкого списка инструментов, которые в ней отсутствуют. Но в целом выглядит очень круто. "Из коробки".
Блядь, ты троллишь? Это не геймдев ИДЕ. Это обычная ИДЕ, как эклипс. И никаких дополнительных благинов у неё под либгдх нет. Потому что либгдх - это тебе не движок уровня УЕ4 и вообще жаба - это тебе не геймдев.

Ответы251931251933

63 8 апр 2016, 20:29 63 251931

>>251930
>жаба - это тебе не геймдев
Что тогда тред делает в /gd? Пожаловался модератору.

Ответы251935

64 8 апр 2016, 20:31 64 251933

>>251930
А как же майнсруфт и 80 процентов всех игр под андроид а до ведроида была j2me с миллиардами игр

Ответы251939

65 8 апр 2016, 20:35 65 251935

>>251931
Обезумел?

66 8 апр 2016, 20:46 66 251938

>>251936
А плюсы или шарп имеют? Это про любой язык можно сказать.

67 8 апр 2016, 20:47 67 251939

>>251933
Ммм, а откуда такие цифри про андройд?

Ответы252178

68 10 апр 2016, 08:17 68 252178

>>251939
Из логики. А на чём ещё писать?

69 10 апр 2016, 09:16 69 252181

>>251800
Сначала мне показалось, что он мусорит. Потом что не мусорит. А потом я проверил:
http://pastebin.com/imUjAQEi

Запустил с -verbose:gc и что же я вижу:
START
00:00 INFO: Connecting: localhost/127.0.0.1:54555/54777
00:00 INFO: [kryonet] Server opened.
00:00 INFO: [kryonet] Connection 1 connected: /127.0.0.1
00:00 INFO: [kryonet] Connection 1 connected: localhost/127.0.0.1
[GC (Allocation Failure) 24064K->1988K(90624K), 0,0053698 secs]
[GC (Allocation Failure) 26052K->1296K(90624K), 0,0033659 secs]
[GC (Allocation Failure) 25360K->1248K(90624K), 0,0029783 secs]
[GC (Allocation Failure) 25312K->1248K(90624K), 0,0028946 secs]
[GC (Allocation Failure) 25312K->1224K(88064K), 0,0023036 secs]
[GC (Allocation Failure) 24776K->1224K(87552K), 0,0033813 secs]
[GC (Allocation Failure) 24264K->1329K(86016K), 0,0027664 secs]
[GC (Allocation Failure) 23857K->1297K(87040K), 0,0006661 secs]

И так далее

>>251901 - кун

6 Кб, 125x240
70 10 апр 2016, 15:47 70 252235

Анон, помоги! Второй день не могу разобраться (^._.^)ﾉ

Делаю раннер, только не горизонтальный, а вертикальный. Объект как бы спускается по лестнице, двигается влево-вправо, а фон едет вверх. Инстанцирую два объекта фона, один под другим, когда верхний уезжает из кадра, то кладу его под нижний, и так далее.

Как правильно означивать скорость объекта и фона в таком случае? Чтобы можно было менять скорость объекта и скорость фона, и при этом ни один из этих параметров не зависел бы от текстуры фона.

Потому что рано или поздно объект начнёт смещаться и выйдет за линии лестницы. Надеюсь на помощь от анона ^____^

Ответы252245

71 10 апр 2016, 17:21 71 252245

>>252235
Добрый человек, по сути вопроса не подскажут, но по геймплею хочу уточнить: не боишься, что на телефоне игрок будет своими пальцами, которыми управляет, сам себе обзор загораживать? Подумай об этом, хорошо? А то игра бесить будет.

Ответы252260

139 Кб, 1593x880
72 10 апр 2016, 18:44 72 252251

Я уже начинаю жалеть, что я не выбрал юнити - столько разных велосипедов приходится выдумывать, чтобы хоть что-то адекватное слепить из этого говна.

Ответы252299308562

73 10 апр 2016, 19:15 73 252260

>>252245
У меня в нижней части экрана будет затемнение (как бы имитирующее то, что лестница плохо освещена, и того, что внизу, не видно). Туда можно будет и тыкать без проблем с эргономикой |･ω･)

74 10 апр 2016, 22:52 74 252299

>>252251
Почему ты сравниваешь фреймворк с движком и ещё удивляешься?

75 11 апр 2016, 05:10 75 252338

И тут до слоупока дошло, что есть же G1GC. С параметрами
-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+UseG1GC -XX:MaxGCPauseMillis=1
тот же код http://pastebin.com/imUjAQEi заставляет GC работать часто, но недолго. Ни одна GC pause не превосходила полторы миллисекунды, а случались они от одно раза в 4 секунды до 3 раз в секунду. По-моему, очень приемлимая цена. Наверное, если не писать под андроид, а писать только под HotSpot, то можно значительно снизить объём возни с пулами и аккуратного байтоёбства. Ну или по крайней мере позволить себе одну-другую мусорящую либу.

>>251901 - кун

Ответы252469

76 11 апр 2016, 20:21 76 252451

Жабоёбы, кто-то пробовал запиливать своё говно под jmonkeyengine? У них даже какая-никакая своя ИДЕ есть на нетбинсе правда.

Ответы253671

77 11 апр 2016, 21:18 77 252469

>>252338
Спасибо за разбор.

78 19 апр 2016, 18:07 78 253440

Что, все? Все перекатились на Юнити?

79 20 апр 2016, 08:54 79 253538

>>253456
Ты охуел обсуждать нечего?
Это как раз такая библиотека, которую можно обсуждать, как уе4 нахуй.не потому что она хорошая, а потому что в ней почти нихуя нет и надо каждый раз пилить свой лесопед

Ответы253542

80 20 апр 2016, 09:24 80 253542

>>253538
Хорошо, что ты хочешь обсудить?

Ответы253667

81 21 апр 2016, 00:16 81 253667

>>253542
Как организовывать архитектуру своего игоря на либгдкс?
Что меня очень бесит, так это всё время создавать новые объекты и передавать в ебучие конструкторы нужные объекты. Или ебашить везде статические объекты, чтобы не ебать себе мозг лишний раз?
И вообще, какие классы под какие нужны лучше выделять?
Есть какие-нибудь книжки по поводу архитектур игорей?
Только я чего-то сомневаюсь, что есть что-то современное, а уж тем более для жабы, всё-таки никто сегодня не будет делать в здравом уме игру на жабе (и уж тем более на крестах с нуля), когда доступно такое-то количество движков, где все эти основы уже запилены за тебя и поэтому банально не надо заморачиваться по поводу лоу левельной архитектуры, а только изучать, как пилить игру на конкретном движке.

Ответы253708254391

82 21 апр 2016, 00:56 82 253671

>>252451
Прошел немножко тюториалов. Норм библиотека, не нужно перемножать матрицы поворота, как в соседнем треде. Можно писать на высоком уровне, двигать объекты в координатах сцены. Прямо из коробки работает fps-камера. Как-то работает освещение. Есть пара материалов и базовых шейдеров. Есть привязка к Bullet.
На простенькой сцене тормозов не видел.
При релизе нужно переводить все модели в формат jmonkeyengine. Это делается в предоставленной ИДЕ не стоит этим пренебрегать, даже если уже есть нетбинс

Где-то на уровне threejs по возможностям, может даже и проще по написанию кода.

83 21 апр 2016, 10:52 83 253708

>>253667
Акторы и стейджи юзай. Я несколько дней назад решил так переписать свой говнокод и сейчас у меня нереальная мотивация от того как все хорошо выходит. Если интересно могу чуть позже на пастебин залить, там не много.
Поищи в субшоте посты про рогалик, там у него еще на битбаките репозиторий - я во многом на него ориентировался.

Ответы253986

84 23 апр 2016, 01:43 84 253986

>>253708
Ну, одними актёрами и стейджем не обойдёшься, чтобы что-то адекватное сделать в плане архитектуры...
А разве код рогалика опен сорсный? Он же говорил, что не будет выкладывать.

Ответы253991

sage 85 23 апр 2016, 06:22 85 253991

>>253986
>разве код рогалика опен сорсный?
Он про вот этот мой рогалик - >>250587
https://bitbucket.org/dksurname/rolik
Но я бы не советовал на мой код ориентироваться. У меня там маловразумительная каша и костыль на костыле. Я таки не программист.

86 25 апр 2016, 05:59 86 254391

>>253667
Не знаю, видел ли ты вот этот славный ресурс, на всякий случай держи: http://gafferongames.com/

87 25 апр 2016, 10:10 87 254402

Как сделать нормальное масштабирование графики гуи?

Ответы254418

sage 88 25 апр 2016, 11:43 88 254418

>>254402
Если у тебя не пиксельарт - всё нормально масштабируется и без лишних движений.
Если пиксельарт - сам виноват. Я, например, ответ на этот вопрос не нашёл и сделал в классе, который за гуй отвечает метод reset, который тупо все элементы переделывает под новый масштаб. Ну и вызываю его когда надо. Выглядит страшновато но вроде не тормозит даже на слабом железе.

89 27 апр 2016, 08:53 89 254755

Хорошо, а у меня другой вопрос: как отрубить это масштабирование к хуям?

90 27 апр 2016, 11:34 90 254764

Поделюсь годнотой, вот либа для добавления пост эффектов ( https://github.com/manuelbua/libgdx-contribs ). У меня же вопрос - кто либо использовал box2dlight в своих проектах? У меня источником света (PointLight) является динамическая фигурка игрока. В результате движения источника света тени других объектов прыгают, мерцают, выглядит уёбищно. Какой то анон пытался у них выпытать на офф форуме, но не получилось ( http://badlogicgames.com/forum/viewtopic.php?f=11&t=15602&start=10&hilit=Box2dLights ). Может кто сталкивался с этой проблемой?

Ответы254767

91 27 апр 2016, 12:17 91 254767

>>254764
А зачем делать динамическую фигуру игрока источником света? Сто если просто сделать чтобы в координатах игрока был обычный источник света?

Ответы254768

92 27 апр 2016, 12:21 92 254768

>>254767
У меня так и есть. Каждый игровой тик я устанавливаю источник света в позицию игрока. Если я правильно тебя понял

Ответы254780

93 27 апр 2016, 12:47 93 254780

>>254768
Я так же делал и норм было. Может у тебя порядок апдейта отрисовки какой-то не такой?

Ответы254786

94 27 апр 2016, 13:10 94 254786

>>254780
У меня что то такое получается - https://www.youtube.com/watch?v=FjF8l85FUhs , как на правой половине. Я могу это исправить например установив 2048 лучей для PointLight, но тогда среднее время отрисовки кадра
становится 10 мс, что много как по мне. Или я что то делаю не так? Вот ещё видос от того же поляка, показывающий как это у него получается https://www.youtube.com/watch?v=tMlrP2UYXss

Ответы254790254792

95 27 апр 2016, 14:04 95 254790

>>254786
2048 ЛУЧЕЙ, СУКА, АХАХАХ

Я думал, такую шизу только на юнити кто-то делает. Всё проще. Здесь нужна математика и генерация меша каждый кадр. Тогда всё будет занимать пару милисекунд. Но это достаточно сложно.

Ответы254797

96 27 апр 2016, 14:18 96 254792

>>254786
Лол, я 10-15 ставил.

97 27 апр 2016, 15:19 97 254797

>>254790
Я понимаю что делается математикой, я и сам бы сделал, прост не хочется тратить неделю времени на свой велосипед.

В общем я погуглил и нашёл альтернативы, буду прикручивать. Вот например https://github.com/mattdesl/lwjgl-basics/wiki/2D-Pixel-Perfect-Shadows . Надеюсь box2dlight будет когда нибудь работать вот так http://www.redblobgames.com/articles/visibility/

Ответы255232268773

98 27 апр 2016, 18:19 98 254829

>>254757
Ну масштабирование интерфейса, чтобы было как в л2, сколько бы не изменял размер окна, размер окошек интерфейса оставался прежним. А то сейчас scene 2d масштабирует его, в зависимости от размеров окна.

Ответы254834

99 27 апр 2016, 19:00 99 254834

>>254829
Тебе нужен ScreenViewport

Анон 100 1 мая 2016, 11:24 100 255232

>>254797
Я интегрировал gpu shadow, но он мне не понравился, по нему как то мало мануалов и прочего, плюс были мелкие странности. Решил попробовать переделать box2dlight, получилось, теперь лучи отправляются не веером наугад, а только по ближашим вершинам, пока производительность немного лучше, зато тени чётче. Когда доведу до ума может выложу куда.

101 9 мая 2016, 16:30 101 256998

>>250653
>IntelliJidea
И всё норм работает? Я качал проект под неё, но у меня не инициализировалась музыка из туториала. На оффоруме посоветовали эклипс, но под ним я не смог даже скомпилить, лол.
Может и у меня всё дело было в градле.

Ответы257055309168

102 9 мая 2016, 19:48 102 257055

>>256998
Я хуй знает, в чем у тебя там проблема, но скорее всего, у тебя просто не выставлен путь к ресурсным файлам.
http://stackoverflow.com/questions/28433012/how-do-i-link-assets-from-android-to-desktop-in-libgdx
Вот тут во втором ответе есть скриншот, как выставлять рабочую директорию при запуске.
И да, если у тебя что-то не работает, то ищи проблему у себя в проекте (или в настройках ИДЕ), но 100% не в самой ИДЕ (за исключением ну очень редких случаев).

Ответы257057

103 9 мая 2016, 20:10 103 257057

>>257055
С ассетами было всё ок, текстуры подгружались, не инициализировались объекты музыки и звуков

dropSound = Gdx.audio.newSound(Gdx.files.internal("drop.wav"));
rainMusic = Gdx.audio.newMusic(Gdx.files.internal("rain.mp3"));

Тему с подобной историей что то не могу снова нагуглить, но речь шла о том, что это баг непосредственно ИДЕ и на эклипс всё ок.

104 9 мая 2016, 21:17 104 257076

>>257073
Надеюсь, потому что эклипс мне очень уж не понравился.

153 Кб, 1673x995
105 15 мая 2016, 18:30 105 258505

Ой, ну в рот ебал я этот либгдкс.
Теперь я понимаю, почему никто не делает игорей на жабе - адекватных либ ну вообще нет.
Всё блядь какие-то костыли, всё надо самому с нуля пилить, решать дохуя самых разных проблем. Вот сейчас ебался с этим интерфейсом. Так и не понял, как отключить этот ебучий скейл (при ресайзе окна), из-за которого он сам ломается (как бы интерфейс увеличивается, но на нажатие откликается только когда жму на то старое место, до рескейла).
А ещё надо как-то попытаться заставить scene2d показывать лейблы в самой игре, над игроками, когда приходит сообщение от них... У меня же сейчас типа интерфейс идёт просто поверх игры со своей камерой и всем таким... Ой бляяя...

Ответы258618321288

106 16 мая 2016, 00:49 106 258587

>>250587
Создай свой объект и рисуй в screen_height - (y + obj_height)

sage 107 16 мая 2016, 06:26 107 258618

>>258505
scene2d гуй действительно сильно неочевидный. Однако, как бы он плох не был, все твои проблемы с ним решаемы. По крайней мере, насколько я их понял.
Насчёт ресайза - убедись, что screen в методе resize вызывает для stage, в котором у тебя гуй, getViewport().update(width, height, true). У меня так сделано и таких как у тебя косяков нет.
Лейблы в самой игре тоже просто делаются. Раз у тебя гуй на отдельном stage "со своей камерой и всем таким", создавать надо не на нём, а на stage с игрой. Тебе ведь нужно привязать эти лейблы к игрокам, а они не на гуевском уровне - всё логично. Ну или посылай из игры гую список координат говорящих персонажей, а в гуе переводи координаты в собственные и обрабатывай (создавай-перемещай лейблы). В общем, есть варианты.

108 23 мая 2016, 10:49 108 260354

>>250587
Выглядит лампово. Но картинка слева лишняя

Ответы260406

sage 109 23 мая 2016, 16:26 109 260406

>>260354
>Но картинка слева лишняя
Я их изначально рисовал с расчётом скорее на какое нибудь всплывающее информационное окошко.

2,5 Мб, webm,
476x796
110 1 июня 2016, 18:34 110 262443

Пилю на LibGDX стелс-экшон под ведроид. С фреймворком знаком три дня - до этого только в вузике на java чуть-чуть кодил. Пока вот что получилось. Управление персонажем свайпами, запилил функцию зрения - позже она будет у врагов. Ох и наебался же я с ней. Уровень подгружается из отдельного txt-файла. Пока что все. Врагов еще нет, ничего нет кроме видеорелейтед. Вообще это первый опыт в создании игры, и мне очень нравится, как код преобразуется во что-то, что можно увидеть и потрогать.

Ответы268696321270321277

111 26 июня 2016, 17:29 111 268691

Посоны, такой вопрос!

А это вообще нормально, что пустой проект на LibGDX вообще без юзер-кода весит 38 мегабайт в apk-шке?

Слил вчера установщик, создал проект, убедился что он компилится и запускается как на десктопе (Дебиан), так и на моем Нексусе 5, и забурился в документацию. А сейчас вот интереса ради глянул, сколько занимает аппликуха в памяти андроида, и даже как-то удивился слегка. 38 мегабайт на оверхед, не многовато ли?

Ответы268700

112 26 июня 2016, 17:56 112 268696

>>262443
Свайпом палец сотрешь через минуту игры, или джойстик, или кликом на точку (с нахождением пути), или кликом с определенной стороны от игрока.

113 26 июня 2016, 18:34 113 268698

Анон, помоги, когда экспортирую апк с эклипса(и не только), при запуске пишет ошибку(что-то типа "приложение остановлено").На эмуляторе тоже ничего не работает.

114 26 июня 2016, 18:37 114 268700

>>268691
>сколько занимает аппликуха в памяти андроида
Размер апк и то, сколько установленное приложение занимает в памяти - не одно и то же. На ведре 5 и выше приложение "компилируется" при распаковке для более быстрой работы что увеличивает его вес, приложение не сидит в памяти телефона как апк файл. Плюсуй к весу данные и кэш приложения.

115 26 июня 2016, 20:59 115 268767

>>250809
а в чем проблема создать свой update loop в новом потоке и если надо просто передавать туда дельту из рендера?

116 26 июня 2016, 21:18 116 268773

>>254797
я вот математикой и сделал свой собственный велосипед
немного коряво правда, но всяко лучше чем то что у вас на видео появлялось
и да сделано не на libgdx, на него я только позавчера начал переезжать, а видеорелейтед реализация рейтрейсинга это чистая джава можно сказать

https://drive.google.com/file/d/0BzwCB78J-oVxaGpSRDNLSnZTbW8/view

164 Кб, 1024x819
Заливка фона tiled-текстурой с учетом позиции и scale 117 13 июля 2016, 13:14 117 277357

2D игруля, рисую через SpriteBatch

Нужно залить фон бесконечной повторяющейся текстурой.
Только условие есть два условия:
1) Заливать нужно с определенной точки (что бы фон двигался при движение игрока)
2) Нужно учитывать scale (игрок может приближать, и удалять камеру)

Вопрос как это сделать? Вроде стандартная задача, наверняка кто-то уже делал подобное.

Гуглю пока, но не могу найти нормального решения (видимо потому что нюфаг)

Ответы277468

118 13 июля 2016, 15:09 118 277468

>>277357

>2) Нужно учитывать scale (игрок может приближать, и удалять камеру)
Это дело камеры, а не самого фона это раз

>Нужно залить фон бесконечной повторяющейся текстурой.

тут поподробнее, те фон это одно изображение натянутое на весь экран которое должно повторятся или как?

Ответы277525

119 13 июля 2016, 15:39 119 277525

>>277468
> тут поподробнее
Есть Texture (размером 256x256), я есть выставил setWrap(Texture.TextureWrap.Repeat, Texture.TextureWrap.Repeat).

Нужно замостить ее весь экран (допустим 1920x1080), но там что бы при движение игрока фон был на месте.
Формально там наоборот, игрок в фиксированной точке(0,0), а фон смещается.

P.S.
Как временное решение, я сейчас рисую спрайт огромного (взятого с потолка) размера,

batch.setTransformMatrix(<тут делаю матрицу для нужного позиционирования, относительно игрока);
batch.draw(myBackgroundTexture, 0f, 0f, 0, 0, 10000, 10000);

но хотелось бы это делать через правильное API.

Ответы277688

9 Кб, 555x180
120 13 июля 2016, 16:36 120 277688

>>277525
формально при движении игрока будет двигаться ВСЕ и игрок и фон и камера и даже аллах.
Просто камера должна двигаться со скоростью игрока (если она на нем зафиксирована) по этому получается ощущение что двигается только фон.
Короче кури libgdx камеру.

Я блять так и не понял, ты какого эффекта хочешь добиться? Что бы при движении игрока фон (состоящий из тайлов) создавал ощущение неподвижного как тут?
https://drive.google.com/file/d/0BzwCB78J-oVxYmNObU1hemFDVUk/view?usp=sharing

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

Ответы277785

121 13 июля 2016, 17:09 121 277785

>>277688
Мне надо как с домами, что бы они двигались, а персонаж в центре.
Только в место домов у меня бесконечная шахматная доска.

По этому кода так будет или он для неба?

Ответы277794

122 13 июля 2016, 17:17 122 277794

>>277785
код для неба

>Только в место домов у меня бесконечная шахматная доска
в таком случае отрендерь тайлы в текстуру с шириной равной ширине тайла, а высоте равной высоте экрана и потом просто заполняй экран полученной текстурой по мере необходимости
Gdx если не ошибаюсь в автоматическом режимей такой возможности делать не дает, так что придется самому писать

123 19 июля 2016, 22:23 123 281047

>>250576 (OP)
Так-с. Пилю для пеки 2д хуиту на жабе (вернее, пока только на бумаге проЭкт). Покатит этот ваш либджидиэкс?
Из графония требуются только спрайты, анимация, менюшечки и простое движение с анимацией. Насколько низкий порог вхождения у данного фреймворка просто лень изучать технологию, к которой не факт, что в будущем прикоснусь. Но если понравится, то буду юзать?

Ответы281068281088

124 19 июля 2016, 23:02 124 281068

>>281047
Порог вхождения достаточно высок. Я бы сказал вдвое выше, чем у юнити. Так что если ты дебил, бери юнити.

Ответы281069281323

125 19 июля 2016, 23:06 125 281069

>>281068
Мне именно для жабы надо. Или велосипеды пилить буду, или какую-нибудь либу возьму.

126 19 июля 2016, 23:41 126 281088

>>281047
Если в игре не надо дизайнить уровни, то прокатит. Мне фреймворк нравится, хоть и юзаю его без важных фич, а чисто как удобную обертку вокруг опенджиэла.

Ответы281244281330

127 20 июля 2016, 16:03 127 281244

>>281088
>хоть и юзаю его без важных фич, а чисто как удобную обертку вокруг опенджиэла
сейм щит, работа с фреймбуферами и шейдерами одно удовольствие и не нужно lwgjl велосипедов изобретать

128 20 июля 2016, 19:45 128 281322

Может кто знаешь как оптимизировать SpriteBatch?

У меня (к сожалению) очень много вызовов draw(texture, x, y, width, height)
и перед каждым приходится задавать еще и свою setTransformMatrix для поворотов и сдвигов (они у всех разные).

Может есть у кого идеи хоть куда копать. Не отказываться же от SpriteBatch?

Ответы281429

129 20 июля 2016, 19:52 129 281323

>>281068
Сренькнул с этого эксперта.
Писал до этого на чистой Java, перейдя на LibGDX охуел с того, сколько я велосипедов наизобретал, теперь приходится в писать в десятки раз меньше при создании каркаса проекта, уже через пару минут приступая непосредственно с геймплею. Разбираться вообще ни в чем не приходится. Кроме Box2D.

Ответы281385

130 20 июля 2016, 20:21 130 281330

>>281088
Спасибо. Уровни у меня тупо из слоев фона будут.

131 20 июля 2016, 21:41 131 281350

Зачем нужны старые, олдскульные движки 1.0, если есть unity?

Ответы281386281400

132 20 июля 2016, 23:44 132 281385

>>281323
>Box2D
нахуй его, только свой физический движок, только своя модель освещения

133 20 июля 2016, 23:44 133 281386

>>281350
libGdx это фреймворк позволяющий писать свои собственные движки

134 21 июля 2016, 01:26 134 281400

>>281350

юнитю не завезли под линуксом. А я под ним аж с 2007-го года,
на сперму переползаю @
чувствую себя инвалидом @
хоть и есть дохуя софта.

год назад, правда, запилили альфа сборку под линух, но с тех пор не обновляли и под ней почему-то в форме логина не получается логиниться. "ошибка 401, попробуйте блять позже"

Ответы293371

135 21 июля 2016, 09:30 135 281429

>>281322
Ну посмотри в исходники когда он флашится и делай так, чтобы поменьше этого было. Из очевидного - засунь текстуры в один атлас, потому что он точно флашится когда берет TextureRegion из другой текстуры. А то, что у тебя перед каждым дроу надо менять матрицу это довольно странно, набыдлокодил видимо. Чем тебя не устраивает задавать в методе координаты, размеры и угол?

Ответы281433

136 21 июля 2016, 10:07 136 281433

>>281429
>Чем тебя не устраивает задавать в методе координаты, размеры и угол?
Поясни как угол задавать?

Ответы281434

137 21 июля 2016, 10:09 137 281434

>>281433

void draw(TextureRegion region, float x, float y, float originX, float originY, float width, float height, float scaleX, float scaleY, float rotation)
Draws a rectangle with the bottom left corner at x,y and stretching the region to cover the given width and height.

В документацию стоит заглядывать хоть иногда.

138 25 июля 2016, 10:06 138 282965

у меня не открывается скачанных jar файл

Ответы283102283538

139 25 июля 2016, 12:41 139 283102

>>282965
Тогда качай юнити.

Ответы283255

140 25 июля 2016, 15:55 140 283255

>>283102
но у меня линукс.

141 25 июля 2016, 18:19 141 283538

>>282965
Спасибо, что сообщил нам.

Android - Текстуры для разных экранов 142 3 авг 2016, 16:18 142 288299

Игруля: 2D аркада

Надо ли заморачиваться с хранение разных текстур под разные плотности экранов?

Ведь может быть и 160 px/inch (в китайфонах) и 480 px/inch (в nexus 6p).
Если брать самое большое разрешение, то старые девайся будут тормозить (как минума на закгрузки в память).

В общем есть для этого best-practics?

Ответы288302288350305701

143 3 авг 2016, 16:21 143 288302

>>288299
Та забей, нищеброды должны страдать.

144 3 авг 2016, 17:21 144 288350

>>288299
Ну если тебя не смущае куча одозвездочных отзывов с "ТАРМАЗИТ @ НИРАБОТАИТ"" то можно и не напрягаться.

Ответы288354

145 3 авг 2016, 17:27 145 288354

>>288350
К А К ?

Я для того и спросил, поддержки "из коробоки" я не нашел.

Ответы289041

146 5 авг 2016, 10:00 146 289041

>>288354
Ау, девелоперы, вы где?

Ответы289046

147 5 авг 2016, 10:08 147 289046

>>289041
Да забей, бери большие текстуры и не заморачивайся.

sage 148 9 авг 2016, 21:52 148 290906

>>251318
Технически, LibGDX - это не "игровой движок"(тм)(R), а библиотека для джавы. Если не чувствуешь различий, уёбувай.

Ответы290967

149 9 авг 2016, 23:03 149 290967

>>290906
Это фреймворк бля, учитель ебучий

Ответы291155

sage 150 10 авг 2016, 02:23 150 291155

>>290967
Я правильно понимаю, ты не согласен, что это библиотека?

Ответы291213

sage 151 10 авг 2016, 08:43 151 291213

>>291155
libGdx - не библиотека, а, как анон выше и написал - "фреймворк". lwjgl или opengl, например - библиотеки. А юнити или гамак - конструкторы. И это не просто чьё то там мнение. Так свои продукты называют их создатели.

Ответы317794

58 Кб, 721x887
152 13 авг 2016, 16:48 152 293298

Котятки, а есть тут физон кроме box2d? Желательно нативный. Или хотя бы просто коллижондетектор. Не хочу толстый монолитный черный ящик, в котором чтобы что-то поправить даже в кнофиге, надо преконпелировать ведро. К тому же мне оттуда нужно сильно меньше половины. А еще доебли релятивистские эффекты на сверхзуковых скоростях.

Ответы293326293345294048

153 13 авг 2016, 17:53 153 293326

>>293298
>Желательно нативный
НЕ нативный.
ультраслоуфикс.

154 13 авг 2016, 19:48 154 293345

>>293298
Да есть.
Там можно смотреть пересечения всяких квадратов (
import com.badlogic.gdx.math.Rectangle) и тд.
Есть функция Intersector.overlaps(Rectangle r1, Rectangle r2) которая смотрит пересечения

Ответы293376

155 13 авг 2016, 20:27 155 293371

>>281400
Ты наркоман, она каждый месяц обновляется, просто надо было зайти на форум в линуксовскую ветку с релизами, последнее сообщение - последняя версия.

156 13 авг 2016, 20:36 156 293376

>>293345
Эту штуку видел. Пересечения это еще не коллижондетектор. Если буду пересекать всё со всем, то ну ты понел.

157 15 авг 2016, 05:26 157 294048

>>293298
свой пиши я вот пишу и мне норм

48 Кб, 620x400
158 19 авг 2016, 01:58 158 295171

Котаны, есть какие-то гайдлайны по структурированию кода в LibGDX и вообще игровых проектов? Сколько бы я не задрачивал ООП, какой-нибудь свайп для выделения юнитов обязательно требует поле. Выделять под такую гадость отдельные классы или позволять классу игрового мира похнуть от геттеров и документации?

Ответы295173295786

159 19 авг 2016, 02:06 159 295173

>>295171
Дрочи ООП дальше, тк ООП лучше всего выглядит как раз в играх. А на твой вопрос могу ответить только так - решение зависит от контекста.

Ответы295786

160 22 авг 2016, 00:08 160 295783

Есть вопрос, я проект начинал через этот libGDX установщик который сразу GRADLE прикручивает, но в градле я толком пока не освоился, и вот теперь у меня стоит задача перенести проект с одного пека на другой, как это сделать? Через эклайпсовский export archive? Так ведь хуйня же, вангую что надо через тот самый GRADLE делать, я прав? Если да, то как? Может кто линками или советами по теме поделится?
с меня спасибо и нихуя
https://www.youtube.com/watch?v=B9nc-YUr3jA

161 22 авг 2016, 00:23 161 295786

>>295171
Используй ashley. Только не пиши как даун системы для каждого поведения. Сделай одну систему с behaviour'ами типа как в юните.

>>295173
>тк ООП лучше всего выглядит как раз в играх
ООП лучше всего выглядит в могиле, где ему самое место.

Ответы295796

162 22 авг 2016, 01:57 162 295796

>>295786
только посмотрите на этого функционального кукаретика

Ответы295903

163 22 авг 2016, 13:35 163 295903

>>295796
о композиции слышал? ECS, там

Ответы295937

164 22 авг 2016, 16:17 164 295937

>>295903
ога ога
только это всего лишь куча паттернов, а компоненты суть те же объекты, если ООП выделить в отдельное множество, то КОП это его подмножетсво.
Ну и вообще во всех нормальных ООП языках, где множественное наследование невозможно всегда композиция > наследование

Ответы296804

165 26 авг 2016, 00:28 165 296804

>>295937
А лямбды - это всего лишь объекты, если ООП выделить в отдельное множество, то фп - это его подмножество.
А объекты - это всего лишь куски памяти, если низкоуровневое программирование выделить в отдельное множество, то ООП - это его подмножество.

Ответы305601

1 Кб, 512x256
166 26 авг 2016, 18:18 166 296975

Итак, ананасы, намедни словил такой небольшой ОГРОМНЫЙ СУКА бугурт. Значит есть у меня парачка шейдеров, их задача сделать чуть более, чем нихуя - отрендерить квадраты для маски совещения, вот они:
http://pastebin.com/hdBPH28k
Компилируются нормально, все атрибуты, униформы считаются тоже хорошо (в смысле программа находит их расположение), а вот теперь еще кусочек говна в кашу:
http://pastebin.com/pPr3CS0b
Собственно, что он делает, перебирает итератором объекты в контроллере моего мирка и смотрит, ежели тот непрозрачный, значит надо отрисовать, всего-то ничего. И, вроде как, все нормально сделал, но на выходе получаю просто охуительную доселе невиданную текстуру (взгляните только на пикрелейтед), и, даже цвет не применяет. Что за хуйню он нарендерил?! Сомнений нет, что текстуру я получаю именно ту, потому что при изменении цвета очистки меняется фон текстуры.
Если же есть сомнения по поводу матрицы трансформации - так это первое, на что упал мой взор и я ее проверил, и работает она верно (нормирует координаты в пределах -1 .. 1 по всем осям для объектов)

Ответы296981297049

167 26 авг 2016, 18:34 167 296981

>>296975
Бля, посоны, короче, обосрался с подливою я.
Вспомнил я про такое явление в Java, как dispose(), но деструкторов нам не завезли, к сожалению, и я в некотором месте вызвал его для всех своих программ, когда сбрасывал контроллер освещения (ресурсы GL сами себя не освободят), таки дела. Поэтому-то я яву и не люблю, но это совсем другая история.

Ответы297049

168 27 авг 2016, 09:27 168 297049

>>296975
>>296981
Кулстори, бро.

169 18 окт 2016, 23:16 169 304868

Посоны, LibGDX iOS поддерживает или RoboVM капутт и альтернатив не завезли?

170 23 окт 2016, 04:13 170 305601

>>296804
Ну в принципе так и есть.
Лямбды в джаве вообще через анонимные классы реализованы и ниче.

72 Кб, 298x248
171 23 окт 2016, 16:30 171 305676

>Целый блядский тред
>Никто даже не обмолвился про Artemis-odb

https://github.com/junkdog/artemis-odb
https://github.com/junkdog/artemis-odb/wiki

Компонентно ориентированные системы это то, что похоронит ООП в скором будущем, оно уже широко используется для ММО проектов.
А ты до сих пор пихаешь кучу всякой хуиты в render() функцию, переопределяешь типы классов ебанутым образом и пишешь функцию одного и того же для каждой пылинки в отдельности, да Анон?

Ответы305688305746

172 23 окт 2016, 17:19 172 305688

>>305676
>да Анон?
Нет, но игру так и не написал.

173 23 окт 2016, 18:00 173 305699

Сосаны, я так понял у libGdx с 3d не все радужно. Короче мне нужно совсем чуть-чуть 3d анимации. Беру fbx файл, конверчу его с помощью fbx-conv в g3dj/g3db, не рендерится нихрена. Импортирую fbx в блендер, оттуда экспортирую с помощью плагина в g3dj, меняю абсолютные ссылки на текстурки, в результате не анимации, ни половины модели, как жить епта?

174 23 окт 2016, 18:03 174 305701

>>288299
Бандли с игрой самые мелкие текстурки, а остальные загружай со своего сервака/гугл плея.

175 23 окт 2016, 20:22 175 305733

Я стал мастером libgdx. Подскажите плес где найти художника.

176 23 окт 2016, 21:18 176 305746

>>305676
>high performance
>java based
обдристался.

что они там измеряют? скорость записи в массив в жаве? ну охуеть теперь

Ответы305761

177 23 окт 2016, 22:43 177 305761

>>305746
>обдристался
Ну сиди обтекай, хули. Быстрее жавы только С и компания. Вообще, это отдельный вопрос, нахуя в 2д играх производительность. Все самое тяжелое можно (и нужно) перенести на видяху.

Ответы305778305781305784

178 23 окт 2016, 23:55 178 305778

>>305761
>Быстрее жавы только С
а еще с++, rust, objective c и crystal
не забывай что jvm была на крестах написанна, хотя вообще да, уже как долгое время джава считается high performance, по крайней мере для серверных решений

Ответы305802

140 Кб, 278x357
179 24 окт 2016, 00:00 179 305781

>>305761
Вообще нахуя в играх вообще не только в 2д нужна производительность языка, у джавы ахуенный кокнурэнси а все тяжелые вычисления и так сидят на видеокарте.

Ответы305784305802

150 Кб, 1280x853
180 24 окт 2016, 00:08 180 305784

>>305781
>>305761

Вообще то на либе пишется 3д
https://www.youtube.com/watch?v=QVy5MkIZczo&list=PLqpawGIg6Qj6yGU8DxaRjX8E1NZQHvxdf
Как вариант.

Ответы305802

181 24 окт 2016, 01:10 181 305802

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

>>305781
Ну, под 2д обычно подразумеваются казуалки, платформеры и рогалики. Все это не требует, например, мощного ИИ как какой-нибудь 3д шутер или стратегия. Вот для этого стоит брать другой язык.

>>305784
ФПС оставляет желать лучшего. Когда я последний раз гонял полноценное 3д на либе, моя топовая видяха выдавала на куцей сцене с полутора моделями фпс будто это какой-то ААА на ультрах.

Ответы305803

182 24 окт 2016, 01:19 182 305803

>>305802
Так в этих йобах ИИ и так на скриптах сидит разве нет? (ну там всякие Луы и прочая срань)
Да и какой это блять ии, сраные графы и примитивный рейкаст, такая же ебота как в 2д, только матрицы на один размер больше

Ответы305804305805

183 24 окт 2016, 01:20 183 305804

>>305803
хотя я конечно могу ошибаться

184 24 окт 2016, 01:24 184 305805

>>305803
Ну смотря в каких и где. Там кроме собственно ИИ еще может сидеть какой-нибудь поиск пути. Я вот с трудом представляю как написать что-то типа того же суприм командера или тотал вар или опенворлд типа прототайпа с таким ебойвешим количеством юнитов вокруг которые еще и вполне резво бегают.

Ответы305807

185 24 окт 2016, 01:33 185 305807

>>305805
ну в том же суприме это сделанно через жопу
Там когда группе отдаешь приказ, то путь целиком расчитывается только один раз в начале и только для одного ведущего юнита, остальные же юниты просчитывают дорогу от своего положения на момент отдания приказа, до стартовой позиции ведущего юнита + смещение от этой позици для постройки строя. Это довольно дешево в плане производительности.

Ответы305811

186 24 окт 2016, 01:37 186 305811

>>305807
Разве все так просто? Как же тогда широкий строй в проходы протискивается? У них там куча мелких маневров происходит.

Ответы305812

187 24 окт 2016, 01:43 187 305812

>>305811
ну а ты вниметельней посмотри во что этот широкий строй превращается в узком проходе, все крайние просто смещаются в центер в котором образуется каша и вместо одного юнита на квадратную еденицу площади мы имеем несколько (десятков), большинство маневров происходит как правило во время построения в конце или в начале пути, те просчитывается только один раз.

Ответы305813

188 24 окт 2016, 01:46 188 305813

>>305812
Ну вот это смещение и кашу тоже нужно обсчитать.

189 8 ноя 2016, 20:25 189 308558

Здравствуйте, уважаемые почитатели LibGDX!

Можно запосчу небольшое объявление? Если у кого-то вдруг есть желание посотрудничать, пишите мне на фейкомыльце: oblachkz.\o901ANUSm!W3ailPUNCTUMrZMAu

В кратце: нужно написать простенькую игру под андроид (есть некоторая идея, реально не сложная). С использованием box2d (ну может и без него конечно, но это фиг знает - надо вам самим посмотреть и решить каким способом захотите делать).

Главное, это не тяжеловесный Unity. Ну, вы же сами понимаете, Андройд-2D и Юнити... :) Графика от вас не потребуется, чисто код. Вы можете написать игру, используя упрощенные макеты: круги-кубы, нарисованные в пэйнте, а дальше это мои проблемы...

Если вдруг кого-то заинтересовало, пишите на е-мэйл. Сотрудничество, конечно же, за деньги. Почитаете задание, договоримся о цене.

Ответы308559

190 8 ноя 2016, 20:33 190 308559

>>308558
Могу написать на юнити

191 8 ноя 2016, 20:40 191 308562

>>252251
Подскажи, что что у тебя за DI-либа? Пробовал guice, не понравилось (рефлексии в runtime), альтернатив не знаю.

Ответы308712

192 9 ноя 2016, 18:25 192 308712

>>308562
Нахуярь сервис-локатор, как наши отцы когда-то хуярили.

193 12 ноя 2016, 15:03 193 309166

>>254485
Желаю тебе гореть в аду, уёбок

194 12 ноя 2016, 15:18 194 309168

>>256998
>И всё норм работает?
Я вообще не рассматриваю других IDE, кроме Jetbrains.
Да и чего вы прицепились к IDE? Я могу хоть на VIMе с javac'ом разрабатывать.

20 Кб, 600x293
195 16 ноя 2016, 12:19 195 309770

>>250648
>не надо устанавливать
1. сначала не надо устанавливать ВМ 8
2. не надо устанавливать НетБобы или Элипс
3. не надо устанавливать какую-то пердь для экспорта в андрюху
4. потом не надо устанавливать на эту хуйню какой-то там апдейт вручную
5. не надо устанавливать Грабли 1.9-rc-1 через короые вся эта мечта пердолика увязана
При всём при этом никаких доков кроме 2х книг на амазоне по этому говну нет.

Конечно можно скачать какой-нибудь Godot и начать хакать свои корованы уже через 3 секунды, но это же не наш метод.

Ответы309802309886309900

196 16 ноя 2016, 14:29 196 309802

>>309770
В годоте ты только анус себе хакнуть сможешь. Альтернатив юнити нет и не будет в обозримом будущем.

Ответы309813309886

197 16 ноя 2016, 14:54 197 309813

>>309802
А вот и дежурный юнитишизик.
Держи +15 лезь обратно под шконарь.

Ответы309841

198 16 ноя 2016, 17:08 198 309841

>>309813
>+15 игр

199 16 ноя 2016, 20:19 199 309886

>>309770
>1. сначала не надо устанавливать ВМ 8
7, на дроиде еще нет 8.
>2. не надо устанавливать НетБобы или Элипс
> 3. не надо устанавливать какую-то пердь для экспорта в андрюху
Действительно не надо, есть андроид студия где все из коробки.
>4. потом не надо устанавливать на эту хуйню какой-то там апдейт вручную
>5. не надо устанавливать Грабли 1.9-rc-1 через короые вся эта мечта пердолика увязана
Согласен, не надо. Надо потратить только 5 минут на конфигурацию виртуалки дроида и пол-часа максимум на закачку, посидеть подождать.
>можно скачать какой-нибудь Godot
Дроид сдк все равно надо наворачивать. По итогу - вся разница в одном пункте - виртуалке.

>>309802
>Альтернатив юнити нет
Только для альтернативно-одаренных.

Ответы309900

200 16 ноя 2016, 21:31 200 309900

>>309886
>>309770
Аноны, подскажите человеческую библиотеку
Нужно качать жсон по хттп
Соответственно хочу скачать в одну строчку и спарсить в одну строчку.
Меня удручает, что за 10 лет существования платформы всё ещё приходится это писать почти с нуля.
Apache commons? org.json?
А качать без заморочек чем? И чтобы прокси поддерживалось.

Ответы309925310352314138

201 16 ноя 2016, 21:33 201 309902

Чем LibGDX отличается (в плане возможностей) от XNA/Monogame ?

Ответы309903

202 16 ноя 2016, 21:34 202 309903

>>309902
XNA вроде мёртв уже

Ответы309907

203 16 ноя 2016, 21:46 203 309907

>>309903
Зато Monogame чуваки какие-то поддерживают, да и список какой-никакой есть выпущенных игр (Transistor, Bastion, ...).

Ответы309944

204 16 ноя 2016, 23:45 204 309925

>>309900
Jersey, CXF смотрел? Jetty? Не очень понятно, что именно тебе надо. И да, все это очень легко можно написать самому. Разве что парсер прихватить откуда-то.

sage 205 17 ноя 2016, 06:10 205 309944

>>309907
>Transistor, Bastion
Это одна и та же игра.

206 18 ноя 2016, 23:24 206 310352

>>309900
Retrofit

207 11 дек 2016, 19:41 207 314138

>>309900
https://square.github.io/retrofit/
Мастхэв, идеально в комбинации с RxJava.
Весь Android Dev по нему угорает.

208 25 дек 2016, 21:18 208 316543

>>250594
Скорее всего 0.

209 4 янв 2017, 05:55 209 317794

>>291213
Юнити называется конструктором для маркетинга. С тнхнической точки зрения это чистокровнейший движок

Ответы317815

210 4 янв 2017, 13:05 210 317815

>>317794
С технической точки зрения либгдх это набор библиотек и апи для работы с ними, что есть суть фреймворка.

211 4 янв 2017, 13:35 211 317819

Можно как-то AssetManager'у задать приоритет загрузок? Или хотя бы увеличить количество тредов, а то 1 это не серьезно. Я так вижу кроме как заменить рефлексией вариантов нет?

Ответы317939318043

212 5 янв 2017, 01:22 212 317939

>>317819
пердолься, мань, ты знал на что шел

Ответы317961

213 5 янв 2017, 11:17 213 317961

>>317939
Я уже. Впрочем 4 треда прироста не дали, нада про ассеты думать.

214 5 янв 2017, 23:52 214 318043

>>317819
Зачем тебе больше тредов? Просадки на загрузке обычно упираются в жесткий, а не проц.

Ответы318081

215 6 янв 2017, 12:18 215 318081

>>318043
Я думал если я увеличу количество тредов я смогу быстрей загрузить ассеты. При обычном сценарии все гурзится последовательно и я доволен, но если человек зашел "посредине процесса", то надо показывать с середины, а для этого нужна часть ассетов, но получается тормоз, так как нет приоритетов.

216 8 янв 2017, 12:19 216 318310

Начал работать с этой библиотекой. Создал проект, и запустил на десктопе. Пустое приложение Не считая текстуры с их эмблемой сжирает 100 мб памяти. Я немного охуел, или это только у десктопа, а для андройда всё будет лучше? Или эти 100мб не реальное потребление памяти, а с резервом и дальше большого роста не будет?

Ответы318337

217 8 янв 2017, 17:17 217 318337

>>318310
Пустое приложение занимает на андроид около 17 мб. Да, эти 100 мб это резерв.

218 8 янв 2017, 18:01 218 318341

Анон выручай, не хочет эта поебота работать у меня ни в какую, хотя скорее всего это я даун. На Idea компиляция не идет, ошибку все время выдает, на Анроид студии тоже самое, хуй знает что делать уже. Ошибок нет, тупо нихера не запускается после компиляции, а должна эта ебанутая картинка с лого вылазить. реквестирую гайды по установке этой хуевины, ну и среду разработки с которой это говно наиболее совместимы.

Ответы318344

sage 219 8 янв 2017, 18:18 219 318344

>>318341
Запускаю через Idea и gradle-таск desktop run (можно в менюшке справа, можно через консоль, главное проект импортируй, когда попросит).

Ответы318349

220 8 янв 2017, 18:43 220 318349

>>318344
"C:\Program Files (x86)\Java\jdk1.8.0_25\bin\java" -Didea.launcher.port=7534 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\deploy.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\access-bridge-32.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\cldrdata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jaccess.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jfxrt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\nashorn.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunec.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunpkcs11.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\zipfs.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\javaws.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfr.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfxswt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\management-agent.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\plugin.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\rt.jar;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\desktop\build\classes\main;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\core\build\classes\main;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx\1.6.1\bb5fe9832bcfe4bbc1de6bd357085b8a2a845d9c\gdx-1.6.1.jar;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\core\build\libs\core-1.0.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx-backend-lwjgl\1.6.1\e3208559223c991f1db7220d5ddf3e5a12e5528f\gdx-backend-lwjgl-1.6.1.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx-platform\1.6.1\861f02e3f7f85423be6f9727ab12b03b40d39477\gdx-platform-1.6.1-natives-desktop.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl\2.9.2\a9d80fe5935c7a9149f6584d9777cfd471f65489\lwjgl-2.9.2.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl_util\2.9.2\4b9e37300a87799856e0bd15ed81663cdb6b0947\lwjgl_util-2.9.2.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.jlayer\jlayer\1.0.1-gdx\7cca83cec5c1b2f011362f4d85aabd71a73b049d\jlayer-1.0.1-gdx.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\510c7d317f5e9e700b9cfaac5fd38bdebf0702e0\lwjgl-platform-2.9.2-natives-windows.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\d276cdf61fe2b516c7b7f4aa1b8dea91dbdc8d56\lwjgl-platform-2.9.2-natives-linux.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\d55b46b40b40249d627a83a7f7f22649709d70c3\lwjgl-platform-2.9.2-natives-osx.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput\2.0.5\39c7796b469a600f72380316f6b1f11db6c2c7c4\jinput-2.0.5.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jutils\jutils\1.0.0\e12fe1fda814bd348c1579329c86943d2cd3c6a6\jutils-1.0.0.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\7ff832a6eb9ab6a767f1ade2b548092d0fa64795\jinput-platform-2.0.5-natives-linux.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\385ee093e01f587f30ee1c8a2ee7d408fd732e16\jinput-platform-2.0.5-natives-windows.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\53f9c919f34d2ca9de8c51fc4e1e8282029a9232\jinput-platform-2.0.5-natives-osx.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain com.mygdx.game.desktop.DesktopLauncher
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: badlogic.jpg
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:98)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:100)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:92)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:88)
at com.mygdx.game.MyGdxGame.create(MyGdxGame.java:16)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: badlogic.jpg (Internal)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:136)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:222)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
... 7 more

На 5 секунд появился черный экран, достижение...

220 8 янв 2017, 18:43 220 318349

>>318344
"C:\Program Files (x86)\Java\jdk1.8.0_25\bin\java" -Didea.launcher.port=7534 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\deploy.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\access-bridge-32.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\cldrdata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jaccess.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jfxrt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\nashorn.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunec.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunpkcs11.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\zipfs.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\javaws.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfr.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfxswt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\management-agent.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\plugin.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\rt.jar;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\desktop\build\classes\main;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\core\build\classes\main;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx\1.6.1\bb5fe9832bcfe4bbc1de6bd357085b8a2a845d9c\gdx-1.6.1.jar;C:\Users\Master\Downloads\libgdx-1.6.1\test35636\core\build\libs\core-1.0.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx-backend-lwjgl\1.6.1\e3208559223c991f1db7220d5ddf3e5a12e5528f\gdx-backend-lwjgl-1.6.1.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.gdx\gdx-platform\1.6.1\861f02e3f7f85423be6f9727ab12b03b40d39477\gdx-platform-1.6.1-natives-desktop.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl\2.9.2\a9d80fe5935c7a9149f6584d9777cfd471f65489\lwjgl-2.9.2.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl_util\2.9.2\4b9e37300a87799856e0bd15ed81663cdb6b0947\lwjgl_util-2.9.2.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\com.badlogicgames.jlayer\jlayer\1.0.1-gdx\7cca83cec5c1b2f011362f4d85aabd71a73b049d\jlayer-1.0.1-gdx.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\510c7d317f5e9e700b9cfaac5fd38bdebf0702e0\lwjgl-platform-2.9.2-natives-windows.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\d276cdf61fe2b516c7b7f4aa1b8dea91dbdc8d56\lwjgl-platform-2.9.2-natives-linux.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\org.lwjgl.lwjgl\lwjgl-platform\2.9.2\d55b46b40b40249d627a83a7f7f22649709d70c3\lwjgl-platform-2.9.2-natives-osx.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput\2.0.5\39c7796b469a600f72380316f6b1f11db6c2c7c4\jinput-2.0.5.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jutils\jutils\1.0.0\e12fe1fda814bd348c1579329c86943d2cd3c6a6\jutils-1.0.0.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\7ff832a6eb9ab6a767f1ade2b548092d0fa64795\jinput-platform-2.0.5-natives-linux.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\385ee093e01f587f30ee1c8a2ee7d408fd732e16\jinput-platform-2.0.5-natives-windows.jar;C:\Users\Master\.gradle\caches\modules-2\files-2.1\net.java.jinput\jinput-platform\2.0.5\53f9c919f34d2ca9de8c51fc4e1e8282029a9232\jinput-platform-2.0.5-natives-osx.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain com.mygdx.game.desktop.DesktopLauncher
Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: badlogic.jpg
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:140)
at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:98)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:100)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:92)
at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:88)
at com.mygdx.game.MyGdxGame.create(MyGdxGame.java:16)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:143)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:120)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: File not found: badlogic.jpg (Internal)
at com.badlogic.gdx.files.FileHandle.read(FileHandle.java:136)
at com.badlogic.gdx.files.FileHandle.readBytes(FileHandle.java:222)
at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:137)
... 7 more

На 5 секунд появился черный экран, достижение...

Показать весь текст
Ответы318357

sage 221 8 янв 2017, 19:38 221 318357

>>318349
У тебя файл с картинкой не загружается почему то (он там где то в андроид ассетах должен быть). Может, ты его перенёс или ещё как попортил. Попробуй, чтоб наверняка убедиться, загрузить чей-нибудь однозначно рабочий проект. Я как то в прошлом году делал рогалик - https://bitbucket.org/dksurname/rolik . Можешь его. Или что-нибудь с их сайта. Или создай новый (попробуй с андроидом и десктопом, если до этого делал только десктоп).

Ответы318366318404

222 8 янв 2017, 20:29 222 318366

>>318357
нет main класса пишет, какие у тебя версии ПО установлены? Ява, AS и Idea, может я не установил что то?

Ответы318367318404

223 8 янв 2017, 20:32 223 318367

>>318366
"C:\Program Files (x86)\Java\jdk1.8.0_25\bin\java" -Didea.launcher.port=7532 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\deploy.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\access-bridge-32.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\cldrdata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jaccess.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jfxrt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\nashorn.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunec.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunpkcs11.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\zipfs.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\javaws.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfr.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfxswt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\management-agent.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\plugin.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\rt.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain ""
Exception in thread "main" java.lang.ClassNotFoundException:
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:260)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:123)

Process finished with exit code 1
Вот что выводит

223 8 янв 2017, 20:32 223 318367

>>318366
"C:\Program Files (x86)\Java\jdk1.8.0_25\bin\java" -Didea.launcher.port=7532 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\charsets.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\deploy.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\access-bridge-32.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\cldrdata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\dnsns.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jaccess.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\jfxrt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\localedata.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\nashorn.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunec.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunjce_provider.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunmscapi.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\sunpkcs11.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\ext\zipfs.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\javaws.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jce.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfr.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jfxswt.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\jsse.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\management-agent.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\plugin.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\resources.jar;C:\Program Files (x86)\Java\jdk1.8.0_25\jre\lib\rt.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 2016.3.2\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain ""
Exception in thread "main" java.lang.ClassNotFoundException:
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:260)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:123)

Process finished with exit code 1
Вот что выводит

Показать весь текст
Ответы318404

sage 224 8 янв 2017, 22:49 224 318404

29 Кб, 614x67282 Кб, 1490x824

>>318366
>>318367
Пардон, там не хватает в репо файлов грэдловских. Попробуй этот клонировать: jnseANUSbQ`mitbucketPUNCTUMo`"Hrg/dksurname/roli-clone" target="_blank" rel="nofollow noopener noreferrer">https://dksurna1|ZmeANUSbitbuck"D,etPUNCTUMorXYDg/dksurname/roli-clone . В local.properties поставь свой путь к андроид-сдк. Потом открываешь идеей, на все вопросы соглашаешься, когда предлагает импортировать gradle проект (окошко небольшое появится где то справа) - тоже жмёшь с дефолтными галками (если забыл изменить путь в local - тут ругнётся). Потом на всякий случай обнови проект (в окне gradle projects первая кнопка). И запускай через таск десктоп-ран (на втором пикрелейтеде видно где он там запрятан). Не уверен, что запустится андроид - не на чем проверить сейчас, но десктоп в этом репо работает, только что проверил.
На первом пикрелейтеде видно с какими настройками я создаю новый проект (там ещё есть кнопка Advanced, в которой можно сразу поставить галку для idea проекта). Запускать также.
Если всё равно не получается, посмотри ещё по предыдущей ссылке ( из >>318357 ) в Downloads - есть собранный джарник. Попробуй и его - если не запустится - дело с твоей жабой. Но это сильно вряд ли.
>какие у тебя версии ПО установлены?
Только что запускал на идее 2016.2, gdx-setup у меня какой то прошлогодний, грэдл там встроенный (wrapper).

Ответы318409

225 8 янв 2017, 23:27 225 318409

>>318404
Завтра буду пробовать, бля сколько времени убил на это говно всеж

226 9 янв 2017, 21:07 226 318554

Есть текстура вернее pixmap, нужно заменить все пиксели цвета A на цвет B, операция вроде как очевидная и должна быть востребована в самом gdxе, но подходящих методов я у pixmap не вижу, максимум старый добрый цикл с if(getpixel() == A) { setpixel(B) }
Есть более удобный метод?

Ответы318586

sage 227 10 янв 2017, 01:32 227 318586

>>318554
Можно менять пиксели шейдером при отрисовке.

228 11 янв 2017, 17:40 228 318963

Анон что не так с этим ебучим Scene2d.ui? Как объяснить ему, что я хочу задать координаты рисования контейнера как верхний левый угол, этого контейнера а левую середину этого контейнера, так ведь ещё руками поправить нельзя, так как высота зависит от содержимого кнопки и наличия там заглавных букв.
А ещё есть ебучий Skin, Как правильно его задавать без 100500 строчек ебли?

Ответы318976

sage 229 11 янв 2017, 18:49 229 318976

>>318963
>Scene2d.ui
У него там емнип какие то проблемы с рисованием через левый-верхний угол, вроде надо через левый-нижний (мне, например, так жутко неудобно). И вообще в нём куча каких то неявных сложностей. Не очень понятно, что тебе надо. Ты хочешь разместить кнопку у левого края посередине?

Ответы318977

230 11 янв 2017, 18:57 230 318977

>>318976
Я хочу разместить кнопку с текстом в углу, самом углу. Но когда я задаю координаты рисования (0, 0) этим (0, 0) соответствует не левый верхний угол (0, h), и не нижний угол(0, 0), а точка находящиеся в (0, h/2). Где высота генерируются из размера и высоты шрифта. То есть нужно нарисовать кнопку, посчитать её высоту, поделить на два, и вычистить или добавить в Y координате при рисование.

Ответы319033

sage 231 11 янв 2017, 22:24 231 319033

>>318977
Сделай таблицу, а уже в неё кидай кнопку в одну из строк, а другую растяни на оставшееся место.

232 15 янв 2017, 00:36 232 320052

Библиотека позволяет перехватывать нажатие клавиш PrintScreen и Pause?

Ответы321065

233 16 янв 2017, 20:57 233 321065

>>320052

сама Java позволяет это делать

234 17 янв 2017, 13:21 234 321270

>>262443
Какую IDE юзаешь?

235 17 янв 2017, 13:36 235 321277

>>262443
Ништяково, но лучше не txt, а что-то более читабельное. JSON или XML.

236 17 янв 2017, 14:24 236 321288

>>258505
На чем тогда делаю тонны кала в маркете(кроме юнити)?

Ответы321302322181

237 17 янв 2017, 15:05 237 321302

>>321288
Кокос, пайтоноподелия. Love2d и прочая луа.

238 18 янв 2017, 03:49 238 322181

>>321288
под C++ неблохо зайдет oxygine, например

239 21 янв 2017, 19:49 239 325295

Как правильно перегнать набор картинок в bitmap шрифт? Вот у меня есть "пиксельный" набор картинок для отображения цифр, как превратить N картинок с определёнными символами в единый шрифт?

Ответы357162

Антоша 240 5 фев 2017, 17:49 240 357162

>>325295
BitmapFont подгружается из пикчи-текстуры размером в степень двойки и .fnt файла, который по факту текстовик с координатами каждого символа в твоей пикче и прочими параметрами шрифта. Открой их местный редактор битмап шрифтов hiero, запили в нём тестовый шрифт, открой результат и делай также. Да, придётся придрачиваться. У меня рили есть та же проблема, и кроме как создавать свою систему шрифтов или ебаться в телевизор, записывая координаты в текстовик, вариантов не вижу.

Ответы362015364338

241 6 фев 2017, 20:34 241 362015

>>357162
Вот я тоже сошелся на том, что нужно сделать свой велосипед.

242 7 фев 2017, 09:04 242 364338

>>357162
еще в мохнатых 2000-х на геймдев.ру обсуждался рендер ттф в текстуру (автогенерация этого), нахуй вы в редакторах дрочитесь яебу

243 14 фев 2017, 16:18 243 377926

Котики, кто на чём пишет под libgdx? Какие преимущества выбранного вами ЯП?

Ответы377933

244 14 фев 2017, 16:24 244 377933

>>377926
>Котики, кто на чём пишет под libgdx? Какие преимущества выбранного вами ЯП?
А есть что-то кроме java? Ну можно на kotlin, преимущества - няшность компилируемая в шестую джаву.

Ответы377936

245 14 фев 2017, 16:28 245 377936

>>377933
>А есть что-то кроме java?
Scala есть

Ответы377975

246 14 фев 2017, 17:13 246 377975

>>377936
meh

247 19 фев 2017, 10:31 247 381460

Где посмотреть шоукейс игр на libgx?
Накидайте списочек игр сделанных на нём

Ответы381470381636

248 19 фев 2017, 11:20 248 381470

>>381460
Ничего годного на нем не сделано, можешь не искать. Либгдх это лишь переходное звено между ньюфажными велосипедами и юнити.

Ответы381609

249 19 фев 2017, 19:37 249 381609

>>381470
двачую, целый год проебал на написание игры, которая на юньке за неделю пишется

250 19 фев 2017, 23:42 250 381636

>>381460
https://libgdx.badlogicgames.com/gallery.html - это список на официальном сайте. Там 95% указано андройд шлак который зарегистрировал себя в этом каталоге так как нужна реклама.
https://www.quora.com/What-are-the-most-popular-games-written-in-libGDX - а здесь вроде как список самых кассовых игр

2 Кб, 109x162
251 26 фев 2017, 18:57 251 384293

Запускаю игрулю из эклипса - 60 фпс.
Экспортирую в jar - 2 фпс.
Пробую сбиндить через градле - jar файлик не запускается совсем.

Поясни что за говно?
я тупой...

Ответы384316384794522179

252 26 фев 2017, 20:13 252 384316

>>384293
Я использую Gradle и IntellijIDEA, джарник всегда запускался без проблем.

Ответы384366

253 26 фев 2017, 20:18 253 384318

>>250576 (OP)
Насколько гибкую архитектуру предлагает Scene2D? Имеет ли смысл въезжать?
Возможно ли без боли юзать UI из Scene2D используя свою архитектуру?

Ответы384327384337

sage 254 26 фев 2017, 20:39 254 384327

>>384318
>без боли
с юи так не бывает

255 26 фев 2017, 21:10 255 384337

>>384318
>Возможно ли без боли юзать UI
Все, где есть слово "scene" невозможно юзать без боли, потому что идея дерева трансформаций для UI (и для 3D тоже) - изначально порочна.

256 26 фев 2017, 22:32 256 384366

>>384316
Может версия жавамашины как-то влияет?
libgdx 1.6 просит, кажется, а у меня 1.8 стоит, критично?

Ответы384369

257 26 фев 2017, 22:56 257 384369

>>384366
нет

258 27 фев 2017, 23:06 258 384794

>>384293
>файлик не запускается совсем.
А пишет что-нибудь? Ты его через что запускаешь?

Ответы386100

259 3 мар 2017, 21:44 259 386100

>>384794
Не запускается совсем.
Двойным кликом запускаю. Через консольку - результат тот же.
Может запускаю не тот файл? ...\projectFolder\desktop\build\libs\desktop-1.0.jar

Ответы386135

260 4 мар 2017, 00:16 260 386135

>>386100
Не-не, файл-то тот. Хм... А через консоль запускаешь через java -jar desktop-1.0.jar? Оно, просто, при запуске через консоль (не через ту, которая сразу закрывается, если, например, батником её запустить, а через cmd виндовое или терминалы никсовые, которые вывод сохраняют), если какие проблемы (типа некомпилящегося шейдера или отсутствия ассетов) обычно высирает стактрейс с проблемой. Не, нет такого?

Окей, а как ты его билдишь градлом? Через шаг dist?

Ответы386200

16 Кб, 585x259
261 4 мар 2017, 10:02 261 386200

>>386135
Запускаю тут.
Через консольку пишет no main manifest attribute

Ответы386228

10 Кб, 292x259
262 4 мар 2017, 12:53 262 386228

>>386200
Уже понятнее. Надо не test_archi-desktop > build > assemble, надо test_archi-desktop > other > dist делать. У тебя просто jar-файл собрался только с твоим кодом и ассетами, без самого LibGDX, нативных библиотек и без манифеста для запуска в том числе. Попробуй.

Ответы386316

35 Кб, 572x595
263 4 мар 2017, 16:27 263 386316

>>386228
У меня нет таска dist.

Ответы386331

19 Кб, 120x120
264 4 мар 2017, 17:10 264 386331

>>386316
Походу, эклипс не видит кастомных шагов. Странно.

Ладно, попробуй тогда зайти через консоль в папку с проектом и выполнить gradlew.bat desktop:dist.

Ответы386343

6 Кб, 636x181
265 4 мар 2017, 18:06 265 386343

>>386331

Ответы386358

266 4 мар 2017, 19:07 266 386357

Почему не хочешь использовать idea?

Ответы386358386359

267 4 мар 2017, 19:19 267 386358

>>386357
Кстати, присоединяюсь к вопросу. Бесплатный Community для разработки на LibGDX -- мощный инструмент так-то.

>>386343
Ненене, тебе надо перейти в папку и уже оттуда выполнить эту команду. Ну то есть сначала надо сделать cd Desktop\test_archi, а только потом gradlew.bat desktop:dist.

Ответы386359467687

13 Кб, 387x362
268 4 мар 2017, 19:27 268 386359

>>386358
Едрёна вошь, анончик, заработало!
Спасибо, няш :3

>>386357
>Почему не хочешь использовать idea?
Она не платная разве?
До этого в эклипсе работал, по этому и привычнее, да и под руками он есть.
В общем, это не назвать осознанным выбором. Так исторически сложилось.

Ответы386362393880

269 4 мар 2017, 19:41 269 386362

>>386359
Да пожалуйста, играйся, анон. :)

А про IDEA, то там, да, есть Ultimate, которая стоит какое-то там большое количество денег, и есть Community для тех у кого этих самых денег нет и для тех, кому нахрен не впёрлись спринги, хибернейты, жэ-е-е и прочий ява-энтерпрайз мусор. Я для работы с LibGDX юзаю Community, её возможностей хватает за глаза. Скачай, потыкайся: https://www.jetbrains.com/idea/download/download-thanks.html.

Ответы393880

34 Кб, 400x400
270 1 апр 2017, 17:55 270 393880

>>386359
>Она не платная разве?
Двачую >>386362, но есть одна хитрая фича. Если ты студент/школяр/препод, покажи любой документ об этом, и ультимейт дадут бесплатно. Где - надеюсь, сам найдёшь. Нету - отбери у брата, жетбрейнсам похер.

Кирилл 271 2 апр 2017, 23:31 271 394242

13 Кб, 172x38046 Кб, 810x510295 Кб, 1256x956235 Кб, 1265x962

Пишу на этой срани рогалик-выживалку с мультиплеером (я тот хуй, чей тред потерли, если кто-то вообще его видел). Недавно вот запилил слой подземелий и скоро намучу рандомную генерацию в них всяких комнат с лутом и гопниками и всем в таком роде.

Ответы394261

272 3 апр 2017, 00:31 272 394261

>>394242
Как реализуешь сервер? Пробовал ради скила делать онлайн дрочильню на nio, но понял что мультипоточность это слишком хардово.

Ответы394266

273 3 апр 2017, 00:45 273 394266

>>394261
На чистой жабе через сокеты. Работает иногда криво, но в целом терпимо.

До этого пробовал писать серверную часть на PHP, был полный пиздец, и поэтому было решено пересесть на сокеты

Ответы394269

274 3 апр 2017, 01:21 274 394269

>>394266
а чо не на Kryonet? там ж охуенный инструментарий для всей этой балалайки

Ответы394278

275 3 апр 2017, 04:18 275 394278

>>394269
Хз, у меня свои уютные и удобные костыли

276 11 апр 2017, 14:33 276 395840

Я слышал, что этот фреймворк заточен под 2d и 3d лучше не делать на нем, так ли это?

Ответы395877

277 11 апр 2017, 20:49 277 395877

>>395840
Это действительно так. Но твой пост я понял с третьей попытки из-за отсутствия одной(!!!) запятой

278 12 апр 2017, 16:47 278 395955

Ананасы, какие преимущества перед кокосом есть у джидыикс?

Ответы395968396516

279 12 апр 2017, 17:27 279 395968

>>395955
никаких

Ответы395979

280 12 апр 2017, 18:20 280 395979

>>395968
Там вроде на спп писать можно
мимо

281 15 апр 2017, 19:35 281 396516

>>395955
По факту у ГДХ только бешеная скорость рендеринга и заранее написанные велосипеды. Больше ничего.

282 20 апр 2017, 12:51 282 397255

Котоаны, я не понимат!
Тут
https://github.com/libgdx/libgdx/wiki/Threading
сказано, что
>You should never perform multi-threaded operations on anything that is graphics or audio related, e.g. use scene2D components from multiple threads.
Я использую Scene2D и двухмерную матрицу Actor'ов, по которой прохожу периодически в отдельном thread'e, и там же периодически эти Actor'ы создаются (но добавляются в сцену в thread'е рендеринга) и у них в поля записываются, например, ParticleEffect.

И ни на андроиде, ни на компе никаких проблем и багов не вижу.

Безопасно ли создавать в отдельном потоке такие вещи? И делать с ними, например, start() у ParticleEffect? Из документации нихуя не понятно, в интернетах нарыть не могу, а на практике проблем не имею.

Ответы397339

283 20 апр 2017, 20:20 283 397339

>>397255
Если коротко вся проблема в OpenGL, который работает особым дивным образом, и созданный в одном потоке контекст OpenGL может быть использован, только в этом же потоке. Это касается всего графического кода от нативных функций до функций фреймворка. Кроме пары функций которые на самом деле ничего с контекстом gl ничего не делают, но лежат в той же куче
Смотри по коду, если всё сводиться в вызову gl методов, то нельзя. Твоё приложение просто упадёт из-за ошибки openGL библиотеки, или даже не упадёт в 95 случаях из 100, а в 5 будет падать и зависеть это будет от фазы луны, а тебе в жопу геморой. Если эта функция просто проводит вычисления внутри объекта или меняет состояние флага, а отрисовывать идёт в другом месте то использовать можно

284 8 мая 2017, 02:49 284 400080

>>250576 (OP)
Работал ли тут кто-то с up-down тайловыми картами? Как вы выстраивайте систему координат? Делаете ли вы локальную систему координат для карты, перемещая игрока в ней, или же просто перемещаете карту относительно статичного игрока? Пытаюсь написать Miami-like шутер, параллельно изучая фреймворк, и меня резко озадачила проблема отрисовки и взаимодействия объектов с игроком.

Ответы400171

285 8 мая 2017, 18:14 285 400171

>>400080
> или же просто перемещаете карту относительно статичного игрока
Зачем? Все статичные вещи должны быть статичными, все что должно двигаться - двигаться. Используй OrthographicCamera и просто перемещай ее за игроком.

Ответы404819

286 3 июня 2017, 01:11 286 404325

>>250576 (OP)
треднечитал
Есть тут аутисты которые libGDX вместе со спрингом юзают? Как ощущения? Мобильные девайсы в таком случае будут в пролете, верно?

Ответы406469

287 6 июня 2017, 11:35 287 404819

>>400171
И как таким образом сделать бесконечный мир?

Ответы406470

288 15 июня 2017, 13:31 288 406469

>>404325
а зачем тебе спринг? dependency injection?

Ответы406511

289 15 июня 2017, 13:32 289 406470

>>404819
так у тебя Miami-like шутер или майнкрафт, вид сверху?

Ответы406474

290 15 июня 2017, 14:01 290 406474

>>406470
Допустим, у меня бесконечно длинный уровень на выживание для марио.
Ну или летящий ебаный самолетик, навстречу которому летят стреляющие хуйни.

Ответы406478

291 15 июня 2017, 14:41 291 406478

>>406474
это тебе тогда надо что-то типа майнкрафтовских chunk'ов делать:
1. загружаешь первый кусок уровня и рисуешь его
2. когда камера подбирается к (пусть это будет скроллер слева-направа) правому концу уровня -- подгружаешь следующий кусок и временно рисуешь оба куска
3. когда первый кусок уровня уходит из зоны видимости камеры -- выгружаешь его нахер из памяти

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

Ответы406480

292 15 июня 2017, 14:51 292 406480

>>406478
А разве бох2дшный World поддерживает расширение себя?
А как насчет сделать статичным героя и двигать игровые объекты (карту) попутно их генеря слегка за пределами видимой области и удаляя в пул по мере того как они уже нинужны?

Ответы406482

293 15 июня 2017, 15:07 293 406482

>>406480
> А разве бох2дшный World поддерживает расширение себя?
при генерации просто спавнишь объекты-коллайдеры в нужных местах и дестроишь ненужные старые
> статичным героя и двигать игровые объекты
это тяжёлая наркомания, так делать не надо

и уж тем более так не нужно делать с box2d

Ответы406483

294 15 июня 2017, 15:09 294 406483

>>406482
>при генерации просто спавнишь объекты-коллайдеры в нужных местах и дестроишь ненужные старые
Это да, но нормально ли, что координата персонажа все время растет (по иксу, например)? Она не выйдет за пределы бох2д мира?

Ответы406493406495

295 15 июня 2017, 15:27 295 406493

>>406483
Нагуглил тут, что по идее бокс2д мир не ограничен, но будет падать точность.
А еще есть метод ShiftOrigin, но его нет в либгдхном враппере.

392 Кб, 1048x797
296 15 июня 2017, 15:30 296 406495

>>406483
у тебя сейчас начинается over-engineering

давай начнём с того, а зачем тебе вообще box2d? для простого просчёта коллизий проще сделать AABB, особенно для скроллера (это ещё с платформером можно подумать, но даже и в нём лучше и надёжнее свой контроллер персонажа нафигачить). box2d для такого -- адовое извращение

во-вторых, в box2d мир ничем не ограничен, внутри бокса (не читал исходников, догадка) или 64-битные даблы, либо вообще большие числа, и тогда даже теоретический лимитов нет (там уже начинается вопрос с производительностью, но в С++ с этим попроще)

в-третьих, у меня есть очень большие сомнения по поводу того, что кто-то когда-то улетит ТАК далеко, что проломает мир box2d насквозь. это тогда проблема не с физикой, а с геймплеем, что игрок смог добраться до далёких-далёких галактик

Ответы406497406513

297 15 июня 2017, 15:36 297 406497

>>406495
>давай начнём с того, а зачем тебе вообще box2d? для простого просчёта коллизий проще сделать AABB, особенно для скроллера (это ещё с платформером можно подумать, но даже и в нём лучше и надёжнее свой контроллер персонажа нафигачить). box2d для такого -- адовое извращение
Гравитация, трение, упругость.

Ответы406500406513

298 15 июня 2017, 15:54 298 406500

>>406497
в скроллере про космос?

Ответы406643

299 15 июня 2017, 16:10 299 406511

>>406469
> dependency injection
Именно, ну и контейнер который бы эти за этим всем следил

Ответы406537

300 15 июня 2017, 16:22 300 406513

>>406495
>>406497
>Гравитация, трение, упругость.
Я не он, но добавлю свои пять копеек. Я в свое время баловался в написание своего простого физ-движка - логикак как раз как у теба - бокс2д это слишком тяжело и все такое, а я как раз физик по недообразованию, так что делов то нахуярить пару простых формул из кинематики. К сожалению оказалось все не так просто, особенно когда дело косается коллизий, ну тоесть если у тебя квадратный мир и 2 степени свободы передвижения то все и правда просто, но как только в дело входят коллизии под углом, объекты рандомной формы и тд то внезапно все валится по пизде - то с точностью проеб изза ошибок округления, то алгоритм адово тормозит при большом количестве объектов потому что наивный алгоритм со сложность O(n^2) минимум уже не вариант, ну и пошло поехало.
И тут оказывается что подключить бокс2д это дело 2 минут, с этим даже школьник справится, а сам api бокса спроектирован как минимум не хуже своего собственного. Так что не заморачивайся и юзай бокс спокойно.

Ответы406528406559406642

301 15 июня 2017, 17:49 301 406528

>>406513
не, ну если в 2017ом для игры нужна физика, кинематика и прочее скольжение, то писать свой физдвижок сейчас, когда есть box2d с библиотеками даже под жабаскрипт -- это реально зашквар или просто "по фану"

здесь вопрос в том, что нахера нужен физический движок в марио или скроллере в космосе, где максимум что нужно -- это просчёт пересечений двух прямоугольников

302 15 июня 2017, 18:09 302 406537

>>406511
я бы на твоём месте задумался, зачем тебе это посмотрел в сторону альтернатив типа Guice или Dagger. спринг -- слишком большая ебала, чтоб её тащить в игру

Ответы406542

303 15 июня 2017, 18:35 303 406542

>>406537
Dagger, кстати, в андроед может

Ответы406557

304 15 июня 2017, 19:09 304 406557

>>406542
добра тебе

305 15 июня 2017, 19:13 305 406559

>>406513
хотя плюсы все такие есть
Я например благодаря тому что решил писать свой движок (хоть в последствии его и дропнул) узнал что есть целая область в информатике называемая вычислительной геометрией и внезапно это оказалось ебать как интересно.

306 16 июня 2017, 05:49 306 406610

А в чем преимущество либгдикс перед годотом?

Ответы406645

307 16 июня 2017, 11:30 307 406642

>>406513
Я он и тоже с этим столкнулся.
Писал арканоид и считал углы сам. При этом был удивлен даже с тем, что нельзя взять и уравнением прямой все порешать - на нахуй тебе вырожденные случаи типа вертикальных или горизонтальных траекторий, где уравнения не работают и тебе нужно городить какие-то вилки. Дальше больше.
Это только кажется, что вот так вот просто можно взять и забахать физическую симуляцию или ее подобие. Оно-то можно, но в разы быстрее подключить движок, и в нем искаропки будет не только то, что тебе нужно, но и то, что тебе понадобится потом, хотя ты об этом пока не знаешь, и заебешься в своей симуляции это допиливать.

308 16 июня 2017, 11:31 308 406643

>>406500
Смотрите на него, бедняга думает, что в космосе нет гравитации, трения и упругости.

Ответы406654

309 16 июня 2017, 11:35 309 406645

>>406610
Пайтон - для детей.

Ответы406664

165 Кб, 640x480
310 16 июня 2017, 13:06 310 406654

>>406643
> /gd/
> скроллер в космосе
> бедняга думает, что в космосе нет гравитации, трения и упругости
> /gd/
давайте поможем анону найти грань между играми и реальностью

Ответы406655406671

311 16 июня 2017, 13:28 311 406655

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

Ответы406663

77 Кб, 312x312
312 16 июня 2017, 14:43 312 406663

>>406655

313 16 июня 2017, 14:46 313 406664

>>406645
А ещё?

Ответы406670

314 16 июня 2017, 15:02 314 406670

>>406664
А зачем?

Ответы406678

315 16 июня 2017, 15:04 315 406671

>>406654
Ты бы сам хоть одну игру попробовал написать - понял бы, что вышеперечисленные штуки нужны намного чаще, чем тебе представляется.

Ответы406684

316 16 июня 2017, 15:07 316 406678

>>406670
Что зачем? Я спрашиваю про преимущества либы, можешь ответить - отвечай, не можешь - иди нахуй.

Ответы406681

317 16 июня 2017, 15:09 317 406681

>>406678
Я тебе написал, что пайтон - детская хуйня.
Вероятно ты не совсем понял, что я имею в виду, потому спросил про еще.
А я тебе намекнул, что названной мною причины уже достаточно чтобы не прикасаться к этой хуйне.
Так понятнее?

7 Кб, 225x225
318 16 июня 2017, 15:25 318 406684

>>406671
ну куда мне до gоспоd

Ответы406686

319 16 июня 2017, 15:31 319 406686

>>406684
Лул, пидорашка повыебывалась, покушала говна и запостила картиночку.

320 22 июня 2017, 11:14 320 407792

Блядская моча навносила в спам-лист хуйни. Поссал в рот уебку.
Все пытаюсь подружить Scene2d и мнoгопoтoчность.

Ответы407793407794

321 22 июня 2017, 11:16 321 407793

>>407792
Я прaвильно же пoнимаю, что если в клaссe два мeтодa объявлены как

Ответы407794

322 22 июня 2017, 11:17 322 407794

>>407793
>>407792
Ну долбодятлы блять gd шные. Нахуя sуnchrоnized в спам-лист вносить?

323 22 июня 2017, 11:19 323 407795

Еще попытка, раз нашел словечко.

Все пытаюсь подружить Scene2d и мнoгопoтoчность.
Я правильно же понимаю, что если у класса два методы объявлены как sуnchrоnized - они не могут выполняться одновременно в разных потоках?

Если так - то методы addActor() и removeActor() можно переопределить, добавив sуnchrоnized - и это будет гарантировать, что список актеров в группе не pаспидoрасит, и итерация через него не выдаст ебaный null в самый интересный и неподходящий момент?

324 25 июня 2017, 21:51 324 408474

Какое же libgdx говно, все-таки.
Только представьте - Pool может содержать один и тот же объект несколько раз.

Не понимаю, в чем была причина хуярить Array для свободных объектов вместо HashSet. Просто охуенный простор для багов, которые хер отловишь. Не стоит он крохотного прироста в скорости.
Два раза освобождаешь такой объект (по невнимательности, пиздоглазию или так и надо) - и пул рано или поздно вернет элемент, который уже есть, отрисовывается, работает и не освобожден.

Ответы408543

325 26 июня 2017, 15:34 325 408543

>>408474
Ты хоть понимаешь что освобождение в пуле это не освобождение памяти как в Си? Ты пул используешь для того что бы КРАСИВО зарезервировать память для нескольких объектов и многократно их использовать что бы создать впечатление что объектов дохуя. И сделано это все как раз для того что бы НЕ освобождать память и НЕ заставлять GC сходить с ума.
Пул должен многократно возвращать элементы которые уже есть, потому что пул это структура данных предназначения для динамического использования объектов, а не для их постоянного хранения.

Ответы408773

326 27 июня 2017, 19:16 326 408773

>>408543
Вечер копетанов в хате?
Пул не должен возвращать один и тот же объект два раза, если объект не был освобожден.
Если я получил через пул кота и выложил его на экран, и когда я хочу нарисовать второго кота, который ебет первого - я не должен получить из пула этого ебаного первого кота. Потому что он еще на экране и освобожден.

Это один объект, нахуя в пуле больше одной ссылке на него?

Ответы408774

327 27 июня 2017, 19:17 327 408774

>>408773
Точнее, если объект был освобожден два раза - не должно быть более одной ссылки.

Ответы408775

328 27 июня 2017, 19:20 328 408775

>>408774
Вот если где-то каким-то образом кот освободится два раза - пул потом выдаст две ссылки на этого кота.

Ответы408776

329 27 июня 2017, 19:24 329 408776

>>408775
Это вот в своем говне, которое в проперженных труханах для себя пишешь - можно не заморачиваться отлавливать возможные РАСПИДОРАСИЛО от входных операций, но не во фреймворках, которые для общего пользования.

330 29 июня 2017, 17:16 330 409083

Я к вам из ньюфаг-треда. На вашем движке можно написать настольную игру для ведроида/айос? Насколько сложнее, чем на других движках вроде юнити/годота?

Ответы409090409119

331 29 июня 2017, 17:45 331 409090

>>409083
Можно. Возможно сложнее будет, потому что это не движок, а низкоуровневая обертка над OpenGl.

332 29 июня 2017, 19:46 332 409119

>>409083
НО - удобной системы позиционирования элементов на экране нет.
Таблицы тут - это типичная жабаублюдочная хуетень без возможности оперировать столбцами и вставлять ячейки, не пидорася всю таблицу.

Прям эталон необучаемости жабадаунов, которые продолжают хуярить везде свое Swing-говое говно везде, куда дотянуться. В рот их ебал после человеческих графических фреймворков.

Ответы409162

333 29 июня 2017, 20:10 333 409130

Как правильно реализовать две разные "сцены" - меню и саму игру?

Ответы409149

334 29 июня 2017, 21:50 334 409149

>>409130
Я делаю разные экраны. Для каждого своя сцена.

Ответы409150

335 29 июня 2017, 21:53 335 409150

>>409149
Как? Я ньюфаг, но хочу делать все правильно.

Ответы409152409153409163

336 29 июня 2017, 22:08 336 409152

>>409150
Вики читал уже?
https://github.com/libgdx/libgdx/wiki/Scene2d

Пример во Viewport как раз описывает, как встраивается Stage в Screen (хотя там экран и не упомянут)

Ответы409169

337 29 июня 2017, 22:13 337 409153

>>409150
Вообще, эта вики (и stackoverflow)- единственный хоть какой-то источник примеров и документации. Документации у libgdx нет (та мешанина методов без пояснения к параметрам - не в счет, она нужна только для поиска реализации в сорцах), примеров тоже 1-2 и обчелся. Тем более, которые уходят за грани "херня на 100 строк про падающие капли".

Ответы409154409169

338 29 июня 2017, 22:19 338 409154

>>409153
Я, например, долго не мог понять про скины. Как правильно заполнить json, и добавить к нему freetype шрифт.
В вики куча вещей таких, которые и если и упоминаются - никак не поясняются. А если и поясняются - то так, что можно было и не пояснять.

339 29 июня 2017, 23:17 339 409162

>>409119
> после человеческих графических фреймворков
Что за человеческие графические фреймворки?

340 29 июня 2017, 23:27 340 409163

>>409150
Есть годный небольшой проект для ньюфагов от автора Mastering LibGDX Game Development. Книга по сути поэтапное пояснения того что происходит в проекте + подводные камни. Можно не читать ее, а вот ознакомится с проектом, чтобы понимать как склеивать костыли вместе, рекомендуется.
https://github.com/patrickhoey/BludBourne

Ответы409169409178

15 Кб, 582x367
341 30 июня 2017, 00:28 341 409169

>>409152
>>409153
>>409163
Это не совсем то, о чем я спрашиваю. Я хочу понять саму структуру. Ну вот, я условно набросал, что именно я хочу понять (и я не знаю есть ли в либгдх сцены, стейджи и тд). Нечто подобное мне и нужно, чтобы въехать в правильную структуру, поскольку начальный проект предлагает хуярить апдейты напрямую в класс который extends ApplicationAdapter прямо в render (), и я ставлю жопу, что это неправильный подход.

Ответы409171409179

342 30 июня 2017, 00:43 342 409171

>>409169
Начальный проект без использования Scene2d.
Который есть приятный (или не очень) сахарок, призванный избавить тебя от кучи низкоуровневой работы.
Прочти вики дальше начального проекта, чтоле.
Грубо говоря, все что ты можешь создать дальше, все равно будет хуярить апдейты через render.

Ответы409172

343 30 июня 2017, 00:44 343 409172

>>409171
Я прочел пример с каплями. И даже там уже есть screen. А еще я вижу в вики scene и viewport! Как это все объядиняется??? Вот что меня интересует.

16 Кб, 732x416
344 30 июня 2017, 01:25 344 409178

Поскольку никто не отвечает, я сам попробовал разобрать этот >>409163 проект, и судя по нему, а также примеру с каплями, иерархия должна быть именно такая.

Ответы409180

345 30 июня 2017, 01:26 345 409179

>>409169
> Я хочу понять саму структуру
Посети ссылку выше, там и увидишь правильную структуру.
> сцены, стейджи
То что ты понимаешь под этим если я тебя правильно понял в либгдх называется screen. Scene2d это акторы реализующие гуй, а stage - граф, хранящий эти акторы и рисующий их. Чтобы он рисовал их в нужных измерениях нужен viewport.

346 30 июня 2017, 01:38 346 409180

>>409178
Вьюпорт нужон только для камер, чтобы задавать им пропорции.
Короче вся эта еботня со сцен2д и стейдж по сути нужна чтобы удобно передавать события гуя. Некоторые используют стейдж чтобы организовывать события никак не связанные с гуем, типа как иерархия игровых объектов с родителями и предками, но я такой подход нигде кроме васянских туториалов не видел.

347 30 июня 2017, 12:47 347 409224

Эээ, ёпта нах! Почему при выставлении orientation для андроида на sensor пидорасит всю графику? Растягивает как попало, хотя по идее поворот не должен так делать. И как сделать, чтобы поворот экрана не пидорасил графику?

113 Кб, 380x294
348 30 июня 2017, 14:57 348 409240

Так, господа, это никуда не годится. Во всех остальных фреймворках такого ни разу не встречал, в них всегда ассеты оставались оригинальными ассетами с оригинальными размерами независимо от размера экрана. Как это исправить в libgdx? Чую, что здесь делать в камерах и вьюпортах, но нагуглить я не смог.

Ответы409241409245

349 30 июня 2017, 14:58 349 409241

>>409240
>что здесь дело в
Фикс

350 30 июня 2017, 15:17 350 409245

>>409240
https://stackoverflow.com/questions/18495975/libgdx-window-resizing-keeping-aspect-ratio

Ответы409247

4 Кб, 448x30
351 30 июня 2017, 15:21 351 409247

>>409245
>городить костыль с хардкодным размером экрана
Спасибо, но нет. У меня на телефоне неизвестен размер экрана, как я по-твоему должен записывать эту строку с 800х480?

Ответы409248

352 30 июня 2017, 15:26 352 409248

>>409247
Что мешает заменить это на переменные полученные запросом размера экрана? А вообще зайди на вики да выбери себе способ скейла по душе, там примеры на все случаи жизни.
Вот тебе даже дублированная ссылка
https://github.com/libgdx/libgdx/wiki/Scene2d

Ответы409249409276

353 30 июня 2017, 15:33 353 409249

>>409248
Слишком сложно.

208 Кб, 675x528
354 30 июня 2017, 16:31 354 409276

>>409248
Вроде бы немного разобрался с вьюпортами с помощью этого туториала http://www.gamefromscratch.com/post/2014/12/09/LibGDX-Tutorial-Part-17-Viewports.aspx

Но! Допустим у меня такой вьюпорт: viewport = new StretchViewport(1024,576,camera)
Он растягивает мою бекграунд картинку (1024,576) по размерам экрана. Как мне теперь разместить картинку, которая не должна растягиваться и должна иметь четкое соотношение сторон 256х256?
Это просто какой-то адовый пиздец, танцы с бубном и расстановка костылей. Вместо создания игры.

Ответы409281

355 30 июня 2017, 16:59 355 409281

>>409276
Разберись в том, какие вьюпорты бывают, и выбери нужный, не кипяти мозг себе и мне.

Ответы409282

356 30 июня 2017, 17:02 356 409282

>>409281
Я уже разобрался, чтобы растянуть мой бекграунд мне нужен StretchViewport. Как мне поставить другую пикчу с постоянным соотношением теперь? Или в этом треде ньюфагам не помогают, а отправляют гуглить вики и наблюдают со стороны, как он 4 часа к ряду пытается разобраться с этими костылями? И все это вместо прямой подсказки, как нужно сделать в его случае.

Ответы409289

357 30 июня 2017, 17:21 357 409289

>>409282
1. Оставь тот вьюпорт, который тебе нужен для верхнего слоя, задний фон растягивай под размеры окна.
2. Сделай два вьюпорта.
3. Дождись кого-то (себя), кто даст тебе нормальное решение.

Ответы409320

358 30 июня 2017, 18:44 358 409320

6 Мб, webm,
1152x704889 Кб, 675x528

>>409289
Я в конец запутался, так что я жду нормального решения моей проблемы. Мне нужно:
1. Чтобы на экране при любом разрешении не было незаполненых мест, и лишний бэкграунд можно отрезать отрезать.
2. Чтобы соотношение сторон всех спрайтов соблюдалось.
3. Чтобы бэкграунд всегда был статическим бэкграундом, но вот перед ним должна быть квадратная картинка, которую можно зумировать (пример на вебм).
4. Меня сейчас интересует только работа с камерами и вьюпортами, остальное мне понятно.

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

И я без малейшего понятия по третьему пункту, как оставить размер бэкграунда нетронутым, но при этом зумировать другой спрайт на нём? Как это делается? В моем случае происходит какой-то ёбаный ад - верхний спрайт при запуске не находится в позиции (100,100) как должен, и в придачу еще и СДВИГАЕТСЯ при изменении размеров окна с начальной позиции, хотя никакого движения я ему не прописывал.

Код игры https://pastebin.com/ccF8qi32 и обе картинки тут http://dropmefiles.com/i6GSG

Прошу адекватной помощи.

Ответы409336409342

sage 359 30 июня 2017, 19:49 359 409336

>>409320
>4000,3120
>1024,1024
Да ты же поехавший.

Ответы409340

360 30 июня 2017, 20:02 360 409340

>>409336
Всего-лишь пример, взял первые картинки из гугла.

361 30 июня 2017, 20:21 361 409342

>>409320
Используй ScreenViewport

Ответы409343

362 30 июня 2017, 20:26 362 409343

>>409342
Не соответствует первому пункту - не растягивает на весь размер.

Ответы409344409348

52 Кб, 656x518
363 30 июня 2017, 20:26 363 409344

>>409343
Отклеилось

Ответы409346

364 30 июня 2017, 20:27 364 409346

>>409344
Прикрепи картинки, сейчас установлю себе этот ваш либждх.

Ответы409347

365 30 июня 2017, 20:32 365 409347

273 Кб, 512x3994 Кб, 128x128

>>409346
Только поменяй размеры в коде под соответствующие, я уменьшил картинки.

366 30 июня 2017, 20:32 366 409348

>>409343
Так у тебя пункты противоречат друг другу, то должна растягиваться то не должна. Если она вообще не должна растягиваться но и чтобы экран не был свободным, то можешь сделать репит текстуры через setWrap.

Ответы409349

367 30 июня 2017, 20:33 367 409349

>>409348
Ничего не противоречит, я не говорил, что не должно растягиваться. Я говорил, что должно в пункте (1) и что должно сохранять пропорции в пункте (2).

А еще я попросил адекватную помощь.

Ответы409355

368 30 июня 2017, 20:36 368 409351

Я и забыл, как оно долго качается и собирается.

Ответы409352

369 30 июня 2017, 20:38 369 409352

>>409351
Я пробовал разные, тут собирается быстрее всего. Разве что LOVE2D может чуток быстрее собирается под ведроид, но он не может в дебаг, поэтому просто делает апк.

2,8 Мб, 1362x786
370 30 июня 2017, 21:36 370 409355

>>409349
https://pastebin.com/d6Ry3RQR
Если нужно чтобы не соблюдались пропорции то юзай стрэтч.

Ответы409356

136 Кб, 720x355
371 30 июня 2017, 21:57 371 409356

>>409355
Спасибо тебе, хороший человек! Целый день я пытался повторить это, и не выходило. Оказывается, на этой доске есть люди, которые могут и в программирование, и в помощь. Держи котенка.

А почему если поменять вьюпорт у доски, то меняется задний фон?

Ответы409359409361

372 30 июня 2017, 22:34 372 409359

>>409356
> если поменять вьюпорт у доски, то меняется задний фон?
У меня все норм лол, но если что то куда то съезжает то это из за авто центрирования камеры в apply. Можешь отцентрировать сам после его вызова.

373 30 июня 2017, 22:44 373 409361

>>409356
Хотя понял о чем ты. Похоже что лучше не переназначать матрицу 2 раза у одного и того же батча в контексте одного begin end. https://pastebin.com/1QDVc0WX

Ответы409362

492 Кб, 675x529
374 30 июня 2017, 22:53 374 409362

>>409361
Спасибо еще раз. Вот мой финальный вариант перед кодингом обработки тача для зума https://pastebin.com/MUG3CUVg

Это вообще правильный подход - менять размер доски, вместо размера вьюпорта?

Ответы409364410145

375 30 июня 2017, 23:03 375 409364

>>409362
> Это вообще правильный подход
Это нормально. Но с мобильниками я не знаком, поэтому не могу сказать как там работать с поворотами, мультитачами и прочее.

376 5 июля 2017, 03:06 376 410145

>>409362
Знаешь, я тебе скажу, что писать логическую игру на libgdx - это все-таки уберхуевая идея.
Кто-то может вскукарекнуть, что "коко логические игры это изи", но шли таких сразу нахуй.
А все потому что:

- в логической игре с полем число актеров НАМНОГО больше, чем в любом бродилке\шутере\рпг (поле 10х10 означает в несколько сотен актеров, каждый из которых может обладать анимациями и рассеивать партиклы \частицы).
-из-за пункта выше следует, что производительность на мабилках просядет просто катастрофически, превратившись в неюзабельное говно. Ну серьезно, в libgdx система частиц архиуебищна, никакие пулы ей не помогают. Менее 1000 частиц на экране - да это же смешно! Даже сотня клеток поля если одновременно испустят всего 10 (а хорошие эффекты в 10 частиц не уместить) - это будет лагодром. Та же юнити спокойно выдает на экране несколько тысяч частиц без фризов, красиво и плавненько. Для неверящих - скачайте, например, в маркете Fireworks Touch, и сравните с libgdx говном в сравнительном тесте. Разница колоссальна.
-

Ответы410146410348

377 5 июля 2017, 03:08 377 410146

>>410145
И вот если ты рассматриваешь мобилки и собираешься делать спецэффекты - ты неожиданно упрешься в сильные графические ограничения, а все потому что жабадебилы идейно непринимают написание отдельных лагающих частей кода на C.

Ответы410304

378 6 июля 2017, 00:17 378 410304

>>410146
>а все потому что жабадебилы идейно непринимают написание отдельных лагающих частей кода на C
Не проецируй петушок

Ответы410349

379 6 июля 2017, 04:23 379 410348

>>410145
Ну покажи игру на libgdx для андроида, которая содержит больше 2-3х сотен актеров\спрайтов (пусть даже без анимаций и спецэффектов), которые выдают стабильные 60 фпс.
Одна примитивщина уровня "кролик бежит на фоне и прыгает\самолетик летит и падает" с менее чем 50 таких актеров\спрайтов.

Неспроста даже приложения примеров типа Codelabs или Libgdx Test имеют ограничения на не более чем 20 фигур. И даже на них все умудряется просаживаться.

Ответы410349410354

380 6 июля 2017, 04:23 380 410349

>>410348
>>410304

381 6 июля 2017, 08:18 381 410354

>>410348
Дурачёк. Любой из популярых фреймворков, при помощи которых можно собрать apk файл что libGDX, что юнити, используют мобильную версию открытой графической библиотеки. Ты кретин, если додумался увидеть преимущества openglES над openglES.
Ты наверное подросток, да? Так ведут себя дети, у которых есть своё мнение по каждому вопросу, при том, что они ничего в этом не понимают. Иными словами, ТЫСКОЗАЛ.

Ответы410355

382 6 июля 2017, 08:32 382 410355

>>410354
Ну действительно, библиотека одна, а производительность отличается в разы.
Ты мудак или прикидываешься? Вызовы отрисовки openIES идут через обертку.
Покажи пример игры с двумя сотнями отрисованных текстур на libgdx или иди нахуй, кукаретик. Куча игр на этой "открытой версии графической библиотеки" справляются с этим, но не справляется libgdx.
Куча тем без решения на форумах, что на андроиде не тянет по куче причин (в тч из-за бага жабы в отношении с vsync), нелагающих примеров комплекснее "самолетик, который упал" нет, а у него все как у людей, лол.

Посмотри на FreeGemas как пример логической игры и охуей от того, как это отличается от любой игры того же типа на той же "мобильной версии открытой графической библиотеки"

Ответы410375410415

383 6 июля 2017, 11:50 383 410368

277 Кб, 1682x984153 Кб, 1682x984

Почему две строчки, которые по описанию в вики должны работать нормально, у меня выдают какие-то артефакты на границах тайлов и исчезающий фон?

tiledMap = (new TmxMapLoader()).load("maps/map1.tmx");

tiledMapRenderer = new OrthogonalTiledMapRenderer(tiledMap, 2.0f, sb);

Ответы538524

384 6 июля 2017, 12:41 384 410375

>>410355
Или вот еще более комплексный, чем зайцы и самолетики пример.

https://github.com/libgdx/libgdx-demo-pax-britannica

На моем Galaxy S4 4 корабля, не начавшие спамить самолеты - выдают около 35 фпс (далеко не 60).

А когда начинают спамить - фпс становится 5-10.

Ответы410376410382

385 6 июля 2017, 12:43 385 410376

>>410375
И это при том, что там используются атласы, нет аллокации, все обпулено по самые помидоры.

386 6 июля 2017, 13:13 386 410382

>>410375
Кстати, забавно, но версия, собранная из исходников, отличается от версии выложенной в маркете.
В последней нет бага, от которого в настройках нельзя переключать галки, и производительность вполне норм.
Хз, от чего такая разница

Ответы410389

sage 387 6 июля 2017, 13:35 387 410389

>>410382
Ответ прост, но не очевиден.
Нельзя тестировать приложение, запуская его через студию. Нужно собирать отдельно тестовый apk. Из-за мониторов\дебаговых оберток производительность и проседает. Сам так неделю сидел в апатии, пока не наковырял.

388 6 июля 2017, 15:58 388 410415

>>410355
Медленная отрисовка в libgdx следствие не самого libgdx или джавы, а криворукости писателей, которые не могут VBO. Ну серьезно блять, libgdx это низкоуровневая обертка над НАТИВНОЙ lwgjl, так что тут нечему тормозить - просто нехуй каждый спрайт по отдельности рисовать - с таким подходом у тебя игра будет проседать и на Си. Но с тобой бесполезно спорить, потому что как заметил другой анон - ТЫСКОЗАЛЖЕ.

Анон 389 9 июля 2017, 21:06 389 411181

Написал игру на этом движке, Undercore. И в целом доволен, движок довольно гибкий и удобный, если ты не криворук.
Моя игра выдает спокойно 60 фпс, и почти никаких фризов. Есть проблемные места в коде(из-за моей криворукости и незнания фреймворка), но в целом все просто превосходно

P.S. link: https://goo.gl/EyTG35

390 11 июля 2017, 10:36 390 411536

Эт чё в libGDX нет даже встроенного класса чтобы нарисовать анимированный спрайт, приходится городить свои костыли на основе Sprite и Animation<TextureRegion>, ну охуеть

Ответы411615

391 11 июля 2017, 14:44 391 411615

>>411536
Сука libGDX это не движок, а надстройка над openGL, заебали уже. Не нравится - иди перетаскивай говноассеты в юнити.

Ответы411618

392 11 июля 2017, 14:54 392 411618

>>411615
Ага охуительная надстройка, с классами камеры, вьюпортов на все случаи жизни, JSON ридеры-райтеры, загрузчики моделей и карт из самых разных форматов.. Да я и не говорю что мне не нравится, всё заебись, но обидно что такую простую вещь забыли доложить к такому вороху встроенных инструментов.

Перед тем как отправить пост нашёл полу-официальный пакет libgdx-utils, в котором реализованы "недостающие" но очень нужные базовые вещи, в числе которых и AnimatedSprite, так что и эта моя претензия к фреймворку аннулируется

393 11 июля 2017, 18:47 393 411671

Как делать диалоги на либждкс? Чтобы как в эрпогэ = куча ответов, вопросов, ветви-ветви, переменные меняются во всю, всякое страшное происходит. Ничего толком не нагуглил, кроме предложения самому все написать и не выебываться. Но чувствую, что это попахивает велосипедостроительством.

Пока нашел только Yarn, вроде почти подходит. Есть сомнительная обертка Jarn, которая поддерживается как-то никак и документации толком никакой нет. Даже по гайдам местным ничего не получилось, видимо гайды эти устарели.

Ответы411786412314

394 12 июля 2017, 12:39 394 411786

>>411671
Ну это уже совсем толсто ! Ну нахуй!

Ответы411808

395 12 июля 2017, 13:37 395 411808

>>411786
По делу есть что сказать?

Ответы411848

396 12 июля 2017, 15:00 396 411848

>>411808
Он правильно сказал, иди нахуй с такими вопросами.

Ответы411909

397 12 июля 2017, 15:15 397 411872

>>250630
Какой же ты упрямый дебил, блять.
Ну хуй с тобой, пердоль свой шыдевыр полгода, а потом хуи соси в слезах, когда его сотня школьников скачает и обосрет в отзывах, и на этом все и закончится.

>сколько можно заработать
>про раскрутку он не спрашивал
Дебил, ты посмотри, сколько других долбоебов со своей хуйней в твоих маркетах сидят. Ты именно про раскрутку в первую очередь и спрашивал.

мимо другой анон

398 12 июля 2017, 16:07 398 411909

>>411848
У вас тут тред обиженных или что?

Пездос, ну и идите нахуй. Сам написал уже.

399 12 июля 2017, 22:25 399 412314

>>411671
Создаёшь кнопку "сделать пиздато"
@
Нажимаешь

Ответы412966

400 13 июля 2017, 11:00 400 412966

>>412314
Выкидываешь libGDX нахуй
@
Выкидываешь джаву нахуй
@
Дрочишь C
@
Дрочишь OpenGL API ручками
@
Во, теперь заебись

Нарисовал радужный квадрат
@
Забыл зачем вообще начал все это

Велосипедил для самых простых нужд
@
Юнитидебилы смеялись
@
Гейммейкерорабы тыкали пальцем
@
И поделом

401 15 июля 2017, 15:34 401 416906

>Ко ко ко не используйте статические переменные с объектами, которые используют вызовы к OpenGl (иначе распидорасит на мобилках)
Кто-нибудь мне расскажет, какова была логика создателей этого говна, которые зная это захуярили в Pools статический map пулов? Шиза какая-то.

https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/utils/Pools.java

Ответы416932

402 15 июля 2017, 18:19 402 416932

>>416906
Второй пинок к Pools - нет метода с параметром, черeз который можно установить initialCapacity (и создаем, и создаем, и создаем и создаем 1000 объектов во время рендеринга, предварительной генерации для питухов, ага).
Честно говоря, призаебался уже, переписывать за мартыханами то, что вроде как из коробки, и без какого-то особого поведения.

403 17 июля 2017, 06:40 403 418075

https://www.youtube.com/watch?v=Vjen774srEU

Умеет ли libgtx в полное разрушение окружающего мира?

Будет ли 3D FPS game тормозить на современных Андроид-телефонах, когда я её доделаю через 2 года?

Ответы418076

404 17 июля 2017, 06:41 404 418076

>>418075
имеется ввиду, 3D FPS с полным разрушение мира.

405 17 июля 2017, 15:59 405 418201

>>250808
То чувство, когда ты сам написал свою реализацию скелетной анимации для файлов одной очень знаменитой игры, а у кого-то скелетная анимация вызывает затруднения. ППЦ

406 19 июля 2017, 23:12 406 419409

Vector2 disp = new Vector2();
float r = Intersector.intersectSegmentCircleDisplace(new Vector2(0, 0), new Vector2(1, 0), new Vector2(1.5f, 0), 1, disp);
System.out.println(r);
System.out.println(disp);

Хули это говно не работает? Они забили хуй на класс Intersector?
В консоль должно написаться 0.5 и (1.0, 0.0), а не Infinity и (0.0, 0.0)
Сука, блядь, полдня на эту дрисню потратил - а оказывается, что это разработчики насрали в мои штаны, а не я сам

Ответы425425

407 30 июля 2017, 01:41 407 425425

>>419409
юзай бокс2д или напиши свою имплементацию например
http://www.dyn4j.org/2010/01/sat/

Ответы468523

408 4 авг 2017, 07:41 408 429160

Сап, двачиллы. Почему у меня залупается анимация, когда я указал, что её плеймод - нормал?

DYING_ANIMATION = new Animation<TextureRegion>(0.230f, framesDyingFront,
Animation.PlayMode.NORMAL);

Когда я пишу, что true во втором параметре getKeyFrame (то есть, залупливать анимацию), то анимация играет. Если нет, то анимация переходит сразу к конечному кадру.

stateTime += Gdx.graphics.getDeltaTime();
TextureRegion currentFrame = activeAnimation.getKeyFrame(stateTime, true);
setDrawable(new TextureRegionDrawable(currentFrame));

Как сделать одноразовую анимацию?

Ответы429163

409 4 авг 2017, 07:52 409 429163

>>429160
Ок, я решил это тем, что при setинге одноразовой анимации, я сбивал stateTime до 0 и ставил false в loop.

public void setActiveAnimation(Animation<TextureRegion> activeAnimation) {
this.activeAnimation = activeAnimation;
if (activeAnimation == SHOOTING_ANIMATION || activeAnimation == DYING_ANIMATION){
isLooped = false;
stateTime = 0;
} else {
isLooped = true;
}
}

stateTime += Gdx.graphics.getDeltaTime();
TextureRegion currentFrame = activeAnimation.getKeyFrame(stateTime, isLooped);

410 6 ноя 2017, 18:26 410 454918

Ку, кармаки. На гитхабе конкурс закинули https://itch.io/jam/game-off-2017 до конца ноября. Есть у кого-то желание сделать адскую ретро-дрочильню? Сам пишу на libgdx, норм работаю с гитхабом, пару раз бывал в конкурсах.

Ответы468523

411 6 ноя 2017, 20:09 411 454946

>>454943
Экшн-игруху какую-нибудь. Адскую в том плане, что экшона можно сделать оч много, как в каком-то nuclear throne. Но вообще у меня пока даже идей мало, так что можно и не дрочильню.

412 23 дек 2017, 19:17 412 462592

LibGDX жива? Или есть чот-то более живое?

Ответы462705462711462817

413 24 дек 2017, 15:46 413 462705

>>462592
Интерпрайс не умирает.

33 Кб, 839x481
414 24 дек 2017, 17:17 414 462711

>>462592
Если хорошо знаешь жаву, то почему бы и нет.

415 24 дек 2017, 23:42 415 462817

>>462592
Monogame

416 25 дек 2017, 11:59 416 462889

Бамп-антивайп.

417 14 янв 2018, 12:05 417 467687

>>386358
>>386358
блятть я 228 часов сидел до 2 ночи и пытался понять что за хуита и почему она не работает. сейчас зашел на двач и за 1 минуту нашел твой пост, который решил мою проблему. чувак, я сейчас расплачусь нахуй. какой же двач охуенный
Спасибо, Абу

418 16 янв 2018, 19:26 418 468523

>>250576 (OP)
>>250577
>>250587
>>454918
>>425425
сап, аноны. можете рассказать про расширения(extentions) libgdx, что какой добавляет, как ими пользоваться?

sdfdsf df 419 19 июня 2018, 18:27 419 505948

sdfsdfsdf

420 5 июля 2018, 14:16 420 509846

Не могу сделать так, чтобы пароль отображался при вводе в виде звездочек. Типо .
TextField passwordField = new TextField(null, skin);
password.setPasswordMode(true);
passwordField.setMessageText("Password goes here");

Что я делаю не так?

Ответы509859

421 5 июля 2018, 15:34 421 509859

>>509846
Возможно нужно установить звездочку в setPasswordCharacter

Ответы509870

422 5 июля 2018, 16:07 422 509870

>>509859
Бля, спасибо, сработало. люблю

423 5 июля 2018, 16:38 423 509876

Ещё один вопрос от начинающего делателя рогаликов. Проблему с разным размером экранов на андроиде можно решить, если делать для каждого Screen свой Skin и потом ставить делать StrechViewerpoint? А то почитал эти туториалы:
https://github.com/libgdx/libgdx/wiki/Viewports

https://gamedev.stackexchange.com/questions/70361/libgdx-android-phone-resolution-problem

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

Ответы510170

424 6 июля 2018, 10:35 424 510170

>>509876
А, разобрался сам

425 12 июля 2018, 12:00 425 513257

Не могу понять как засунуть анимацию в таблицу.
Есть одна таблица, которая заполняет сцену.
Затем есть две таблицы слева и справа. В таблице справа кнопки-хуёпки и прочее гавно. А в таблице слева должна 24/7 играть анимация. Но я не могу засунуть анимацию в таблицу т.к она не наследует от актёра, а потому хуй мне.
Может кто подсказать решение? Я правильный вообще подход выбрал, добавлять анимацию в таблицу?

Ответы538416

426 12 авг 2018, 10:10 426 522179

>>384293
-Dsun.java2d.opengl=true

427 25 ноя 2018, 01:31 427 538206

Шо, все умерли разрабы?

Ответы538262538590

6 Кб, 756x33
428 25 ноя 2018, 15:41 428 538262

>>538206
Просто фреймворк уже достиг совершенства и не нуждается в апдейтах.

429 25 ноя 2018, 17:57 429 538279

Зачем нужно ваше говно, если есть юнити?

Ответы538417

430 26 ноя 2018, 12:49 430 538416

>>513257
Сделай класс наследник от актёра. Перепеши метод draw. Рисуй там кадр из анимации по stateTime и суй это всё в таблицу.
Или я тебя неправильно понял?

Ответы538772

431 26 ноя 2018, 12:51 431 538417

>>538279
Юнити - модное гавно. Лучше наше, чём модное

432 27 ноя 2018, 07:29 432 538524

>>410368
Чинится хардварно, дело в том что при сборке атласа (а ты обязан его использовать) у тебя выключена фича "duplicatePadding" https://github.com/libgdx/libgdx/wiki/Texture-packer#settings при сборке. Настраивается файлом pack.json в папке с текстурами. Эта фича дублирует бортовые пиксели, чтоб видеокарта делала сэмплинг крайних пикселей полигонов адекватно.

433 27 ноя 2018, 17:36 433 538590

>>538206
1.9.9 на днях вышел. Всё ок

Ответы538628538641

434 28 ноя 2018, 04:11 434 538628

>>538590
Когда они уже 2.0 всрутся?

Ответы538637

435 28 ноя 2018, 09:12 435 538637

>>538628
А нахуя этот дроч на цифры? Уже заанонсили 1.9.10

436 28 ноя 2018, 11:01 436 538641

>>538590
> 1.9.9 на днях вышел
> Уже заанонсили 1.9.10
Наконец то у разработчика началось осенние обострение, целый год ждал.

437 28 ноя 2018, 20:46 437 538771

Стоило спросить смерть разрабов как они вылезли?

438 28 ноя 2018, 20:47 438 538772

>>538416
А ты не торопился, да? Я уже ФСЁ. Купил Spriter и забыл о ебле с манямацией.

11 Кб, 835x124
439 29 ноя 2018, 11:24 439 538862

как это развидеть? в гугле сложно. куда нажать, ака?

Ответы538884538945

440 29 ноя 2018, 16:48 440 538884

>>538862
Даунгрейднутся на жаву 8

441 30 ноя 2018, 05:35 441 538945

>>538862
Сами варнинги не опасны. Но чтобы их не видеть, мне лично помогло прописывание такой строчки:
jvmArgs = ['--add-opens=java.base/java.lang=ALL-UNNAMED', '--add-opens=java.base/java.lang.invoke=ALL-UNNAMED']
в конец таска "run" файла desktop/build.gradle

Ответы538951

1 Кб, 503x26
442 30 ноя 2018, 07:57 442 538951

>>538945
>jvmArgs = ['--add-opens=java.base/java.lang=ALL-UNNAMED', '--add-opens=java.base/java.lang.invoke=ALL-UNNAMED']

Не помогло( Еще пикрел высрался и не хочет уходить, хотя проект собирается и нормально запускается, никаких ошибок не пишет

Ответы539771

443 5 дек 2018, 14:55 443 539631

бамп

Ответы539673

7 Кб, 250x250
444 5 дек 2018, 17:08 444 539673

>>539631

445 6 дек 2018, 10:58 445 539771

>>538951
У меня такая же фигня высралась в свежей Идее. Я просто забил. В логах всё равно пусто про неё, хз чё чинить.

7 Кб, 801x78
446 10 дек 2018, 00:39 446 540300

Здравствуйте, может кто сталкивался с такой проблемой и знает, как ее решить?

Ответы540355

845 Кб, 500x281
447 10 дек 2018, 14:48 447 540355

>>540300
И в чем проблема? У тебя в map.layers хоть 2 слоя есть? А то тащишь второй get(1).

Ответы540404

5 Кб, 662x30
448 10 дек 2018, 20:00 448 540404

>>540355
А даже если первый пытаюсь достать, то тоже самое, вроде карта рендорится, но слой достать не может, может я где-то в создании карты проебался?

Ответы540702

449 12 дек 2018, 17:53 449 540702

>>540404
Да. Похоже. Но ты в следующий раз лучше описание ошибки Exception кидай. А то разные проблемы могут быть.\

>карта рендорится

Ну тогда ставь точку остановки и смотри в Debug, что хранится в переменной map.layers. Сорян, если капитаню, но я просто не вижу проблему, в том, чтобы решить эту проблему посредством IDE.

Иначе посмотри какой номер слоя стоит у тебя в файле уровня .tmx, если ты из него качаешь. Может быть у тебя слой под 5-ым номером, а до него все пустое, из-за того что ты экспериментировал с редактором тайтлов.

Ответы540751

155 Кб, 708x1080
450 13 дек 2018, 02:02 450 540751

>>540702
Спасибо, но я понял в чем была моя ошибка, банальный расчет клетки для хода, как обычно стопарюсь на глупых и очевидных вещах))

451 18 янв 2019, 07:16 451 547016

Как правильно сделать из Pixmap текстуру? Почему-то отображается в виде чёрного квадрата, на реддите какое-то объяснение что изображения можно загружать только в другом потоке, хотя в описание libgdx говориться, что с грфакикой нужно работать только в одном потоке?

452 26 апр 2019, 16:53 452 576632

Посоны подскажите.
Взял стандартный DragAndDrop. Всё работает, но когда перетаскиваю, Actor которого я перетаскиваю, рисуется сбоку от пальца. Это вроде как заебись, но мне надо чтобы он под пальцем рисовался.
Чёт не пойму, есть ли в DragAndDrop какой нить offset для этого, или самому изобретать?

Ответы576645

453 26 апр 2019, 19:55 453 576645

>>576632
> какой нить offset для этого, или самому изобретать
Ну ты уже знаешь что делать. Мне хоть и нравится либждх, но я бы посоветовал пересесть на что то более современное, для чего есть не сдохший редактор сцен и интерфейса, или еще лучше - встроенный.

Ответы576646577142

454 26 апр 2019, 19:58 454 576646

>>576645
Юнитэ!

Ответы576649577141

455 26 апр 2019, 20:14 455 576649

>>576646
Годот, ЯСКОЗАЛ!

Ответы576654577141

456 26 апр 2019, 20:39 456 576654

>>576649
>Годот, ЯСКОЗАЛ!
Я слышу речь не мальчика, но петуха.

Ответы577141

457 29 апр 2019, 10:18 457 577141

>>576646
>>576649
>>576654
Вы опять всё обосрали, дауны. Идите в свои треды и дрочите там.

458 29 апр 2019, 10:21 458 577142

>>576645
Редакторы не нужны.

181 Кб, 1920x1080
459 3 авг 2019, 02:56 459 597986

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

че делать? переписывать и заодно осваивать годо?

Ответы598047598253

460 3 авг 2019, 12:53 460 598047

>>597986
В идее жмёшь ctrl+N и пробуешь найти XmlSchema. Асло javax это вроде бы часть JavaEE стека, а ты небось только кастрированный JavaSE накатил.

461 4 авг 2019, 08:55 461 598253

>>597986
Какую ждк поставил? Должна быть не старше 1.8 иначе либждх гроб кладбище пидор.

Ответы598320

462 4 авг 2019, 16:06 462 598320

>>598253
блядж весь вечер вчера ебался, ну америкасы туууупые не могли также на стаке написать

463 4 авг 2019, 18:26 463 598338

новые ошибки, завязываю с этой ебалой и перехожу на годот

Ответы598339

464 4 авг 2019, 18:27 464 598339

>>598338
>перехожу на годот
старая ошибка

Ответы598354

465 4 авг 2019, 19:00 465 598354

>>598339
Потом ты охуеешь от количества багов в годоте, и перейдешь на юнити. А когда охуеешь от юнити, уже будет некуда переходить.
Я не тролю, сам сейчас нахожусь на этом этапе. Решил что похуй, буду делать игру на кривом юнити, а когда разбогатею и уволюсь с работы, буду пилить свой двиг под следующие игры.

Ответы599379

sage 466 7 авг 2019, 17:34 466 599379

>>598354
Неженка. Баги нужно фиксить а не бежать от них. Как будто есть что-то где нет багов вообще. Везде есть, но в libgdx и годоте их хотя бы легко исправить и опубликовать результат чтобы другие о них уже не спотыкались.

Ответы599387

467 7 авг 2019, 17:50 467 599387

>>599379
А игры кто делать будет?

468 8 авг 2019, 09:30 468 599568

Подумываю вкатиться пара вопросов
Вакансии на такое вообще бывают?
Байндинги на сишарп есть?

Ответы599724599728

469 8 авг 2019, 22:02 469 599724

>>599568
Нет.
Возможно.

470 8 авг 2019, 22:31 470 599728

>>599568
Есть одна вакансия в штатах, все что я нашел

471 22 фев 2020, 23:20 471 644337

>>250576 (OP)
Собираюсь писать один платформер типа apocalypse runner на ведро но с графонием попроще. Java/Kotlin знаю, однако игры никогда не писал. Стоит ли начинать писать на Libgdx в 2к20?

Ответы644379

472 23 фев 2020, 05:46 472 644379

>>644337
фига ты какое дерьмо мамонта поднял, но не суть.. тут вряд ли найдется актив по сабжу, вк есть группа, вроде живая, нубские вопросы прям на стене задают, народ отвечает.. вообще если жава/котлин как родные, можешь использовать, тк по сути это просто фреймворк, запускающий за тебя игровой цикл и дающий основной функционал для написания игори.. конечно многое придется пилить самому, или подключать отдельные библиотеки (благо это делается одной строкой в конфиге градла), но есть существенный минус - нет общего редактора, уровни делают в Tiled, текстуры пакуют в другой программке (тоже написанной на libgdx), ui пакуют в еще одной утилите.. короче море редакторов для каждого пука, пишутся сообществом.. если нужно по фасту что-то делать, лучше использовать движки..

я с libgdx начинал, много узнал что как внутри игр работает, до этого был опыт в жава ынтырпрызе, поэтому далось все легко, но игоры так и не стал пилить на постоянной основе, сейчас иногда участвую в джемах и использую годот (легкий редактор, в котором можно за пару вечеров на коленке слепить прототипчик)

Ответы644418

473 23 фев 2020, 12:47 473 644418

>>644379
Мож годота тогда?

Ответы644683

474 24 фев 2020, 10:47 474 644683

>>644418
Он не подходит для разработки на ведре. Из недавнего - 10 фпс на тайлмапах.

Тред утонул или удален.
Это копия, сохраненная 6 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /gd/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion