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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
2 Кб, 300x50
LibGDX-тред 250576 В конец треда | Веб
Java + LibGDX = Desktop/Android/BlackBerry/iOS/HTML5 games

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

Сурс: https://libgdx.badlogicgames.com/index.html
2 250577
Сам пишу спэйсшип-шутан для дроида, около сотни спрайтов на экране. Физику Box2D решил не использовать, т.к. слишком много сущностей приходится плодить, плюс с багами тяжело разбираться. Проще, мне кажется, самому обсчитать коллизии.

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

>подводными камнями


Мне неудобна система координат y-up, которая в libgdx по-умолчанию. В большинстве критических мест, правда, есть возможность создать y-down через особые конструкторы и т.п. Но всё равно, где-нибудь привязка к y-up обязательно вылазит. Например, в гуе (scene2d). Изрядно с ним помучился.
4 250594
Анасы, сколько gd-шник - одиночка, пишущий под андроиды всякие, может зарабатывать на своих приложухах?
gd-шник средней криворукости и одарённости.
5 250595
>>250594
0. Кирилл, который собирается пилить говнецо под мобилки для заработка обречен на провал.
6 250596
>>250594
Мониторь плеймаркет. Найди платные игры разного качества (по своим силам), посмотри цену и примерное кол-во скачиваний. Если что интересного найдёшь, вбрасывай.
7 250597
>>250587
Y-up это когда ордината увеличивается снизу-вверх? Ну так вроде более естественно для матана.
8 250600
>>250595
Нахуй иди. Тебе вопрос нормально поставили.
9 250621
>>250600
Пернул тебе в лицо за такие вопросы. Сделай одолжение - выпились. Избавь мир от высранного тобой мусора.
10 250622
>>250621
Мусоришь здесь главным образом ты.
Съебись и не возвращайся.
11 250627
>>250622

>Мусоришь здесь главным образом ты


Но я не заливаю говно на google market. Ты ошибся
12 250629
>>250600
Все верно тебе ответили, если не готов вкладываться в раскрутку то твою игру никто даже не увидит в плотном потоке фекалий.
13 250630
>>250627
Мы не на google market, наркот ты ебаный.
>>250629
Так ты ещё и семён, блять. Я что-то про раскрутку спрашивал? Ты что несёшь вообще? Прочитай вопрос внимательно или пиздуй в начальную школу- попроси научить тебя общаться с людьми.
Но не отвечай, блядь, на вопросы, не понимая, о чём тебя спрашивают. А тем более не исходи на говно, только зайдя в тред.
14 250635
>>250630
Пссс-пссс тебе на ебало.
15 250636
>>250630
Хуй саси
16 250638
>>250635
>>250636
Ну зачем ты в этом треде? Ты же просто бессмысленно гадишь вокруг себя.
17 250639
>>250625
А я и не делал. Ну, т.е., не пришлось пока. Так то в сторону behavior trees посматриваю, но это всё потом. Сейчас, пока ещё я не определился с тем, какие вообще будут возможности в игре, ИИ в конечном виде делать рано. Пока у меня все NPC просто следуют такой модели: ходят рандомно (подбирают предметы, воскрешают трупы союзников), пока не увидят враждебный юнит (не только игрока), вычисляют путь до него (астаром), идут туда (или стреляют-нюкают, если умеют). Если в процессе цель неизвестно куда пропала (ушла из зоны видимости, например) - идут на последнюю известную точку. Ну и, когда хп мало, начинают убегать в сторону "от ближайшего врага". Вот и весь "ИИ".
18 250646
Я этот либгдх даже установить не смог.
19 250648
>>250646
Его не надо устанавливать.
1. Качаешь.
Готово.
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.
21 250662
>>250653
>>250651

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

>не полностью контролируемая game loop


Поясни, пожалуйста.
25 250808
>>250798
А ещё LibGDX не поддерживает изкоробки скелетную анимацию. Библиотека есть только у мегадорогого Спайна. Короче, ненужно.
26 250809
>>250804
Ты не можешь контролировать как зовётся метод render. Он просто будет зваться и всё. Поэтому чтобы написать правильную петлю, способную рендерить так часто как можно и считать состояние с фиксированным рейтом, приходится маленько изъёбываться. Ну вообще это довольно легко одолимая проблема.
27 251001
Ох ты ж ёжики. Почему-то только сейчас увидел, как изящно у них сделана передача данных из тредов в рендерящий тред:
https://github.com/libgdx/libgdx/wiki/Threading
Надо раскурить более детально как в JVM синхронизация устроена, возможно, ещё одной маленькой проблемой станет меньше.
28 251004
>>250672
В чем вообще профиты грэдла? Почему грэдл, а не ант/мавен?
29 251144
>>251001
Бро, в чём профиты мультитредовости в 2д игре? В смысле, там же простая логика: читай ввод -> просчитывай положение/состояние -> рисуй.
sage 30 251153
>>251126

>хотя должно быть видно


Нет.
Алгоритмы los разные и выдают разные результаты. Это нормально. Если бы ты делал максимум-реализм-3д, да, было бы не очень удобно, что монстр тебя не видит, так как у вас между центрами моделек стенки кусок, а ты его видишь, потому что тебе достаточно, чтобы его левый мизинец в камеру попадал, чтобы предположить, что он есть. А для рогалика то какая разница? Просто ещё один элемент абстракции. По правилам игры ты видишь только то, что на одной брезенхемовской линии лежит с твоей клеткой и всё.
31 251169
>>251004
Хз зачем, но антом точно не надо пользоваться - устаревшее говно мамонта. А мавен ещё вполне норм - не у всех ХМЛфобия.
32 251192
>>251144
Да, читай-считай-рисуй это хорошо, а вот за сеть я почему-то переживаю. Сеть охота в отдельном треде вести. Сеть блокирующая и явно является io. Гайды не рекомендуют вести io в рендертреде.
33 251200
>>251144
А физдвижок?
34 251205
>>251192
Кстать, по поводу разработки сетевого движка есть хорошая статья:
http://ithare.com/64-network-dos-and-donts-for-game-engine-developers-part-iib-protocols-and-apis-continued/
(в либгиске я на сколько понял ничего такого особого полезного для сети и нет).
35 251206
36 251218
>>251205
Ух ты, славная статья, спасибо! Я читал только gafferongames на эту тему, надо прочитать ещё эту.
37 251306
>>251302
Даун конченый. Любое IDE для быдлокода на жаве сойдёт.
Всё равно не осилишь ничего дельного.
38 251309
>>251302

>Чтобы не ебать себе мозги с редакторами, компиляторами, функционалом и проч


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

>полноценный IDE для разработки игр


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

>я хочу разработкой заниматься


"Толька чтоп без всяких кампилятарав и редактарав, я вам ни канфуций в этой сложной хуйне расбиратса"
Проваливай уже отсюда, игродел мамкин.
40 251318
>>251316
Долбоеб. Простейший встроенный графический редактор, интерфейс для подключения библиотек или модулей, редактор сцен и прочая мелочь, вот что мне нужно. При чем тут твои маняфантазии? Тебе в голову не приходит, что правильная организация работы может ускорить разработку и сделать ее более удобной?
41 251320
42 251321
>>251320
У тебя тут персональный раковник или ты просто после школы расслабиться зашел?
43 251322
>>251320
Какой unity ему? Ты что? Там же мышкой много двигать надо и клавиатурой пользоваться.
И думать придётся. Ему проще надо, чтоб за 5 минут GTA VII накалябать.
44 251323
45 251327
>>251325

>IntelliJ IDEA


>>251302

>не ебать себе мозги с редакторами, компиляторами, функционалом


Ты тоже умом не вышел. Он просил же без сложной хуйни.
46 251330
>>251327
Без сложной хуйни пусть берет фпс креатор.
47 251331
>>251327
Пусть пишет свои редакторы или ищет готовые решения. Если не может, то ynuti его выбор
70 Кб, 300x100
48 251336
>>251332

>инструментов, которые в ней отсутствуют


Нет кнопки "сделать пиздато".

>Смущает обрезанная версия


Ты даже десять процентов возможностей идеи не будешь использовать, дегенерат. Как установишь и обосрешься в самом начале на создании libgdx проекта - прибегай, мы тебя будем ждать.
49 251342
Пустой проект на HTML5 билдится 2 минуты, что я делаю не так?
50 251344
>>251336
Через 2 года он сделает змейку толщиной в 1 пиксель и придёт нассать тебе на ебало.
51 251358
>>251332
Бро, не смущайся. Отсутствует только всякий кровавый энтерпрайз. Всё что нужно для комфортной разработки с LibGDX там есть. Базарю, после неё никакая другая Java IDE не вкатит. Она чуть ли не думает за тебя. Стоп, почему Java? Она ж полиглот.
sage 52 251360
>>251358
А ОП - хуеглот, азазаззаз
53 251361
Как насчёт использования Jython с Libgdx? Правда, исполнение Jython возможно только на десктопной JVM. Кто-нибудь пробовал?
54 251363
>>251361
Надо смотреть, как там дела с GC. LibGDX, да и вообще геймдев на Java, не любит GC. Если на Jython можно не мусорить, то должно сработать. Другие JVM-языки вполне ок пашут.
sage 55 251398
>>251383

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


Overlap2D
56 251408
>>251399
Убогий кусок кала высранный любителем, как и все написанное на жаве впрочем. Неюзабельно.
57 251540
>>251286
А расскажи плиз подробнее. По сайту не очень понятно. Там просишь либу сериализовать произвольный pojo? А потом когда десериалиация на другом конце, можно десериализовать в существующий объект, а не чтоб новый создавался? Типа чтобы не плодить мусор.
sage 58 251611
>>251573
Как же юнитидебилов корёжит от самого лучшего 2д-движка.
http://www.slant.co/topics/341/~2d-game-engines
И самого популярного на гитхабе:
https://github.com/showcases/game-engines
Даже мне, ненавистнику Джавы, нечего сказать против него. Придётся пользоваться.
59 251633
>>251302
Рекомендую виртуальную машину Java версии 1.8
60 251752
>>251540
Посмотрел. Если кому интересно - Kryonet мусорить будет. По ходу велосипеда не миновать.
61 251901
>>251800
Хм, слушай, приятель, беру слова обратно, вчитался повнимательнее - класс Kryo весьма хитрожопо реализован и по ходу всё pool'ит, как и сабж треда. Видать жопой смотрел. Не первый раз причем уже такая паранойя. В прошлый раз померещилось, что мусорит java.net.DatagramSocket, с утра на свежую голову перечитал код - нихера.
62 251930
>>251332

>Спасибо. Из того, что я нашел на их сайте могу сделать вывод что штука очень удобная. Смущает обрезанная версия, и нет четкого списка инструментов, которые в ней отсутствуют. Но в целом выглядит очень круто. "Из коробки".


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

>жаба - это тебе не геймдев


Что тогда тред делает в /gd? Пожаловался модератору.
64 251933
>>251930
А как же майнсруфт и 80 процентов всех игр под андроид а до ведроида была j2me с миллиардами игр
65 251935
>>251931
Обезумел?
66 251938
>>251936
А плюсы или шарп имеют? Это про любой язык можно сказать.
67 251939
>>251933
Ммм, а откуда такие цифри про андройд?
68 252178
>>251939
Из логики. А на чём ещё писать?
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 252235
Анон, помоги! Второй день не могу разобраться (^._.^)ノ

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

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

