• В php есть функция преобразования 1000 в k?

    vgorodilov
    @vgorodilov
    function format($size){
      $filesizename = array( " Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB" );
      return $size ?
      $format = round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $filesizename[$i] : '0 ' . $filesizename[0];
         return format;
        }
    Ответ написан
    1 комментарий
  • Что использувать первое время для анимации?

    @mrsanders
    Работаю в Nelset interactive
    Нет нечего плохого что бы использовать обычную по-кадровую анимацию в самом начале пути. Тем более для 2д игр ее все равно придется использовать для элементов декора.
    Ответ написан
    Комментировать
  • Как сделать анимацию круг в квадрат и обратно?

    iLLuzor
    @iLLuzor
    Java, Kotlin, Android Developer
    Например во Animate CC (Бывший Flash Professional) такая анимация делается легко через shape tween и экспортируется в секвенцию кадров, которую можно использовать в качестве анимации для android.

    Также можно нарисовать покадрово в любом графическом редакторе.

    Наверняка можно сделать такую анимацию в svg, почитайте про этот формат.
    Ответ написан
    Комментировать
  • В чем отличия этих книг?

    AcidBat
    @AcidBat
    C#
    Разница в совести продавца. Айфоны с себестоимостью $150 ведь тоже продают за $600.
    Ответ написан
  • Сервер для многопользовательской игры?

    @VictKor
    Игровая индустрия, 3d моделирование
    nodejs+socket.io - очень хороший выбор для собственного сервера. Также полно готовых решений.
    Советую познакомиться с этим циклом статей. Много интересного.
    Ответ написан
    Комментировать
  • Сервер для многопользовательской игры?

    @Gizmothron
    Подходит и Node.JS и PHP и C++ и Ruby и ASP.NET и Python и Java и пр. и пр. и пр.

    Я бы предложил Go. С ним нагрузка на сервер будет меньше.

    И есть хорошая документация и шаблоны по взаимодействию сервера и Android для Google AppEngine.

    Из минусов - привяжитесь к Google AppEngine. Из плюсов - там очень многое есть из коробки и уже заточено под Android, а у Android заточено под Google AppEngine.
    Ответ написан
  • Classloader и с что он собой представляет?

    vlad20012
    @vlad20012
    Тема с загрузкой классов уже достаточно заезжена и теория по ней гуглится легко. За пару минут нашел
    официальные доки,
    довольно подробная статья из кого-то блога,
    запись выступления на конференции JUG.RU

    Определимся с начальными условиями. Как я понял, есть папка с jar-файлами. Необходимо пройтись по всем jar-файлам и на выходе получить список классов, реализующих Module. Что-то вроде
    List<Module> discoverModules(File dir) {}
    Будем считать, что 1 jar-файл может содержать только один модуль (здесь и далее, "модуль" - это класс, реализующий интерфейс Module). Здесь самый нетривиальный вопрос, как этот модуль найти внутри архива. Самый простой (для начала) способ - положить в каждый jar-файл по определенному пути некий конфиг, в котором указать путь к модулю. И такой конфиг в jar-файле уже есть - стандартный META-INF. В простейшем случае у нас получается jar-файл из двух файлов с такой структурой:
    MyMod.jar
    ├───META-INF
    │   └───MANIFEST.MF
    └───mymod
        └───MyMod.class

    Где MANIFEST.MF содержит строчку
    Main-Class: mymod.MyMod
    т.е. путь к классу MyMod.

    Класс MyMod нужно собирать отдельным проектом, добавляя в зависимость проект, содержащий интерфейс Module. Содержимое MyMod.java
    package mymod;
    
    public class MyMod implements Module {
        public int run() {
            System.out.println("MyMod loaded!");
        }
    }

    Будем считать, что MyMod.jar уже собран и лежит (возможно, вместе с другими модулями) в директории "/modules".

    Ну вот, это были начальные условия =) Теперь к сути вопроса.
    public class ModuleLoader {
    	public static void main(String[] args) {
    		List<Module> mods = new ModuleLoader().discoverModules(new File("/modules"));
    		for(Module mod : mods)
    			mod.run();
    	}
    
    	public List<Module> discoverModules(File dir) {
    		List<File> jarFiles = Stream.of(dir.listFiles())
    				.filter(f -> f.getName().endsWith(".jar"))
    				.collect(Collectors.toList());
    		URL[] moduleUrls = jarFiles.stream().map(this::toUrl).toArray(URL[]::new);
    
    		URLClassLoader classLoader = new URLClassLoader(moduleUrls, getClass().getClassLoader());
    		return jarFiles.stream()
    				.map(this::getMainClassName)
    				.map(name -> {
    					try {
    						return (Module) classLoader.loadClass(name).newInstance();
    					} catch(Exception e) {
    						throw new RuntimeException(e);
    					}
    				})
    				.collect(Collectors.toList());
    	}
    
    	private String getMainClassName(File file) {
    		try(JarFile jar = new JarFile(file)){
    			return (String) jar.getManifest().getMainAttributes().get("Main-Class");
    		} catch(IOException e) {
    			throw new RuntimeException(e);
    		}
    	}
    
    	private URL toUrl(File file) {
    		try {
    			return file.toURI().toURL();
    		} catch(MalformedURLException e) {
    			throw new RuntimeException(e);
    		}
    	}
    }
    Ответ написан
    Комментировать
  • Какой должен быть файл proguard-rules имея следующую структуру проекта?

    Вам ненужно ничего дополнительно прописывать.После билда .apk, код будет автоматически обфусцирован. "proguard-rules.pro" , нужен для того, чтобы не дать ProGuard сломать некоторые вещи, из-за которых может вылететь ClassNotFoundException.Пример : -keep public class , или -dontwarn com.example.something , если ProGuard на что-то ругается.
    Также в этом файле можно указать параметры обфускации, но они не являются обязательными.

    Update:

    Имена активностей не обфусцировались, потому что они указаны в манифесте.Так что, вы всё поняли правильно.
    Ответ написан
    Комментировать
  • Использование ListView или RecyclerView?

    zagayevskiy
    @zagayevskiy Куратор тега Android
    Android developer at Yandex
    Да, лучше сразу пересаживаться на него. Можно использовать с CoordinatorLayout, встроенные анимации, можно писать свои типы раскладок, ViewHolder "из коробки", и всякие другие фишки. Причём использовать в качестве замены ListView очень просто. Рекомендую.
    Ответ написан
    5 комментариев
  • Нужен ли такой процессор программисту???

    Программист в состоянии сам решить, какой процессор ему нужен.
    Ответ написан
    Комментировать
  • SignActivity and back stack.....?

    Вообще вы можете использовать при старте новой activity флаг FLAG_ACTIVITY_CLEAR_TOP:
    Intent intent = new Intent(getBaseContext(), NewActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent);
    finish();

    Флаг FLAG_ACTIVITY_CLEAR_TOP как раз и позволит при открытии новой активности очистить стек.
    Ответ написан
    1 комментарий
  • Чем пользуетесь вы?

    @razer89
    Android-разработчик
    Есть замечательный плагин для Android Studio - Android Drawable Importer
    Ответ написан
    1 комментарий
  • Чем пользуетесь вы?

    Комментировать
  • Где найти бесплатные текстуры и т.д для создания простенькой игры?

    JohnZoidberg
    @JohnZoidberg
    1. Kenney.nl

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

    2. OpenGameArt.org

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

    3. Untamed.wild-refuge.net

    Отличный ресурс для тех, кто задумывает или уже создает свою RPG.
    При переходе по ссылке справа вы увидите колонку ресурсов. Персонажи, предметы, локации и тому подобное, при нажатии на которых все-все объекты появятся на одной странице, что упрощает и ускоряет выбор. При клике на понравившегося персонажа, открывается ссылка на .png файл, со всеми 3d-проекциями и движениями, что идеально подходит для создания собственных спрайтов.

    4. Crateboy.itch.io

    Отличительная особенность данной коллекции - 8-битная графика городов. Вся библиотека совершенно бесплатна, и всё, о чём просит автор - упомянуть о нём в своей игре (credits).
    Цветовая гамма данной библиотеки является её отличительной особенностью, и при использовании в исходном виде вполне может определить дизайн всего проекта.

    5. Bagfullofwrong.co.uk

    Коллекция материалов, созданных и использованных в различных проектах дизайнером Робом Фероном для Вашего личного пользования.

    6. Gameart2d.com

    Вебсайт, запущенный индонезийским разработчиком игр, с отличным вкусом в области дизайна игр. Хотя большая часть материалов сайта является платной, так же присутствует и бесплатная, в которой Вы можете найти симпатичные изображения. Помимо спрайтов на сайте представлены наборы для создания уровней, GUI и прочее.

    7. Wigdetworx.com

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

    8. Glitchthegame.com

    Создатели проекта Glitch, закрытого в 2012 году решили сделать всю её графическую часть Достоянием общественности (никакие авторские права для использование не требуются). К Вашим услугам более 10,000 изображений восхитительного качества собранные воедино и доступные по одному нажатию.

    9. Dumbanex.com

    Идеально для сайдскроллеров и платформеров
    Множество графики от дизайнера-фрилансера Брента Андерсона. Всё бесплатно при условии упоминания в приложении (Credits).

    10. Reinerstilesets.de

    Бесплатная графика от разработчика игр разработчикам игр. Помимо библиотек на сайте есть неплохие туториалы.

    11. Sharecg.com

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

    12. Roenica.com

    Отличный сайт с графикой для инди проектов и казуалок.
    Всё разбито на категории по типу игры и упаковано в ZIP архивы. Есть и 2D и 3D графика, но так же как и в предыдущем случае стоит внимательно смотреть на лицензию, под которой распространяется контент.

    13. Blogoscoped.com

    Сам сайт - форум про Гугл и всё, что с ним связанно, но в 2006 году его участник Philip Lenssen выложил на нем около 700 спрайтов, которые теперь распространяются под Creative Commons License

    14. Lostgarden.com

    Сайт немного отличается от рассмотренных выше. Это блог игрового дизайнера, в котором время от времени появляется бесплатная графика для разработчиков игр. Так же интерес представляет и сам блог, в котором дизайнеру можно найти уйму важной и интересной информации.

    15. Subtlepatterns.com

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

    16. Openclipart.org

    Обширное сообщество с огромными объемами графики. Всё, что сможете найти на этом сайте, совершенно бесплатно. Правда вот поискать придется как следует.
    Ответ написан
    12 комментариев
  • Идеи приложений для начинающего разработчика под Android?

    sintez
    @sintez
    Например, анализ списка вызовов и смс и построение чартов на экране, где показывается кому чаще всего звоню-пишу.
    Далее можно усложнять - сохранять эти чарты в виде картинки и постить на стену/твит/инстаграмм/оправить другу по емейл.
    Сохранение всей этой статистики в локальной БД.
    Бэкап данных статистики в облако - например экспортить данные в json и класть куда-нибудь на Яндекс. Диск. Соответственно и возможность восстановления этой статистики.
    Бэкграунд-задачка которая в фоне смотрит обновления списка вызовов и СМС, пересчитывает статистику и складывает в базу.
    Показывать всякие нотификашки, например после успешного обновления статистики в фоне напистаь об этом.

    Этого уже будет достаточно, чтобы изучить приличный кусок АПИ Андроида =)
    Ответ написан
    Комментировать
  • Реализация поворота фрагментов?

    @Hakito
    При повороте у тебя активити заново создается, следовательно, возвращается к исходноу состоянию. При этом состояние до поворота можно сохранить и использовать при восстановлении. Для этого используется метод OnSaveInstanceState. Ты его переопределяешь и пишешь в Bundle то, что нужно сохранить, а потом в OnCreate восстанавливаешь сохраненное состояние
    Ответ написан