Результаты поиска
| |
SkorpyX | Дата: Вторник, 24 Ноября 2015, 19:49 | Сообщение # 61 | Тема: [3D] - LowPoly - [Survival RPG] |
участник
Сейчас нет на сайте
|
Жанр игры: Survival RPG На каком движке/конструкторе: Unity 5 В каком пространстве: 3D Какой вид в игре: От первого лица Какие есть похожие игры: Unturned, DayZ, Rust Какой Язык Пр. используется в игре: JS Для какой платформы: Android Сроки разработки: 1 сентября 2015 - ... Состав имеющейся команды: Я
Прошу протестировать на ваших Android устройствах : LowPoly (RGhost)
Сообщение отредактировал SkorpyX - Вторник, 24 Ноября 2015, 20:17 |
|
| |
SkorpyX | Дата: Суббота, 14 Ноября 2015, 15:55 | Сообщение # 62 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Цитата Artem93region ( ) пробовал тоже их убирать, тогда аж 6 ошибок появляется TriggerPapers - это название вашего префаба, должно быть :
Код gs.GetComponent.<TriggerForDestroy>()._visable == true;
|
|
| |
SkorpyX | Дата: Суббота, 14 Ноября 2015, 15:45 | Сообщение # 63 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Цитата Artem93region ( ) gs.GetComponent.<"TriggerPapers">()._visable == true) Кавычки лишние
Сообщение отредактировал SkorpyX - Суббота, 14 Ноября 2015, 15:47 |
|
| |
SkorpyX | Дата: Суббота, 14 Ноября 2015, 13:57 | Сообщение # 64 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Artem93region, во-первых, в вашем скрипте gos это массив GameObjectов, там вы обращаетесь напрямую к массиву, а нужно перебирать его в цикле. Во-вторых _visable - это переменная вашего скрипта, а не GameObjectа, следовательно нужно обращаться к скрипту через GetComponent. Пример на js :
Код var gos : GameObject[] = GameObject.FindGameObjectsWithTag("TriggerPapers");
for (gs in gos) { if (gs.GetComponent.<TriggerForDestroy>()._visable == true) { Debug.Log("visable == true"); } }
Сообщение отредактировал SkorpyX - Суббота, 14 Ноября 2015, 13:57 |
|
| |
SkorpyX | Дата: Пятница, 13 Ноября 2015, 23:35 | Сообщение # 65 | Тема: Cry engine важный вопрос) |
участник
Сейчас нет на сайте
| Цитата Vip4ell ( ) знаю что в Юнити3 шутеры с большим скоплением игроков нуждаются в очень большой скорости интернета Чем больше человек, тем больше нужна скрость интернета, это же естесственно, и это не проблема отдельного движка. Несколько лет назад играл я как то на юсб модеме с очень маленькой скоростью, и из всех игр по сети, которые были у меня тогда (Crysis, Warface, CS), с моей скоростью нормально работала только Critical Strike, которая сделана на Unity. Так что это вопрос оптимизации.
Цитата Vip4ell ( ) И ещё реально ли на нем соорудить игровую локацию скажем 30 на 30 км чтоб она запустилась на средних конфигурациях пк? Да, если локация - это плоскость 30км на 30км с одной текстурой. Чем больше детализованность локации, тем больше требуется ресурсов.
Сообщение отредактировал SkorpyX - Пятница, 13 Ноября 2015, 23:36 |
|
| |
SkorpyX | Дата: Пятница, 13 Ноября 2015, 23:20 | Сообщение # 66 | Тема: Создание гуманоидной анимации средствами Unity |
участник
Сейчас нет на сайте
| Цитата Feareles ( ) возникла идея. А нельзя ли для этого использовать blend tree. Допустим есть анимация извлечения оружия и есть state, в котором вызывается этот метод и всё это пихнуть в blend tree "Из-за таких идей ты и лишился жемчужины". Насколько я знаю, blend tree вообще для другого, для смешивания нескольких анимаций. В состояние можно добавить скрипт любой, но он будет каждый кадр вызываться. Легче всего сделать то, что вам нужно - это добавить метод в настройках импорта анимации.Добавлено (13 ноября 2015, 23:20) ---------------------------------------------
|
|
| |
SkorpyX | Дата: Пятница, 13 Ноября 2015, 22:33 | Сообщение # 67 | Тема: Создание гуманоидной анимации средствами Unity |
участник
Сейчас нет на сайте
| Цитата Feareles ( ) Мне надо чтоб я мог создавать анимацию непосредственно в юнити. Создаёте скелет своей 3D модели в 3D Max или Blender и делаете анимацию.
Цитата Feareles ( ) Просто мне надо будет посреди анимации вызвать метод, который переназначит меч из ножен в руку персонажу. Это можно сделать в настройках импорта анимации.
Добавлено (13 ноября 2015, 22:33) ---------------------------------------------
Цитата SkorpyX ( ) Создаёте скелет своей 3D модели и делаете анимацию. Но лучше использовать для этого сторонний софт, например Blender. Он имеет больше возможностей в этом плане. Например, поддерживает инверсную кинематику.
Сообщение отредактировал SkorpyX - Пятница, 13 Ноября 2015, 22:36 |
|
| |
SkorpyX | Дата: Пятница, 13 Ноября 2015, 22:23 | Сообщение # 68 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Artem93region, данный скрипт вешается на нужный UI элемент. Вы забыли про подключение интерфейсов, четвёртая строчка должна выглядеть так :
Код public class MYCLASSNAME : MonoBehaviour, IPointerDownHandler, IPointerUpHandler {
Цитата Artem93region ( ) И если с этим методом ни чего не выйдет то тогда такой вопрос: как уничтожить триггер в котором я нахожусь из другого скрипта, например в новом UI я сделал кнопку со своим скриптом и у меня на сцене несколько одинаковых тригеров с одинаковыми в них обьектами и мне надо сделать так, что бы я мог убирать только те в которых я нахожусь? Можно добавить скрипт на триггер, в котором будет массив коллайдеров в триггере, и проверять принадлежит ли игрок массиву, или создать boolean переменную. Рассмотрим подробнее второй вариант:
1) Присваиваете тэг префабу игрока "Player", создаёте скрипт, который вешаете на триггер. В нём создаёте boolean переменную. В OnTriggerEnter проверяете если тэг коллайдера равен "Player", то присваеваете bool = true. Аналогично в OnTriggerExit проверяете и присваиваете bool = false. 2) Присваиваете префабу триггера свой тэг, например "Trigger". В скрипте кнопки в OnPointerDown ищете все объекты с данным тэгом, через GetComponent ищете скрипт триггера и проверяете bool переменную, если она true, то удаляете префаб
Сообщение отредактировал SkorpyX - Пятница, 13 Ноября 2015, 22:23 |
|
| |
SkorpyX | Дата: Пятница, 13 Ноября 2015, 20:23 | Сообщение # 69 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Цитата Artem93region ( ) а и из image (тот что из UI) не вставляется и в справке разобраться не могу Сам с этим долго разбирался, вот пример кода js :
Код #pragma strict
import UnityEngine.UI; import UnityEngine.EventSystems;
class Название_Вашего_Скрипта extends MonoBehaviour implements IPointerDownHandler, IPointerUpHandler {
function Start () { } function OnPointerDown (data : PointerEventData) { } function Update () { } function OnPointerUp (data : PointerEventData) { }
}
В implements подставляете нужные вам интерфейсы, вот список : EventSystems.IPointerDownHandler
|
|
| |
SkorpyX | Дата: Вторник, 10 Ноября 2015, 15:10 | Сообщение # 70 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| Цитата Artem93region ( ) как реализовать проверку видит ли камера тот или иной объект или нет Первая ссылка (или третья) : Unity
|
|
| |
SkorpyX | Дата: Воскресенье, 08 Ноября 2015, 11:16 | Сообщение # 71 | Тема: Поблема с Ragdoll |
участник
Сейчас нет на сайте
| Vasiliy_Ivanovich, можно ещё сделать труп отдельным префабом
|
|
| |
SkorpyX | Дата: Суббота, 07 Ноября 2015, 17:52 | Сообщение # 72 | Тема: Проблема с Unity |
участник
Сейчас нет на сайте
| dzrone3488, мой скрипт подразумевает, что целью может быть не только игрок, но и любой объект с Rigidbody и амплитудой скорости больше detectionTreshold, что и показано на видео
Сообщение отредактировал SkorpyX - Суббота, 07 Ноября 2015, 20:33 |
|
| |
SkorpyX | Дата: Среда, 04 Ноября 2015, 00:09 | Сообщение # 73 | Тема: Проблема с Unity |
участник
Сейчас нет на сайте
| KamiRonin, спасибо за ответ! Мне начинает казаться, что это баг Unity. Я проводил тест с Debug.Log, в ходе которого выясил, что сначала идёт событие старта, а потом триггера, но когда задействуется аниматор, то происходит такая штука: Как правильно:
Код Start { animator.SetTrigger("Sleep"); }
OnTriggerEnter { animator.SetTrigger("Run"); }
Как происходит: Start { OnTriggerEnter { animator.SetTrigger("Run"); }
animator.SetTrigger("Sleep"); }
Получается, что событие триггера происходит как бы в середине события старта, такое вообще возможно?
Добавлено (04 ноября 2015, 00:03) --------------------------------------------- В старте ведь я присваивал Sleep, а во время входа в триггер выводит Idle. Возможно я понял в чём дело...
Добавлено (04 ноября 2015, 00:08) --------------------------------------------- Действительно! Если я правильно понял, то она возникает из за того, что OnTriggerEnter вызывается во время перехода между Idle и Sleep, который длится 0.1 секунду.
Добавлено (04 ноября 2015, 00:09) --------------------------------------------- Так и есть, решением оказалось присвоение Sleep статуса начального состояния (до этого был Idle).
|
|
| |
SkorpyX | Дата: Вторник, 03 Ноября 2015, 23:18 | Сообщение # 74 | Тема: Проблема с Unity |
участник
Сейчас нет на сайте
| Здравствуйте! Я написал ИИ для зомби, который вроде бы работает, но есть одна ошибка в коде, которую я не могу найти и исправить. Есть префаб зомби, у которого есть триггер, при входе в который, состояние зомби меняется на активное, а состояние mechanim меняется на "Run", если игрок появляется вне триггера, то всё работает нормально, но если игра начинается тогда, когда игрок уже находится в триггере, то анимации назначаются неправильно (вместо анимации бега проигрывается анимация сна, скорее всего я напутал с присвоением триггеров). Пожалуйста, помогите мне, я переписал код полностью несколько раз, но ошибка осталась. Прилагаю сам js код, скриншот mechanim и видео ошибки:
Код #pragma strict
enum ZombieState { Active, Inactive }; var state : ZombieState = ZombieState.Inactive;
@Header("Настройки зомби") var hp : float = 100; var zombieDeadPrefab : GameObject; @Space(8) var armLength : float = 1.5; var radius : float = 16; var detectionTreshold : float = 1; var maxInterest : float = 15;
// Локальные переменные private var target : Transform; private var interest : float;
private var agent : NavMeshAgent; private var animator : Animator; private var head : Transform;
private var canAttack : boolean = true;
function Start () { // Базовая настройка agent = GetComponent.<NavMeshAgent>(); animator = GetComponent.<Animator>(); head = transform.Find("Armature/Spin/Head"); animator.SetInteger("Run ID", Random.Range(0, 2)); animator.SetTrigger("Sleep"); }
function Update () { StateMachine(); if ((Input.GetKeyDown("e")) || (MobileInput.GetButtonDown("Jump"))) Die(); }
function StateMachine () { switch (state) { case ZombieState.Active : ActiveState(); break; case ZombieState.Inactive : InactiveState(); break; } }
function ActiveState () { if (Vector3.Distance(transform.position, target.position) > radius) { GoToSleep(); return; } switch (target.tag) { case "Player" : RunToTarget(); AttackTarget(); break; default : if (interest <= 0) { GoToSleep(); return; } interest -= Time.deltaTime; RunToTarget(); break; } }
function InactiveState () { }
function GoToSleep () { target = null; interest = 0; agent.ResetPath(); animator.SetTrigger("Sleep"); state = ZombieState.Inactive; }
function SetTarget (tg : Transform) { target = tg; if (state != ZombieState.Active) animator.SetTrigger("Run"); state = ZombieState.Active; }
function RunToTarget () { agent.SetDestination(target.position); animator.SetFloat("Blend", agent.velocity.magnitude / agent.speed); }
function AttackTarget () { if ((Vector3.Distance(transform.position, target.position) <= armLength) && (canAttack)) { animator.SetInteger("Attack ID", Random.Range(0, 3)); animator.SetTrigger("Attack"); canAttack = false; } }
function SetCanAttack () { canAttack = true; }
function Hit () { if (target == null) return; }
function Die () { var dead : ZombieDead = Instantiate(zombieDeadPrefab, transform.position, transform.rotation).GetComponent.<ZombieDead>(); dead.zombie = transform; dead.zombieMaterial = GetComponentInChildren.<SkinnedMeshRenderer>().sharedMaterial; dead.zombieVelocity = agent.velocity; dead.SetupMyself(); Destroy(gameObject); }
function OnTriggerEnter (other : Collider) { if ((state == ZombieState.Active) && (target.tag == "Player")) return; if (other.tag == "Player") { SetTarget(other.transform); return; } if (other.attachedRigidbody == null) return; if (other.attachedRigidbody.velocity.magnitude < detectionTreshold) return; if (target == null) { SetTarget(other.transform); interest = maxInterest; } if (other.attachedRigidbody.velocity.magnitude < target.GetComponent.<Rigidbody>().velocity.magnitude) return; SetTarget(other.transform); interest = maxInterest; }
Видео в процессе загрузки...
Добавлено (03 ноября 2015, 23:18) --------------------------------------------- Добавил видео (модель зомби не украдена с Unturned :D):
Сообщение отредактировал SkorpyX - Вторник, 03 Ноября 2015, 23:25 |
|
| |
SkorpyX | Дата: Пятница, 30 Октября 2015, 17:41 | Сообщение # 75 | Тема: Аниматор |
участник
Сейчас нет на сайте
| Цитата Valik_Fenko ( ) Проблема заключается в том что эта самая анимация вопроизводится на сцене только один раз Зациклите анимацию в настройках импорта
Сообщение отредактировал SkorpyX - Пятница, 30 Октября 2015, 17:41 |
|
| |
SkorpyX | Дата: Вторник, 13 Октября 2015, 14:32 | Сообщение # 76 | Тема: Базы для email и смс рассылок |
участник
Сейчас нет на сайте
| shOrtle, теперь знаю кого благодарить за спам в смс
|
|
| |
SkorpyX | Дата: Среда, 30 Сентября 2015, 22:25 | Сообщение # 77 | Тема: Продаю тайлы 32x32 (продано) |
участник
Сейчас нет на сайте
| Написал в личку.
|
|
| |
SkorpyX | Дата: Среда, 16 Сентября 2015, 19:24 | Сообщение # 78 | Тема: Вопрос-[ответ] по Unity |
участник
Сейчас нет на сайте
| andarky, а путь для jdk указали?
|
|
| |
SkorpyX | Дата: Среда, 09 Сентября 2015, 17:01 | Сообщение # 79 | Тема: Mobile Multitouch Controller + Car and FPS demo (Unity) |
участник
Сейчас нет на сайте
| Mobile Multitouch Controller - это отличное кроссплатформенное решение для ваших Unity игр. Контроллер поддерживает следующие типы ввода: тачпад, джойстик и кнопка. Всё кастомизируется и вы можете легко расширить возможности контроллера. Все скрипты написаны на JS. Ассет включает в себя справки на русском и английском языках, дополнительные 18 видов джойстиков и кнопок а также демо уровень. MobileMultitouchController (15$)
По всем вопросам можете обращаться в ЛС
Скриншоты:
Добавлено (31 августа 2015, 02:07) --------------------------------------------- Скоро версия 1.1! Что нового? - Добавлено демо с машинкой - Улучшен джойстик - Исправлены недочёты Car Demo (Youtube)
Добавлено (09 сентября 2015, 17:01) --------------------------------------------- Вышла новая версия с машинкой Mobile Multitouch Controller v1.1!
Сообщение отредактировал SkorpyX - Понедельник, 05 Октября 2015, 20:19 |
|
| |
SkorpyX | Дата: Четверг, 03 Сентября 2015, 17:52 | Сообщение # 80 | Тема: Planar reflection Unity5. |
участник
Сейчас нет на сайте
| JessyStorm, может matcap? В asset store есть бесплатный matcap шейдер Asset Store
|
|
| |
|