Потому что рано или поздно объект начнёт смещаться и выйдет за линии лестницы. Надеюсь на помощь от анона ^____^
71 252245
>>252235
Добрый человек, по сути вопроса не подскажут, но по геймплею хочу уточнить: не боишься, что на телефоне игрок будет своими пальцами, которыми управляет, сам себе обзор загораживать? Подумай об этом, хорошо? А то игра бесить будет.
139 Кб, 1593x880
72 252251
Я уже начинаю жалеть, что я не выбрал юнити - столько разных велосипедов приходится выдумывать, чтобы хоть что-то адекватное слепить из этого говна.
73 252260
>>252245
У меня в нижней части экрана будет затемнение (как бы имитирующее то, что лестница плохо освещена, и того, что внизу, не видно). Туда можно будет и тыкать без проблем с эргономикой |・ω・)
74 252299
>>252251
Почему ты сравниваешь фреймворк с движком и ещё удивляешься?
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 - кун
76 252451
Жабоёбы, кто-то пробовал запиливать своё говно под jmonkeyengine? У них даже какая-никакая своя ИДЕ есть на нетбинсе правда.
77 252469
>>252338
Спасибо за разбор.
78 253440
Что, все? Все перекатились на Юнити?
79 253538
>>253456
Ты охуел обсуждать нечего?
Это как раз такая библиотека, которую можно обсуждать, как уе4 нахуй.не потому что она хорошая, а потому что в ней почти нихуя нет и надо каждый раз пилить свой лесопед
80 253542
>>253538
Хорошо, что ты хочешь обсудить?
81 253667
>>253542
Как организовывать архитектуру своего игоря на либгдкс?
Что меня очень бесит, так это всё время создавать новые объекты и передавать в ебучие конструкторы нужные объекты. Или ебашить везде статические объекты, чтобы не ебать себе мозг лишний раз?
И вообще, какие классы под какие нужны лучше выделять?
Есть какие-нибудь книжки по поводу архитектур игорей?
Только я чего-то сомневаюсь, что есть что-то современное, а уж тем более для жабы, всё-таки никто сегодня не будет делать в здравом уме игру на жабе (и уж тем более на крестах с нуля), когда доступно такое-то количество движков, где все эти основы уже запилены за тебя и поэтому банально не надо заморачиваться по поводу лоу левельной архитектуры, а только изучать, как пилить игру на конкретном движке.
82 253671
>>252451
Прошел немножко тюториалов. Норм библиотека, не нужно перемножать матрицы поворота, как в соседнем треде. Можно писать на высоком уровне, двигать объекты в координатах сцены. Прямо из коробки работает fps-камера. Как-то работает освещение. Есть пара материалов и базовых шейдеров. Есть привязка к Bullet.
На простенькой сцене тормозов не видел.
При релизе нужно переводить все модели в формат jmonkeyengine. Это делается в предоставленной ИДЕ не стоит этим пренебрегать, даже если уже есть нетбинс

Где-то на уровне threejs по возможностям, может даже и проще по написанию кода.
83 253708
>>253667
Акторы и стейджи юзай. Я несколько дней назад решил так переписать свой говнокод и сейчас у меня нереальная мотивация от того как все хорошо выходит. Если интересно могу чуть позже на пастебин залить, там не много.
Поищи в субшоте посты про рогалик, там у него еще на битбаките репозиторий - я во многом на него ориентировался.
84 253986
>>253708
Ну, одними актёрами и стейджем не обойдёшься, чтобы что-то адекватное сделать в плане архитектуры...
А разве код рогалика опен сорсный? Он же говорил, что не будет выкладывать.
sage 85 253991
>>253986

>разве код рогалика опен сорсный?


