• Unity3D 5 - Скорость, направление, физика?

    ping_rulezzz
    @ping_rulezzz
    dordzhiev: думаю, лучше взять за практику, Float переменные не сравнивать через == , для этого существует Mathf.Approximately (это чтобы не городить свой велосипед с дельтой)
  • Google Play Services: Как сделать автоматическую авторизацию?

    ping_rulezzz
    @ping_rulezzz
    Если у вас весь предыдущий код нормально работал, то попробуйте убрать OnGUI() и вставить кусок кода, который я написал, после GooglePlayGames.PlayGamesPlatform.Activate(); По идее должно заработать.
  • Заносы/резинка в управлении, как этим управлять?

    ping_rulezzz
    @ping_rulezzz
    Если честно, я вначале не совсем точно вас понял - не заметил, что корабль уходит за границы и возвращается. Это происходит потому, что в коде принудительно выставляется rigidbody.velocity, дальше отрабатывает физика. Повлиять на скорость возврата, думаю, можно, но проблематично (именно в данном случае). Если нужно, чтобы корабль оставался в границах достаточно добавить
    transform.position = new Vector3(Mathf.Clamp (transform.position.x, boundary.xMin, boundary.xMax), 0.0f, Mathf.Clamp (transform.position.z, boundary.zMin, boundary.zMax)); в Update() функцию, но уже будет на так красиво.

    Может быть полезно:
    docs.unity3d.com/ScriptReference/Rigidbody-positio...
    docs.unity3d.com/ScriptReference/Rigidbody.MovePos...
  • Почему не работает перемещение в Unity3d?

    ping_rulezzz
    @ping_rulezzz
    Спасибо, совсем забыл про эту функцию.
  • Почему не работает перемещение в Unity3d?

    ping_rulezzz
    @ping_rulezzz
    Если вы будите использовать Vector3.Lerp так, как в вашем примере, то движение будет неравномерное.
  • Как создать комнату для PvP на сервере?

    ping_rulezzz
    @ping_rulezzz
    Тоже думал на счёт другого instanse'а сервера. Но, честно, я смутно представляю, как именно можно было бы организовать это, т.к. не знаю как там у вас всё устроено, и будет ли корректно работать Photon в этом случае.

    Возможно в этом случае вам пришлось бы добавить какой-то менеджер инстансов серверов для PvP.
    Т.е. приходит запрос на создание комнаты, сервер создаёт новый инстанс себя же с определёнными параметрами (допустим передаст порт для сокета и говорит что он PvP сервер ) и шлёт клиенту, куда тот должен подключиться (ip:port дочернего сервера). После этого юзер подключается к новому серверу, в котором будет создана фотоновская комната. Скорее всего даже не нужно будет прерывать связь с главным сервером. По окончанию игры, пользователь шлёт дочернему серверу команду на закрытие, главному, что он закончил игру и порт для сокета свободен (для другого сервака).

    Чтобы быстро проверить - можете собрать 2 билда сервера с разными адресами и 2 билда клиента, настроенные на эти адреса. Ну и запустить эти серваки и попытаться присоединиться клиентами.

    Если соберётесь проверять, напишите потом, что получилось.
  • Как создать комнату для PvP на сервере?

    ping_rulezzz
    @ping_rulezzz
    Не уверен, что это жизнеспособная идея, и возможно ли всё реализовать, но всё же:

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

    Возможно ли сделать так, чтобы PvP игрокам будет посылаться своя инфа (скажем так - "своя копия состояния мира", без других игроков)?

    1. допустим игрок А создаёт пвп комнату -> шлёт серверу команду
    2. сервер непосредственно у себя "создаёт" виртуальную комнату (именно у себя, не трогая фотон) и посылает всем клиентам, что создана комната такая-то и количество игроков вней. у комнаты есть свой какой-то ID
    3. игроки А и Б получает инфу о создании вирт комнаты и её ID. Игроки запоминают этот ID (и этот id будет передаваться внутри фотона между игроками) и коннектятся к э той виртуальной комнате . В этом месте сервер должен их приконнектить к существующей комнате (которая вполне реальная с другими игроками), но в данном случае у нас в этом игровом мире будут два игрока, в информации о которых мы можем получить ID виртуальной комнаты. Соответственно, на стороне клиента мы можем отбрасывать инфу об игроках если у них другой ID.
  • Как создать комнату для PvP на сервере?

    ping_rulezzz
    @ping_rulezzz
    Уже давно работал с Photon, поэтому точно сказать не могу, но! На сколько я помню мастер клиент может быть кто угодно, и, по моему, я даже делал у себя в игре так, чтобы клиентов не выкидывало при выходе мастера. answers.unity3d.com/questions/738729/photon-switch...
    Попробуйте покопать в эту сторону.
  • Какой есть движок для 2D/3D .NET игры с очень необычным функционалом?

    ping_rulezzz
    @ping_rulezzz
    Вы видимо не понимаете, как Unity можно применять. Он как раз и позволит вам сконцентрироваться на том, что вы хотите, не тратя время на низкоуровневые вещи. Все уровни, при желании, можно генерить из скриптов.

    И к слову, как именно движок может мешать написанию "офегительного АИ" ?
  • Unity3D - объекты создаются очень маленькими

    ping_rulezzz
    @ping_rulezzz
    Видимо потому что она далеко от объектов?) - подвиньте