Что такое импорт в игре
Импортирование установленой игры в Лаунчере
Прикрепленные изображения
она попросту не запускается
она попросту не запускается
Странно.У меня даже с переносного жесткого диска по юсб запускается.Ну естественно если игра была установлена через старый установщик игры без геймцентра.
Зачем?Просто из скачанной директории запускаешь игру первый раз,потом из этой директории создаёшь ярлык на рабочий стол и всё
Зачем?Просто из скачанной директории запускаешь игру первый раз,потом из этой директории создаёшь ярлык на рабочий стол и всё
1. Переименуйте ВСЕ корневые папки до папки с клиентом игры так, чтобы в них не было русских символов.
2. Чтобы игра работала на новом компьютере на нем должно быть установлено ВСЕ ПО из этого списка. Порядок установки ВАЖЕН!
3. После установки этого ПО перезагрузите компьютер и пробуйте добавлять снова согласно рекомендациям из этой статьи.
Если клиент не виден, то возможно в папке с игрой отсутствует\поврежден файл game_info.xml. Проверьте и при необходимости скопируйте его. Уточню, что данный метод (перенос с одного компьютера на другой и импортирование) работает, если на исходном компьютере игра установлена и запускается с помощью WGC.
Если клиент не виден, то возможно в папке с игрой отсутствует\поврежден файл game_info.xml. Проверьте и при необходимости скопируйте его. Уточню, что данный метод (перенос с одного компьютера на другой и импортирование) работает, если на исходном компьютере игра установлена и запускается с помощью WGC.
Попробуйте уменьшить количество вложенных каталогов, то есть, сократите количество папок на пути к файлам игры. Так же исключите кириллицу в названиях папок. Например D:/WoT/ и копируйте сюда файлы с флешки. А потом с помощью WGC пробуйте импортировать игру.
Попробуйте уменьшить количество вложенных каталогов, то есть, сократите количество папок на пути к файлам игры. Так же исключите кириллицу в названиях папок. Например D:/WoT/ и копируйте сюда файлы с флешки. А потом с помощью WGC пробуйте импортировать игру.
Ответа не последовало.
Пожалуйста, подробно опишите в заявке, какая у вас проблема и что вы уже пытались делать для её решения и как именно. Можете сослаться на эту тему, как попытку помочь Вам и на форуме.
Создание новой или обновление старой заявки приводит к их объединению, в результате чего она смещается в конец очереди на рассмотрение.
Как работают импорты в Python
Авторизуйтесь
Как работают импорты в Python
Порой бывает трудно правильно реализовать import с первого раза, особенно если мы хотим добиться правильной работы на плохо совместимых между собой версиях Python 2 и Python 3. Попытаемся разобраться, что из себя представляют импорты в Python и как написать решение, которое подойдёт под обе версии языка.
Содержание
Ключевые моменты
Основные определения
Пример структуры директорий
Что делает import
Основы import и sys.path
Вот как оператор import производит поиск нужного модуля или пакета согласно документации Python:
Программы могут изменять переменную sys.path после её инициализации. Директория, содержащая запускаемый скрипт, помещается в начало поиска перед путём к стандартной библиотеке. Это значит, что скрипты в этой директории будут импортированы вместо модулей с такими же именами в стандартной библиотеке.
Кроме того, импорты в Python регистрозависимы: import Spam и import spam — разные вещи.
Функцию pkgutil.iter_modules() (Python 2 и Python 3) можно использовать, чтобы получить список всех модулей, которые можно импортировать из заданного пути:
Чуть подробнее о sys.path
Документация Python описывает sys.path так:
Список строк, указывающих пути для поиска модулей. Инициализируется из переменной окружения PYTHONPATH и директории по умолчанию, которая зависит от дистрибутива Python.
Документация к интерфейсу командной строки Python добавляет информацию о запуске скриптов из командной строки. В частности, при запуске python
Table of Contents:
В общем смысле «экспорт» означает отправку чего-либо из вашей страны в другую страну, а «импорт» означает привлечение чего-либо из чужой страны к себе. Аналогично, в компьютерной терминологии «импорт» означает перенос файла из другой программы в ту, которую вы используете, а «экспорт» означает сохранение файла таким образом, чтобы другая программа могла его использовать.
Импорт и экспорт позволяют различным компьютерным программам читать файлы друг друга.
Экспорт файла
Большинство компьютерных программ имеют свой собственный способ организации и кодирования данных в файлы, которые они сохраняют. Они могут распознавать свои собственные файлы, но не файлы из другой программы. Чтобы экспортировать файл, компьютер должен сохранить данные в формате, который распознает другая программа. Программисты должны встроить эту возможность в саму программу, чтобы программы могли экспортировать в некоторые форматы файлов, а не в другие.
Импорт файла
Импорт со сканеров и камер
Другим типом функции, обычно классифицируемой как импорт, является считывание изображения непосредственно в документ со сканера или камеры. В этом случае программа считывает данные непосредственно со сканера в файл, не сохраняя его сначала как файл другого типа. Сканеры, которые могут выполнять оптическое распознавание символов или распознавание текста, также могут отправлять текст непосредственно в файл.
«Скрытый» импорт и экспорт
Вы часто найдете «Импорт» и «Экспорт» в качестве параметров в меню «Файлы» программы. Но программы могут также импортировать и экспортировать файлы способами, которые не так очевидны. Например, когда вы открываете файл, вы увидите «Тип файлов» в диалоговом окне; выпадающее меню, и вы увидите все другие форматы файлов, которые программа может импортировать. Иногда параметры импорта также находятся в меню «Вставка» программы. Когда вы выбираете «Сохранить как …» в меню «Файлы», в диалоговом окне отображаются все различные форматы файлов, в которые вы можете экспортировать. Одной из наиболее распространенных форм экспорта является сохранение документа в виде файла формата Adobe Portable Document Format.
Что это значит, когда телефон говорит, что набранный вами номер не принимает звонки в это время?
Как импортировать или экспортировать закладки при использовании Internet Explorer
Как импортировать закладки из других браузеров в Internet Explorer. Как экспортировать избранное из Internet Explorer, чтобы вы могли импортировать его в другой веб-браузер.
Простые вопросы: что такое прокси-сервер и что это значит?
Что такое прокси? Что означает прокси-сервер? Для чего используется прокси-сервер? Должен ли я использовать прокси-сервер? Преимущества использования прокси-сервера и проблемы, которые он может создать.
Урок 5 Экспорт / Импорт Товаров (Декабрь 2021).
Что такое импорт в майнкрафте
МЭ шина импорта (англ. ME Import Bus) извлекает элементы из инвентаря блока, на который она установлена, и помещает их в МЭ Сеть, сетевые хранилища данных. Вы можете указать, какие элементы она будет изымать, если же оставить инвентарь пустой, то шина будет изымать всё. Противоположна по принципам работы МЭ шине экспорта.
МЭ шина импорта требует 1 свободный канал для работы. Наличие предметов или блоков проверяется примерно раз в 2 секунды.
Applied Energistics 2/МЭ шина экспорта
МЭ шина экспорта (англ. ME Export Bus) извлекает элементы из МЭ сети (сетевые хранилища данных) и помещает их в инвентарь блока, на который она установлена. Можно указать, какие элементы шина экспорта будет помещать, если же оставить инвентарь пустым, то шина ничего делать не будет. МЭ шина экспорта будет пытаться вставить любой предмет из списка, проверяя его наличие в МЭ сети и возможность приёма этого предмета в блоке, на который она установлена. По принципам работы противоположна МЭ шине импорта.
МЭ шина экспорта требует 1 свободный канал для своей работы. Если имеются несколько слотов в шине, то в инвентарь блока они будут поступать поочередно. Наличие предметов или блоков проверяется примерно раз в 2 секунды.
Использование
Для распределения прав игрокам нужно отредактировать файл permissions.yml по адресу plugins/PermissionsEx. Это можно сделать с помощью любого текстового редактора, но для удобности рекомендуется использовать Online YAML Editor
Открыв его мы увидим:
Значение этих строк следующее:
groups: — указывает, что ниже будут идти группы и их права.
default: — название группы, куда попадают все только что зашедшие на сервер игроки, если они не прописаны в других группах. Вы можете менять это название на какое захотите.
default: true — параметр, который задаёт группу, как группу по-умолчанию. То есть, все права этой группы будет иметь любой игрок, для которого не определены другие группы и/или исключения.
permissions: — все, что идёт ниже, это и есть сами «права» для группы, сюда нужно прописывать permissions от различных плагинов установленных на вашем сервере. Значение null означает, что у группы/игрока нет никаких прав.
— modifyworld.* — возможность «модифицировать» мир. Если Вы не намерены конкретно определять, что игроки могут или не могут изменять в игровом мире, то это право лучше оставить как есть, а если намерены, то смотрите в Modifyworld (с версии 1.0 функция плагина modifyworld вшита в плагин PermissionsEx).
Рассмотрим как мы можем отредактировать данный файл:
Здесь мы добавили новую группу Admins, а также права для отдельного игрока BigBoss:.
default: false — означает, что данная группа не является группой по-умолчанию.
inheritance: — параметр, с помощью которого можно установить наследственность прав определённой группы, в данном случае — это группа default. Это значит, что Вам не придётся еще раз прописывать права группы default для группы Admins.
Звездочка (‘*’) означает, что у группы/игрока есть абсолютно все права на все плагины, установленные на сервере.
users: — означает, что ниже идут права отдельных игроков.
BigBoss: — имя игрока для которого настраиваются отдельные права.
group: Admins — указывает на то, что игрок входит в группу Admins
rank: — ранг игрока.
Содержание
Minecraft Wiki
Из-за новой политики Microsoft в отношении сторонних ресурсов, Minecraft Wiki больше не является официальной. В связи с этим были внесены некоторые изменения, в том числе и обновлён логотип вики-проекта. Подробности на нашем Discord-сервере.
Applied Energistics 2/МЭ шина импорта
МЭ шина импорта (англ. ME Import Bus) извлекает элементы из инвентаря блока, на который она установлена, и помещает их в МЭ Сеть, сетевые хранилища данных. Вы можете указать, какие элементы она будет изымать, если же оставить инвентарь пустой, то шина будет изымать всё. Противоположна по принципам работы МЭ шине экспорта.
МЭ шина импорта требует 1 свободный канал для работы. Наличие предметов или блоков проверяется примерно раз в 2 секунды.
PermissionsEX
PermissionsEX (PEX) — плагин для Bukkit, который позволяет легко разграничивать полномочия игроков на сервере. Имеет встроенные дополнения Modifyworld, которое даёт возможность определять, что игроки могут или не могут изменять в игровом мире, а также ChatManager с помощью которого можно разделить чат на локальный и глобальный, раскрасить ники игроков и добавить к ним префиксы и суффиксы.
[Гайд] Applied Energistics (основы)
Описание: Хранит карты памяти.
Импорт 3D-моделей в Unity и подводные камни
Представляем третью статью нашего цикла о работе с 3D-моделями в Unity. Предшествующие статьи: «Особенности работы с Mesh в Unity» и «Unity: процедурное редактирование Mesh».
В мире компьютерной графики существует множество форматов представления 3D-моделей. Некоторые из них позиционируются как универсальные, другие — как оптимизированные под конкретные задачи или платформы. В любой сфере мечтают работать с универсальным форматом, но реальность говорит нам «нет». Более того, из-за такого зоопарка получается порочный круг: разработчики «универсальных» инструментов придумывают свои внутренние форматы для обобщения предыдущих, увеличивая популяцию и плодя средства преобразования форматов. Так появляется проблема потери или искажения данных при конвертации. Проблема стара как мир (мир IT, конечно), и она не обошла стороной импорт моделей в Unity.
В этой статье мы расскажем о некоторых трудностях, с которыми приходится сталкиваться при работе с моделями в Unity (особенности функционирования ModelImporter, разница представлений 3D-объектов и др.), а также о том, какие инструменты мы создали, чтобы эти трудности преодолеть.
Особенности работы ModelImporter
Напомним, что для API видеокарт минимальный и единственный трехмерный примитив — это треугольник, в то время как геометрия в FBX, например, может быть представлена в виде четырехугольников. Современные 3D-пакеты для создания моделей, как правило, допускают различные уровни абстракции, но и там рендер результата происходит посредством треугольников.
При этом многие инструменты заточены на работу именно с четырехугольниками, что подталкивает 3D-художников использовать этот примитив как основной. В таких случаях в ТЗ часто требуется триангулировать модель перед внедрением. Если триангуляцию не сделали, соответствующий модуль Unity в стандартном режиме выполняет ее автоматически при добавлении файла. Из-за этого появляются ошибки, поскольку алгоритмы триангуляции в разных пакетах реализованы по-разному. При выборе диагонали для разбиения четырехугольника возникает неоднозначность, отсюда большинство проблем, которые можно разделить на две группы.
Первая связана с корректностью отображения формы модели. Так, форма непланарного четырехугольника напрямую зависит от выбора диагонали.
Сюзанна, триангулированная в Blender (Quad Method: Beauty) и в Unity (автоматически при импорте)
Кроме того, алгоритм запекания карты нормалей использует данные о разбиении, из-за чего разница в триангуляции может порождать артефакты в виде креста на блике.
Самокат здорового человека и самокат курильщика
Проблемы второй группы встречаются в текстурной развертке. Например, у нас есть четырехугольник с достаточно тупым для возникновения ошибки углом. При предварительном просмотре в 3D-пакете он разбивается одной из диагоналей на два вполне себе складных треугольника.
Исходный полигон
Полигон, триангулированный в Blender
Однако после импорта в проект обнаруживается, что этот четырехугольник разбит другой диагональю и что один из треугольников либо вообще вырожден, либо близок к тому.
Полигон в Unity с треугольником, близким к вырожденному (правый треугольник практически неотличим от отрезка)
Причиной проблем, связанных с вырожденностью полигонов, являются погрешности в вычислениях с плавающей запятой, а также особенности пиксельной интерполяции при рендеринге. С такими треугольниками происходит черт-те что: они дергаются, каждый кадр меняют цвет. Крайне малая величина поперечного сечения создает сложности при обработке света, из-за чего части динамических объектов могут мерцать. Да и в недетерминированности запекания карты освещения тоже нет ничего хорошего.
Я 3D-пакет, я так вижу
В 3D-моделировании часто возникает разница между фактическим количеством вершин и их количеством в 3D-пакете. Суть проблемы заключается в информации, которая требуется для обработки видеокартой. Структура данных для вершины предопределена и включает в себя позицию, нормаль, касательную, координаты текстурной развертки на каждый канал и цвет. То есть в одну вершину две нормали не запихнуть.
Для некоторых художников же не всегда очевидно, что вершина определяется не только своей позицией. Моделлеры прекрасно знают понятия Hard/Soft Edges и UV Seams, но не все осознают, каким образом они реализованы программно. Дополнительно сбивают с толку 3D-пакеты, которые в стандартном режиме показывают количество вершин как количество уникальных позиций.
Так, обычный примитив Cube геометрически представим 8 вершинами. Однако чтобы корректно передать отражение света от каждой грани и правильно наложить текстуру, в каждом углу куба необходимо по 3 вершины с одинаковой позицией, но разными нормалями и текстурными координатами, поскольку в каждом из углов сходится по 3 ребра. Этому моменту посвятили небольшой блок документации. Там же можно посмотреть примеры.
Метрики куба в Blender
Метрики куба в Unity
Хватит это терпеть!
Столкнувшись с этими и подобными проблемами, мы решили создать инструмент анализа и валидации моделей при импорте в проект Unity. Иначе говоря, кастомный валидатор, который на запрос «Ешь!» ответит: «Не буду! Переделывай», — или выплюнет наборы предупреждений и значений различных параметров, оповещая о том, что ему что-то невкусно.
Для анализа и проверки мы разработали следующий функционал:
Подсчеты количества уникальных позиций вершин, Hard Edges, UV Seams и раскрашенных вершин — необходимы для проверки соответствия задуманной художником модели той, что была импортирована в Unity. Этот функционал также позволяет следить за соблюдением требований к оптимизации модели (например, чтобы количество вершин не превышало определенное значение). Из-за все той же особенности 3D-пакетов, которые показывают по факту количество уникальных позиций, бывают случаи, когда метрика числа вершин в редакторе моделей удовлетворяет этому ограничению, однако после внесения файла в проект может оказаться, что это не так.
Вычисление AABB и его центра — позволяет определить смещение модели относительно начала ее собственной системы координат. Это необходимо для предсказуемого позиционирования ассетов, которые инициализируются в сцене уже во время работы приложения. Так, AABB здания по-хорошему должен иметь minY = 0, а какой-нибудь люстры, которая крепится к потолку — maxY = 0.
Выход координат вершин UV-развертки за диапазон 0.0–1.0 — в большинстве случаев (например, если текстура должна тайлиться на модели) предусмотрен. Часто такой подход используется для представления в сцене множества низкодетализированных мелких объектов (растительности) и/или находящихся вдалеке, а также замощения больших однородных объектов (зданий). В случае тайлинга значениям координат конкретного UV-канала просто обрезают целую часть на уровне шейдера, если Wrap Mode текстуры установлен в Repeat.
Представьте теперь, что вы уложили текстуру в атлас (и накрыли одеялком :3). В шейдер будут приходить уже преобразованные координаты, соответствующие атласу (x * масштаб + смещение). Никакой целой части на этот раз вероятнее всего уже не будет и обрезать будет нечего, а модель залезет на чужую текстуру (одеялко оказалось маленьким). Эта проблема решается двумя способами.
Первый предполагает, что вы заранее обрежете целую часть у координат развертки. В этом случае появляется вероятность взаимоналожения полигонов, о чем мы поговорим ниже.
Второй основывается на том, что тайлинг текстур по своей сути — это метод оптимизации. Вам же никто не запрещает увеличить размер и просэмплировать нужный кусок на всю модель. Однако таким образом полезное пространство атласа будет использовано неэффективно.
Наложения в текстурной развертке — тоже чаще всего не случайны: они нужны, чтобы эффективно использовать площади текстуры. Бывает, что ошибку совершает новичок, старший товарищ это видит, произносит крепкое словцо и новичок больше так не делает. Но бывает, что наложение настолько мелкое и находится в настолько неожиданном месте, что и старший товарищ может его не заметить.
В опытном коллективе незамеченные на базовой развертке ошибки попадают в проект чуть чаще, чем никогда. Другое дело, когда меняются условия использования уже готового контента.
Пример. Мы работали с набором моделей для динамических объектов в игре. Поскольку не было задачи запечь для них свет, в UV-развертке допускались наложения.
Пример базовой UV-развертки с наложениями (показаны красным)
Однако затем мы решили не использовать эти модели как динамические, а расставлять их в качестве статичного декора на уровне. Для оптимизации, как известно, освещение статических объектов в сцене запекают в специальный атлас. Отдельного UV2-канала для карты освещения у этих моделей не было, а качество работы автоматического генератора в Unity нас не устраивало, поэтому мы решили как можно чаще использовать базовую текстурную развертку для запекания.
Здесь и возникли явные проблемы с корректностью освещения. Очевидно, что лучи, попадающие какой-нибудь статуе в глаз, не должны создавать блики на пятой точке на затылке.
Некорректно запеченное освещение модели (слева) и исправленное (справа)
Unity при формировании карты освещения в первую очередь пытается использовать UV2-канал. Если он пустой, то используется основной UV, если и этот пуст, то извините, нате вам исключение. Запечь модели в карту освещения без предварительно подготовленного UV2 в Unity можно двумя способами.
В качестве первого Unity предлагает автоматическую генерацию UV2 на основе геометрии модели. Это быстрее, чем делать вручную, к тому же данный инструмент можно настраивать с помощью нескольких параметров. Но даже несмотря на это, итоговое наложение светотени часто неудовлетворительно для высокодетализированных объектов из-за швов и затеканий в неположенных местах, к тому же упаковка частей такой развертки не самая эффективная.
Второй способ — использовать базовую UV-развертку для запекания. Очень даже привлекательный вариант, поскольку при работе с одной текстурной разверткой меньше вероятность совершить ошибку, чем при работе с двумя. По этой причине мы стараемся минимизировать количество моделей, в базовой UV которых присутствуют наложения. Созданный инструментарий помогает нам это осуществлять.
Проверка текстурной развертки на достаточность заданного пиксельного отступа при заданном разрешении текстуры — более точная валидация UV, основанная на растеризации. Подробнее об этом методе будет рассказано в следующей статье серии.
Подведем итог. Конечно, практически невозможно отследить все нюансы: иногда приходится мириться с несовершенством результата, чтобы выполнить задачу в срок. Однако выявление даже части таких недочетов позволяет ускорить разработку проекта и повысить его качество.