Он про вот этот мой рогалик - >>250587
https://bitbucket.org/dksurname/rolik
Но я бы не советовал на мой код ориентироваться. У меня там маловразумительная каша и костыль на костыле. Я таки не программист.
86 254391
>>253667
Не знаю, видел ли ты вот этот славный ресурс, на всякий случай держи: http://gafferongames.com/
87 254402
Как сделать нормальное масштабирование графики гуи?
sage 88 254418
>>254402
Если у тебя не пиксельарт - всё нормально масштабируется и без лишних движений.
Если пиксельарт - сам виноват. Я, например, ответ на этот вопрос не нашёл и сделал в классе, который за гуй отвечает метод reset, который тупо все элементы переделывает под новый масштаб. Ну и вызываю его когда надо. Выглядит страшновато но вроде не тормозит даже на слабом железе.
89 254755
Хорошо, а у меня другой вопрос: как отрубить это масштабирование к хуям?
90 254764
Поделюсь годнотой, вот либа для добавления пост эффектов ( https://github.com/manuelbua/libgdx-contribs ). У меня же вопрос - кто либо использовал box2dlight в своих проектах? У меня источником света (PointLight) является динамическая фигурка игрока. В результате движения источника света тени других объектов прыгают, мерцают, выглядит уёбищно. Какой то анон пытался у них выпытать на офф форуме, но не получилось ( http://badlogicgames.com/forum/viewtopic.php?f=11&t=15602&start=10&hilit=Box2dLights ). Может кто сталкивался с этой проблемой?
91 254767
>>254764
А зачем делать динамическую фигуру игрока источником света? Сто если просто сделать чтобы в координатах игрока был обычный источник света?
92 254768
>>254767
У меня так и есть. Каждый игровой тик я устанавливаю источник света в позицию игрока. Если я правильно тебя понял
93 254780
>>254768
Я так же делал и норм было. Может у тебя порядок апдейта отрисовки какой-то не такой?
94 254786
>>254780
У меня что то такое получается - https://www.youtube.com/watch?v=FjF8l85FUhs , как на правой половине. Я могу это исправить например установив 2048 лучей для PointLight, но тогда среднее время отрисовки кадра
становится 10 мс, что много как по мне. Или я что то делаю не так? Вот ещё видос от того же поляка, показывающий как это у него получается https://www.youtube.com/watch?v=tMlrP2UYXss
95 254790
>>254786
2048 ЛУЧЕЙ, СУКА, АХАХАХ

Я думал, такую шизу только на юнити кто-то делает. Всё проще. Здесь нужна математика и генерация меша каждый кадр. Тогда всё будет занимать пару милисекунд. Но это достаточно сложно.
96 254792
>>254786
Лол, я 10-15 ставил.
97 254797
>>254790
Я понимаю что делается математикой, я и сам бы сделал, прост не хочется тратить неделю времени на свой велосипед.

В общем я погуглил и нашёл альтернативы, буду прикручивать. Вот например https://github.com/mattdesl/lwjgl-basics/wiki/2D-Pixel-Perfect-Shadows . Надеюсь box2dlight будет когда нибудь работать вот так http://www.redblobgames.com/articles/visibility/
98 254829
>>254757
Ну масштабирование интерфейса, чтобы было как в л2, сколько бы не изменял размер окна, размер окошек интерфейса оставался прежним. А то сейчас scene 2d масштабирует его, в зависимости от размеров окна.
99 254834
>>254829
Тебе нужен ScreenViewport
Анон 100 255232
>>254797
Я интегрировал gpu shadow, но он мне не понравился, по нему как то мало мануалов и прочего, плюс были мелкие странности. Решил попробовать переделать box2dlight, получилось, теперь лучи отправляются не веером наугад, а только по ближашим вершинам, пока производительность немного лучше, зато тени чётче. Когда доведу до ума может выложу куда.
101 256998
>>250653

>IntelliJidea


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

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

Тему с подобной историей что то не могу снова нагуглить, но речь шла о том, что это баг непосредственно ИДЕ и на эклипс всё ок.
104 257076
>>257073
Надеюсь, потому что эклипс мне очень уж не понравился.
153 Кб, 1673x995
105 258505
Ой, ну в рот ебал я этот либгдкс.
Теперь я понимаю, почему никто не делает игорей на жабе - адекватных либ ну вообще нет.
Всё блядь какие-то костыли, всё надо самому с нуля пилить, решать дохуя самых разных проблем. Вот сейчас ебался с этим интерфейсом. Так и не понял, как отключить этот ебучий скейл (при ресайзе окна), из-за которого он сам ломается (как бы интерфейс увеличивается, но на нажатие откликается только когда жму на то старое место, до рескейла).
А ещё надо как-то попытаться заставить scene2d показывать лейблы в самой игре, над игроками, когда приходит сообщение от них... У меня же сейчас типа интерфейс идёт просто поверх игры со своей камерой и всем таким... Ой бляяя...
106 258587
>>250587
Создай свой объект и рисуй в screen_height - (y + obj_height)
sage 107 258618
>>258505
scene2d гуй действительно сильно неочевидный. Однако, как бы он плох не был, все твои проблемы с ним решаемы. По крайней мере, насколько я их понял.
Насчёт ресайза - убедись, что screen в методе resize вызывает для stage, в котором у тебя гуй, getViewport().update(width, height, true). У меня так сделано и таких как у тебя косяков нет.
Лейблы в самой игре тоже просто делаются. Раз у тебя гуй на отдельном stage "со своей камерой и всем таким", создавать надо не на нём, а на stage с игрой. Тебе ведь нужно привязать эти лейблы к игрокам, а они не на гуевском уровне - всё логично. Ну или посылай из игры гую список координат говорящих персонажей, а в гуе переводи координаты в собственные и обрабатывай (создавай-перемещай лейблы). В общем, есть варианты.
108 260354
>>250587
Выглядит лампово. Но картинка слева лишняя
sage 109 260406
>>260354

>Но картинка слева лишняя


Я их изначально рисовал с расчётом скорее на какое нибудь всплывающее информационное окошко.
2,5 Мб, webm,
476x796
110 262443
Пилю на LibGDX стелс-экшон под ведроид. С фреймворком знаком три дня - до этого только в вузике на java чуть-чуть кодил. Пока вот что получилось. Управление персонажем свайпами, запилил функцию зрения - позже она будет у врагов. Ох и наебался же я с ней. Уровень подгружается из отдельного txt-файла. Пока что все. Врагов еще нет, ничего нет кроме видеорелейтед. Вообще это первый опыт в создании игры, и мне очень нравится, как код преобразуется во что-то, что можно увидеть и потрогать.
111 268691
Посоны, такой вопрос!

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

Слил вчера установщик, создал проект, убедился что он компилится и запускается как на десктопе (Дебиан), так и на моем Нексусе 5, и забурился в документацию. А сейчас вот интереса ради глянул, сколько занимает аппликуха в памяти андроида, и даже как-то удивился слегка. 38 мегабайт на оверхед, не многовато ли?
112 268696
>>262443
Свайпом палец сотрешь через минуту игры, или джойстик, или кликом на точку (с нахождением пути), или кликом с определенной стороны от игрока.
113 268698
Анон, помоги, когда экспортирую апк с эклипса(и не только), при запуске пишет ошибку(что-то типа "приложение остановлено").На эмуляторе тоже ничего не работает.
114 268700
>>268691

>сколько занимает аппликуха в памяти андроида


Размер апк и то, сколько установленное приложение занимает в памяти - не одно и то же. На ведре 5 и выше приложение "компилируется" при распаковке для более быстрой работы что увеличивает его вес, приложение не сидит в памяти телефона как апк файл. Плюсуй к весу данные и кэш приложения.
115 268767
>>250809
а в чем проблема создать свой update loop в новом потоке и если надо просто передавать туда дельту из рендера?
116 268773
>>254797
я вот математикой и сделал свой собственный велосипед
немного коряво правда, но всяко лучше чем то что у вас на видео появлялось
и да сделано не на libgdx, на него я только позавчера начал переезжать, а видеорелейтед реализация рейтрейсинга это чистая джава можно сказать

https://drive.google.com/file/d/0BzwCB78J-oVxaGpSRDNLSnZTbW8/view
164 Кб, 1024x819
Заливка фона tiled-текстурой с учетом позиции и scale 117 277357
2D игруля, рисую через SpriteBatch

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

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

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

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


Это дело камеры, а не самого фона это раз

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



тут поподробнее, те фон это одно изображение натянутое на весь экран которое должно повторятся или как?
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.
9 Кб, 555x180
120 277688
>>277525
формально при движении игрока будет двигаться ВСЕ и игрок и фон и камера и даже аллах.
Просто камера должна двигаться со скоростью игрока (если она на нем зафиксирована) по этому получается ощущение что двигается только фон.
Короче кури libgdx камеру.

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

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

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

>Только в место домов у меня бесконечная шахматная доска


в таком случае отрендерь тайлы в текстуру с шириной равной ширине тайла, а высоте равной высоте экрана и потом просто заполняй экран полученной текстурой по мере необходимости
Gdx если не ошибаюсь в автоматическом режимей такой возможности делать не дает, так что придется самому писать
123 281047
>>250576 (OP)
Так-с. Пилю для пеки 2д хуиту на жабе (вернее, пока только на бумаге проЭкт). Покатит этот ваш либджидиэкс?
Из графония требуются только спрайты, анимация, менюшечки и простое движение с анимацией. Насколько низкий порог вхождения у данного фреймворка просто лень изучать технологию, к которой не факт, что в будущем прикоснусь. Но если понравится, то буду юзать?
124 281068
>>281047
Порог вхождения достаточно высок. Я бы сказал вдвое выше, чем у юнити. Так что если ты дебил, бери юнити.
125 281069
>>281068
Мне именно для жабы надо. Или велосипеды пилить буду, или какую-нибудь либу возьму.
126 281088
>>281047
Если в игре не надо дизайнить уровни, то прокатит. Мне фреймворк нравится, хоть и юзаю его без важных фич, а чисто как удобную обертку вокруг опенджиэла.
127 281244
>>281088

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


сейм щит, работа с фреймбуферами и шейдерами одно удовольствие и не нужно lwgjl велосипедов изобретать
128 281322
Может кто знаешь как оптимизировать SpriteBatch?

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

Может есть у кого идеи хоть куда копать. Не отказываться же от SpriteBatch?
129 281323
>>281068
Сренькнул с этого эксперта.
Писал до этого на чистой Java, перейдя на LibGDX охуел с того, сколько я велосипедов наизобретал, теперь приходится в писать в десятки раз меньше при создании каркаса проекта, уже через пару минут приступая непосредственно с геймплею. Разбираться вообще ни в чем не приходится. Кроме Box2D.
130 281330
>>281088
Спасибо. Уровни у меня тупо из слоев фона будут.
131 281350
Зачем нужны старые, олдскульные движки 1.0, если есть unity?
132 281385
>>281323

>Box2D


нахуй его, только свой физический движок, только своя модель освещения
133 281386
>>281350
libGdx это фреймворк позволяющий писать свои собственные движки
134 281400
>>281350

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

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

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


Поясни как угол задавать?
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 282965
у меня не открывается скачанных jar файл
139 283102
>>282965
Тогда качай юнити.
140 283255
>>283102
но у меня линукс.
141 283538
>>282965
Спасибо, что сообщил нам.
Android - Текстуры для разных экранов 142 288299
Игруля: 2D аркада

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

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

В общем есть для этого best-practics?
143 288302
>>288299
Та забей, нищеброды должны страдать.
144 288350
>>288299
Ну если тебя не смущае куча одозвездочных отзывов с "ТАРМАЗИТ @ НИРАБОТАИТ"" то можно и не напрягаться.
145 288354
>>288350
К А К ?

Я для того и спросил, поддержки "из коробоки" я не нашел.
146 289041
>>288354
Ау, девелоперы, вы где?
147 289046
>>289041
Да забей, бери большие текстуры и не заморачивайся.
sage 148 290906
>>251318
Технически, LibGDX - это не "игровой движок"(тм)(R), а библиотека для джавы. Если не чувствуешь различий, уёбувай.
149 290967
>>290906
Это фреймворк бля, учитель ебучий
sage 150 291155
>>290967
Я правильно понимаю, ты не согласен, что это библиотека?
sage 151 291213
>>291155
libGdx - не библиотека, а, как анон выше и написал - "фреймворк". lwjgl или opengl, например - библиотеки. А юнити или гамак - конструкторы. И это не просто чьё то там мнение. Так свои продукты называют их создатели.
58 Кб, 721x887
152 293298
Котятки, а есть тут физон кроме box2d? Желательно нативный. Или хотя бы просто коллижондетектор. Не хочу толстый монолитный черный ящик, в котором чтобы что-то поправить даже в кнофиге, надо преконпелировать ведро. К тому же мне оттуда нужно сильно меньше половины. А еще доебли релятивистские эффекты на сверхзуковых скоростях.
153 293326
>>293298

>Желательно нативный


НЕ нативный.
ультраслоуфикс.
154 293345
>>293298
Да есть.
Там можно смотреть пересечения всяких квадратов (
import com.badlogic.gdx.math.Rectangle) и тд.
Есть функция Intersector.overlaps(Rectangle r1, Rectangle r2) которая смотрит пересечения
155 293371
>>281400
Ты наркоман, она каждый месяц обновляется, просто надо было зайти на форум в линуксовскую ветку с релизами, последнее сообщение - последняя версия.
156 293376
>>293345
Эту штуку видел. Пересечения это еще не коллижондетектор. Если буду пересекать всё со всем, то ну ты понел.
157 294048
>>293298
свой пиши я вот пишу и мне норм
48 Кб, 620x400
158 295171
Котаны, есть какие-то гайдлайны по структурированию кода в LibGDX и вообще игровых проектов? Сколько бы я не задрачивал ООП, какой-нибудь свайп для выделения юнитов обязательно требует поле. Выделять под такую гадость отдельные классы или позволять классу игрового мира похнуть от геттеров и документации?
159 295173
>>295171
Дрочи ООП дальше, тк ООП лучше всего выглядит как раз в играх. А на твой вопрос могу ответить только так - решение зависит от контекста.
160 295783
Есть вопрос, я проект начинал через этот libGDX установщик который сразу GRADLE прикручивает, но в градле я толком пока не освоился, и вот теперь у меня стоит задача перенести проект с одного пека на другой, как это сделать? Через эклайпсовский export archive? Так ведь хуйня же, вангую что надо через тот самый GRADLE делать, я прав? Если да, то как? Может кто линками или советами по теме поделится?
с меня спасибо и нихуя
https://www.youtube.com/watch?v=B9nc-YUr3jA
161 295786
>>295171
Используй ashley. Только не пиши как даун системы для каждого поведения. Сделай одну систему с behaviour'ами типа как в юните.

>>295173

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


ООП лучше всего выглядит в могиле, где ему самое место.
162 295796
>>295786
только посмотрите на этого функционального кукаретика
163 295903
>>295796
о композиции слышал? ECS, там
164 295937
>>295903
ога ога
только это всего лишь куча паттернов, а компоненты суть те же объекты, если ООП выделить в отдельное множество, то КОП это его подмножетсво.
Ну и вообще во всех нормальных ООП языках, где множественное наследование невозможно всегда композиция > наследование
165 296804
>>295937
А лямбды - это всего лишь объекты, если ООП выделить в отдельное множество, то фп - это его подмножество.
А объекты - это всего лишь куски памяти, если низкоуровневое программирование выделить в отдельное множество, то ООП - это его подмножество.
1 Кб, 512x256
166 296975
Итак, ананасы, намедни словил такой небольшой ОГРОМНЫЙ СУКА бугурт. Значит есть у меня парачка шейдеров, их задача сделать чуть более, чем нихуя - отрендерить квадраты для маски совещения, вот они:
http://pastebin.com/hdBPH28k
Компилируются нормально, все атрибуты, униформы считаются тоже хорошо (в смысле программа находит их расположение), а вот теперь еще кусочек говна в кашу:
http://pastebin.com/pPr3CS0b
Собственно, что он делает, перебирает итератором объекты в контроллере моего мирка и смотрит, ежели тот непрозрачный, значит надо отрисовать, всего-то ничего. И, вроде как, все нормально сделал, но на выходе получаю просто охуительную доселе невиданную текстуру (взгляните только на пикрелейтед), и, даже цвет не применяет. Что за хуйню он нарендерил?! Сомнений нет, что текстуру я получаю именно ту, потому что при изменении цвета очистки меняется фон текстуры.
Если же есть сомнения по поводу матрицы трансформации - так это первое, на что упал мой взор и я ее проверил, и работает она верно (нормирует координаты в пределах -1 .. 1 по всем осям для объектов)
167 296981
>>296975
Бля, посоны, короче, обосрался с подливою я.
Вспомнил я про такое явление в Java, как dispose(), но деструкторов нам не завезли, к сожалению, и я в некотором месте вызвал его для всех своих программ, когда сбрасывал контроллер освещения (ресурсы GL сами себя не освободят), таки дела. Поэтому-то я яву и не люблю, но это совсем другая история.
168 297049
>>296975
>>296981
Кулстори, бро.
169 304868
Посоны, LibGDX iOS поддерживает или RoboVM капутт и альтернатив не завезли?
170 305601
>>296804
Ну в принципе так и есть.
Лямбды в джаве вообще через анонимные классы реализованы и ниче.
72 Кб, 298x248
171 305676

>Целый блядский тред


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



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

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

>да Анон?


Нет, но игру так и не написал.
173 305699
Сосаны, я так понял у libGdx с 3d не все радужно. Короче мне нужно совсем чуть-чуть 3d анимации. Беру fbx файл, конверчу его с помощью fbx-conv в g3dj/g3db, не рендерится нихрена. Импортирую fbx в блендер, оттуда экспортирую с помощью плагина в g3dj, меняю абсолютные ссылки на текстурки, в результате не анимации, ни половины модели, как жить епта?
174 305701
>>288299
Бандли с игрой самые мелкие текстурки, а остальные загружай со своего сервака/гугл плея.
175 305733
Я стал мастером libgdx. Подскажите плес где найти художника.
176 305746
>>305676

>high performance


>java based


обдристался.

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

>обдристался


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

>Быстрее жавы только С


а еще с++, rust, objective c и crystal
не забывай что jvm была на крестах написанна, хотя вообще да, уже как долгое время джава считается high performance, по крайней мере для серверных решений
140 Кб, 278x357
179 305781
>>305761
Вообще нахуя в играх вообще не только в 2д нужна производительность языка, у джавы ахуенный кокнурэнси а все тяжелые вычисления и так сидят на видеокарте.
150 Кб, 1280x853
180 305784
>>305781
>>305761

Вообще то на либе пишется 3д
https://www.youtube.com/watch?v=QVy5MkIZczo&list=PLqpawGIg6Qj6yGU8DxaRjX8E1NZQHvxdf
Как вариант.
181 305802
>>305778
Ну так это все нативно компилируемые языки, без виртуалки же. Такое решение всегда будет быстрее. Хочешь ебашить ебейшую производительность - ну иди пиши на них, дело добровольное. На них тоже можно замечательно написать кусок говна, который будет тормозить.

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

>>305784
ФПС оставляет желать лучшего. Когда я последний раз гонял полноценное 3д на либе, моя топовая видяха выдавала на куцей сцене с полутора моделями фпс будто это какой-то ААА на ультрах.
182 305803
>>305802
Так в этих йобах ИИ и так на скриптах сидит разве нет? (ну там всякие Луы и прочая срань)
Да и какой это блять ии, сраные графы и примитивный рейкаст, такая же ебота как в 2д, только матрицы на один размер больше
183 305804
>>305803
хотя я конечно могу ошибаться
184 305805
>>305803
Ну смотря в каких и где. Там кроме собственно ИИ еще может сидеть какой-нибудь поиск пути. Я вот с трудом представляю как написать что-то типа того же суприм командера или тотал вар или опенворлд типа прототайпа с таким ебойвешим количеством юнитов вокруг которые еще и вполне резво бегают.
185 305807
>>305805
ну в том же суприме это сделанно через жопу
Там когда группе отдаешь приказ, то путь целиком расчитывается только один раз в начале и только для одного ведущего юнита, остальные же юниты просчитывают дорогу от своего положения на момент отдания приказа, до стартовой позиции ведущего юнита + смещение от этой позици для постройки строя. Это довольно дешево в плане производительности.
186 305811
>>305807
Разве все так просто? Как же тогда широкий строй в проходы протискивается? У них там куча мелких маневров происходит.
187 305812
>>305811
ну а ты вниметельней посмотри во что этот широкий строй превращается в узком проходе, все крайние просто смещаются в центер в котором образуется каша и вместо одного юнита на квадратную еденицу площади мы имеем несколько (десятков), большинство маневров происходит как правило во время построения в конце или в начале пути, те просчитывается только один раз.
188 305813
>>305812
Ну вот это смещение и кашу тоже нужно обсчитать.
189 308558
Здравствуйте, уважаемые почитатели LibGDX!

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

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

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

Если вдруг кого-то заинтересовало, пишите на е-мэйл. Сотрудничество, конечно же, за деньги. Почитаете задание, договоримся о цене.
190 308559
>>308558
Могу написать на юнити
191 308562
>>252251
Подскажи, что что у тебя за DI-либа? Пробовал guice, не понравилось (рефлексии в runtime), альтернатив не знаю.
192 308712
>>308562
Нахуярь сервис-локатор, как наши отцы когда-то хуярили.
193 309166
>>254485
Желаю тебе гореть в аду, уёбок
194 309168
>>256998

>И всё норм работает?


Я вообще не рассматриваю других IDE, кроме Jetbrains.
Да и чего вы прицепились к IDE? Я могу хоть на VIMе с javac'ом разрабатывать.
GD.jpg20 Кб, 600x293
195 309770
>>250648

>не надо устанавливать


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

Конечно можно скачать какой-нибудь Godot и начать хакать свои корованы уже через 3 секунды, но это же не наш метод.
196 309802
>>309770
В годоте ты только анус себе хакнуть сможешь. Альтернатив юнити нет и не будет в обозримом будущем.
197 309813
>>309802
А вот и дежурный юнитишизик.
Держи +15 лезь обратно под шконарь.
198 309841
>>309813

>+15 игр

199 309886
>>309770

>1. сначала не надо устанавливать ВМ 8


7, на дроиде еще нет 8.

>2. не надо устанавливать НетБобы или Элипс


> 3. не надо устанавливать какую-то пердь для экспорта в андрюху


Действительно не надо, есть андроид студия где все из коробки.

>4. потом не надо устанавливать на эту хуйню какой-то там апдейт вручную


>5. не надо устанавливать Грабли 1.9-rc-1 через короые вся эта мечта пердолика увязана


Согласен, не надо. Надо потратить только 5 минут на конфигурацию виртуалки дроида и пол-часа максимум на закачку, посидеть подождать.

>можно скачать какой-нибудь Godot


Дроид сдк все равно надо наворачивать. По итогу - вся разница в одном пункте - виртуалке.

>>309802

>Альтернатив юнити нет


Только для альтернативно-одаренных.
200 309900
>>309886
>>309770
Аноны, подскажите человеческую библиотеку
Нужно качать жсон по хттп
Соответственно хочу скачать в одну строчку и спарсить в одну строчку.
Меня удручает, что за 10 лет существования платформы всё ещё приходится это писать почти с нуля.
Apache commons? org.json?
А качать без заморочек чем? И чтобы прокси поддерживалось.
201 309902
Чем LibGDX отличается (в плане возможностей) от XNA/Monogame ?
202 309903
>>309902
XNA вроде мёртв уже
203 309907
>>309903
Зато Monogame чуваки какие-то поддерживают, да и список какой-никакой есть выпущенных игр (Transistor, Bastion, ...).
204 309925
>>309900
Jersey, CXF смотрел? Jetty? Не очень понятно, что именно тебе надо. И да, все это очень легко можно написать самому. Разве что парсер прихватить откуда-то.
sage 205 309944
>>309907

>Transistor, Bastion


Это одна и та же игра.
206 310352
>>309900
Retrofit
207 314138
>>309900
https://square.github.io/retrofit/
Мастхэв, идеально в комбинации с RxJava.
Весь Android Dev по нему угорает.
208 316543
>>250594
Скорее всего 0.
209 317794
>>291213
Юнити называется конструктором для маркетинга. С тнхнической точки зрения это чистокровнейший движок
210 317815
>>317794
С технической точки зрения либгдх это набор библиотек и апи для работы с ними, что есть суть фреймворка.
211 317819
Можно как-то AssetManager'у задать приоритет загрузок? Или хотя бы увеличить количество тредов, а то 1 это не серьезно. Я так вижу кроме как заменить рефлексией вариантов нет?
212 317939
>>317819
пердолься, мань, ты знал на что шел
213 317961
>>317939
Я уже. Впрочем 4 треда прироста не дали, нада про ассеты думать.
214 318043
>>317819
Зачем тебе больше тредов? Просадки на загрузке обычно упираются в жесткий, а не проц.
215 318081
>>318043
Я думал если я увеличу количество тредов я смогу быстрей загрузить ассеты. При обычном сценарии все гурзится последовательно и я доволен, но если человек зашел "посредине процесса", то надо показывать с середины, а для этого нужна часть ассетов, но получается тормоз, так как нет приоритетов.
216 318310
Начал работать с этой библиотекой. Создал проект, и запустил на десктопе. Пустое приложение Не считая текстуры с их эмблемой сжирает 100 мб памяти. Я немного охуел, или это только у десктопа, а для андройда всё будет лучше? Или эти 100мб не реальное потребление памяти, а с резервом и дальше большого роста не будет?
217 318337
>>318310
Пустое приложение занимает на андроид около 17 мб. Да, эти 100 мб это резерв.
218 318341
Анон выручай, не хочет эта поебота работать у меня ни в какую, хотя скорее всего это я даун. На Idea компиляция не идет, ошибку все время выдает, на Анроид студии тоже самое, хуй знает что делать уже. Ошибок нет, тупо нихера не запускается после компиляции, а должна эта ебанутая картинка с лого вылазить. реквестирую гайды по установке этой хуевины, ну и среду разработки с которой это говно наиболее совместимы.
sage 219 318344
>>318341
Запускаю через Idea и gradle-таск desktop run (можно в менюшке справа, можно через консоль, главное проект импортируй, когда попросит).
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 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 секунд появился черный экран, достижение...
sage 221 318357
>>318349
У тебя файл с картинкой не загружается почему то (он там где то в андроид ассетах должен быть). Может, ты его перенёс или ещё как попортил. Попробуй, чтоб наверняка убедиться, загрузить чей-нибудь однозначно рабочий проект. Я как то в прошлом году делал рогалик - https://bitbucket.org/dksurname/rolik . Можешь его. Или что-нибудь с их сайта. Или создай новый (попробуй с андроидом и десктопом, если до этого делал только десктоп).
222 318366
>>318357
нет main класса пишет, какие у тебя версии ПО установлены? Ява, AS и Idea, может я не установил что то?
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 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
Вот что выводит
sage 224 318404
>>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).
225 318409
>>318404
Завтра буду пробовать, бля сколько времени убил на это говно всеж
226 318554
Есть текстура вернее pixmap, нужно заменить все пиксели цвета A на цвет B, операция вроде как очевидная и должна быть востребована в самом gdxе, но подходящих методов я у pixmap не вижу, максимум старый добрый цикл с if(getpixel() == A) { setpixel(B) }
Есть более удобный метод?
sage 227 318586
>>318554
Можно менять пиксели шейдером при отрисовке.
228 318963
Анон что не так с этим ебучим Scene2d.ui? Как объяснить ему, что я хочу задать координаты рисования контейнера как верхний левый угол, этого контейнера а левую середину этого контейнера, так ведь ещё руками поправить нельзя, так как высота зависит от содержимого кнопки и наличия там заглавных букв.
А ещё есть ебучий Skin, Как правильно его задавать без 100500 строчек ебли?
sage 229 318976
>>318963

