Запуск клиента ММ на нет/ноутбуках с Nvidia Optimus

Тема в разделе "Руководства", создана пользователем MindWork, 4 сен 2014.

  1. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    С недавних пор обзавелся гибридным ноутбуком с Nvidia GeForce GT620M на борту в дополнение к базовой Intel HD Graphics с 128Мб. на борту.
    Так как на нем установлена ОС Ubuntu 14.04, приходится использовать bumblebee-nvidia драйвер, что бы через него посредством optirun запускать 3D приложения на дискретной видеокарте, а не встроенной свистелке.
    С родным лаунчером майнкрафта никаких проблем:
    Код:
    Путь к java: optirum
    Аргументы ком. строки: /usr/lib/jvm/java-7-oracle/jre/bin/java -Xmx1G
    С лаунчером же ММ такое становится невозможно, т.к. между optirun и остальным лаунчер впихивает еще:
    Код:
    -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true
    В связи с этим, вопрос к знающим и прочим гуру: Возможно ли теперь запустить клиент ММ через optirun, или же так и придется маяться на встроенной свистелке?

    PS: Советчики "паставь венду" - сразу в консерваторию.
    PPS: Понимаю, что тема для "Техподдержки", но, вопрос тут скорее в гайде "как это сделать?", в связи с чем и выбран раздел "Руководства".
     
  2. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    совсем не тот параметр который может мешать.


    попробуй установить этот параметр задав его дополнительно как false
     
  3. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    Не поможет, вся пакость в том, что итоговая строка запуска выглядит так:
    Код:
    optirun -Dfml.ignoreInvalidMinecraftCertificates=true -Dfml.ignorePatchDiscrepancies=true /usr/lib/jvm/java-7-oracle/jre/bin/java -Xmx1G
    По специфике работы, optirun имеет следующий синтаксис запуска:
    Код:
    optirun [параметры optirun] приложение [параметры приложения]
    И естественно, т.к. -D параметры автоматом добавляются лаунчером, optirun не найдя их в списке своих параметров, парсит как название приложения, и не найдя такого, падает в консоль с errorcode 1 (файл не найден).
     
  4. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    так добавь через настроки профиля.
     
  5. Bond009

    Bond009
    Архитектор
    570
    307
    343
    Купил неделю назад ASUS, столкнулся с такой же проблемой. Решения пока нет(
     
  6. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    Решение есть, но только администрация вряд ли этим будет заниматься, а исходники нам никто не даст...
     
  7. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    Ты бы озвучил решение, а мы подумали бы править нам исходники или нет. И потом, ты через настройки профиля пробовал как я тебе сказал?
     
  8. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    Решение простое по сути, но всё же специфичное для данной ситуации, и заключается просто в переносе -Dfml парметров после аргументов ком. строки, которые указываются в лаунчере, что бы была возможна такая конструкция:
    Код:
    optirun[здесь путь к java в лаунчере] [-Dfml параметры] [здесь аргументы ком. строки в лаунчере]
    То есть, просто изменить место вставки -Dfml параметров при формировании строки запуска.
     
  9. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    Ну а мое предложение не айс? Что мешает в профиле прописать?
     
  10. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    Мешает то, что после пути к java (optirun в лаунчере), должен идти путь к запускаемому через optirun приложению. Там же идут подставляемые лаунчером -Dfml параметры. И только потом указанный в аргументах ком. строки, путь к java. И что не указывай вручную, они оттуда не пропадут, и optirun будет постоянно ругаться.
    Мой же вариант формирования строки запуска универсален, как при использовании optirun, так и без него.
     
  11. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    Может я что не понимаю, но глянув исходник вижу вот что:
    Код:
    JavaProcessLauncher processLauncher = new JavaProcessLauncher(selectedProfile.getJavaPath(), new String[0]);
            processLauncher.directory(gameDirectory);
    
            File assetsDirectory = new File(Launcher.getInstance().getWorkingDirectory(), "assets");
            try {
                assetsDirectory = reconstructAssets();
            } catch (IOException e) {
                Launcher.getInstance().println("Couldn't unpack assets!", e);
            }
            OperatingSystem os = OperatingSystem.getCurrentPlatform();
            if (os.equals(OperatingSystem.OSX))
                processLauncher.addCommands(new String[]{
                    "-Xdock:icon=" + new File(assetsDirectory, "icons/minecraft.icns").getAbsolutePath(), "-Xdock:name=Minecraft"
                });
            else if (os.equals(OperatingSystem.WINDOWS))
                processLauncher.addCommands(new String[]{
                    "-XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump"
                });
            processLauncher.addCommands(new String[]{
                "-Dfml.ignoreInvalidMinecraftCertificates=true"
            });
            processLauncher.addCommands(new String[]{
                "-Dfml.ignorePatchDiscrepancies=true"
            });
    
            String profileArgs = selectedProfile.getJavaArgs();
    
            if (profileArgs != null)
                processLauncher.addSplitCommands(profileArgs);
            else {
                boolean is32Bit = "32".equals(System.getProperty("sun.arch.data.model"));
                String defaultArgument = is32Bit ? "-Xmx512M" : "-Xmx1G";
                processLauncher.addSplitCommands(defaultArgument);
            }
    где видно что эти параметры идут до юзерской строки.
     
  12. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    И да, в догонку. Не долго мучавшись поиском, точней совсем не мучавшись, для всех линуксойдов есть довольно простое решение, что бы не вызывать оптиран: http://www.linux.org.ru/forum/talks/7208793#comment-7208811
     
  13. [TITLE]

    [TITLE]
    Архитектор
    597
    477
    368
    Обесню от себя!

    Если ноутбук фирмы Asus или где итоит 2 видео карты Nvidia и Intel у вас не работает майн или тупит FPS и прочее! для этого необходимо настроить видео карту Nvidia на майнкрафт

    Правой кнопкой по рабочему столу

    [​IMG]

    После

    [​IMG]

    И там выбираем что бы использовалась видео карта Nvidia

    P.S У меня нет по другой ноута Asus я бы записал урок как это зделать!

    Но все это я проделывай в Windows 7-8-8.1
     
  14. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    Тайтл, они про линукс говорят. На винде понятное дело все легко настраивается [smile]
     
  15. [TITLE]

    [TITLE]
    Архитектор
    597
    477
    368
    Некоторые и с виндой тупят!
     
  16. Bond009

    Bond009
    Архитектор
    570
    307
    343
    Ну, у меня винда 8, на линуксе просто играть не буду)
    P.S. TITLE, менять настройки не нужно, при клике пкм на ярлыке, есть возможность выбрать с каким графическим оборудованием запустить приложение.
     
  17. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    Bond009, для jar файлов такой возможности нет.
     
  18. Black_falcon

    Black_falcon
    Архитектор
    1.895
    793
    438
    Можно скачать лаунчер для вин [smile]
     
  19. Filter

    Filter
    Администратор
    7.591
    5.191
    643
    не всегда есть такая возможность.
     
  20. MindWork

    MindWork
    Подрядчик
    15
    3
    238
    Прошу пардонить за долгий ответ, работа.

    Собственно что видно из кода:

    Код:
    processLauncher.addCommands(new String[]{
                "-Dfml.ignoreInvalidMinecraftCertificates=true"
            });
            processLauncher.addCommands(new String[]{
                "-Dfml.ignorePatchDiscrepancies=true"
            });
    
            String profileArgs = selectedProfile.getJavaArgs();
    Именно вот здесь это и видно, что вначале добавляются -Dfml параметры, и только потом getJavaArgs(), получает значение из поля лаунчера "Аргументы ком. строки".