>Scene2d.ui


У него там емнип какие то проблемы с рисованием через левый-верхний угол, вроде надо через левый-нижний (мне, например, так жутко неудобно). И вообще в нём куча каких то неявных сложностей. Не очень понятно, что тебе надо. Ты хочешь разместить кнопку у левого края посередине?
230 318977
>>318976
Я хочу разместить кнопку с текстом в углу, самом углу. Но когда я задаю координаты рисования (0, 0) этим (0, 0) соответствует не левый верхний угол (0, h), и не нижний угол(0, 0), а точка находящиеся в (0, h/2). Где высота генерируются из размера и высоты шрифта. То есть нужно нарисовать кнопку, посчитать её высоту, поделить на два, и вычистить или добавить в Y координате при рисование.
sage 231 319033
>>318977
Сделай таблицу, а уже в неё кидай кнопку в одну из строк, а другую растяни на оставшееся место.
232 320052
Библиотека позволяет перехватывать нажатие клавиш PrintScreen и Pause?
233 321065
>>320052

сама Java позволяет это делать
234 321270
>>262443
Какую IDE юзаешь?
235 321277
>>262443
Ништяково, но лучше не txt, а что-то более читабельное. JSON или XML.
236 321288
>>258505
На чем тогда делаю тонны кала в маркете(кроме юнити)?
237 321302
>>321288
Кокос, пайтоноподелия. Love2d и прочая луа.
238 322181
>>321288
под C++ неблохо зайдет oxygine, например
239 325295
Как правильно перегнать набор картинок в bitmap шрифт? Вот у меня есть "пиксельный" набор картинок для отображения цифр, как превратить N картинок с определёнными символами в единый шрифт?
Антоша 240 357162
>>325295
BitmapFont подгружается из пикчи-текстуры размером в степень двойки и .fnt файла, который по факту текстовик с координатами каждого символа в твоей пикче и прочими параметрами шрифта. Открой их местный редактор битмап шрифтов hiero, запили в нём тестовый шрифт, открой результат и делай также. Да, придётся придрачиваться. У меня рили есть та же проблема, и кроме как создавать свою систему шрифтов или ебаться в телевизор, записывая координаты в текстовик, вариантов не вижу.
241 362015
>>357162
Вот я тоже сошелся на том, что нужно сделать свой велосипед.
242 364338
>>357162
еще в мохнатых 2000-х на геймдев.ру обсуждался рендер ттф в текстуру (автогенерация этого), нахуй вы в редакторах дрочитесь яебу
243 377926
Котики, кто на чём пишет под libgdx? Какие преимущества выбранного вами ЯП?
244 377933
>>377926

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


А есть что-то кроме java? Ну можно на kotlin, преимущества - няшность компилируемая в шестую джаву.
245 377936
>>377933

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


Scala есть
246 377975
247 381460
Где посмотреть шоукейс игр на libgx?
Накидайте списочек игр сделанных на нём
248 381470
>>381460
Ничего годного на нем не сделано, можешь не искать. Либгдх это лишь переходное звено между ньюфажными велосипедами и юнити.
249 381609
>>381470
двачую, целый год проебал на написание игры, которая на юньке за неделю пишется
250 381636
>>381460
https://libgdx.badlogicgames.com/gallery.html - это список на официальном сайте. Там 95% указано андройд шлак который зарегистрировал себя в этом каталоге так как нужна реклама.
https://www.quora.com/What-are-the-most-popular-games-written-in-libGDX - а здесь вроде как список самых кассовых игр
Безымянный.png2 Кб, 109x162
251 384293
Запускаю игрулю из эклипса - 60 фпс.
Экспортирую в jar - 2 фпс.
Пробую сбиндить через градле - jar файлик не запускается совсем.

Поясни что за говно?
я тупой...
252 384316
>>384293
Я использую Gradle и IntellijIDEA, джарник всегда запускался без проблем.
253 384318
>>250576 (OP)
Насколько гибкую архитектуру предлагает Scene2D? Имеет ли смысл въезжать?
Возможно ли без боли юзать UI из Scene2D используя свою архитектуру?
sage 254 384327
>>384318

>без боли


с юи так не бывает
255 384337
>>384318

>Возможно ли без боли юзать UI


Все, где есть слово "scene" невозможно юзать без боли, потому что идея дерева трансформаций для UI (и для 3D тоже) - изначально порочна.
256 384366
>>384316
Может версия жавамашины как-то влияет?
libgdx 1.6 просит, кажется, а у меня 1.8 стоит, критично?
257 384369
>>384366
нет
258 384794
>>384293

>файлик не запускается совсем.


А пишет что-нибудь? Ты его через что запускаешь?
259 386100
>>384794
Не запускается совсем.
Двойным кликом запускаю. Через консольку - результат тот же.
Может запускаю не тот файл? ...\projectFolder\desktop\build\libs\desktop-1.0.jar
260 386135
>>386100
Не-не, файл-то тот. Хм... А через консоль запускаешь через java -jar desktop-1.0.jar? Оно, просто, при запуске через консоль (не через ту, которая сразу закрывается, если, например, батником её запустить, а через cmd виндовое или терминалы никсовые, которые вывод сохраняют), если какие проблемы (типа некомпилящегося шейдера или отсутствия ассетов) обычно высирает стактрейс с проблемой. Не, нет такого?

Окей, а как ты его билдишь градлом? Через шаг dist?
Безымянный.png16 Кб, 585x259
261 386200
>>386135
Запускаю тут.
Через консольку пишет no main manifest attribute
blob10 Кб, 292x259
262 386228
>>386200
Уже понятнее. Надо не test_archi-desktop > build > assemble, надо test_archi-desktop > other > dist делать. У тебя просто jar-файл собрался только с твоим кодом и ассетами, без самого LibGDX, нативных библиотек и без манифеста для запуска в том числе. Попробуй.
Безымянный.png35 Кб, 572x595
263 386316
>>386228
У меня нет таска dist.
blob19 Кб, 120x120
264 386331
>>386316
Походу, эклипс не видит кастомных шагов. Странно.

Ладно, попробуй тогда зайти через консоль в папку с проектом и выполнить gradlew.bat desktop:dist.
Безымянный.png6 Кб, 636x181
265 386343
266 386357
Почему не хочешь использовать idea?
267 386358
>>386357
Кстати, присоединяюсь к вопросу. Бесплатный Community для разработки на LibGDX -- мощный инструмент так-то.

>>386343
Ненене, тебе надо перейти в папку и уже оттуда выполнить эту команду. Ну то есть сначала надо сделать cd Desktop\test_archi, а только потом gradlew.bat desktop:dist.
Безымянный.png13 Кб, 387x362
268 386359
>>386358
Едрёна вошь, анончик, заработало!
Спасибо, няш :3

>>386357

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


Она не платная разве?
До этого в эклипсе работал, по этому и привычнее, да и под руками он есть.
В общем, это не назвать осознанным выбором. Так исторически сложилось.
269 386362
>>386359
Да пожалуйста, играйся, анон. :)

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

>Она не платная разве?


Двачую >>386362, но есть одна хитрая фича. Если ты студент/школяр/препод, покажи любой документ об этом, и ультимейт дадут бесплатно. Где - надеюсь, сам найдёшь. Нету - отбери у брата, жетбрейнсам похер.
Кирилл 271 394242
Пишу на этой срани рогалик-выживалку с мультиплеером (я тот хуй, чей тред потерли, если кто-то вообще его видел). Недавно вот запилил слой подземелий и скоро намучу рандомную генерацию в них всяких комнат с лутом и гопниками и всем в таком роде.
272 394261
>>394242
Как реализуешь сервер? Пробовал ради скила делать онлайн дрочильню на nio, но понял что мультипоточность это слишком хардово.
273 394266
>>394261
На чистой жабе через сокеты. Работает иногда криво, но в целом терпимо.

До этого пробовал писать серверную часть на PHP, был полный пиздец, и поэтому было решено пересесть на сокеты
274 394269
>>394266
а чо не на Kryonet? там ж охуенный инструментарий для всей этой балалайки
275 394278
>>394269
Хз, у меня свои уютные и удобные костыли
276 395840
Я слышал, что этот фреймворк заточен под 2d и 3d лучше не делать на нем, так ли это?
277 395877
>>395840
Это действительно так. Но твой пост я понял с третьей попытки из-за отсутствия одной(!!!) запятой
278 395955
Ананасы, какие преимущества перед кокосом есть у джидыикс?
279 395968
>>395955
никаких
280 395979
>>395968
Там вроде на спп писать можно
мимо
281 396516
>>395955
По факту у ГДХ только бешеная скорость рендеринга и заранее написанные велосипеды. Больше ничего.
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? Из документации нихуя не понятно, в интернетах нарыть не могу, а на практике проблем не имею.
283 397339
>>397255
Если коротко вся проблема в OpenGL, который работает особым дивным образом, и созданный в одном потоке контекст OpenGL может быть использован, только в этом же потоке. Это касается всего графического кода от нативных функций до функций фреймворка. Кроме пары функций которые на самом деле ничего с контекстом gl ничего не делают, но лежат в той же куче
Смотри по коду, если всё сводиться в вызову gl методов, то нельзя. Твоё приложение просто упадёт из-за ошибки openGL библиотеки, или даже не упадёт в 95 случаях из 100, а в 5 будет падать и зависеть это будет от фазы луны, а тебе в жопу геморой. Если эта функция просто проводит вычисления внутри объекта или меняет состояние флага, а отрисовывать идёт в другом месте то использовать можно
284 400080
>>250576 (OP)
Работал ли тут кто-то с up-down тайловыми картами? Как вы выстраивайте систему координат? Делаете ли вы локальную систему координат для карты, перемещая игрока в ней, или же просто перемещаете карту относительно статичного игрока? Пытаюсь написать Miami-like шутер, параллельно изучая фреймворк, и меня резко озадачила проблема отрисовки и взаимодействия объектов с игроком.
285 400171
>>400080

> или же просто перемещаете карту относительно статичного игрока


Зачем? Все статичные вещи должны быть статичными, все что должно двигаться - двигаться. Используй OrthographicCamera и просто перемещай ее за игроком.
286 404325
>>250576 (OP)
треднечитал
Есть тут аутисты которые libGDX вместе со спрингом юзают? Как ощущения? Мобильные девайсы в таком случае будут в пролете, верно?
287 404819
>>400171
И как таким образом сделать бесконечный мир?
288 406469
>>404325
а зачем тебе спринг? dependency injection?
289 406470
>>404819
так у тебя Miami-like шутер или майнкрафт, вид сверху?
290 406474
>>406470
Допустим, у меня бесконечно длинный уровень на выживание для марио.
Ну или летящий ебаный самолетик, навстречу которому летят стреляющие хуйни.
291 406478
>>406474
это тебе тогда надо что-то типа майнкрафтовских chunk'ов делать:
1. загружаешь первый кусок уровня и рисуешь его
2. когда камера подбирается к (пусть это будет скроллер слева-направа) правому концу уровня -- подгружаешь следующий кусок и временно рисуешь оба куска
3. когда первый кусок уровня уходит из зоны видимости камеры -- выгружаешь его нахер из памяти

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

> А разве бох2дшный World поддерживает расширение себя?


при генерации просто спавнишь объекты-коллайдеры в нужных местах и дестроишь ненужные старые

> статичным героя и двигать игровые объекты


это тяжёлая наркомания, так делать не надо

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

>при генерации просто спавнишь объекты-коллайдеры в нужных местах и дестроишь ненужные старые


Это да, но нормально ли, что координата персонажа все время растет (по иксу, например)? Она не выйдет за пределы бох2д мира?
295 406493
>>406483
Нагуглил тут, что по идее бокс2д мир не ограничен, но будет падать точность.
А еще есть метод ShiftOrigin, но его нет в либгдхном враппере.
largemanucartoon.png392 Кб, 1048x797
296 406495
>>406483
у тебя сейчас начинается over-engineering

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

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

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

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


Гравитация, трение, упругость.
298 406500
>>406497
в скроллере про космос?
299 406511
>>406469

> dependency injection


Именно, ну и контейнер который бы эти за этим всем следил
300 406513
>>406495
>>406497

>Гравитация, трение, упругость.


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

здесь вопрос в том, что нахера нужен физический движок в марио или скроллере в космосе, где максимум что нужно -- это просчёт пересечений двух прямоугольников
302 406537
>>406511
я бы на твоём месте задумался, зачем тебе это посмотрел в сторону альтернатив типа Guice или Dagger. спринг -- слишком большая ебала, чтоб её тащить в игру
303 406542
>>406537
Dagger, кстати, в андроед может
304 406557
>>406542
добра тебе
305 406559
>>406513
хотя плюсы все такие есть
Я например благодаря тому что решил писать свой движок (хоть в последствии его и дропнул) узнал что есть целая область в информатике называемая вычислительной геометрией и внезапно это оказалось ебать как интересно.
306 406610
А в чем преимущество либгдикс перед годотом?
307 406642
>>406513
Я он и тоже с этим столкнулся.
Писал арканоид и считал углы сам. При этом был удивлен даже с тем, что нельзя взять и уравнением прямой все порешать - на нахуй тебе вырожденные случаи типа вертикальных или горизонтальных траекторий, где уравнения не работают и тебе нужно городить какие-то вилки. Дальше больше.
Это только кажется, что вот так вот просто можно взять и забахать физическую симуляцию или ее подобие. Оно-то можно, но в разы быстрее подключить движок, и в нем искаропки будет не только то, что тебе нужно, но и то, что тебе понадобится потом, хотя ты об этом пока не знаешь, и заебешься в своей симуляции это допиливать.
308 406643
>>406500
Смотрите на него, бедняга думает, что в космосе нет гравитации, трения и упругости.
309 406645
>>406610
Пайтон - для детей.
Dasha.S02E14.SATRip.-SBRO.avi.2.jpg165 Кб, 640x480
310 406654
>>406643

> /gd/


> скроллер в космосе


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


> /gd/


давайте поможем анону найти грань между играми и реальностью
311 406655
>>406654

>обосратыш все пытается доказать, что не обосрался


Да, друг, нужен скроллер в космосе с гравитацией, упругими в различной степени соударениями и трением.
Где твой бох теперь?
3dpinballspacecadet-logo.png77 Кб, 312x312
312 406663
313 406664
>>406645
А ещё?
314 406670
>>406664
А зачем?
315 406671
>>406654
Ты бы сам хоть одну игру попробовал написать - понял бы, что вышеперечисленные штуки нужны намного чаще, чем тебе представляется.
316 406678
>>406670
Что зачем? Я спрашиваю про преимущества либы, можешь ответить - отвечай, не можешь - иди нахуй.
317 406681
>>406678
Я тебе написал, что пайтон - детская хуйня.
Вероятно ты не совсем понял, что я имею в виду, потому спросил про еще.
А я тебе намекнул, что названной мною причины уже достаточно чтобы не прикасаться к этой хуйне.
Так понятнее?
download.png7 Кб, 225x225
318 406684
>>406671
ну куда мне до gоспоd
319 406686
>>406684
Лул, пидорашка повыебывалась, покушала говна и запостила картиночку.
320 407792
Блядская моча навносила в спам-лист хуйни. Поссал в рот уебку.
Все пытаюсь подружить Scene2d и мнoгопoтoчность.
321 407793
>>407792
Я прaвильно же пoнимаю, что если в клaссe два мeтодa объявлены как
322 407794
>>407793
>>407792
Ну долбодятлы блять gd шные. Нахуя sуnchrоnized в спам-лист вносить?
323 407795
Еще попытка, раз нашел словечко.

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

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

Не понимаю, в чем была причина хуярить Array для свободных объектов вместо HashSet. Просто охуенный простор для багов, которые хер отловишь. Не стоит он крохотного прироста в скорости.
Два раза освобождаешь такой объект (по невнимательности, пиздоглазию или так и надо) - и пул рано или поздно вернет элемент, который уже есть, отрисовывается, работает и не освобожден.
325 408543
>>408474
Ты хоть понимаешь что освобождение в пуле это не освобождение памяти как в Си? Ты пул используешь для того что бы КРАСИВО зарезервировать память для нескольких объектов и многократно их использовать что бы создать впечатление что объектов дохуя. И сделано это все как раз для того что бы НЕ освобождать память и НЕ заставлять GC сходить с ума.
Пул должен многократно возвращать элементы которые уже есть, потому что пул это структура данных предназначения для динамического использования объектов, а не для их постоянного хранения.
326 408773
>>408543
Вечер копетанов в хате?
Пул не должен возвращать один и тот же объект два раза, если объект не был освобожден.
Если я получил через пул кота и выложил его на экран, и когда я хочу нарисовать второго кота, который ебет первого - я не должен получить из пула этого ебаного первого кота. Потому что он еще на экране и освобожден.

Это один объект, нахуя в пуле больше одной ссылке на него?
327 408774
>>408773
Точнее, если объект был освобожден два раза - не должно быть более одной ссылки.
328 408775
>>408774
Вот если где-то каким-то образом кот освободится два раза - пул потом выдаст две ссылки на этого кота.
329 408776
>>408775
Это вот в своем говне, которое в проперженных труханах для себя пишешь - можно не заморачиваться отлавливать возможные РАСПИДОРАСИЛО от входных операций, но не во фреймворках, которые для общего пользования.
330 409083
Я к вам из ньюфаг-треда. На вашем движке можно написать настольную игру для ведроида/айос? Насколько сложнее, чем на других движках вроде юнити/годота?
331 409090
>>409083
Можно. Возможно сложнее будет, потому что это не движок, а низкоуровневая обертка над OpenGl.
332 409119
>>409083
НО - удобной системы позиционирования элементов на экране нет.
Таблицы тут - это типичная жабаублюдочная хуетень без возможности оперировать столбцами и вставлять ячейки, не пидорася всю таблицу.

Прям эталон необучаемости жабадаунов, которые продолжают хуярить везде свое Swing-говое говно везде, куда дотянуться. В рот их ебал после человеческих графических фреймворков.
333 409130
Как правильно реализовать две разные "сцены" - меню и саму игру?
334 409149
>>409130
Я делаю разные экраны. Для каждого своя сцена.
335 409150
>>409149
Как? Я ньюфаг, но хочу делать все правильно.
336 409152
>>409150
Вики читал уже?
https://github.com/libgdx/libgdx/wiki/Scene2d

Пример во Viewport как раз описывает, как встраивается Stage в Screen (хотя там экран и не упомянут)
337 409153
>>409150
Вообще, эта вики (и stackoverflow)- единственный хоть какой-то источник примеров и документации. Документации у libgdx нет (та мешанина методов без пояснения к параметрам - не в счет, она нужна только для поиска реализации в сорцах), примеров тоже 1-2 и обчелся. Тем более, которые уходят за грани "херня на 100 строк про падающие капли".
338 409154
>>409153
Я, например, долго не мог понять про скины. Как правильно заполнить json, и добавить к нему freetype шрифт.
В вики куча вещей таких, которые и если и упоминаются - никак не поясняются. А если и поясняются - то так, что можно было и не пояснять.
339 409162
>>409119

> после человеческих графических фреймворков


Что за человеческие графические фреймворки?
340 409163
>>409150
Есть годный небольшой проект для ньюфагов от автора Mastering LibGDX Game Development. Книга по сути поэтапное пояснения того что происходит в проекте + подводные камни. Можно не читать ее, а вот ознакомится с проектом, чтобы понимать как склеивать костыли вместе, рекомендуется.
https://github.com/patrickhoey/BludBourne
Untitled-1.png15 Кб, 582x367
341 409169
>>409152
>>409153
>>409163
Это не совсем то, о чем я спрашиваю. Я хочу понять саму структуру. Ну вот, я условно набросал, что именно я хочу понять (и я не знаю есть ли в либгдх сцены, стейджи и тд). Нечто подобное мне и нужно, чтобы въехать в правильную структуру, поскольку начальный проект предлагает хуярить апдейты напрямую в класс который extends ApplicationAdapter прямо в render (), и я ставлю жопу, что это неправильный подход.
342 409171
>>409169
Начальный проект без использования Scene2d.
Который есть приятный (или не очень) сахарок, призванный избавить тебя от кучи низкоуровневой работы.
Прочти вики дальше начального проекта, чтоле.
Грубо говоря, все что ты можешь создать дальше, все равно будет хуярить апдейты через render.
343 409172
>>409171
Я прочел пример с каплями. И даже там уже есть screen. А еще я вижу в вики scene и viewport! Как это все объядиняется??? Вот что меня интересует.
Untitled-1.png16 Кб, 732x416
344 409178
Поскольку никто не отвечает, я сам попробовал разобрать этот >>409163 проект, и судя по нему, а также примеру с каплями, иерархия должна быть именно такая.
345 409179
>>409169

> Я хочу понять саму структуру


Посети ссылку выше, там и увидишь правильную структуру.

> сцены, стейджи


То что ты понимаешь под этим если я тебя правильно понял в либгдх называется screen. Scene2d это акторы реализующие гуй, а stage - граф, хранящий эти акторы и рисующий их. Чтобы он рисовал их в нужных измерениях нужен viewport.
346 409180
>>409178
Вьюпорт нужон только для камер, чтобы задавать им пропорции.
Короче вся эта еботня со сцен2д и стейдж по сути нужна чтобы удобно передавать события гуя. Некоторые используют стейдж чтобы организовывать события никак не связанные с гуем, типа как иерархия игровых объектов с родителями и предками, но я такой подход нигде кроме васянских туториалов не видел.
347 409224
Эээ, ёпта нах! Почему при выставлении orientation для андроида на sensor пидорасит всю графику? Растягивает как попало, хотя по идее поворот не должен так делать. И как сделать, чтобы поворот экрана не пидорасил графику?
123.gif113 Кб, 380x294
348 409240
Так, господа, это никуда не годится. Во всех остальных фреймворках такого ни разу не встречал, в них всегда ассеты оставались оригинальными ассетами с оригинальными размерами независимо от размера экрана. Как это исправить в libgdx? Чую, что здесь делать в камерах и вьюпортах, но нагуглить я не смог.
349 409241
>>409240

>что здесь дело в


Фикс
4.png4 Кб, 448x30
351 409247
>>409245

>городить костыль с хардкодным размером экрана


Спасибо, но нет. У меня на телефоне неизвестен размер экрана, как я по-твоему должен записывать эту строку с 800х480?
352 409248
>>409247
Что мешает заменить это на переменные полученные запросом размера экрана? А вообще зайди на вики да выбери себе способ скейла по душе, там примеры на все случаи жизни.
Вот тебе даже дублированная ссылка
https://github.com/libgdx/libgdx/wiki/Scene2d
353 409249
>>409248
Слишком сложно.
123.gif208 Кб, 675x528
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?
Это просто какой-то адовый пиздец, танцы с бубном и расстановка костылей. Вместо создания игры.
355 409281
>>409276
Разберись в том, какие вьюпорты бывают, и выбери нужный, не кипяти мозг себе и мне.
356 409282
>>409281
Я уже разобрался, чтобы растянуть мой бекграунд мне нужен StretchViewport. Как мне поставить другую пикчу с постоянным соотношением теперь? Или в этом треде ньюфагам не помогают, а отправляют гуглить вики и наблюдают со стороны, как он 4 часа к ряду пытается разобраться с этими костылями? И все это вместо прямой подсказки, как нужно сделать в его случае.
357 409289
>>409282
1. Оставь тот вьюпорт, который тебе нужен для верхнего слоя, задний фон растягивай под размеры окна.
2. Сделай два вьюпорта.
3. Дождись кого-то (себя), кто даст тебе нормальное решение.
358 409320
>>409289
Я в конец запутался, так что я жду нормального решения моей проблемы. Мне нужно:
1. Чтобы на экране при любом разрешении не было незаполненых мест, и лишний бэкграунд можно отрезать отрезать.
2. Чтобы соотношение сторон всех спрайтов соблюдалось.
3. Чтобы бэкграунд всегда был статическим бэкграундом, но вот перед ним должна быть квадратная картинка, которую можно зумировать (пример на вебм).
4. Меня сейчас интересует только работа с камерами и вьюпортами, остальное мне понятно.

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

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

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

Прошу адекватной помощи.
sage 359 409336
>>409320

>4000,3120


>1024,1024


Да ты же поехавший.
360 409340
>>409336
Всего-лишь пример, взял первые картинки из гугла.
361 409342
>>409320
Используй ScreenViewport
362 409343
>>409342
Не соответствует первому пункту - не растягивает на весь размер.
7.png52 Кб, 656x518
363 409344
>>409343
Отклеилось
364 409346
>>409344
Прикрепи картинки, сейчас установлю себе этот ваш либждх.
365 409347
>>409346
Только поменяй размеры в коде под соответствующие, я уменьшил картинки.
366 409348
>>409343
Так у тебя пункты противоречат друг другу, то должна растягиваться то не должна. Если она вообще не должна растягиваться но и чтобы экран не был свободным, то можешь сделать репит текстуры через setWrap.
367 409349
>>409348
Ничего не противоречит, я не говорил, что не должно растягиваться. Я говорил, что должно в пункте (1) и что должно сохранять пропорции в пункте (2).

А еще я попросил адекватную помощь.
368 409351
Я и забыл, как оно долго качается и собирается.
369 409352
>>409351
Я пробовал разные, тут собирается быстрее всего. Разве что LOVE2D может чуток быстрее собирается под ведроид, но он не может в дебаг, поэтому просто делает апк.
 .gif2,8 Мб, 1362x786
370 409355
>>409349
https://pastebin.com/d6Ry3RQR
Если нужно чтобы не соблюдались пропорции то юзай стрэтч.
14985137290750.jpg136 Кб, 720x355
371 409356
>>409355
Спасибо тебе, хороший человек! Целый день я пытался повторить это, и не выходило. Оказывается, на этой доске есть люди, которые могут и в программирование, и в помощь. Держи котенка.

А почему если поменять вьюпорт у доски, то меняется задний фон?
372 409359
>>409356

> если поменять вьюпорт у доски, то меняется задний фон?


У меня все норм лол, но если что то куда то съезжает то это из за авто центрирования камеры в apply. Можешь отцентрировать сам после его вызова.
373 409361
>>409356
Хотя понял о чем ты. Похоже что лучше не переназначать матрицу 2 раза у одного и того же батча в контексте одного begin end. https://pastebin.com/1QDVc0WX
123.gif492 Кб, 675x529
374 409362
>>409361
Спасибо еще раз. Вот мой финальный вариант перед кодингом обработки тача для зума https://pastebin.com/MUG3CUVg

Это вообще правильный подход - менять размер доски, вместо размера вьюпорта?
375 409364
>>409362

> Это вообще правильный подход


Это нормально. Но с мобильниками я не знаком, поэтому не могу сказать как там работать с поворотами, мультитачами и прочее.
376 410145
>>409362
Знаешь, я тебе скажу, что писать логическую игру на libgdx - это все-таки уберхуевая идея.
Кто-то может вскукарекнуть, что "коко логические игры это изи", но шли таких сразу нахуй.
А все потому что:

- в логической игре с полем число актеров НАМНОГО больше, чем в любом бродилке\шутере\рпг (поле 10х10 означает в несколько сотен актеров, каждый из которых может обладать анимациями и рассеивать партиклы \частицы).
-из-за пункта выше следует, что производительность на мабилках просядет просто катастрофически, превратившись в неюзабельное говно. Ну серьезно, в libgdx система частиц архиуебищна, никакие пулы ей не помогают. Менее 1000 частиц на экране - да это же смешно! Даже сотня клеток поля если одновременно испустят всего 10 (а хорошие эффекты в 10 частиц не уместить) - это будет лагодром. Та же юнити спокойно выдает на экране несколько тысяч частиц без фризов, красиво и плавненько. Для неверящих - скачайте, например, в маркете Fireworks Touch, и сравните с libgdx говном в сравнительном тесте. Разница колоссальна.
-
377 410146
>>410145
И вот если ты рассматриваешь мобилки и собираешься делать спецэффекты - ты неожиданно упрешься в сильные графические ограничения, а все потому что жабадебилы идейно непринимают написание отдельных лагающих частей кода на C.
378 410304
>>410146

>а все потому что жабадебилы идейно непринимают написание отдельных лагающих частей кода на C


Не проецируй петушок
379 410348
>>410145
Ну покажи игру на libgdx для андроида, которая содержит больше 2-3х сотен актеров\спрайтов (пусть даже без анимаций и спецэффектов), которые выдают стабильные 60 фпс.
Одна примитивщина уровня "кролик бежит на фоне и прыгает\самолетик летит и падает" с менее чем 50 таких актеров\спрайтов.

Неспроста даже приложения примеров типа Codelabs или Libgdx Test имеют ограничения на не более чем 20 фигур. И даже на них все умудряется просаживаться.
380 410349
381 410354
>>410348
Дурачёк. Любой из популярых фреймворков, при помощи которых можно собрать apk файл что libGDX, что юнити, используют мобильную версию открытой графической библиотеки. Ты кретин, если додумался увидеть преимущества openglES над openglES.
Ты наверное подросток, да? Так ведут себя дети, у которых есть своё мнение по каждому вопросу, при том, что они ничего в этом не понимают. Иными словами, ТЫСКОЗАЛ.
382 410355
>>410354
Ну действительно, библиотека одна, а производительность отличается в разы.
Ты мудак или прикидываешься? Вызовы отрисовки openIES идут через обертку.
Покажи пример игры с двумя сотнями отрисованных текстур на libgdx или иди нахуй, кукаретик. Куча игр на этой "открытой версии графической библиотеки" справляются с этим, но не справляется libgdx.
Куча тем без решения на форумах, что на андроиде не тянет по куче причин (в тч из-за бага жабы в отношении с vsync), нелагающих примеров комплекснее "самолетик, который упал" нет, а у него все как у людей, лол.

Посмотри на FreeGemas как пример логической игры и охуей от того, как это отличается от любой игры того же типа на той же "мобильной версии открытой графической библиотеки"
383 410368
Почему две строчки, которые по описанию в вики должны работать нормально, у меня выдают какие-то артефакты на границах тайлов и исчезающий фон?

tiledMap = (new TmxMapLoader()).load("maps/map1.tmx");

tiledMapRenderer = new OrthogonalTiledMapRenderer(tiledMap, 2.0f, sb);
384 410375
>>410355
Или вот еще более комплексный, чем зайцы и самолетики пример.

https://github.com/libgdx/libgdx-demo-pax-britannica

На моем Galaxy S4 4 корабля, не начавшие спамить самолеты - выдают около 35 фпс (далеко не 60).

А когда начинают спамить - фпс становится 5-10.
385 410376
>>410375
И это при том, что там используются атласы, нет аллокации, все обпулено по самые помидоры.
386 410382
>>410375
Кстати, забавно, но версия, собранная из исходников, отличается от версии выложенной в маркете.
В последней нет бага, от которого в настройках нельзя переключать галки, и производительность вполне норм.
Хз, от чего такая разница
sage 387 410389
>>410382
Ответ прост, но не очевиден.
Нельзя тестировать приложение, запуская его через студию. Нужно собирать отдельно тестовый apk. Из-за мониторов\дебаговых оберток производительность и проседает. Сам так неделю сидел в апатии, пока не наковырял.
388 410415
>>410355
Медленная отрисовка в libgdx следствие не самого libgdx или джавы, а криворукости писателей, которые не могут VBO. Ну серьезно блять, libgdx это низкоуровневая обертка над НАТИВНОЙ lwgjl, так что тут нечему тормозить - просто нехуй каждый спрайт по отдельности рисовать - с таким подходом у тебя игра будет проседать и на Си. Но с тобой бесполезно спорить, потому что как заметил другой анон - ТЫСКОЗАЛЖЕ.
Анон 389 411181
Написал игру на этом движке, Undercore. И в целом доволен, движок довольно гибкий и удобный, если ты не криворук.
Моя игра выдает спокойно 60 фпс, и почти никаких фризов. Есть проблемные места в коде(из-за моей криворукости и незнания фреймворка), но в целом все просто превосходно

P.S. link: https://goo.gl/EyTG35
390 411536
Эт чё в libGDX нет даже встроенного класса чтобы нарисовать анимированный спрайт, приходится городить свои костыли на основе Sprite и Animation<TextureRegion>, ну охуеть
391 411615
>>411536
Сука libGDX это не движок, а надстройка над openGL, заебали уже. Не нравится - иди перетаскивай говноассеты в юнити.
392 411618
>>411615
Ага охуительная надстройка, с классами камеры, вьюпортов на все случаи жизни, JSON ридеры-райтеры, загрузчики моделей и карт из самых разных форматов.. Да я и не говорю что мне не нравится, всё заебись, но обидно что такую простую вещь забыли доложить к такому вороху встроенных инструментов.

Перед тем как отправить пост нашёл полу-официальный пакет libgdx-utils, в котором реализованы "недостающие" но очень нужные базовые вещи, в числе которых и AnimatedSprite, так что и эта моя претензия к фреймворку аннулируется
393 411671
Как делать диалоги на либждкс? Чтобы как в эрпогэ = куча ответов, вопросов, ветви-ветви, переменные меняются во всю, всякое страшное происходит. Ничего толком не нагуглил, кроме предложения самому все написать и не выебываться. Но чувствую, что это попахивает велосипедостроительством.

Пока нашел только Yarn, вроде почти подходит. Есть сомнительная обертка Jarn, которая поддерживается как-то никак и документации толком никакой нет. Даже по гайдам местным ничего не получилось, видимо гайды эти устарели.
394 411786
>>411671
Ну это уже совсем толсто ! Ну нахуй!
395 411808
>>411786
По делу есть что сказать?
396 411848
>>411808
Он правильно сказал, иди нахуй с такими вопросами.
397 411872
>>250630
Какой же ты упрямый дебил, блять.
Ну хуй с тобой, пердоль свой шыдевыр полгода, а потом хуи соси в слезах, когда его сотня школьников скачает и обосрет в отзывах, и на этом все и закончится.

>сколько можно заработать


>про раскрутку он не спрашивал


Дебил, ты посмотри, сколько других долбоебов со своей хуйней в твоих маркетах сидят. Ты именно про раскрутку в первую очередь и спрашивал.

мимо другой анон
398 411909
>>411848
У вас тут тред обиженных или что?

Пездос, ну и идите нахуй. Сам написал уже.
399 412314
>>411671
Создаёшь кнопку "сделать пиздато"
@
Нажимаешь
400 412966
>>412314
Выкидываешь libGDX нахуй
@
Выкидываешь джаву нахуй
@
Дрочишь C
@
Дрочишь OpenGL API ручками
@
Во, теперь заебись

Нарисовал радужный квадрат
@
Забыл зачем вообще начал все это


Велосипедил для самых простых нужд
@
Юнитидебилы смеялись
@
Гейммейкерорабы тыкали пальцем
@
И поделом
401 416906

>Ко ко ко не используйте статические переменные с объектами, которые используют вызовы к OpenGl (иначе распидорасит на мобилках)


Кто-нибудь мне расскажет, какова была логика создателей этого говна, которые зная это захуярили в Pools статический map пулов? Шиза какая-то.

https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/utils/Pools.java
402 416932
>>416906
Второй пинок к Pools - нет метода с параметром, черeз который можно установить initialCapacity (и создаем, и создаем, и создаем и создаем 1000 объектов во время рендеринга, предварительной генерации для питухов, ага).
Честно говоря, призаебался уже, переписывать за мартыханами то, что вроде как из коробки, и без какого-то особого поведения.
403 418075
https://www.youtube.com/watch?v=Vjen774srEU

Умеет ли libgtx в полное разрушение окружающего мира?

Будет ли 3D FPS game тормозить на современных Андроид-телефонах, когда я её доделаю через 2 года?
404 418076
>>418075
имеется ввиду, 3D FPS с полным разрушение мира.
405 418201
>>250808
То чувство, когда ты сам написал свою реализацию скелетной анимации для файлов одной очень знаменитой игры, а у кого-то скелетная анимация вызывает затруднения. ППЦ
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)
Сука, блядь, полдня на эту дрисню потратил - а оказывается, что это разработчики насрали в мои штаны, а не я сам
407 425425
>>419409
юзай бокс2д или напиши свою имплементацию например
http://www.dyn4j.org/2010/01/sat/
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));


Как сделать одноразовую анимацию?
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 454918
Ку, кармаки. На гитхабе конкурс закинули https://itch.io/jam/game-off-2017 до конца ноября. Есть у кого-то желание сделать адскую ретро-дрочильню? Сам пишу на libgdx, норм работаю с гитхабом, пару раз бывал в конкурсах.
411 454946
>>454943
Экшн-игруху какую-нибудь. Адскую в том плане, что экшона можно сделать оч много, как в каком-то nuclear throne. Но вообще у меня пока даже идей мало, так что можно и не дрочильню.
412 462592
LibGDX жива? Или есть чот-то более живое?
413 462705
>>462592
Интерпрайс не умирает.
 .png33 Кб, 839x481
414 462711
>>462592
Если хорошо знаешь жаву, то почему бы и нет.
415 462817
>>462592
Monogame
416 462889
Бамп-антивайп.
417 467687
>>386358
>>386358
блятть я 228 часов сидел до 2 ночи и пытался понять что за хуита и почему она не работает. сейчас зашел на двач и за 1 минуту нашел твой пост, который решил мою проблему. чувак, я сейчас расплачусь нахуй. какой же двач охуенный
Спасибо, Абу
418 468523
>>250576 (OP)
>>250577
>>250587
>>454918
>>425425
сап, аноны. можете рассказать про расширения(extentions) libgdx, что какой добавляет, как ими пользоваться?
sdfdsf df 419 505948
sdfsdfsdf
420 509846
Не могу сделать так, чтобы пароль отображался при вводе в виде звездочек. Типо .
TextField passwordField = new TextField(null, skin);
password.setPasswordMode(true);
passwordField.setMessageText("Password goes here");

Что я делаю не так?
421 509859
>>509846
Возможно нужно установить звездочку в setPasswordCharacter
422 509870
>>509859
Бля, спасибо, сработало. люблю
423 509876
Ещё один вопрос от начинающего делателя рогаликов. Проблему с разным размером экранов на андроиде можно решить, если делать для каждого Screen свой Skin и потом ставить делать StrechViewerpoint? А то почитал эти туториалы:
https://github.com/libgdx/libgdx/wiki/Viewports

https://gamedev.stackexchange.com/questions/70361/libgdx-android-phone-resolution-problem

Но не особо получается, может у меня руки из жопы просто или там действительно специфично всё?
424 510170
>>509876
А, разобрался сам
425 513257
Не могу понять как засунуть анимацию в таблицу.
Есть одна таблица, которая заполняет сцену.
Затем есть две таблицы слева и справа. В таблице справа кнопки-хуёпки и прочее гавно. А в таблице слева должна 24/7 играть анимация. Но я не могу засунуть анимацию в таблицу т.к она не наследует от актёра, а потому хуй мне.
Может кто подсказать решение? Я правильный вообще подход выбрал, добавлять анимацию в таблицу?
426 522179
>>384293
-Dsun.java2d.opengl=true
427 538206
Шо, все умерли разрабы?
1543149672721.png6 Кб, 756x33
428 538262
>>538206
Просто фреймворк уже достиг совершенства и не нуждается в апдейтах.
429 538279
Зачем нужно ваше говно, если есть юнити?
430 538416
>>513257
Сделай класс наследник от актёра. Перепеши метод draw. Рисуй там кадр из анимации по stateTime и суй это всё в таблицу.
Или я тебя неправильно понял?
431 538417
>>538279
Юнити - модное гавно. Лучше наше, чём модное
432 538524
>>410368
Чинится хардварно, дело в том что при сборке атласа (а ты обязан его использовать) у тебя выключена фича "duplicatePadding" https://github.com/libgdx/libgdx/wiki/Texture-packer#settings при сборке. Настраивается файлом pack.json в папке с текстурами. Эта фича дублирует бортовые пиксели, чтоб видеокарта делала сэмплинг крайних пикселей полигонов адекватно.
433 538590
>>538206
1.9.9 на днях вышел. Всё ок
434 538628
>>538590
Когда они уже 2.0 всрутся?
435 538637
>>538628
А нахуя этот дроч на цифры? Уже заанонсили 1.9.10
436 538641
>>538590

> 1.9.9 на днях вышел


> Уже заанонсили 1.9.10


Наконец то у разработчика началось осенние обострение, целый год ждал.
437 538771
Стоило спросить смерть разрабов как они вылезли?
438 538772
>>538416
А ты не торопился, да? Я уже ФСЁ. Купил Spriter и забыл о ебле с манямацией.
occured.png11 Кб, 835x124
439 538862
как это развидеть? в гугле сложно. куда нажать, ака?
440 538884
>>538862
Даунгрейднутся на жаву 8
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
3212.png1 Кб, 503x26
442 538951
>>538945

>jvmArgs = ['--add-opens=java.base/java.lang=ALL-UNNAMED', '--add-opens=java.base/java.lang.invoke=ALL-UNNAMED']



Не помогло( Еще пикрел высрался и не хочет уходить, хотя проект собирается и нормально запускается, никаких ошибок не пишет
443 539631
бамп
1544018918319.jpg7 Кб, 250x250
444 539673
445 539771
>>538951
У меня такая же фигня высралась в свежей Идее. Я просто забил. В логах всё равно пусто про неё, хз чё чинить.
image.png7 Кб, 801x78
446 540300
Здравствуйте, может кто сталкивался с такой проблемой и знает, как ее решить?
1544431954285.gif845 Кб, 500x281
447 540355
>>540300
И в чем проблема? У тебя в map.layers хоть 2 слоя есть? А то тащишь второй get(1).
image.png5 Кб, 662x30
448 540404
>>540355
А даже если первый пытаюсь достать, то тоже самое, вроде карта рендорится, но слой достать не может, может я где-то в создании карты проебался?
449 540702
>>540404
Да. Похоже. Но ты в следующий раз лучше описание ошибки Exception кидай. А то разные проблемы могут быть.\

>карта рендорится



Ну тогда ставь точку остановки и смотри в Debug, что хранится в переменной map.layers. Сорян, если капитаню, но я просто не вижу проблему, в том, чтобы решить эту проблему посредством IDE.

Иначе посмотри какой номер слоя стоит у тебя в файле уровня .tmx, если ты из него качаешь. Может быть у тебя слой под 5-ым номером, а до него все пустое, из-за того что ты экспериментировал с редактором тайтлов.
KTEDplyH5SM.jpg155 Кб, 708x1080
450 540751
>>540702
Спасибо, но я понял в чем была моя ошибка, банальный расчет клетки для хода, как обычно стопарюсь на глупых и очевидных вещах))
451 547016
Как правильно сделать из Pixmap текстуру? Почему-то отображается в виде чёрного квадрата, на реддите какое-то объяснение что изображения можно загружать только в другом потоке, хотя в описание libgdx говориться, что с грфакикой нужно работать только в одном потоке?
452 576632
Посоны подскажите.
Взял стандартный DragAndDrop. Всё работает, но когда перетаскиваю, Actor которого я перетаскиваю, рисуется сбоку от пальца. Это вроде как заебись, но мне надо чтобы он под пальцем рисовался.
Чёт не пойму, есть ли в DragAndDrop какой нить offset для этого, или самому изобретать?
453 576645
>>576632

> какой нить offset для этого, или самому изобретать


Ну ты уже знаешь что делать. Мне хоть и нравится либждх, но я бы посоветовал пересесть на что то более современное, для чего есть не сдохший редактор сцен и интерфейса, или еще лучше - встроенный.
454 576646
>>576645
Юнитэ!
455 576649
>>576646
Годот, ЯСКОЗАЛ!
456 576654
>>576649

>Годот, ЯСКОЗАЛ!


Я слышу речь не мальчика, но петуха.
457 577141
>>576646
>>576649
>>576654
Вы опять всё обосрали, дауны. Идите в свои треды и дрочите там.
458 577142
>>576645
Редакторы не нужны.
image.png181 Кб, 1920x1080
459 597986
Короче есть старая игрушка на libgdx, решил ее реанимировать после года не пользования этим движком. Ставлю идею, грядлы, ждк, еще че-то там и вижу пикрил, который слабо гуглится.

че делать? переписывать и заодно осваивать годо?
460 598047
>>597986
В идее жмёшь ctrl+N и пробуешь найти XmlSchema. Асло javax это вроде бы часть JavaEE стека, а ты небось только кастрированный JavaSE накатил.
461 598253
>>597986
Какую ждк поставил? Должна быть не старше 1.8 иначе либждх гроб кладбище пидор.
462 598320
>>598253
блядж весь вечер вчера ебался, ну америкасы туууупые не могли также на стаке написать
463 598338
новые ошибки, завязываю с этой ебалой и перехожу на годот
464 598339
>>598338

>перехожу на годот


старая ошибка
465 598354
>>598339
Потом ты охуеешь от количества багов в годоте, и перейдешь на юнити. А когда охуеешь от юнити, уже будет некуда переходить.
Я не тролю, сам сейчас нахожусь на этом этапе. Решил что похуй, буду делать игру на кривом юнити, а когда разбогатею и уволюсь с работы, буду пилить свой двиг под следующие игры.
sage 466 599379
>>598354
Неженка. Баги нужно фиксить а не бежать от них. Как будто есть что-то где нет багов вообще. Везде есть, но в libgdx и годоте их хотя бы легко исправить и опубликовать результат чтобы другие о них уже не спотыкались.
467 599387
>>599379
А игры кто делать будет?
468 599568
Подумываю вкатиться пара вопросов
Вакансии на такое вообще бывают?
Байндинги на сишарп есть?
469 599724
>>599568
Нет.
Возможно.
470 599728
>>599568
Есть одна вакансия в штатах, все что я нашел
471 644337
>>250576 (OP)
Собираюсь писать один платформер типа apocalypse runner на ведро но с графонием попроще. Java/Kotlin знаю, однако игры никогда не писал. Стоит ли начинать писать на Libgdx в 2к20?
472 644379
>>644337
фига ты какое дерьмо мамонта поднял, но не суть.. тут вряд ли найдется актив по сабжу, вк есть группа, вроде живая, нубские вопросы прям на стене задают, народ отвечает.. вообще если жава/котлин как родные, можешь использовать, тк по сути это просто фреймворк, запускающий за тебя игровой цикл и дающий основной функционал для написания игори.. конечно многое придется пилить самому, или подключать отдельные библиотеки (благо это делается одной строкой в конфиге градла), но есть существенный минус - нет общего редактора, уровни делают в Tiled, текстуры пакуют в другой программке (тоже написанной на libgdx), ui пакуют в еще одной утилите.. короче море редакторов для каждого пука, пишутся сообществом.. если нужно по фасту что-то делать, лучше использовать движки..

я с libgdx начинал, много узнал что как внутри игр работает, до этого был опыт в жава ынтырпрызе, поэтому далось все легко, но игоры так и не стал пилить на постоянной основе, сейчас иногда участвую в джемах и использую годот (легкий редактор, в котором можно за пару вечеров на коленке слепить прототипчик)
473 644418
>>644379
Мож годота тогда?
474 644683
>>644418
Он не подходит для разработки на ведре. Из недавнего - 10 фпс на тайлмапах.
Тред утонул или удален.
Это копия, сохраненная 6 июня 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /gd/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски