Сохранен 1049
https://2ch.hk/gd/res/427717.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Unity Thread

 Аноним 02/08/17 Срд 18:45:13 #1 №427717 
unity.jpg
Добро пожаловать в тред Unity - лучшего 3D и 2D игрового движка современности!

Прошлый тред: https://2ch.hk/gd/res/401747.html

Официальный сайт: https://unity3d.com/ru
Документация: https://docs.unity3d.com/ru/current/Manual/index.html
Уроки: https://unity3d.com/ru/learn/tutorials
Форум: https://forum.unity3d.com/
Магазин ассетов: https://unity3d.com/ru/asset-store
UnityWiki: http://wiki.unity3d.com/index.php/Main_Page

На Unity сделано много замечательных игр - Rust, Блицкриг 3, Pillars of Eternity, Tyranny, Kerbal Space Program и многие другие. Главным преимуществом Unity перед другими движками является его простота для одиночной разработки. Не нужно иметь целую компанию девелоперов, чтобы сделать хорошую игру. Если ты один или имеешь небольшую команду и хочешь сделать хорошую игру без претензий на ААА, то Unity станет лучшим выбором. Тем не менее, даже крупные корпорации зачастую выбирают для своих игр именно Unity.

FAQ

- Какие у Unity сильные стороны?
- Простота разработки, удобный инструментарий, кроссплатформенность, богатая документация, огромное сообщество.

- Какие у Unity слабые стороны?
- Сложность в создании фотореалистичной графики. Для графики "как в Crysis" рекомендуется взять другой движок. Хотя Unity вполне способен выдавать не уступающую любым другим движкам картинку, это требует определённого навыка от разработчика.

- На каких языках я могу писать скрипты для Unity?
- На выбор два языка - C# и UnityScript. UnityScript - это что-то среднее между JavaScript и ActionScript. Выбирай язык по своему вкусу, они оба вполне удобны, но помни, что большинство примеров написано на C#.

- Для каких жанров подходит Unity?
- Для абсолютно любых! Жанр ограничивается лишь фантазией разработчика (и его умением писать скрипты, разумеется). Можно создавать и РПГ, и стратегии, и слэшеры. Можно делать VR-проекты или Minecraft-подобные песочницы.

- На каких платформах работают созданные с помощью Unity игры?
- Windows, Linux, MacOS, SteamOS, Android, iOS, Windows Phone, PlayStation4, Xbox One, WebGL, Oculus Rift и многие другие. Полный список можно найти на официальном сайте. Таким образом, игры Unity работают на десктопах, на смартфонах, планшетах, приставках, в браузерах, VR-очках и некоторых других системах.

- Часто вижу скриншоты с красивой природой на Unity. Как такое создать?
- Очень просто! В Unity встроены удобные инструменты для создания террейна и SpeedTree для создания деревьев и готовая реализация ветра - не нужно ничего писать или скачивать и подключать плагины - ландшафт в Unity создаётся в пару кликов.

- Что такое стартер киты?
- Starter Kit - это набор скриптов и префабов, а зачастую и графических элементов для игры. Они призваны облегчить разработку игры определённого жанра и как правило разбиты по жанрам (Action-RPG Starter Kit, RTS Starter Kit, 3D Shooter Starter Kit, Space Game Starter Kit, VR Starter Kit и так далее). Также бывают стартер киты различных игровых элементов, не связанных с геймплеем (Nature Starter Kit с дополнительными природными объектами, Medieval Starter Kit со средневековыми объектами и так далее). По сути, стартер киты выполняют в разработке игры ту же роль, что и фреймворки в программировании. Однако стоит отметить, что использование геймплейного стартер кита принуждает разработчика изучать большое количество чужого кода и чужой структуры для внесения своих изменений и полноценного использования. В связи с этим большинство разработчиков предпочитает писать почти всё с нуля, получая полное понимание работы своей игры. Новичкам крайне не рекомендуется начинать знакомство с Unity со стартер китов.

- Что нужно уметь делать для создания полноценной игры, кроме Unity-разработки?
- Кроме непосредственной разработки игры на Unity, требуется также уметь создавать 3D модели (3ds Max, Blender, ZBrush), 2D рисунки (GraphicsGale, Aseprite, Piskel), текстуры (Substance Designer, NeoTextureEdit), музыку (FruityLoops, Ableton). Не обязательно учить это всё - например, в 2D играх не нужны 3D модели, а музыка необходима далеко не всегда. Также вы можете скачивать элементы для ваших игр на бесплатных сайтах. Если у вас есть деньги, то все необходимые элементы можно заказать у фрилансеров на https://www.fl.ru/ (русскоязычный) или https://www.upwork.com/ (англоязычный).

- Бесплатен ли Unity?
- Можно свободно скачивать, использовать и продавать готовые игры на Unity с лицензией Personal - это абсолютно бесплатно! Но на бесплатной версии при запуске игры будет появляться короткий стартовый ролик "Made with Unity", а также ваши доходы ограничены 100 000 долларов в год. Для снятия этих ограничений нужно приобретать платные версии лицензий Unity. В конечном итоге, платные варианты используются лишь крупными компаниями с огромными доходами, тогда как обычные разработчики в большинстве своём используют бесплатную Personal лицензию.

Обучение

- Язык
Итак, с чего же начать изучение этого замечательного движка? Прежде всего, с изучения языка. Самые основы C# можно узнать на интерактивных курсах здесь:
https://dotnetcademy.net/CSharp/Beginner
или в текстовом туториале здесь:
https://www.tutorialspoint.com/csharp/csharp_quick_guide.htm
Для изучения основ UnityScript выучи вначале основы JavaScript:
https://learn.javascript.ru/
Помни, что далеко не все элементы JS есть в US. Чтобы понять, в чём разница между этими двумя языками, прочти эту статью:
http://wiki.unity3d.com/index.php/UnityScript_versus_JavaScript
Помни, что тебе достаточно одного языка из двух и учить их оба одновременно не нужно.

- Движок
Если ты уже умеешь использовать язык, то можно приступать непосредственно к изучению движка. Крайне рекомендется купить/скачать книгу Unity in action (Unity в действии). В ней подробно описываются множество возможностей движка.
http://www.ozon.ru/context/detail/id/34792570/
Также посмотри на видеотуториалы с официального сайта:
https://unity3d.com/learn/tutorials
Если же ты не любишь видеотуториалы (или не понимаешь разговорный английский) и предпочитаешь текст, то посмотри здесь:
http://catlikecoding.com/unity/tutorials/
Тут крайне подробно описан процесс разработки и приведены примеры кода. Эти туториалы универсальны и описывают множество различных частей игры, от работы с текстурами до генерации карты мира. А вот в этом туториале описыватся разработка двухмерной игры с видом сверху:
https://www.raywenderlich.com/61532/unity-2d-tutorial-getting-started
Это будет полезно, даже если ты планируешь разрабатывать трёхмерную игру. Ни в коем случае нельзя обойти вниманием этот сборник туториалов:
https://noobtuts.com/unity
В нём подробно описывается процесс пошагового создания разных игр - двухмерных и трёхмерных.

Разумеется, все эти туториалы охватывают лишь часть возможностей Unity. Самый надёжный способ выучить Unity - это начать делать игру и по мере разработки гуглить непонятные моменты.

Шапка: http://www.writeurl.com/publish/zukmrogwv45ptyuseyol

Аноним 02/08/17 Срд 19:00:17 #2 №427739 
Всем привет от Серёги!
Аноним 02/08/17 Срд 19:47:25 #3 №427791 
Тут что так мертво или юнити девелоперы вымерли?
Аноним 02/08/17 Срд 19:49:41 #4 №427792 
Реквестирую подробные, и чем подробнее тем лучше, манулы по сишарп скриптам по тематике трансформ, методы подметоды итд. Кватерионы, тригонометрия, интересности
Аноним 02/08/17 Срд 20:06:47 #5 №427797 
>>427422
Кстати, я об этом не подумал, придётся таки рейкастами делать, похоже. Спасибо, анон.
Аноним 02/08/17 Срд 20:10:51 #6 №427800 
>>427797
> придётся таки рейкастами делать, похоже
Там и делать нефиг.

GameObject[] objects;
public GameObject closestObject;

void Start () {
objects = GameObject.FindGameObjectsWithTag ("Object");
}

void Update () {
RaysMode (objects);
}

void RaysMode (GameObject[] objs) {
closestObject = null;
float minDist = Mathf.Infinity;
foreach (GameObject obj in objs) {
RaycastHit hit;
Ray ray = new Ray (transform.position, obj.transform.position - transform.position);
if (Physics.Raycast (ray, out hit))
if (hit.transform.tag == "Object" && hit.distance < minDist) {
closestObject = obj;
minDist = hit.distance;
}
}
}
Аноним 02/08/17 Срд 20:20:19 #7 №427806 
2beaverCastorcanadensis.jpg
Насколько разумно создавать гейм менеджер и другие подобные вещи, как синглтоны, вызывая конструктор в get {}? Он не будет сидеть на пустом объекте (в мире), а просто как скрипт. Можно будет гарантировать порядок создания критически важных объектов.

Как в таком случае удобнее загрузить в него префабы, через Resources.Load?
Аноним 02/08/17 Срд 20:21:59 #8 №427808 
Искусственный интелект с пакетом RAIN

Годнiта чi нi?
Аноним 02/08/17 Срд 20:24:07 #9 №427811 
>>427792
Что тебе там не понятно?
Аноним 02/08/17 Срд 20:30:44 #10 №427813 
>>427791
Это тебе не засмеялся-обосрался тред, чтоб по 20 постов в минуту набивать.
Аноним 02/08/17 Срд 20:35:42 #11 №427814 
Анончи,есть одна анимация котика.Как её запустить ровно после пяти секунд после начала сцены?
Аноним 02/08/17 Срд 20:36:00 #12 №427815 
Анончи,есть одна анимация котика.Как её запустить ровно после пяти секунд после начала сцены?
Аноним 02/08/17 Срд 20:43:37 #13 №427817 
>>427815
Coroutine с yield return WaitForSeconds
После чего там же запускаешь анимацию

Или Invoke("zapuskaemKotika", 5)
Аноним 02/08/17 Срд 20:51:14 #14 №427820 
>>427792
https://www.youtube.com/watch?v=ZbHRl7jzEww
Аноним 02/08/17 Срд 21:02:52 #15 №427823 
>>427800
А почему такие операции обычно записывают в отдельные функции, а не просто кидают в Update?
Аноним 02/08/17 Срд 21:05:04 #16 №427824 
>>427823
Можешь и просто в апдейт. Просто мне так привычнее, не люблю когда в апдейте насрано (а в больших скриптах обычно так и получается), так что я методы инкапсулирую, по итогу в апдейте строк 5-8 и все они по разным методам лежат.
Короче, мне так чисто для восприятия легче.
Если хочешь — пихай в апдейт, суть не поменяется.
Аноним 02/08/17 Срд 21:40:47 #17 №427833 
Girls.png
>>427824
> методы инкапсулирую
Аноним 02/08/17 Срд 21:41:59 #18 №427834 
>>427833
Пардон, какой в шараге сленг был, такой в памяти и остался. Мы академиев не кончали.
Аноним 02/08/17 Срд 21:47:29 #19 №427838 
>>427817
Анончик,слушай,я вообще не прогромист.Может ты напишешь этот скриптик для меня,плиз?
Аноним 02/08/17 Срд 21:48:33 #20 №427839 
>>427838
Если ты не погромист и даже это не понимаешь, то нахера тебе это вообще нужно? Только чтобы анимация котика была?
Аноним 02/08/17 Срд 21:51:02 #21 №427842 
>>427839
Именно,только чтобы анимация была.Так ты поможешь?
Аноним 02/08/17 Срд 21:52:55 #22 №427844 
>>427842
Тут одним кодом не поможешь. Тут надо пояснить как аниматор создать, как на объект перенести, как в него анимацию передать (если она вообще есть), как туда передать состояние и т.д.
Короче, волшебного кода, который можно просто скопипастить, не получится.
Аноним 02/08/17 Срд 21:56:53 #23 №427847 
>>427844
>Тут надо пояснить как аниматор создать, как на объект перенести, как в него анимацию передать (если она вообще есть), как туда передать состояние и т.д.
Вообще то,уже это знаю и всё готово.Говорю же,нужно сделать сделать запуск после 5 секунд после начала сцены.
Аноним 02/08/17 Срд 21:58:37 #24 №427848 
>>427847
Окей. И как называется переменная для перехода из состояния "котяра статичен" в состояние "котяра анимирован"?
Аноним 02/08/17 Срд 22:05:04 #25 №427850 
>>427848
Я,конечно,не погромист,но переменные вроде как угодно можно называть.Так что пусть будит "KotikObormotik".
Аноним 02/08/17 Срд 22:06:13 #26 №427851 
>>427850
> но переменные вроде как угодно можно называть
Можно, ага. Только они должны совпадать с теми, что в аниматоре.
Аноним 02/08/17 Срд 22:08:27 #27 №427853 
Безымянный.jpg
Суп, анон. Щитаю, что нахожусь в скилл-брекете между аппер-интермедиэйт и адвансед, но к сожалению совсем не знаю шейдоры. Чтобы исправить это досадное положение, а поставил себе цель запилить редактор шейдеров не уступающий в качестве знаменитому ShaderForge за 2 недели. И сделать его опенсурсным, конечно. Чтобы взорвать пуканы авторов этого ассета. И разработчиков юнити, конечно. Отношение которых к добавлению важных новых функций в движок характеризуется фразой "пчелы против меда": зачем добавлять бесплатную функцию, если можно получать стабильно шекели из ассет стора? Давайте лучше переделаем пост-эффекты и сделаем новое окошко, в котором можно редактировать анимации! ynuti 2017! революция!

На скрине прогресс за сегодня
Аноним 02/08/17 Срд 22:09:56 #28 №427854 
blob
>>427851
Ты про эти?
Аноним 02/08/17 Срд 22:10:56 #29 №427855 
>>427854
Не совсем. По Cat_contrl дважды кликни и покажи что откроется.
Аноним 02/08/17 Срд 22:13:41 #30 №427857 
blob
>>427855
Это?
Аноним 02/08/17 Срд 22:14:36 #31 №427859 
>>427857
Уже лучше. Если просто запускаешь сцену - котяра анимируется? К нему вообще хоть какой-то скрипт привязан?
Аноним 02/08/17 Срд 22:16:22 #32 №427860 
>>427859
Анимируется,один раз проходит анимация сразу после запуска сцены.Никаких скриптов.
Аноним 02/08/17 Срд 22:20:02 #33 №427862 
>>427860
> один раз проходит анимация
А надо чтоб было постоянно?
Если да, то жмаки по файлу анимации и в инспекторе поставь галочку на Loop Time. А потом уже и скрипт добавишь.
Аноним 02/08/17 Срд 22:21:53 #34 №427863 
>>427862
Нинад чтобы постоянно.Только разок после 5 секунд после запуска сцены.
Аноним 02/08/17 Срд 22:30:20 #35 №427868 
15017009964580.png
>>427863
Лезть в переменные аниматора будет явно надолго, так что давай велосипедить.
1. Если сцена запущена — останови.
2. Сними галочку с аниматора (ту что на пикрилейтеде).
3. Создай C# скрипт, назови его CatAnimation.
4. Открой его в редакторе, удали там вообще всё, до последнего символа. И копипасти туда вот это

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CatAnimation : MonoBehaviour {

Animator animator;

void Start () {
animator = GetComponent<Animator> ();
Invoke ("Animate", 5f);
}

void Animate () {
animator.enabled = true;
}
}

5. Перетяни этот скрипт в инспекторе на тот объект, на котором висит аниматор (скорее всего это и есть твой кошак).

Если всё сделаешь правильно, то заработает.
Аноним 02/08/17 Срд 22:34:16 #36 №427878 
image.jpg
Закатился в тред начинающий, но уже имеющий один проект, разработчик. Собрал значит я свою казуальную кликалку на андроид и встал вопрос о компиляции под гейфоны. Уже несколько месяцев пытаюсь накатить виртуалки, хакинтоши, найти способы компиляции под шиндовс, но пока нашёл только один ассет по цене в 100 Бачей. Подскажите может кто находил хороший способ сборки под эпл без мака. Алсо игра висит в гугл плее, но поиграть я в неё могу только с телефона друзей, а хочется на своём родном айфоне позалипать, ибо писал под себя.

Аноним 02/08/17 Срд 22:49:00 #37 №427891 
GOAP анон, ты всё ещё здесь?
Как ты с подобной реализацией навигации для действий реализуешь прохождение через двери требующие открывания?
Аноним 02/08/17 Срд 22:54:40 #38 №427895 
14650205754350.jpg
Сука блять, какого хуя билд абсолютно пустой сцены весит 35 метров? Это, блять, дефолтный сплэшскрин столько жрёт что ли?
Аноним 02/08/17 Срд 22:57:24 #39 №427896 
bandicam-2017-08-02-22-46-40-093.gif
>>427868
Спасибо,анончик.Всё работает как надо.Люблю тебя:3
Аноним 02/08/17 Срд 22:58:37 #40 №427897 
>>427896
Да на здоровье.
А вообще ты какой-то странный. Накатывать юньку только чтобы заанимировать котика — это даже не микроскопом гвозди забивать, это уровнем повыше.
Аноним 02/08/17 Срд 23:02:26 #41 №427899 
>>427897
Мне просто нравиться сцены из ассетиков собирать.А котика я в блендере анимировал.
Аноним 02/08/17 Срд 23:05:25 #42 №427900 
>>427891
GOAP неприменим к играм. Не трать время на ерунду и используй behavior tree
Аноним 02/08/17 Срд 23:10:05 #43 №427903 
>>427824
Спасибо за разъяснения все.
Аноним 02/08/17 Срд 23:46:11 #44 №427952 
>>427800
Это у мобов такое? От этого пекарня не сгорит случайно? Я бы в coroutine, а не в апдейт запихал, на крайняк.
Аноним 02/08/17 Срд 23:47:08 #45 №427953 
>>427952
>От этого пекарня не сгорит случайно?
Как там в 97м?
Аноним 03/08/17 Чтв 00:05:01 #46 №428008 
>>427952
Поехал что ли? Там нагрузки хуй да нихуя.
Аноним 03/08/17 Чтв 00:12:16 #47 №428024 
>>428008
А на мобилках тоже лагать не будет?
Аноним 03/08/17 Чтв 00:39:13 #48 №428061 
>>428024
Ну если у тебя там будет под две сотни мобов на одной сцене, то может и будет.
Аноним 03/08/17 Чтв 01:05:37 #49 №428105 
Почему Character Controller с Rigidbody с гравитацией может проваливаться сквозь пол? Пол - платформа с коллайдером, без Rigidbody. Второго коллайдера на плеере нет.
Аноним 03/08/17 Чтв 04:03:13 #50 №428211 
>>427800
Как сделать это в 2D?
Аноним 03/08/17 Чтв 06:35:47 #51 №428221 
>>428211
Сам догадался уже. Но вот возник более жоский вопрос. Всю ночь гуглил, не смог сделать нормально, рофл.
Как замутить передвижение персонажа в 2D игре с видом сверху, не используя rb?
Пробовал разные варианты через RigidBody2D, но все они очень сильно сказываются на производительности, хотя я мей би ошибку делаю, на всякий случай вот код с использованием rb, если его можно оптимизировать до нужного уровня, то и так сойдет:

using System.Collections;

using UnityEngine;

public class CharacterController2D : MonoBehaviour {
public float speed = 7f;
private Rigidbody2D rb;

void Start () {

rb = GetComponent<Rigidbody2D>();
}

void Update () {


float deltaX = Input.GetAxis("Horizontal");
float deltaY = Input.GetAxis("Vertical");


Vector2 movementXY = new Vector2 (deltaX, deltaY);
movementXY = Vector2.ClampMagnitude(movementXY, speed);
movementXY = speed;
movementXY
= Time.deltaTime;
rb.MovePosition (rb.position + movementXY);

}
}

Аноним 03/08/17 Чтв 06:37:35 #52 №428222 
>>428221
>\t
)))))

using System.Collections;
using UnityEngine;

public class CharacterController2D : MonoBehaviour {
public float speed = 7f;
private Rigidbody2D rb;

void Start () {

rb = GetComponent<Rigidbody2D>();

}

void Update () {

float deltaX = Input.GetAxis("Horizontal");
float deltaY = Input.GetAxis("Vertical");

Vector2 movementXY = new Vector2 (deltaX, deltaY);
movementXY = Vector2.ClampMagnitude(movementXY, speed);
movementXY = speed;
tmovementXY = Time.deltaTime;
rb.MovePosition (rb.position + movementXY);
}
}


Аноним 03/08/17 Чтв 06:45:11 #53 №428223 
AlDLaKV2Wik - копия.jpg
>>428222
да ёбаный в рот, ебучая разметка
Надо было сразу так сделать.
Аноним 03/08/17 Чтв 08:20:39 #54 №428229 
>>427710
>Теперь понял, это примерно как мой второй вариант. Меня в этом варианте смущает сложность контроля за перемещением, ведь после начала движения уже никакое действие не контролирует процесс, прерывания и достижение результата это опосредовано делается в прекондишене занятия ковра
как ты делаешь то. у тебя чтоли каждый тик ИИ не пытается выполнить текущее действие? только выполняет готовый план? на каждом тике при попытке исполнить действие же можно в разные ифы лезть.

>И придётся пердолиться с другими действиями, которые могут инициализировать движение: надо будет где то хранить приоритет действия задавшего движение или что то в это роде.
у тебя же только один текущий экшон. если экшон вообще требует перемещения то он и рулит. если ему рулить ненадо то ИИ делает что-то глобальное.

>>427808
да так себе он. хороший бихейвор три редактор, но плохая навигация.

>>427853
в одно рыло это не выглядит реальным и за 3-4 месяца. как сделать то планируешь?

>>427891
укатывался. я то часто в тред заглядываю, но реагируютолько если показывают что-то интересное.

>Как ты с подобной реализацией навигации для действий реализуешь прохождение через двери требующие открывания?
ну это ты загнул. пока никак. в моем навмеше пока что поломана сериализация для зон которые бы ссылались на конкретные объекты, как починю можно было бы и такое сделать. чтобы была возможность иметь зоны, на которые ссылался бы компонент, который бы переключал их доступность.
но тут это можно разве что если "попасть куда-то" является самим действием. например было бы действие "попасть в склад номер пять", у него было бы прекондицией открытие двери, тогда кнопка открывающая дверь бы генерировала внешнее действие открывающее путь только на этот склад. но если делать хитрожопое что-то например "сломать стену чтобы схватить за задницу сзади", то тут мне придется сильно глубоко лезть в навигацию чтобы такое сделать.
Аноним 03/08/17 Чтв 08:34:33 #55 №428233 
>>427853
вообще, вот интересное что-то пилишь. правда шейдеры лучше всетаки изучи хоть как-то. там столько мистической тайной хуйни что две недели можно их просто крутить туда-сюда чтобы хоть как-то разобраться.

я вот тоже что-то покажу из этой категории. делаю по человечески свой простенький генератор террейна, но чтобы у него был нодовый редактор который бы работал внутри маски биома.
интересно когда уже в юнити сделают сериализацию абстрактных коллекций. сериализовать ссылки на ресурсы юнити в нодах даже не знаю как.
Аноним 03/08/17 Чтв 08:35:08 #56 №428234 
Unity 2017-08-03 09-29-56-06.png
Unity 2017-08-03 09-30-20-94.png
>>428233
скриншоты забыл
Аноним 03/08/17 Чтв 09:02:44 #57 №428237 
>>428105
> Character Controller
> с Rigidbody
Ты либо крестик сними, либо трусы надень.
Что-то одно выбери, короче.
Аноним 03/08/17 Чтв 10:30:48 #58 №428261 
>>428229
>как ты делаешь то
Я использую reGOAP с парой мелких допилов.

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

>на каждом тике при попытке исполнить действие же можно в разные ифы лезть
И в каждом действии контролировать перемещение? Со временем охуеешь.

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

В общем подумаю ещё между выносом навигации и реактивным планером внутри действийвсё равно наверное буду пилить макропланер для сквадов
Аноним 03/08/17 Чтв 11:03:53 #59 №428268 
>>428221
> Как замутить передвижение персонажа в 2D игре с видом сверху, не используя rb?
Через трансформ, ебать.
Аноним 03/08/17 Чтв 11:43:14 #60 №428294 
>>428268
Через трансформ эффект хуёвый, если на препятствие пойти. Он каг бы не останавливается, а идёт туда и отбрасывается назад из-за коллайдера.
Аноним 03/08/17 Чтв 11:44:47 #61 №428296 
>>428294
Лэйтапдейт используй.
Аноним 03/08/17 Чтв 11:46:32 #62 №428301 
>>428237
Спасибо, уберу контроллер.


Алсо, я тут думаю сделать дамаги и прочие взаимодействия через интерфейсы и GetComponent. Например, интерфейс IDamageable {void TakeDamage(int amount)}, IPickable и т.п. Это кажется более гибким, чем наследовать все классы, которые делают какое-то взаимодействие, от одного.


ОнТриггер/ОнЧегоНибудь()
{
var health = (Idamageable)GetComponent(typeof(IDamageable));
if(health != null)
health.TakeDamage(amount);
}

Норм способ, или раковая задумка, и существуют более правоверные способы?
Аноним 03/08/17 Чтв 11:48:26 #63 №428305 
>>428301
> Спасибо, уберу контроллер.
Я бы убрал риджидбади, если тебе только и надо что ходить и взаимодействовать без особого физона, но то уже сам смотри.
Аноним 03/08/17 Чтв 13:19:37 #64 №428419 
>>428301
> и существуют более правоверные способы?
Других способов нет. Либо ты делаешь общий родительский класс под все, у чего есть здоровье, либо интерфейс. О, точно, мне же надо как-то ломать всякую мебель и прочее говно. Пойду прикручу к своей йобе.
Аноним 03/08/17 Чтв 13:26:56 #65 №428430 
>>428419
> Других способов нет. Либо ты делаешь общий родительский класс под все, у чего есть здоровье, либо интерфейс.
Ты сильно недооцениваешь местных повелителей костылей.
Аноним 03/08/17 Чтв 14:36:47 #66 №428517 
>>428430
Ну хуй знает, что еще. Проверять тег геймобджекта, и в функции на атакующем персонаже в List<> хранить значение здоровья?
Аноним 03/08/17 Чтв 14:43:58 #67 №428527 
>>428301
Правильно, но проще так: damagable = GetComponent<IDamagable>();
Аноним 03/08/17 Чтв 14:45:22 #68 №428531 
>>428305
Rigidbody надо чтобы физика была в курсе что эти коллайдеры динамические.
Аноним 03/08/17 Чтв 15:10:11 #69 №428590 
>>428301
ECS
C
S
Аноним 03/08/17 Чтв 17:01:15 #70 №428729 
У Юнити есть стандартизированные даты обновлений? Когда они будут выпускать 6.0?
Аноним 03/08/17 Чтв 17:05:17 #71 №428733 
>>428729
6.0 не будет. Вместо него 2017, который уже выпустили.
Аноним 03/08/17 Чтв 17:09:18 #72 №428740 
>>428733
А до этого была одна версия каждый год?
Аноним 03/08/17 Чтв 17:30:30 #73 №428753 
>>428740
Да, предыдущая 5-ая версия была собрана в 5-ом году от рождества Христова.
Аноним 03/08/17 Чтв 18:12:07 #74 №428774 
Безымянный.png
>>428233
Да я помню твои посты лол. Помню охуевал от твоих скиллов.
Теперь вот тоже хочу сделать что-нибудь эдакое. Ну про уровень shader forge я конечно-же пошутил. Это просто так, великая цель для мотивации.
Апдейт. Как оказалось, в юнити уже есть свой фреймворк для создания графов. И именно на нем сделан и редактор анимаций. Если кому интересно, то интро можно найти тут http://unity3de.blogspot.ru/2015/08/reveal-unknown-graph-and-graphgui-class.html. Остальное в дизассеблированных исходниках. Там ничего особенно, но можно сократить время на несколько дней.

Теперь в принципе осталось-только придумать как сгенерировать шейдоры из графа спиздить из shader forge. Пока думаю о чем-то вроде темплейтов
Аноним 03/08/17 Чтв 19:02:41 #75 №428810 
Сап, аноны.
Есть пустой gameObject, к которому прицеплен скрипт, вращающий этот самый gameObject с помощью gameObject.transform.Rotate().
У этого пустого объекта есть два child: сфера и text mesh.
Когда я вращаю родительский объект, то текст слегка убегает от сферы, примерно на пару градусов. Когда вращение останавливается, сфера снова догоняет текст.
Пробовал то же самое с кубом вместо текста, ведет себя точно так же.
Чому так?
Аноним 03/08/17 Чтв 19:15:55 #76 №428823 
>>428810
> Когда я вращаю родительский объект
Как вращаешь? Ручками на сцене? Через скрипт?
Ты давай подробнее, по твоему посту хер что поймёшь.
Аноним 03/08/17 Чтв 19:17:53 #77 №428824 
>>428823
>вращающий этот самый gameObject с помощью gameObject.transform.Rotate()
Аноним 03/08/17 Чтв 19:21:42 #78 №428827 
>>428824
А, да, пардон, только проснулся.
Всё равно тут надо знать в каких координатах текст и сфера находятся относительно пустого объекта, что там у тебя в ротейте и т.д.
Давай со скринами и/или видосом.
Аноним 03/08/17 Чтв 19:35:04 #79 №428838 
>>428827
В общем я неправильно описал проблему.
На сфере с помощью Vectrocity нарисована разметка трехмерными линиями. И эта разметка отстает при вращении сферы, дочерние объекты не при чем.
Аноним 03/08/17 Чтв 19:38:45 #80 №428839 
2017-08-0319-35-57.mp4
>>428810
>примерно на пару градусов

Запили шебм, мне даже интересно стало. Может это из-за Rigidbody?
Аноним 03/08/17 Чтв 19:45:33 #81 №428841 
>>428839
>>428838
Ошибся я, сорян. Это Vector Lines как-то с лагом рендерятся.
Аноним 03/08/17 Чтв 20:39:01 #82 №428861 
На собеседовании дали задание - создать UI на юнити.
Структура - главное меню, страница просмотра изображения, страница воспроизведения видео, etc.
Поясните, что они подразумевают под страницей?
Шарп хорошо знаю, но вот юнити пока не очень, UI пилил, но вот что за страницы, так и не понял.
Аноним 03/08/17 Чтв 20:44:33 #83 №428867 
>>428861
> Поясните, что они подразумевают под страницей?
Ну это тебе лучше знать, хрустальный шар тут у всех давно сломался.
А вообще весь UI в юньке есть изначально.
Аноним 03/08/17 Чтв 20:47:40 #84 №428872 
>>428867
Страница просмотра видео же, так у меня написано в задании, но вот что это за страница, и как она должна выглядить, я так и не понял.
Аноним 03/08/17 Чтв 20:49:43 #85 №428873 
>>428872
Ну, видимо, весь канвас, либо его часть. Юнька вполне способна напрямую хавать и рендерить видео.
Аноним 03/08/17 Чтв 20:54:05 #86 №428875 
>>428873
Т.е. это должен быть объект в пространстве, который будет воспроизводить видео?
Спасибо за помощь, анон.
Аноним 03/08/17 Чтв 20:55:14 #87 №428876 
Unity 2016-12-25 16-11-11-52.png
покажу старое но клевое. кстати есть ли у кого какие клевые идеи как сделать прыжки на навмеше? у меня есть сорт оф споты для прыжков на подобии старых прыжков юнити, но это имеет свои минусы.

>>428261
>Я использую reGOAP с парой мелких допилов.
а я кстати его не читал ещё. я свой гоап то с нуля написал. как там организовали хранение стейтов мира?

>И в каждом действии контролировать перемещение? Со временем охуеешь.
так не во всех. у меня например исполнение действий организовано с некоторой иерархией с ГОАП и контролером. у ГОАП в экшоне есть булл будет ли это действие контролировать перемещение, этот бул доступен через менеджер-прослойку контролеру, контролер ещё внутри свой небольшой менеджер стейтов имеет, какая анимация чего делает, чтобы знать когда анимация прерывается. например текущий экшон "поднять предмет", в действии описано "топи туда, если ты уже там то подбирай предмет", в итоге на каждом тике ИИ он топит куда сказали, а когда доходит то предмета идет в менеджер-прослойку и говорит что хочет поднять вот это. тогда уже контролер в своем менеджере анимаций переключает флаг что его активное действие это поднятие предмета и это действие и верхнюю и нижнюю половину тела для этого требует. а ГОАП тем временем через менеджер ждет когда это действие из активного либо провалится, либо завершится. когда анимация завершается в конце триггер что хопа действие завершено которое переключает статус в менеджере анимаций. а потом уже и ГОАП на следующем апдейте видит что флажок переключен на нужный, завершает через менеджер анимацию целиком ставя её на не активную и говорит что действие выполнено(или провалено). проверять кондиции вроде "есть ли предмет", кстати, было довольно плохой идеей, потому что он появляется в инвентаре в момент когда ИИ рукой его хватает, но ему ещё надо распрямится. отсюда и наличие менеджера анимаций, который все упрощает.
а действия вроде "перезарядка" никаких перемещений не требует, но занимает верхнюю половину тела. в итоге пока действие делается, менеджер следует своей активной задаче и управляет перемещением контролера. в итоге контролер и перезаряжается и бегает по укрытиям сразу, а в действии ГОАП описано только то что надо сделать. начать перезаряжатся, ждать когда завершится анимация в конце которой в случае успеха анимации отнять из инвентаря одну обойму.
на время выполнения действий отключаю обновление планирования, чтобы ИИ не подумал что "ооо да у меня же предмет нужный в руке надо бы его использовать" пока он ещё не распрямился после его поднятия, чтобы текущее активное действие было залочено. прерывание действий пока не сделал, но это будет не так и сложно.
пока что лучше не придумал как сделать подобную иерархию, вроде решает все проблемы.

>Сейчас это просто в теле действия, если на пути агента есть дверь, то он тормозит движение, открывает дверь и продолжает после. Делать отдельно действие понадобится только, если делать множество различных решений преодоления двери.
А я бы так не делал. а вдруг дверь будет требовать ключ? вообще технически можно глобальную навигацию сделать через ГОАП. вот у тебя есть набор комнат, некоторые комнаты требуют предмет. при перемещении из комнаты А в Б проверяем через ГОАП весь путь, если путь чист то строим путь через навмеш и идем. если надо ключ то проверяем путь черезе ГОАП уже до комнаты с ключем. один хуй поиск пути на навмеше слабо отличается от поиска пути по нодам ГОАП.

>>428774
Лол, надо же, меня помнят и читают.

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

>Теперь в принципе осталось-только придумать как сгенерировать шейдоры из графа
Я кстати читал пару имплементаций таких редакторов. он в итоге был чем-то вроде визуального текстового редактора. когда тыкал кнопку "получить шейдор" то оно там задавало целевым переменным имена, подставляло их на текстовые заготовки, соединяло все заготовки в выбранном порядке и хопа шейдор готов. создание такого выглядит каким-то особым сортом пердолинга, но выглядит достижимым.
Аноним 03/08/17 Чтв 20:55:52 #88 №428877 
>>428875
> Т.е. это должен быть объект в пространстве, который будет воспроизводить видео?
Ну блин, я ТЗ полностью не видел, но "UI с воспроизведением видео" звучит так, что надо тупо рендерить видео.
Аноним 03/08/17 Чтв 21:01:25 #89 №428879 
1.jpg
>>428877
Аноним 03/08/17 Чтв 21:05:13 #90 №428880 
>>428879
Нууу, и что не ясно? Вот меню с кнопочками: "посмотреть картинку", "посмотреть видосик", "покрутить ползунки".
Как хуйнуть картинку (видосик делается почти так же) на панель — думаю, знаешь, раз на такую работу метишь. Про ползунки вообще молчу.
Аноним 03/08/17 Чтв 21:09:08 #91 №428881 
>>428880
Не ясно было, что подразумевают под страницей. Как это делается, знаю. Спасибо, что пояснил.
Аноним !gOlrx2AM8I 03/08/17 Чтв 23:08:02 #92 №428955 
14585496864990.png
Безымянный.png
>>428861 >>428867 >>428872
>>428877 >>428879 >>428880
это классика, это знать надо
однажды подают мне значит такое вот же ТЗ
типа, шарики в хуюнити отрисовывай, мы тебе 20к заплатим, тыж спец по графену вроде
а кроме меня там в команде еще погромист и руководитель группы, и тот погромист то вообще нахуй студент.
ну делаю ТЗ, прихожу к погромисту, говорю: вот тебе кнопочки, чо там с прогой, давай на листенеры навешивай функции, а он, пацаны, достаёт значит свой нетбук и показывает скрипт на js под веб, типа, ЯЗДЕЛЯЛЬ.
пиздос, там дедлайны приближаются, я начинаю ему объяснять что в юнети значит component-entity-system, понимаю что он нихуя не понимает, сажусь писать сам
И ТУТ ХУЯК, ОКАЗЫВАЕТСЯ наша контора-заказчик ПРИНЦИПИАЛЬНО, блять, не использует продукты от майкрософт, их всех в детстве билл гейтс покусал похоже, причем сука не просто всюду линуксов понаставили, но даже У НИХ ПРИНЦИП ПРОТИВ СИ и его вариаций, ГОСПОДЬ ВСЕМОГУЩИЙ ЭТАЖИ ПРОДУКТ МАЙКРОСОФТ ТЫ ЩО ДЕЛАЕШ ОКАЯННЫЙ.
а в js я знаю примерно столько чтобы было достаточно div'ы на сайтике скрывать/показывать. var, блять, хуяр! что за нетипизированное говнище. кое-как заговнокодил всё это дерьмо, ну тут классическое У НАС ИЗМЕНИЛАСЬ КОНЦЕПЦИЯ (х2).
доебало пиздец короче. сейчас вообще реквесты потипу пикрелейтед идут.
до сих пор не заплатили.
самарец не человек
Аноним 03/08/17 Чтв 23:41:11 #93 №428970 
>>428955
>var, блять, хуяр! что за нетипизированное говнище.
В книге читал, что в юнити запили типизацию под js, энивей, автор рекомендовал юзать шарп.
Аноним 03/08/17 Чтв 23:58:45 #94 №428987 
>>428970
> запили типизацию под js
она в яваскрипте как тема в ТВГ. она есть и можно делать по теме, а можно и не по теме. приписывать var raspidor : GameObject по острому желанию можно.

> энивей, автор рекомендовал юзать шарп
а в монодевелопе js-ников вообще публично унизили, сломав им всплывающие подсказки для автонабора строк.
Аноним 04/08/17 Птн 00:19:01 #95 №429019 
Unity 2017-08-04 01-14-39-79.png
Unity 2017-08-04 01-16-47-78.png
>>428774
даа, это они там накрутили. почитал немного. так правда и не нашел пока как в контекстное меню что-то добавлять свое даже после того как в ILSpy расковырял. надо будет потом внимательно прочитать, я даже не знал что есть такая хуйня как EditorUtility.DisplayCustomMenu например. а то я свое контекстное меню уже навелосипедил.
Аноним 04/08/17 Птн 00:19:42 #96 №429021 
>>428955
>без Шарипов
Валяюсь.
Аноним 04/08/17 Птн 00:26:24 #97 №429049 
>>429019
>так правда и не нашел пока как в контекстное меню что-то добавлять свое
Никак. меню захардкожено в protected ShowContextMenu() в OnGraphGUI() в классе GraphGUI. Единственный вариант, это перегрузить OnGraphGUI() и копировать туда весь код из оригинала, кроме меню
Ну это явно не для публичного использования делалось
Аноним 04/08/17 Птн 00:47:29 #98 №429091 
>>428987
Монодевалоп и меня унижает. Регулярно крашится, ломается копи-паст, и еще кое-чего.
Аноним 04/08/17 Птн 04:30:52 #99 №429155 
>>429091
Специальная бесплатная редакция студии для кириллов поставляется прямо с юнити. Нет, хочу опенсорс какашку кушать. И это разработчики, блядь!
Хотя лично у меня крашится сам юнити во время дебага, студия живее всех живых.
Аноним 04/08/17 Птн 06:15:48 #100 №429157 
>>428876
Мда, охуительная история.
Вспомнил случай, когда парень откликнулся на вакансию юнитиёба, ему дали тестовое задание — сделать прототип тауэр дэфэнс на юнити.
Он сделал, выслал, а ему ответили, мол, всё хуйня, вы не сделали игру, вы поработали с движком, а уже движок сделал игру. Он отвечает "ну что просили, то и сделал, давайте скорректируем ТЗ и доработаем, если что-то не так", на что получил ответ "нам нужна игра на юнити, но сделанная самостоятельно, а не движком. а вы этого не сделали, вы сделали на юнити".
Можно погуглить, это вроде на юнити3д.ру было.
Аноним 04/08/17 Птн 06:23:27 #101 №429159 
Это >>429157 сюда >>428955
Аноним 04/08/17 Птн 08:02:56 #102 №429165 
>>428876
>как там организовали хранение стейтов мира?
Словарь<,>

>"поднять предмет", в действии описано "топи туда, если ты уже там то подбирай предмет", в итоге на каждом тике ИИ он топит куда сказали, а когда доходит то предмета идет в менеджер-прослойку и говорит что хочет поднять вот это

Не совсем уловил этот момент. У тебя действие поднятия остаётся активным, пока ты топишь? Завершается по инициализации движения и ставит в очередь действие поднятия?

В классическом ГОАП они выполняются чётко по порядку, следуя установленному плану. Ни одно действие особо не волнует что будут делать другие, оно просто даёт какой то результат и имеет пререквизиты.

У тебя же действия выполняются почти "параллельно":
пока одно не загружает какой то элемент контроллера, на нём могут выполняться другие. Это почти как два синхронизирующихся через состояние навигации планировщика. Выглядит очень круто, но с разрастанием могут появиться проблемы.


>а вдруг дверь будет требовать ключ?
Так я написал же, что отдельное действие необходимо если есть различные способы преодоления двери. Например, АИ может всё так же проходить через дверь, если у него есть ключ, и искать другие пути, если нет.
Если вариантов ещё больше, то стоит сделать отдельный стейт (DoorOpen, true), действия ведущие к нему, и строить навигацию как последовательность дверей и участков пути между ними.


>прерывание действий пока не сделал, но это будет не так и сложно.
Я при старте действия делаю динамический список стейтов мира - прерывателей с учётом стейта цели. Пока работает хорошо.
Аноним 04/08/17 Птн 09:26:37 #103 №429171 
>>429165
>Не совсем уловил этот момент. У тебя действие поднятия остаётся активным, пока ты топишь? Завершается по инициализации движения и ставит в очередь действие поднятия?
действие поднятия предмета остается активным пока ИИ топит к предмету. оно отвечает и за перемещение к предмету и за его поднятие. на мой взгляд мало смысла вообще разделять перемещение к предмету и поднятие предмета. действия которые стопроцентно будут идти одно за другим не должны разделятся. вообще я кстати пробовал разделять. у меня была концепция "кучка предметов", и на каждую кучку было процедурное действие "подбежать к кучке номер такой" и каждая кучка ещё действия возвращала связанные с тем какие предметы в ней и у каждого поднятия был рекваермент "быть у кучки такой-то". потом репу почесал и задумался нахуй такая конструкциям нужна.

>пока одно не загружает какой то элемент контроллера, на нём могут выполняться другие. Это почти как два синхронизирующихся через состояние навигации планировщика. Выглядит очень круто, но с разрастанием могут появиться проблемы.
да, вероятно могут. но вообще я пока слабо могу представить какие проблемы не могут быть решены через это. пока есть прослойка которая сообщает ГОАП о статусе действия и эта-же прослойка лимитирует паралельные действия за пределами ГОАП. может быть если буду делать возможность использования техники для ИИ что-то пойдет не так, или когда появятся действия не связанные с ГОАП требующие много времени(лазанье по лестнице например). но в любом случае все это выглядит решаемо.
по моему этот вариант куда лучше чем эта боль с попыткой совместить перемещение и действие. этак на каждый пердеж будет пара вариантов. вроде "перезарядка", "перезарядка на бегу", "перезарядка бегая за укрытие" и прочее. ГОАП конечно здорово, но забивать им гвозди тоже не стоит.
Аноним 04/08/17 Птн 11:15:11 #104 №429188 
>>429171
>на мой взгляд мало смысла вообще разделять перемещение к предмету и поднятие предмета
Главное преимущество в том, что можно сделать женерик действие перемещения и разгрузить остальные действия.

>по моему этот вариант куда лучше чем эта боль с попыткой совместить перемещение и действие. этак на каждый пердеж будет пара вариантов. вроде "перезарядка", "перезарядка на бегу", "перезарядка бегая за укрытие" и прочее.
Да, разбираться в этой куче добра со временем станет очень не весело.
Но я пожалуй откажусь от параллельного планирования: буду просто инициировать движение действием и тут же запускать реплан с учётом того что (isOnMove, true). И при завершении движения вызвать коллбек, прерывающий текущий план и пытающийся прервать действие.
Останется только подумать как лучше запилить перывание движения отдельными действиями. Наверное просто для всех действий, требующих остановки, добавлю процедурный прекондишн, сравнивающий приоритет цели, вызвавшей движение и приоритет прерывателя.
Аноним 04/08/17 Птн 11:50:37 #105 №429205 
>>429188
>Главное преимущество в том, что можно сделать женерик действие перемещения и разгрузить остальные действия.
да как-то оно не выглядит преймуществом. перемещение до нужной точки один хуй отдается на откуп прослойке между ГОАП и контролером, в имплементации действия движение в итоге задается парой строчек. там же получается в итоге куча вариаций "иди в точку 1", "иди в точку 2", "иди в точку дохуилион". в реГОАП написано что есть обратный поиск, так что разумеется количество вариантов почти похуй, но тут можно и напортачить с флагами в пререкваерментах действий требующих нахождение рядом с нужной позицией. какая-то излишняя комплексность для передачи одного булеана. впрочем работать будет, да.

>Останется только подумать как лучше запилить перывание движения отдельными действиями. Наверное просто для всех действий, требующих остановки, добавлю процедурный прекондишн, сравнивающий приоритет цели, вызвавшей движение и приоритет прерывателя.
я бы так стал делать разве что заранее известны все варианты перемещения ИИ и их немного. если он в начале просто бегает туда-сюда то это ещё выглядит разумным, но если ИИ начнет прыгать на джетпаке, скакать по стенам, делать сальто и прочее то это уже не кажется таким уж разумным вариантом. ещё хуже эта схема выглядит если ИИ может менять мобильность. например ногу оторвало роботу, лежит на земле, но стреляет. что, подчищать у него варианты действий чтоли?
[bump] Аноним 04/08/17 Птн 12:53:45 #106 №429218 
0Ke2hp61qxI.jpg
amrehdxyrw.jpg
Lp2Qw2bNww.jpg
nzwVPzUJ9nA.jpg
Скрины старые. Маты нормально не настроены.
Ммм... mesh-ы потерпели изменения, но я буду дорабатывать их. Ну там... интерьер добавлю и тд.
sageАноним 04/08/17 Птн 13:00:13 #107 №429223 
>>428955
Хипстер-контора какая то. Принцип против микрософт и жабоскрипт везде.
Аноним 04/08/17 Птн 13:46:25 #108 №429240 
>>429205
ГОАП обычно подразумевает обратный поиск, поэтому необходимая точка берётся из следующего действия.
Ещё одно преимущество вынесения действия перемещения - возможность добавления различных вариантов перемещения. Например, АИ может идти/бежать/ползти, что будет делать тремя разными действиями со своими прекондишенами. В твоём варианте надо будет в каждом экшене, требующем перемещения делать ифы, выбирающие один из способов перемещения.

>например ногу оторвало роботу, лежит на земле, но стреляет. что, подчищать у него варианты действий чтоли?
Не пойму суть проблемы? То что он лежит на земле никак не должно мешать стрелять.
Прерывание движения может быть необходимо для выполнения некоторых действий, надо лишь проверять что приоритетнее, продолжить движение или выполнить это действие остановившись.

Например, за АИ-лесорубом гонится лесной нёх, планер берёт цель спасения, которую реализует укрытим в убежище, для чего необходимо оказаться в убежище -> инициируется перемещение, действие завершается. Планер в это время строит новый план, учитывая, что АИ перемещается и конечная цель обладет приоритетом Х.
Но во время бега у него повышается уровень жажды и становится доступной цель удовлетворения биопроблем с приоритетом У, удовлетворить которую он может выпив из фляги в инвентаре, остановившись на месте.
Действие питья требует прерывания активного движения, поэтому в его процедурном прекондишене мы сравнивает приоритеты Х и У, и либо выполняем текущий план, либо инвалидируем и продолжаем движение.
При этом вообще не важно идёт/бежит/летит/телепортируется лесоруб - навигацией занимается другой блок, от которого требуется только посылать коллбек о завершении движения и обрабатывать прерывание.

Робот из примера выше просто будет иметь стейт (CanMove, false), который будет учитываться планером.
Аноним 04/08/17 Птн 14:22:30 #109 №429251 
>>429240
>В твоём варианте надо будет в каждом экшене, требующем перемещения делать ифы, выбирающие один из способов перемещения.
зачем? метод перемещения диктуется глобально. то есть если мы крадемся то вообще всё перемещение будет украдкой. а если мы бегаем то все перемещение будет бегом. какие-то сложные варианты вроде "мы быстро подбегаем к медведю но остаток проходим тихо-тихо" легко описывается глобальным "стелс". где если мы не в радиусе обнаружения врагов то бежим, если в радиусе то ползем. какая вообще ситуация возможна когда ГОАП должен руководить методом перемещения?

>Не пойму суть проблемы? То что он лежит на земле никак не должно мешать стрелять.
>Робот из примера выше просто будет иметь стейт (CanMove, false), который будет учитываться планером.
ошибся. не действий. целей. часть целей перестает вообще быть валидными же. иметь много наборов целей под каждое состояние мобильности?

я уже начинаю представлять слабо твой вариант имплементации. начало движения это сразу успешное выполнение движения чтобы пока оно шло делалось сразу следующее действие? а как тогда будешь менять цель движения, если требуется поменять маршрут, но не действие? например действие "сесть в укрытие", но пока идешь до укрытия оно перестает быть валидным.
Аноним 04/08/17 Птн 14:23:32 #110 №429253 
>>429157
Нашёл, если кому интересно.
http://unity3d.ru/distribution/viewtopic.php?f=111&t=18479
Аноним 04/08/17 Птн 15:30:23 #111 №429283 
>>429251
>метод перемещения диктуется глобально
Но планировщик должен решать как именно мы перемещаемся.

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

>начало движения это сразу успешное выполнение движения чтобы пока оно шло делалось сразу следующее действие?
Не следующее действие, а вообще другой план. Так что это будет ближе к провалу действия. Здесь нужно расширение терминологии.

>а как тогда будешь менять цель движения, если требуется поменять маршрут, но не действие?
Прокладкой маршрута занимается навмеш же. Если ты имел в виду другие действия, требующие перемещения, то для них нужна такая же проверка как для действий с остановкой: побеждает наивысший приоритет.

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

Если собрать всё вмнесте, то схема примерно такая:
- инициируем движение и отметаем этот план(но без занесения в блеклист, если мы занимаемся подобным)
- пока движение активно, выполняем менее приоритетные действия, не взаимодействующие с перемещением
- если в плане появляется новое действие требующее перемещения, сравниваем приоритеты целей и либо принимаем новый план с новым перемещением, либо отметаем его(желательно занося в блеклист на какое то время)
- при окончании движения прерываем текущий план, если его цель имеет меньший приоритет, чем цель движения, и пытаемся прервать действие. В случае прерывания после реплана мы по идее:3 вернёмся к плану, инициировавшему изначальное движение
Аноним 04/08/17 Птн 15:58:24 #112 №429323 
Впорос к продвинутым или тем кто таковыми себя считают
Как много сложной математики вы использовали в разработке игр? Было ли что-то не из школьных векторов? Матрицы, теория графов? Пригождалось за знание кватернионов? Вообще, какие разделы математики приходится использовать, не считая те что в школе проходят?
Аноним 04/08/17 Птн 16:00:52 #113 №429324 
>>429323
Смотря что делаешь. Если какую-нибудь мобильную тыкалку а-ля "три в ряд", то там математики считай что нет. В шутанах от первого лица - тоже.
А начнёшь писать свой физон, например, вот там уже начинается.
Аноним 04/08/17 Птн 16:18:40 #114 №429350 
>>429324
А для шейдеров?
Аноним 04/08/17 Птн 16:23:49 #115 №429357 
>>429350
Там вектора, градусы, косинусы-хуёсинусы, матрицы. Ничего особо сложного. Хотя при желании можно и в дебри залезть.
Аноним 04/08/17 Птн 16:47:16 #116 №429393 
code.jpg
>>429323
Матрицы, немного тригонометрии. О теории графов знаю только из детских книжек про минимальное количество цветов на карте и обход графа одним росчерком.
Но я кодил узкоспециализированные функции, где все это нужно и ИРЛ, в обычном коде, манипулирующем gameObject'ами, только векторная алгебра, которую надо представлять очень хорошо, иначе заебешься.
Что такое кватернионы в курсе (вчера погуглил), как конкретно они используются в юньке - хз, только в общих чертах знаю. Хотя хватает.
Аноним 04/08/17 Птн 16:53:25 #117 №429411 
image.png
image.png
Ребят, помогите плиз найти ошибку в коде.
Аноним 04/08/17 Птн 17:06:37 #118 №429425 
>>429411
Ты дурак что ли, э?
Аноним 04/08/17 Птн 17:07:47 #119 №429431 
>>429425
Ну да, а что?
Аноним 04/08/17 Птн 17:08:32 #120 №429434 
>>429431
Да ничего.
Аноним 04/08/17 Птн 17:19:00 #121 №429461 
>>429393
Слушай, а если в твоём коде везде дабл заменить на флоат — всё к хуям сломается? Я просто в юньке дабл никогда не юзал.
Аноним 04/08/17 Птн 17:29:45 #122 №429465 
>>429240
>Например, за АИ-лесорубом гонится лесной нёх, планер берёт цель спасения
Вот тут-то и проблема. Планер не должен "брать" никаких целей. Планер должен спланировать последовательность действий, которая приводит к заданному конечному состоянию. Суть планера в том, что эта последовательность теоретически очень большая, и суть планера в переборе и нахождении наиболее оптимальной (короткого) цепочки действий.
А ГОАП это внебрачный сын простой utility-системы и каких-нибудь state machine. Планер ему там нахуй не всрался по большому счету. Только лишний балласт
Аноним 04/08/17 Птн 17:46:37 #123 №429488 
>>429461
Дабл для точности. Не должно сломаться, наверное, просто решил с запасом взять, у меня там расстояния в солнечной системе в метрах фигурируют.
Аноним 04/08/17 Птн 17:51:51 #124 №429493 
>>429465
>Планер не должен "брать" никаких целей.
Схуяли? Цель - желаемое состояние мира, планер подбирает последовательность действий, которые переведут текущее состояние мира в целевое.
Планер должен брать самую приоритетную цель.
ФСМ вообще далеко, потому что для каждого действия нет чётко определённых переходов.
Может ты что то путаешь?
Аноним 04/08/17 Птн 17:57:17 #125 №429506 
>>429493
Хуй знает о чем вы спорите, но с точки зрения здорового программирования выбором цели и проложением маршрута должны заниматься две разные сущности.
Аноним 04/08/17 Птн 17:59:51 #126 №429513 
Народ объясните в двух словах. Нейросети это, как я понимаю, куча одинаковых объектов, с универсальными классами, способные взаимодействовать, классифицированные по типам: база данных, оператор, какая то хуйня. Верно ли я понимаю концепцию нейросетей или посложнее будет?
Аноним 04/08/17 Птн 18:04:50 #127 №429524 
>>429506
Проложением маршрута будет заниматься навмеш. Да в любом другом случае слабо представляю как это можно с чем то совмещать
Аноним 04/08/17 Птн 18:08:46 #128 №429527 
>>429513
Нейрон в нейросети это просто функция, принимающая значение в зависимости от вектора аргументов.
Вся нейросеть это пирамида, где ты последовательно преобразуешь овер 9000 значений в одно единственное, которое дает тебе некоторую информацию.
Аноним 04/08/17 Птн 21:22:49 #129 №429645 
1.png
>>429283
>Но планировщик должен решать как именно мы перемещаемся.
но зачем? вообще ты как-то решаешь планированием больше задач чем следует. у тебя как будто отсутствует концепция глобальных стейтов ИИ. можно же сделать изначально несколько глобальных стейтов например по уровню встревоженности. "спокойный / встревоженный / набрасывается" например. где стейты имели бы разные наборы экшонов, меняли паттерн перемещения, являлись модификатором для трешхолда некоторых целей. а планирование нужно только для построения комплексных планов из последовательности самих действий, чтобы ИИ не залип на чем-то элементарном.

>Этот вариант я упустил. Для этого можно сделать цель трансформом, а не точкой и периодически менять точку назначения навмеш агента. Если трансформ вдруг стал нуллом(сенсор укрытий инвалидировал укрытие например) - остановка и реплан.
описывать точку пути трансформом выглядит настолько кривой идеей насколько это возможно. это будет ещё и охуевшее структурирование уровня в добавок. а что если точка пути не является трансформом но её все равно надо сменить?

>Если собрать всё вмнесте, то схема примерно такая:
лол ну ты и придумал. иметь два набора планов, один из которых для движения, а другой для действий во время движения. мне кажется с такими идеями ты достигнешь лимитов этой схемы гораздо быстрей чем я своей. синхронизация этого выглядит ещё большей еботней чем то что я придумал. а что если во время движения появилось действие с долгой имплементацией из разряда неотменяемых и очень важных а конец пути уже недалеко? или осталось то-же самое действие, но нужно поменять паттерн перемещения во время действия? например ИИ обматывается бинтиком прячась в кустах, волк его покусал. а тут хопа его волк нашел, действие поменялось с "обматываться бинтиком в укрытии" на "обматываться бинтиком убегая". прерывать обматывание бинтиком и начинать снова чтоли? или "обматыватся бинтиком" это отдельно, "сидеть в укрытии / бежать в другое укрытие" это другой набор действий?

>Не следующее действие, а вообще другой план. Так что это будет ближе к провалу действия. Здесь нужно расширение терминологии.
какая-то хуевая схема если требует расширение терминологии на самом деле.
вообще нахуй ты такую конструкцию то лепишь? могущество ГОАП то в том что у него трешхолд целей есть и только одна цель является актуальной, само планирование важно, но сравнительно второстепенно. взвешивать валидность целей легко в рамках ситуации и важно именно это. а у тебя уже пошло какое-то планирование двух целей разом, охуеть можно. как-то сильно не хватает того что объединяло бы всю эту конструкцию и упрощало. как по мне так проще иметь несколько раздельных довольно простых конструкций, которые бы объединялись общими ограничениями и соединялись одной целью.
так хоть знать будешь что если ИИ нападает то он как-то охуительно напрыгнет на пути к цели, а планирователь позаботится о том чтобы стрелы были и лук был в руках и выстрелит когда увидит. а если отпиздили то он убегает а планирователь делает все чтобы выжить по дорожке.
можно же совмещать несколько типов ИИ в одном сразу. стейтмашина для глобальных статусов которая всему голова, FSM для стратегических решений, GOAP для планирования цепочки действий и более тактических решений. так шанс того что хоть что-то из этого разрастется до критической массы и нахуй рухнет задавив под собой весь проект гораздо ниже, чем пока они по отдельности работают на одни и те-же цели. а ты через GOAP решаешь уже такую хуйню которую проще решить другими методами.

>>429323
написал навмеш, терию графов только копнул снаружи, матрицы тоже. больше всего пригодилась линейная алгебра из школьной программы, за время написания неплохо так вспомнил её. дольше ебешся с чтением о каких-то хитрых алгоритмах, или имплементацией их, чем всей этой магией цыфр.
надо тоже что-то клевое и нечитабельное показать!
Аноним 04/08/17 Птн 22:26:23 #130 №429655 
>>429645
>но зачем? вообще ты как-то решаешь планированием больше задач чем следует
Потому что тип передвижения зависит от действия? Если агент хочет подкрасться - он будет красться, если он сваливает - он бежит. Зачем для этого менять какие то глобальные стейты?

>описывать точку пути трансформом выглядит настолько кривой идеей насколько это возможно
Не точку пути, а пункт назначения. Иначе как ты например будешь гнаться за движущейся целью?

>иметь два набора планов, один из которых для движения
Почему два плана? Просто у некоторых действий будет в пререквизитах (OnMove,false)

>что если во время движения появилось действие с долгой имплементацией из разряда неотменяемых и очень важных а конец
Очевидно агент остановится и завершит действие на месте.

>нужно поменять паттерн перемещения во время действия?
Если понадобилось сменить паттерн движения, значит произошло что то достаточное для реплана.

>с "обматываться бинтиком в укрытии" на "обматываться бинтиком убегая"
А как это решит твоя схема?

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

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

>если ИИ нападает то он как-то охуительно напрыгнет на пути к цели
Ну ёбана, у него будет действие наскока с какими то пререквизитами. В чём проблема то?

>ты через GOAP решаешь уже такую хуйню которую проще решить другими методами
А надо решать что то уровня подбора стрел и лука для стрельбы? Тут уж точно ГОАП не всрался, это можно жесткими стейтами в фсм сделать. Суть ГОАП именно гибком подстраивании под ситуацию. У тебя какие то behavior trees а сбоку костылём планировщик из двух с половиной действий
Аноним 04/08/17 Птн 23:38:51 #131 №429677 
>>429655
>Потому что тип передвижения зависит от действия? Если агент хочет подкрасться - он будет красться, если он сваливает - он бежит. Зачем для этого менять какие то глобальные стейты?
чтобы не плодить сущьности, разумеется. комбинации действий должны быть пересечениями статусов, а не описываться каждый по отдельности. если ИИ атакует и его заметили, то он уже просто не будет подкрадыватся. он не будет, а тебе описывать.
если что-то можно описать простым методом то именно так это и надо делать.

>Не точку пути, а пункт назначения. Иначе как ты например будешь гнаться за движущейся целью?
да не суть важно даже. я к тому что не все целевые места перемещения могут быть привязаны к объектам глобально.

>А как это решит твоя схема?
если бинтование занимает только руки то ИИ встанет и начнет убегать бинтуя себя. перемещению ничего не мешает, а за перемещением следит другая хуйня.

>Ну ёбана, у него будет действие наскока с какими то пререквизитами. В чём проблема то?
да зачем действие наскока? вот бегает например киборг, прыгает через стены, летает через камни, в полете кидает гранаты, стреляет, таскает павших товарищей, иногда подбегает кнопки жмет. навигация из А в Б у него происходить должна сама собой, навигация подстраиваться под положение противников и свой статус, действия под собственную позицию, одни действия должны переходить в другие не волнами а постоянно. и только редкие задачи должны говорить ему где надо быть чтобы их выполнить. паузы между действиями вообще быть не должно.

>А надо решать что то уровня подбора стрел и лука для стрельбы?
йеп. или более сложные комбинации. например ИИ хочет корзинку кокосов, кокосы есть только у продавца, надо денег, идет в лес и собирает ягоды, или на реку ловить рыбу, или палкой червей копает, меняет лут на кокосы. или если ничего не может то бьет палкой продавца и отбирает кокосы если очень надо. это - планирование. описывать детали в нем не нужно. детали можно отдать на откуп другим более специализированным штукам.

>Тут уж точно ГОАП не всрался, это можно жесткими стейтами в фсм сделать.
в динамичном мире нельзя. плюс ГОАП помимо очевидных же в том что пулл действий можно менять на ходу. выпал предмет - появились действия связанные с ним, например. это в ФСМ делать по человечески нельзя.
ну и другой плюс ГОАП в том что пулл целей может шариться между членами сквада, разумеется, чтобы была иерархия.
гибкость ГОАП то в первую очередь в том что эти листы можно редактировать.

>У тебя какие то behavior trees а сбоку костылём планировщик из двух с половиной действий
ну так. планирование там где вообще должно быть планирование в какой-то форме. для манипуляций с инвентарем просто заебись, групповые действия тоже просто заебись, глобальная навигация заебись. везде где требуется планирование в динамичной ситуации заебись. а вот для тонких манипуляций требующих параллельности совсем не заебись.
ты вот решил костылем решить, я решил что проще сделать метод синхронизации и указать кто тут клитором коммандует. мне вот очень интересно посмотреть что у тебя выйдет, у меня то вон рабочий прототип же есть уже. может ты там что-то ещё лучше придумаешь.
Аноним 05/08/17 Суб 00:37:09 #132 №429716 
>>429677
>а тебе описывать
Что описывать то?
Чем вообще вынесение стейтов отдельно - не пложение сущностей по сравнению с держанием этого в стейтах мира?

>если бинтование занимает только руки то ИИ встанет и начнет убегать бинтуя себя
То есть это не два набора планов, один для движения, а второй для действий?

>да зачем действие наскока?
То есть он не выполняет какое то действие, а просто наскакивает на ифах?

>ну и другой плюс ГОАП в том что пулл целей может шариться между членами сквада
Мне всё больше кажется, что ты постепенно изобретаешь hierarchical task network

>ты вот решил костылем решить
>я решил что проще сделать метод синхронизации и указать кто тут клитором коммандует
Прямое и явное решение.

>мне вот очень интересно посмотреть что у тебя выйдет
Ладно, попробую то, на чём остановился. Разговор всё равно зашёл в тупик.
Аноним 05/08/17 Суб 01:06:34 #133 №429729 
>>429716
>Чем вообще вынесение стейтов отдельно - не пложение сущностей по сравнению с держанием этого в стейтах мира?
нет конечно, они же глобальные для ИИ, доступные всем его компонентам. цели ГОАП ориентируются на стейты, навигация ориентируется на стейты, все на них ориентируется. но планирование уже следует цели у ГОАП. в плане поведения ИИ можно очень много писать его глобальным состоянием. пытается он стелс, или набигает, или убигает, или спокойный или ещё какой. проще задавать общие паттерны поведения же и потом ими пользоваться везде так как они будут стопроцентно и довольно легко менять оценку состояния.

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

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

вообще, вот человек когда в игры играет он как думает? надо набижать, надо убижать, надо обойти, надо скрытся. думает над путями согласно плану, подстраивает снаряжение под обстановку. если есть друганы то уже кооперация с друганами задает общий статус и планирует снаряжение и дальнейший паттерн поведения. так-же надо примерно выстраивать мышление и для ИИ. память конечно через гоап мы нормально не сделаем, но такая ветвистость логики дает ощутимую универсальность за счет того что обстановку проще проанализировать слоями.

>Ладно, попробую то, на чём остановился. Разговор всё равно зашёл в тупик.
показать не забудь. в этом разделе все обсуждение ИИ загибается по каким-то нелепым причинам. видать давно люди не играли в игры вроде FEAR, или сталкера
Аноним 05/08/17 Суб 07:37:25 #134 №429772 
>>428296
Что это? Это слово даже не гуглится, рофл.
Аноним 05/08/17 Суб 07:42:19 #135 №429773 
>>429772
LateUpdate()
Аноним 05/08/17 Суб 08:12:36 #136 №429778 
>>429773
Ну я попробовал через ЛейтАпдейт. Все-равно, если идти в стену. то персонаж по кд пытается в неё зайти и выталкивается.
Аноним 05/08/17 Суб 08:22:42 #137 №429779 
>>429729
>пытается он стелс, или набигает, или убигает, или спокойный или ещё какой
>а тебе описывать
Ну всё же расскажи что лишнего и неудобного описывать планом в подобной ситуации. Мне правда интересно, может я упускаю что то очевидное.
Давай возьмём пример: у нас есть скрытный пидор, который может красться(что обещает ему пребывание невидимым для врага), а может бежать, может атаковать врага открыто, а может бить сникатакой, требующей пребывания невидимым. Удар сникатакой имеет более низкую стоимость, значит будет в приоритете. Цель - бить врага.
Чего лишнего описывается в этом случае по сравнению с вариантом с заведением глобальных стейтов стелс/хуелс, разблокирующих каждый по два действия?
Аноним 05/08/17 Суб 08:41:15 #138 №429782 
Мне, вот, такая хуйня в голову пришла. Вот если раз 10 - 15 в секунду двигать вертексы в меше, что эффективнее? Каждый раз читать их с меша или хранить копию в виде массива и мешу только присваивать вертексы.
Аноним 05/08/17 Суб 09:03:56 #139 №429785 
>>429779
если смотреть в рамках вопроса то ничего. удар обычный, удар из стелса с пререкваерментом - в этой схеме ничего лишнего, не говоря о том что такие вещи как удар в мили должны так-же имплементить особые сорта перемещения до цели. если выйти перед десантником то у него так-же удар прикладом будет в приоритете, он подбежит и ебанет.

если смотреть в рамках всего обсуждения то в случае наличия глобальных статусов можно например менять стоимость у таких действий как "использовать лук", или "использовать кинжал", вместо чего-то громкого. так-же если стелс активен то персонаж например меняет приоритетность у других зон карты и выбирает пути через высокую траву чтобы попасть куда надо, залезает под лесенки более охотно, старается уйти из конуса обзора при навигации. чтобы ГОАП сказал "иди сюда" и ИИ пополз в стелсе туда обходя все заметные места. например за спину жертвы. ну и в конце концов сет анимаций поменять чтобы ИИ ходил горбатым и башкой нервно мотал. можно много придумать как подобный статус могли бы имплементить другие элементы ИИ.

>>429782
храни копию. торговать памятью всегда эффективней, если её ещё много в запасе. но вообще лучше скажи че там делаешь, все кроется в деталях как всегда же.
Аноним 05/08/17 Суб 09:08:40 #140 №429786 
>>429785
Спасибо, дружище. Как-то уже пытался, но решил начать снова. Запилить простенькую деформацию террейна а-ля СПИНТАЙЕРС под ведро.
Аноним 05/08/17 Суб 09:23:08 #141 №429789 
>>429778
Ну значит ты наговнокодил. У меня на голых коллайдерах с коллизиями всё нормально было.
Аноним 05/08/17 Суб 09:26:21 #142 №429790 
>>429786
а, а я кажись тебя помню. кстати а чего ты вертексы собрался редактировать то? может шейдор ебанешь чтобы вот примерно как в бэтмане?
вообще где-то у меня был клевый ютубер который что-то похожее на коленке за часик слепил. https://www.youtube.com/watch?v=l_2uGpjBMl4 может интересно будет
Аноним 05/08/17 Суб 09:53:49 #143 №429794 
scrin.jpg
>>429789
https://youtu.be/FvCmPlUF-T8
Аноним 05/08/17 Суб 09:55:04 #144 №429796 
>>429794
> float Скорость
А с тобой шутки плохи, да?
Аноним 05/08/17 Суб 09:56:09 #145 №429797 
15009158489411.jpg
>>429794
> public float Скорость
Аноним 05/08/17 Суб 09:56:56 #146 №429798 
>>429790
Не, я тут, вроде, не делился ничем таким. В шейдеры я не умею.
Аноним 05/08/17 Суб 10:05:02 #147 №429801 
>>429796
>>429797
Ну я хз, мне просто прикольным кажется, когда в редакторе переменные на русском написаны. Этож не влияет ни на что, рофл.
Аноним 05/08/17 Суб 10:06:51 #148 №429802 
>>429801
> мне просто прикольным кажется, когда в редакторе переменные на русском написаны
Продолжай, у тебя всё получится.
Аноним 05/08/17 Суб 10:09:46 #149 №429803 
>>429801
> рофл
Настримятся своими дотами, а потом рофлят и ебут друг друга в жопы.
Рашид, завязывай кодить.
Аноним 05/08/17 Суб 10:14:29 #150 №429805 
>>429802
>>429803
Вы чего порвались на пустом месте? Ну нравится человеку, пусть хоть на хинди называет.
Аноним 05/08/17 Суб 10:15:14 #151 №429806 
>>429802
Ну я просто не шарю совсем. Так нельзя делать? Я думал, что так не делают от того, что это поуебански выглядит.

Аноним 05/08/17 Суб 10:15:31 #152 №429807 
>>429805
Да кто порвался-то? Я ж и говорю, пускай развлекается, всё получится.
Аноним 05/08/17 Суб 10:19:10 #153 №429808 
>>429806
> Так нельзя делать?
Если ты кодишь чисто для себя чисто руку набить — называй как хочешь, хоть хуйпизда. Но лучше сразу приучаться к стандартам оформления, чтоб потом не переучиваться.
Аноним 05/08/17 Суб 10:52:38 #154 №429819 
scrin.jpg
Так а как это пофиксить и сделать, чтобы персонаж просто упирался в стену, как через rigidbody? Если я пытаюсь делать через rb, то всё фризить начинает:
https://www.youtube.com/watch?v=wrHmbiv41h0


>>429808
Понял, принял.
Аноним 05/08/17 Суб 11:55:38 #155 №429838 
>>429819
Я сейчас наткнулся на статейку, где говорится, что transform.position/transform.rotation сильно снижают производительность, если использовать это на объектах с rigidbody. Враги у меня имеют rb, но перемещаются и поворачиваются с помощью transform. Еще я замечал, что если удалить их и использовать rb для движения, то лагов не будет.
Я в правильном направлении думаю? Мне надо переделать движение врагов для повышения производительности?
Аноним 05/08/17 Суб 11:57:37 #156 №429839 
>>429838
> transform.position/transform.rotation сильно снижают производительность, если использовать это на объектах с rigidbody
Ага, прям пекарня горит.
Хуйнёй не занимайся.
Аноним 05/08/17 Суб 12:06:43 #157 №429842 
>>429839
Так я не понимаю, с чем тогда связаны лаги при использовании rb? Типо, я так гуглил, большинство считает, что это охуенная штука, врядли бы так считали, если бы это так сильно убивало производительность.

Вот статейка, кстати:
https://habrahabr.ru/post/248391/
Аноним 05/08/17 Суб 12:08:41 #158 №429843 
>>429842
Статейка от 15-го года? Окей.
Аноним 05/08/17 Суб 12:25:45 #159 №429844 
>>429785
>если смотреть в рамках всего обсуждения то в случае наличия глобальных статусов можно например менять стоимость у таких действий как "использовать лук", или "использовать кинжал", вместо чего-то громкого. так-же если стелс активен то персонаж например меняет приоритетность у других зон карты и выбирает пути через высокую траву чтобы попасть куда надо, залезает под лесенки более охотно, старается уйти из конуса обзора при навигации. чтобы ГОАП сказал "иди сюда" и ИИ пополз в стелсе туда обходя все заметные места
Но это всё может быть сделано просто в действии скрытного перемещения. Весь глобальный стейт стелса заменяет ворлдстейт (StayHidden,true). Но если ты захочешь сделать так чтобы этот же скрытный пидр мог бить сник атакой вне стелса, например, ослеплённых противников, то прийдётся лепить ещё один иф для нахождения вне стелса.
Мне просто кажется, что тебе ГОАП вообще не нужен: ты используешь глобальные стейты, а действия распределяешь _просто ифами_, называя работой ГОАП формирование пула действий.
Рили попробуй HTN, мне кажется это то, что ты пробуешь изобрести.
Аноним 05/08/17 Суб 14:29:00 #160 №429868 DELETED
В чем делать уровни для своей игры?
Если у меня по сути тайловая карта - тот тут все просто и понятно, таких редакторов полно.
А вот если мне нужно еще и источники света расставить по карте? Я же не могу ставить их наугад и каждый раз смотреть нормальная ли яркость света, нормальный ли радикс освещения, нормальный ли цвет. Как тут быть?
Аноним 05/08/17 Суб 14:31:58 #161 №429870 DELETED
И ещё вопрос - стоит ли юзать навмеш если у меня тайловая карта, но при этом враги могут свободно перемещаться, не привязываясь к какому-либо тайлу? Или через какой-нибудь астар эффективнее будет?
Аноним 05/08/17 Суб 14:36:17 #162 №429871 
>>429868
> А вот если мне нужно еще и источники света расставить по карте? Я же не могу ставить их наугад и каждый раз смотреть нормальная ли яркость света, нормальный ли радикс освещения, нормальный ли цвет. Как тут быть?
Чего блять? Ставишь свет и крутишь как надо.
Аноним 05/08/17 Суб 14:48:45 #163 №429873 DELETED
>>429871
Где найти такой редактор карт, в котором параметры света будут соотноситься с параметрами света в юнити?
Ну и есть еще одна проблема в любом случае - моя игра в 3д.
Аноним 05/08/17 Суб 15:06:05 #164 №429877 
>>429873
Что ты несёшь? Ты вкладку Scene вообще видел?
Аноним 05/08/17 Суб 15:10:01 #165 №429881 DELETED
>>429877
Я про внешние редакторы карт, очевидно же, нахуй мне на стандартной юнитевской сцене миллион объектов расставлять? Я же даже уточнил.
> Если у меня по сути тайловая карта - то тут все просто и понятно, таких редакторов полно.
Аноним 05/08/17 Суб 16:29:44 #166 №429902 
>>429881
>таких редакторов полно.
Ну так и в чем проблема? Берешь любой из множества доступных редакторов и пользуешься.
Аноним 05/08/17 Суб 17:14:08 #167 №429918 DELETED
>>429902
> А вот если мне нужно еще и источники света расставить по карте? Я же не могу ставить их наугад и каждый раз смотреть нормальная ли яркость света, нормальный ли радикс освещения, нормальный ли цвет. Как тут быть?
Аноним 05/08/17 Суб 17:23:46 #168 №429922 DELETED
Ладно, тогда другой вопрос. А что если сделать всю статическую геометрию уровня просто в 3д максе?
Аноним 05/08/17 Суб 19:33:37 #169 №429959 
>>429870
Навмеш хорошо оптимизирован, на больших открытых пространстван даже эффективнее Астара с тайлами.
Аноним 05/08/17 Суб 19:34:40 #170 №429961 
Clip2net170805192828.png
Clip2net170805192927.png
Нужно сделать красивый выпадающий список как на пик1. Его я смог сделать скопировав код пик2 из какой-то статьи. Но я так и не понял как использовать значения в скрипте? Как мне понять что из этого меню выбрано? Что такое ComponentType? Что значит { StartDialogue = 1, LoadScene = 2 } ? Если выбрано StartDialogue, то значение переменной становится 1? В интернете не смог найти.
Аноним 05/08/17 Суб 19:58:24 #171 №429970 DELETED
В какой-то статье со всяким советами по юнити вычитал что надо по минимуму использовать строки(я так понимаю для оптимизации?)
Но как тогда идентифицировать объекты? Я раньше просто через теги проверял тип объекта. Как это по-другому можно сделать?
Аноним 05/08/17 Суб 20:01:05 #172 №429971 
>>429970
Нууу, можно через GetComponent проверять наличие какого-либо компонента, например.
А вообще не заморачивайся, если у тебя это несколько раз используется, то никто от этого не помрёт.
Аноним 05/08/17 Суб 20:07:23 #173 №429973 
>>429961
В игре или в редакторе?
Если второе, то enum показывается в редакторе в виде этого самого выпадающего списка.
Аноним 05/08/17 Суб 20:13:34 #174 №429976 
>>429961
Ну как всегда после вопроса на дваче я нахожу нужную страницу. Разобрался уже.
Аноним 05/08/17 Суб 21:48:02 #175 №430023 
Соре за оффтоп, но почему эта тема такая активная? Всмысле, я мало игр знаю от харкача, а в разделе жизнь кипит.
Аноним 05/08/17 Суб 21:50:27 #176 №430024 
>>427791
> Тут что так мертво или юнити девелоперы вымерли?
>>430023
> почему эта тема такая активная?
Это даже мило.
А вообще — у движка большое комьюнити, оттуда и оживлённая беседа.
Аноним 05/08/17 Суб 21:56:02 #177 №430028 
>>430024
А можешь посоветовать места, куда можно вкатиться новичку? Или, в целом, это не особо нужно и хватит гугла?
Я быдло, в ангельский не могу.
Аноним 05/08/17 Суб 21:57:07 #178 №430029 
>>430028
Да в шапке всё есть.
И туториалы и книги (и на русском в том числе).
Аноним 05/08/17 Суб 22:11:48 #179 №430034 
>>430028
> в ангельский не могу
Будет сложновато. Не сложнее чем на другие движки, но без английского реально хуево. Я полгода назад вкатился в геймдев, и уже пришлось прочитать одну книгу на английском, сейчас начал еще одну. Плюс самый охуенный инструмент на начале - это ответы на форумах Юнити, а они в основном на английском, да и гуглить надо правильно на английском.
Аноним 05/08/17 Суб 22:15:56 #180 №430035 
>>430034
> да и гуглить надо правильно на английском
Удваиваю этого благородного дона.
Как затык придёт — на русском хуй чё найдёшь.
Аноним 05/08/17 Суб 23:21:53 #181 №430051 
Короче, я тут недавно спрашивал насчет диалогов и ассетов. Сейчас откопал пиратские и попробовал. Заключение:
1) Dialogue System For Unity - говно для даунов-аутистов, до сих пор удивляюсь откуда у него такие хорошие оценки в сторе
2) NodeCanvas - годнота. Всё сделано по человечески. Плюс помимо диалогов можно еще делать АИ и прочие крутые штуки.

По крайней мере, это первое впечатление. Глубоко не зарывался.
Аноним 06/08/17 Вск 00:01:50 #182 №430058 
>>430051
>NodeCanvas
Отсутствие безбладной демки едва ли облегчит выбор.

Надоть видосики глянуть тьюторриалные
Аноним 06/08/17 Вск 00:04:10 #183 №430059 
>>429844
в действии должно быть описано только само исключительно само действие. ты погромировал чтоли мало в своей жизни, шишки не набил с размазыванием логики? не доверял слишком много функциям которые вызываются хуй пойми когда и где? если я захочу чтобы скрытый пидор мог бить сник атакой вне стелса то либо надо задать альтернативные условия для действия, либо скопипастить эти 3.5 строчки описывающие действие с новыми условиями где если враг ослеплен то можно его ебануть хорошо.
вообще ты как-то странно структурируешь ИИ. ты понимаешь в какую мусорку превратится ГОАП если там будет описано просто всё? и оно будет размазано по действиям? это ебануться можно редактировать все это.

>а действия распределяешь _просто ифами_
>Мне просто кажется, что тебе ГОАП вообще не нужен
да по моему это ты не совсем понимаешь нахуй этот ГОАП нужен и пытаешься возложить на него больше чем надо.
я же уже показывал скриншотик, где у ИИ винтовка разряженная в инвентаре, рядом лежит ещё одна и отдельно патроны к ней и надо выстрелить из винтовки. это по твоему как ифами ебануть то? а варианты где взять патроны, или винтовку, могут множится и множится.

внутри простых действий требующих навигацию разумеется проще пользоваться ифами.
нахуй вообще описывать перемещение в действии ГОАП? ты ещё там ебани всю логику перемещения, чтобы оно там следило когда бегать, когда прыгать, чтобы лезло в аниматор, позицию там проверяло. чтобы открыл а перед тобой стена текста тыщи на полторы строк в которой какая-то не читаемая мешанина. а когда отдаешь все это на откуп глобальному менеджеру и контролеру и уже можешь это читать и даже наследоваться от него и менять имплементацию деталей то все что остается делать в ГОАП это описать в действии перемещения одну сраную строчку. а нахуй оно надо то? лучше уж под врага завести экшон "ебануть врага номер такой" где в имплементации "если далеко то подбеги" и ссылка на врага чтобы можно было сказать менеджеру "беги хи-и-итро".

>Рили попробуй HTN
он не пользуется A* же. как таким в динамичном мире пользоватся? я понимаю георию графов достаточно хорошо чтобы понимать пользу от поиска пути на нем, чем ГОАП и является.

>>429842
что у тебя за проблемы такие? нахуй ты в трансформ вообще лезешь если у тебя RB? если у тебя RB то манипуляции уже делай все через него. у тебя же специальные AddForce, AddTorque и прочие есть которые гарантируют тебе что все будет через физон.

>>429798
лол ну ты тогда не первый в этом случае. а в шейдеры смоги. полезно же. например в бэтмане клево сделали, у них там везде есть поверхности под которыми ортогональная камера которая рендерит только глубину на максимальную дистанцию там где поверхность заканчивается. все что попадает в эту камеру рисует на ней. а нарисованное появляется на поверхности как карта всех этих вмятин. если бы не мобилки то можно было бы ещё ебануть всякую симуляцию в компьют шейдорах например что типа ветер дует и вмятины деформируются со временем.

>>429870
да через навмеш делай навигацию даже с тайтловой картой если у тебя никакой логики не завязано на этих тайтлах. если делаешь пошаговую стратегию то да, тайтлы нужны, а так то нахуй оно надо

>>429918
ебани свой редактор прямо в юнити. займет пару вечеров, а от страданий избавит на все время разработки проекта.

>>429970
почитай про ссылочные типы и про валуе типы, а потом подумай о том что строка это массив с буквами. тогда поймешь о чем речь тут идет. вообще можно и через теги проверять, просто не создавай каждый раз строку просто чтобы сравнить с ней, а пользуйся ссылкой на эту строку. тебе же инструменты дали заебись, пользуйся но с умом.
Аноним 06/08/17 Вск 00:30:54 #184 №430064 
>>430058
Ну да, у канваса трудно сделать первую ступеньку, но потом намного легче. На ютьюбе есть ролики от народа, они помогают.
А у Диалог Менеджер слишком переусложнен. Я так понимаю он сделан для тех кто вообще не хочет залезать в спрайты, так что там много всяких финтов странных, которые хуй просечешь. И документация хуевая, я за целый день так и не понял как напрямую из скрипта вызывать диалог, например. У НодКанваса это сразу же показывается. Алсо, может знающие пояснят, нахуя они впилили туда Lua?
Аноним 06/08/17 Вск 00:33:15 #185 №430065 
>>430059
Я не то чтобы доебаться, но ты шифт из клавы выдрал что ли?
Аноним 06/08/17 Вск 00:42:14 #186 №430066 
>>430065
meh
я и точки не пишу иногда. вот так общаешься в интернете два десятка лет, пишешь стены текста. а со временем техника печатания оптимизируется сама собой чтобы требовать меньше и меньше усилий. в итоге перестаешь давить на шифт, ставить точки, пользуешься грамматикой только там где это может вызвать недопонимание
Аноним 06/08/17 Вск 00:45:04 #187 №430067 
>>430066
Ну ты же лукавишь, запятые сами себя не прожмут.
Но а вообще, повторюсь, я без всякого этсамого.
Аноним 06/08/17 Вск 00:55:14 #188 №430068 
>>430067
запятые то нужны, без них страдает построение предложения и передача смысла. этим нельзя жертвовать на форумах. к тому же запятые ставятся нажимая правый шифт, а не левый. там если два пальца рядом то они сами нажимают это комбинацию. сложней ставить вопросительный знак, в русской расскладке он ну пиздец как неудобно расположен, чаще переключаюсь на английскую расскладку чтобы его поставить.
левый шифт я вообще предпочитаю не нажимать, разве что когда восклицательный знак ставлю то жму его, или кавычки в русской раскладке
вообще это большая тема и не в рамках обсуждения юнити она
Аноним 06/08/17 Вск 01:19:14 #189 №430070 
Уважаемые юнитибояре, поясните ньюфагу, как вы делаете в своих играх менюшки и окошки. Хотелось бы отделять код логики окна от кода всяких там анимаций, кнопочек и прочхуеты. Кнопки делаю из Image-ей. Поясню свою проблему.

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

В юньке вместо леайута по сути получается мой префаб окна. Но в шарпике же как я понял методы контроллера в виде коллбэков не покидаешь нормально в кнопки? Или я не прав? Вроде есть какие то "делегаты", но чет они слегка замудрено выглядят. Юнитискрипт не предлагать.

А для каждого окна пилить десяток классов кнопок (Button1Script, Button2Script, CloseButtonScript, ...) просто чтобы на клике по ним делать что-то по типу парент.гетКомпонент<контроллерОкошка>().методКоторыйДолжнаДернутьКнопка1() (и т.п), мне кажется неудобной хуетой. Вижу конечно частичное решение замутить некоторую "базовую" кнопку из имейджа и конкретные десять в окнах наследовать от нее, но это ж как то неудобно.

Как в итоге грамотно замутить подобную систему? Шоб повесить на префаб окошка скрипт контроллера и он десятку абсолютно идентичных с точки зрения кода кнопочек - прокинул свои методы, которые кнопочки будут послушно дергать? Другими словами, хочу повесить на 10 кнопок один и тот же скрипт (БазарюКнопка.cs), но чтобы он делал разные действия, которым его научит батя (контроллер окошка) уже где надо. Все ради того, чтобы в самой юньке один раз собранное окно ващщщще не шатать, а в случае если нужно будет что-то поправить, спокойно фиксить код. Или я довнич и это велосипед и лучше так не делать?
Аноним 06/08/17 Вск 01:20:48 #190 №430071 
>>430070
> как вы делаете в своих играх менюшки и окошки
Через UI
Дальше не читал
Аноним 06/08/17 Вск 01:27:40 #191 №430073 
>>430070
> Но в шарпике же как я понял методы контроллера в виде коллбэков не покидаешь нормально в кнопки?
неа, не прав. делегаты так-же отлично и через код присваиваются. ты бы API почитал. https://docs.unity3d.com/ScriptReference/UI.Button-onClick.html просто у юнити есть ещё этот редактор делегатов. как иначе делать менюшки например с выбором разрешения? это же охуеть можно.
делегаты это методы которые работают как значение. чтобы ты например мог куда-то сказать "вот тебе функция, ебани её когда сделаешь свое говно".
Аноним 06/08/17 Вск 01:29:25 #192 №430074 
>>430070
>>430071
Чет я сумбурно расписал, попробую проще:

Как запилить на C# такой скрипт (один на всю игру) для Image-а, чтобы он делал Image-ы (любые) универсальной кнопкой? (Как слушать события мышиные - понимаю). Чтобы кнопка не сама определяла, что она должна делать по клику, а кто-то извне ей сказал типа button.onClick = function "такая то".
Аноним 06/08/17 Вск 01:30:39 #193 №430076 
>>430074
> Как запилить на C# такой скрипт (один на всю игру) для Image-а, чтобы он делал Image-ы (любые) универсальной кнопкой?
Добро пожаловать в мир классов и наследования.
Аноним 06/08/17 Вск 01:31:37 #194 №430078 
>>430073
О, спасибо, анон, чет я ебался в глаза и не увидел что у уи уже есть Button, думал надо замутить Image и слушать клик самому (хотя наверное баттон делает то же самое).

Т.е. получается я делаю контрллер, вешаю его на окошко, заворачиваю его метод в делегат, делаю геткомпонент<ебанаяКнопка>() и ей его в поле сохраняю? а в TaskOnClick уже дергаю?
Аноним 06/08/17 Вск 01:34:49 #195 №430080 
>>430078
> Т.е. получается я делаю контрллер, вешаю его на окошко, заворачиваю его метод в делегат, делаю геткомпонент<ебанаяКнопка>() и ей его в поле сохраняю? а в TaskOnClick уже дергаю?
Усложняешь. В юнити в UI уже листнеры висят, вешай на всё что хочешь, если у тебя на войде публичный модификатор.
Аноним 06/08/17 Вск 01:39:22 #196 №430081 
>>430080
А если у меня будет скриптик MySuperAwesomeButton который там внутри кнопки слушает эвенты всякие и по разному ее анимирует (скажем скейлит при наведении, затемняет при клике, и тп), а я потом на те же самые эвенты понавешаю еще листенеров где-нибудь снаружи в контроллере, это не будет тормозно? Сужу все по тому же старому болезненному флэшу, где каждый ебаный эвент каждому своему листенеру при триггере порождал аллокацию и было выгоднее не 20 эвент листенеров регистрировать, а замутить 1 листенер который бы уже 20 методов разных дергал, или вообще коллбэками все обвязывать. Хотя наверное я дед инвалид и нормальные люди в юньке замутили хорошо...
Аноним 06/08/17 Вск 01:46:33 #197 №430084 
>>430074
да я же уже ответил на твой вопрос и ссылку дал. вот понимаешь? есть функция. а хуяк можно функцию передать как значение. это - делегат. вот есть у тебя кнопка та ты такой мояКнопка.onClick.AddListener(МояФункция); и тогда хопа кнопка будет делать твою функцию когда довиш на неё.
кстати ты это, осторожней с делегатами сделанными из кода. особенно осторожней с теми делегатами которые присваиваются в цыклах, где в качестве инпута есть енумератор.

>>430078
там в меню кстати ещё и не весь функционал мог увидеть. самое охуительное когда тыкаешь у выбранного геймобжекта AddComponent в меню инспектора и лезешь во вкладку Layout.
баттон то в целом делает то-же самое и делает это приятно. вообще если тебя интересует имплементация то эти хуи делали этот UI опенсорсным, можешь почитать. https://bitbucket.org/Unity-Technologies/ui

>>430081
лол ты чего страдаешь то так. тут же методы вроде OnDeselect, OnMove, OnPointerDown, OnPointerEnter, OnPointerExit, OnPointerUp, OnSelect и прочее прочее у тебя публичные, ты API почитай. некоторый функционал и так уже есть вроде изменения цвета при наведении курсора. наследуйся от кнопки, оверрайдни эти функции которые для этого и сделаны, сделай там любую сраную хуйню вплоть до того что при наведении на элемент интерфейса приступ эпилепсии мог случится. можно ещё встроеным редактором анимаий воспользоваться с кривыми чтобы окошко там приятно размеры меняло или ещё че.
вообще на https://www.assetstore.unity3d.com/en/#!/content/25468 вот тебе официальные экзамплы, посмотри что там и как оно сделано
Аноним 06/08/17 Вск 01:51:35 #198 №430085 
>>430064
>может знающие пояснят, нахуя они впилили туда Lua?

я >>430058
видосики нашлись и голос у говорящего приятный

Lua нужна для скриптирования, как я понял. Ясно, что можно было бы и обойтись чисто сисярпом.
Аноним 06/08/17 Вск 08:25:04 #199 №430098 
>>430059
>в действии должно быть описано только само исключительно само действие
Ты там засыпаешь уже? Навигацией занимается не действие, а навмеш и настройка над ним. Действие лишь даёт команду идти и задаёт образ передвижения. Все эти весёлые и занимательные стейты с поиском кустов будут только в навигаторе с синхронизацией через одно вхождение в ворлдстейт, без необходимости подстраивать всё.

>ты погромировал чтоли мало в своей жизни, шишки не набил
>это ебануться можно редактировать все это
>не доверял слишком много функциям которые вызываются хуй пойми когда и где?
>в какую мусорку превратится ГОАП

>скопипастить эти 3.5 строчки описывающие действие с новыми условиями
Бля не дави плиз((( Рассказываешь о чистоте действий и сразу копируешь строчки кода с новыми условиями и делаешь два похожих действия для стелса и его отсутствия. Интуитивно редактируемо.

>нахуй вообще описывать перемещение в действии ГОАП?
>ты погромировал чтоли мало в своей жизни
Про ООП не слышал? Действие не реализует движение, оно описывает его характер.

>он не пользуется A* же
Там прямой поиск по графу. H - это hierarchical

>я понимаю георию графов достаточно хорошо чтобы понимать пользу от поиска пути на нем
>чем ГОАП и является
Ты кстати и не рассказал какие планы ты строишь и пути ищешь. Вот был пример с обоймой и внтовкой, но почему это не сделать ифами?




Аноним 06/08/17 Вск 08:50:39 #200 №430099 
>>430098
>Навигацией занимается не действие, а навмеш и настройка над ним. Действие лишь даёт команду идти и задаёт образ передвижения. Все эти весёлые и занимательные стейты с поиском кустов будут только в навигаторе с синхронизацией через одно вхождение в ворлдстейт, без необходимости подстраивать всё.
чего план то такой хитрый? вот стейт ИИ сменился внутри гоапа, он стал у нас спрятанным, появилась возможность применять действия. но актуальный паттерн передвижения сменится только после следующего действия? тоесть типа стоит ИИ посреди поля в idle, понимает что он спрятался, видит враг идет и надо ебануть бы его и только тогда он приседает и ползет чтоли?

>Бля не дави плиз((( Рассказываешь о чистоте действий и сразу копируешь строчки кода с новыми условиями и делаешь два похожих действия для стелса и его отсутствия. Интуитивно редактируемо.
если занимают они 3.5 строчки, различаются одной кондицией пререкваермента то чего мудрить. назвал по другому. теперь у нас не StealthAttack, а SneakAttack, положил рядом. может ещё чего потом напишу. например StealthAttack чтобы делать надо сзади подбежать, а SneakAttack можно и не сзади. пока это два разных действия которые требуют хуй да нихуя описания то.

>Про ООП не слышал? Действие не реализует движение, оно описывает его характер.
как характер то описывать придумал?

>Там прямой поиск по графу. H - это hierarchical
там иерархический поиск по графу, сверху вниз. если бы делал РТС например где я всегда знал бы изначальную возможную последовательность действий и примерное их количество то это было бы адекватно. но не у меня.

>Ты кстати и не рассказал какие планы ты строишь и пути ищешь. Вот был пример с обоймой и внтовкой, но почему это не сделать ифами?
потому что винтовки может и не быть вообще, патрон может и не быть вообще, или чтобы их получить надо взять их, а чтобы взять надо залезть, а чтобы залезть надо ключ. разумеется некоторые действия скорей всего будут в конце, а некоторые скорей всего в начале, но учитывая все варианты цепочка может быть весьма длинной. как такое ифами то ебануть? а что если ебошить может не только винтовка, есть пистолет, но нет патрон к нему, но есть патроны к винтовке?
Аноним 06/08/17 Вск 11:53:19 #201 №430115 
Как выглядит строчка кода, чтобы засечь время?
Например :

if {прошло 2секунды после actiona}
...
Аноним 06/08/17 Вск 11:54:40 #202 №430116 
>>430115
Time хранит в себе время с момента запуска сцены. Используй его, Люк.
Аноним 06/08/17 Вск 11:57:44 #203 №430117 
>>430116
Time.time если быть точнее
Аноним 06/08/17 Вск 12:35:11 #204 №430129 
>>430099
>тоесть типа стоит ИИ посреди поля в idle, понимает что он спрятался, видит враг идет и надо ебануть бы его и только тогда он приседает и ползет чтоли?
Ты тралишь? Идл он будет с стелсе путём действия "сидеть в стелсе".
>ну вот лишнее действие! засрано всё
Но точно так же при переключении глобальных стейтов у тебя тоже действие идл на ифах будет обрабатываться иначе - спихивание кучи всего в одно место, от чего ты меня недавно предостерегал.

>если занимают они 3.5 строчки
А если больше, то уже что то ещё придумывать? А потом ещё что то новое?

>как характер то описывать придумал?
Передавать навигатору экземпляр класса NavigationContext очевидно же.

>а что если ебошить может не только винтовка, есть пистолет, но нет патрон к нему, но есть патроны к винтовке?
Ну то сеть мы лишнего в ГОАП не пихаем, но наличие всех видов оружия и патронов к ним мы там всёже храним?

>но учитывая все варианты цепочка может быть весьма длинной
Но весь однойзначной, не считаешь?
Что мешает сделать по ифу на видимость патронов, винтовки? Подбирание - действие с перемещением уже на ифах реализовано.
Аноним 06/08/17 Вск 12:40:17 #205 №430130 
>>430129
Угаманись блять угаманись пока я тебя не пристрелил.
GOAP это был неудачный эксперимент по использованию планировщиков для ИИ игор. Все признали, что это неудачно и никто сейчас его не использует.
Аноним 06/08/17 Вск 12:42:17 #206 №430131 
>>430130
> Все признали
"Все" это кто?
Аноним 06/08/17 Вск 13:16:25 #207 №430136 
>>430131
ИНДУСТРИЯ
Аноним 06/08/17 Вск 13:33:13 #208 №430141 DELETED
Стоит ли делать отдельно ноги и отдельно тело персонажа, и соответственно отдельно их анимировать?
Просто мне нужно сделать так, чтобы игрок мог стрелять стоя(соответственно нужно анимировать отдачу), а мог стрелять на бегу.
Или это можно как-то по-другому сделать?
Аноним 06/08/17 Вск 13:39:53 #209 №430143 
>>430141
> Или это можно как-то по-другому сделать?
Blend trees.
Аноним 06/08/17 Вск 14:04:41 #210 №430170 
Пилю пиксельную игру. Я так понимаю мне нужно взять одно разрешение, например 16:9, и пилить под него? И если это запустят люди с другим разрешением, то у них это будет с черными полосами по бокам или сверху? По другому никак нельзя? Например расширять поле обзора?
Аноним 06/08/17 Вск 14:32:49 #211 №430181 
>>430170
Пилильщик блин, ты б сначала самые элементарные азы почитал.
Ctrl+Shift+B - Player settings - Resolution and Presentation
Аноним 06/08/17 Вск 14:39:11 #212 №430182 
>>430131
/gd/
Аноним 06/08/17 Вск 14:54:49 #213 №430186 
>>430136
И к чему пришла индустрия?
Аноним 06/08/17 Вск 15:05:35 #214 №430188 
>>430186
К тому, что ничего проще и лучше behavior tree нету
http://www.gdcvault.com/play/1023055/AI-Behavior-Editing-and-Debugging
Аноним 06/08/17 Вск 15:09:07 #215 №430189 
>>430188
>Division
Результат заметен.
Аноним 06/08/17 Вск 16:30:19 #216 №430225 
>>430181
Лол. Я уже полгода изучаю юнити, но про это окно узнал впервые. Уже делаю нормальные пиксели, как боженька завещал.
Кстати, зачем нужна галочка "Pixel Snap" на шейдерах? Что именно он снепит?
Аноним 06/08/17 Вск 17:44:58 #217 №430250 
>>430188
>ничего проще
>FSM
Аноним 06/08/17 Вск 18:09:41 #218 №430263 
>>430250
behaviour tree намного проще на самом деле
меньше boilerplate-кода
ты охуеешь делать стейт машины, если у тебя много состояний
Аноним 06/08/17 Вск 18:46:47 #219 №430272 
>>430129
>Ты тралишь? Идл он будет с стелсе путём действия "сидеть в стелсе".
а что гарантировать то будет смену статуса? или что будет гарантировать то что стелс не вскроется потому что ИИ неожиданно захочет грибов собрать?

>Но точно так же при переключении глобальных стейтов у тебя тоже действие идл на ифах будет обрабатываться иначе - спихивание кучи всего в одно место, от чего ты меня недавно предостерегал.
ты же понимаешь что глобальные статусы будут активироватся не зависимо от текущего действия? вообще с чего бы в моем варианте обрабатыватся в одном месте то? я наоборот все разделяю. логика получения статуса отдельно, имплементация статуса отдельно, планирование отдельно, ничего друг другу не мешает.

>А если больше, то уже что то ещё придумывать? А потом ещё что то новое?
ну а хули? множить классы ничего не мешает пока они компактные.

>Ну то сеть мы лишнего в ГОАП не пихаем, но наличие всех видов оружия и патронов к ним мы там всёже храним?
ну а как ещё то? вообще каждый предмет должен хранить список экшонов связанных с ним, чтобы само наличие их давало варианты. использование плюса динамичного листа экшонов, хули.

>Что мешает сделать по ифу на видимость патронов, винтовки?
то что вкладки с ифами будут правей чем граница монитора?

>>430130
да что ты. вон на вскидку в третем фолаче ГОАП, в DeusEx:HR тоже ГОАП.

>>430141
https://unity3d.com/ru/learn/tutorials/topics/animation/avatar-masks


Аноним 06/08/17 Вск 19:50:04 #220 №430306 
>>430272
>а что гарантировать то будет смену статуса?
Какую смену статуса? Он будет выполнять то, что требует приоритетная цель. Он будет сидеть в стелсе потому что это необходимо для текущей цели и действий, которые к ней ведут.
>или что будет гарантировать то что стелс не вскроется потому что ИИ неожиданно захочет грибов собрать?
Это уже совсем другое действие ведущее к другой цели. Но банально собирание грибов имеет как прекондишн отсутствие врагов.

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

>множить классы
>вот 3 строчки копирую, а потом ещё что
>множить классы

>ну а как ещё то?
Завести глобальный стейт для текущего оружия же

>>430263
>behaviour tree намного проще на самом деле
Редактировать деревья гораздо сложнее.

>ты охуеешь делать стейт машины, если у тебя много состояний
>стейт машины
>СТРИПС
Аноним 06/08/17 Вск 20:06:43 #221 №430312 
>>430306
>Какую смену статуса? Он будет выполнять то, что требует приоритетная цель. Он будет сидеть в стелсе потому что это необходимо для текущей цели и действий, которые к ней ведут.
смену паттерна действий. чтобы сел в стелс и сидел там и это не прерывалось ничем пока стелс активен.

>Это уже совсем другое действие ведущее к другой цели. Но банально собирание грибов имеет как прекондишн отсутствие врагов.
тоесть у тебя будет отдельно собирание грибов чтоли? не будет дженерик действия "собрать предмет"? а что если надо оружие поднять в бою?

>Ты читал про что речь? Действие идл будет иметь несколько вариантов выполнения в зависимости от стейта. Или же будет несколько действий идл, зависимых от стейта? В чём тогда смысл отбора контроля за ним у планировщика?
слыш, мне вот интересно. а у тебя будет 3-5 вариантов под каждое действие чтоли? типа, идл в стелсе, идл нервный, идл хромой, идл выпивший и прочее? или вот если у тебя статус хранится как флажок в ГОАП, то как ты будешь менять модификаторы трешхолда у гоалов которые изначально бы зависели от статуса персонажа? когда например если персонаж счастлив то он мороженое хочет покупать, а когда грустно ему то он виски выпить в баре хочет.

>Завести глобальный стейт для текущего оружия же
а типы патронов как различать, м?
Аноним 06/08/17 Вск 20:34:52 #222 №430335 
>>430312
>не прерывалось ничем пока стелс активен.
Написано же следование приоритетной цели, если текущий план валиден, то ничто не прервёт стелс.

>не будет дженерик действия "собрать предмет"? а что если надо оружие поднять в бою?
Дженерик собирание грибов с динамическими прекондишенами. У нас же обратный поиск, планер будет знать контекст подбирания предмета.

>типа, идл в стелсе, идл нервный, идл хромой, идл выпивший и прочее?
Да. Часть действий можно конечно свернуть в одно, если это не влияет на планирование.

>или вот если у тебя статус хранится как флажок в ГОАП, то как ты будешь менять модификаторы трешхолда у гоалов которые изначально бы зависели от статуса персонажа?
Процедурно извне.

>когда например если персонаж счастлив то он мороженое хочет покупать, а когда грустно ему то он виски выпить в баре хочет
Некорректное сравнение со стелсом. Грустным или радостным персонаж становится извне, что может менять приоритеты целей. Но в стелс АИ должен уходить сам, добивая своей цели по уничтожению противника.
Аноним 06/08/17 Вск 20:44:49 #223 №430341 
Мимо тот же переселенец с флэша. Мануалы не читай - гдач спрашивай!

Сделал простенький дисплейчик - картинка и текст, прилепил на него скрипт (MyYobaDisplay), где на Start считываю компоненты дисплейчика в переменные и есть метод SetData(data:MyYobaData), в котором компонентам из переменных задаю параметры из этой самой даты (тексту стрингу, картинке цвет). Сделал "окно" в которое накидал с десяток таких дисплейчиков. Сделал контроллер окошка, в нем на Start ищу все MyYobaDisplay-и, сохраняю их к себе и генерю для них MyYobaData-ы, и сразу им прокидываю. Но поскольку Start бати (контроллера) логично дергается раньше чем Start чилдов (дисплеев), то в момент когда батей делаю SetData им, у них внутри еще нет ссылочки на их компоненты и они не могут нормально покраситься исходя из прокинутой датки.

Внимание вопрос: как "батей" грамотно подождать инициализации всех чилдов? Делать костыль с флагом на первом апдейте? А не будут ли тогда на долю секунды видны пустые белые хуйни с дефолтным текстом у MyYobaDisplay-ев? В юньке наверняка есть более грамотный метод шобы сделать пиздато... Может эвент какой подождать надо и на нем уже датку прокидывать? Как тру пацаны делают?
Аноним 06/08/17 Вск 20:59:18 #224 №430344 
>>430341
upd:
Сделал очевидное решение - у дисплея храню датку внутри, и перерисовываю его на Start исходя из датки. Но все равно сцуко медленно, запустив сцену кнопочкой Play в юньке, сначала вижу почти полсекунды дефолтный белый дисплей и только потом он окрашивается в нужный цвет. Как-то можно запилить чтобы он сразу выглядел как надо?

И вообще почему так, это GetComponent такой медленный или другие причины (дебаг билд?)?
Аноним 06/08/17 Вск 22:32:07 #225 №430397 
Необходима следующая логика (опишу на примере TD, хотя у меня не TD, это неважно): вот есть активные объекты (башни), есть крипы. Башням надо искать следующую цель: она берёт список крипов, итерируется по нему и находит нужного пиздюка. Делает она это с помощью FindGameObjectsWithTag("пиздюк"). Проблема в том, что башен много и пиздюков много. Как грамотней реализовать? Создать один скрипт, который хранит пиздюков: удаляет/добавляет в список, а остальные башни лезут к нему за инфой? Как сделать так, чтобы этот срипт запускался вперёд скриптов башен, чтоб инфа была актуальна?
Аноним 06/08/17 Вск 23:49:06 #226 №430410 
Clip2net170330002004.png
Что вы обычно делаете глобальными переменными? Я просто не совсем понимаю когда их нужно использовать. Хорошая ли идея сделать глобальной переменной ссылку на объект игрока?
Аноним 07/08/17 Пнд 00:22:19 #227 №430411 DELETED
>>430410
Singleton
Аноним 07/08/17 Пнд 00:28:53 #228 №430412 
>>430411
Анти-паттерн.
Аноним 07/08/17 Пнд 00:35:47 #229 №430413 
>>430397
>Как грамотней реализовать? Создать один скрипт, который хранит пиздюков: удаляет/добавляет в список, а остальные башни лезут к нему за инфой?
Да.
>Как сделать так, чтобы этот срипт запускался вперёд скриптов башен, чтоб инфа была актуальна?
Awake? Ну или в редакторе можешь поменять очередность выполнения скриптов. Но через Awake, думаю, все решится.
Ну и если хочешь ссылаться башнями на эту логику, то вызываешь в этой логике ивент по удалению/добавлению пиздюка, типа OnPizdukiListChanged. Ну и в классе башни подписываешься на этот ивент. Через ObservableCollection можно ебануть, например.
Аноним 07/08/17 Пнд 00:39:58 #230 №430414 
>>430397
Алсо, всякие там "Find" и "GetComponent" без крайней надобности не используй, ну или когда не важны фпсы, например(загрузка сцены там, еще чего-нибудь). Конкретно здесь они, например, нахуй не нужны. Да и вообще, я бы сказал, нужны крайне редко или не нужны вовсе - нужно лишь сделать нормальную архитектуру.
Аноним 07/08/17 Пнд 01:13:38 #231 №430420 DELETED
>>430412
Вообще похуй, особенно если ты один игру делаешь.
Аноним 07/08/17 Пнд 02:46:59 #232 №430427 
>>430420
Я, например, делаю игру один и могу сказать, что вообще не похуй. Захочешь сделать какой-то скилл, например, или предмет там - тебя трахнет твой собственный код, а точнее ты сам себя трахнешь. И будешь сидеть и голову ломать, как в своей же понаписанной архитектуре что-нибудь добавить. Или будешь переписывать и в итоге придешь к тому, что надо было сделать изначально.
С нормальным же кодом, архитектурой, решение новых задач становится легким, приятным и лаконичным. Твой код сам тебе подсказывает решение и даже может делать за тебя всю работу.
Аноним 07/08/17 Пнд 04:01:10 #233 №430430 DELETED
>>430427
Синглтон вряд ли всю архитектуру уничтожит.
Аноним 07/08/17 Пнд 05:03:10 #234 №430433 
>>430427
>скилл
>синглтон
Твоя проблема не в синглтонах, а в том, что ты не очень умный.
Аноним 07/08/17 Пнд 06:46:04 #235 №430435 
>>430335
>Написано же следование приоритетной цели, если текущий план валиден, то ничто не прервёт стелс.
я то про сохранение стелса на протяжении нескольких планов.

>Дженерик собирание грибов с динамическими прекондишенами. У нас же обратный поиск, планер будет знать контекст подбирания предмета.
а тебе непонятно чтоли что прекондиции зависят от контекста? например грибы собрать чтобы сожрать, или собрать грибы чтобы сделать из них яд, или в конце концов собрать грибы кинуть их во врага. ты контекст чтобы собрался в гоап совать? обратный поиск то это всего лишь нахождение пути с конца, а не с начала, когда ты от цели идешь к началу собирая в статус мира не эффекты, а рекваерменты. контекст ты по прежнему сунуть только в эффекты и рекваерменты действия можешь. представить то можешь какая у тебя мешанина из флагов будет? или что, ты собрался сделать полный пиздец но ещё хранить флаги о контексте в вариантах действия с самим предметом? типа, вот гриб лежит, ядовитый, у него два действия "поднять чтобы кинуть во врага" и "поднять чтобы сделать яд"? и они стопроцентно ничем не будут отличатся до конца жизни проекта кроме как одним флагом?

>Да. Часть действий можно конечно свернуть в одно, если это не влияет на планирование.
как бы я тебе уже давно говорю. разные варианты одного и того-же действия вообще не влияют на планирование. они у тебя влияют ололо на паттерн передвижения только почему-то. даже при отсутствии передвижения.

>Процедурно извне.
>Некорректное сравнение со стелсом. Грустным или радостным персонаж становится извне, что может менять приоритеты целей.
что ещё за "извне"? это вопрос того где хранить переменные с модификаторами чтоли? типа у ИИ есть ещё какой-то внешний советчик который говорит ему его статус?

>Но в стелс АИ должен уходить сам, добивая своей цели по уничтожению противника.
как-бы стелс это такой-же модификатор трешхолдов для целей же. ИИ хопа в стелсе и сразу у целей связанных с стелсом меняются приоритеты.

>>430341
>Сделал простенький дисплейчик - картинка и текст, прилепил на него скрипт
если у тебя такая вложенная иерархия то не имплементируй Start/Awake/OnEnable у его чайлдов, а просто заведи метод у них "DoShit(ParrentClass)" и вызывай его из верхнего класса передавая в параметры самого себя. ну или ещё лучше - паредавай не инстанс класса, а интерфейс.

>>430397
на самом деле поиск через FindGameObjectsWithTag мало чем отличается от того что ты сам будешь список говна составлять, юнити же не ходит по всей сцене когда ты это вызываешь, оно тебе просто список говна возвращает. хотя применимо это разве что для тагов. на мой вкус у тебя всего одна проблема - нахождение ближайшей цели. тут уже манипуляции в духе дистанции без квадратного корня врядли спасут. может quadtree ебанешь чтобы весь список не перебирать хотя-бы?

>>430410
все что существует в одном экземпляре, или то что регулярно чем-то из этого списка используется.

да, идея хорошая, но НЕ следует пользоватся этой переменной всегда-всегда. например вот надо сказать камере "следуй за игроком" и камера полетела взяв ссылку на игрока и схватила его трансформ. или вот менеджер интерфейса чтобы хочет показать сколько у игрока ХП, лезет в глобальную переменную и смотрит сколько там у него ХП и показывает. а если у тебя там в игре снаряд разорвался, то разумеется лезть в такую глобальную хуйню не следует.
Аноним 07/08/17 Пнд 14:35:03 #236 №430613 
Есть ли какие-то профиты от использования мультитрединга в юньке? Я так понял, Unity API можно вызывать только из главного потока, соответственно, потоки стоит использовать только для расчетов каких-то своих? Типа построение маршрутов для ИИ, но подвинуть модельку этого ИИ ты не сможешь из соседнего потока хотя можно построить велосипед с передачей команд в главный поток и корутинами, но это другая история

И получается, всё что касается использования ядер и так далее - можно вообще не заморачиваться, ибо никаких настроек в юньке по этому поводу толком нет, а что можно - само разобьётся по нужным ядрам?
Аноним 07/08/17 Пнд 14:55:45 #237 №430626 
Что вообще такое эти ваши префабы? Я имею в виду, как они хранятся в райнтайме, что они такое? Насколько верным будет утверждение, что это просто ГО, которые Disable+readonly?

Вот допустим есть у меня префаб prefab_manager, он имеет ссылки на все префабы. Так же есть ГО game_manager, которые имеет ссылку на префаб (не ГО!) префаб_менеджера. Когда гейм_менеджер хочет инстанциировать камеру, он делает типа Instantiate(prefab_manager.camera_prefab);

И вот чего я здесь решительно не понимаю, так это почему не выдаёт ошибку о том, что кагбэ экземпляра префаб_менеджера не существует! А ведь camera_prefab это не статическое поле! То есть без создания экземпляра префаб_менеджера мы не должны иметь доступа к полям, ибо их вообще нет нигде, они никому не принадлежат. Но пример абзацем выше работает. Почему?!

Окей. Вот еще пример. Есть в сцене ГО, в скрипте которого написано public SomePrefab sp; и потом в редакторе назначаем ссылку на этот sp - перетаскиваем SomePrefab в инспектор того ГО, который в сцене.

Так как SomePrefab является ссылочным типом, а нигде в коде я не делаю new или присваивание, но при этом экземляр типа SomePrefab доступен, как и все его поля (не статичные!), то получается только один вариант? Юнити имеет ГО этого SomePrefab и мы работаем с ним.

И что, если у меня в качестве этого SomePrefab будет огромный уровень или еще что-то такое с "тяжелыми" компонентами и так далее? Получается, юнити создаёт как минимум по одному экземпляру каждого префаба? Что жрёт оперативку и тд и тп....

Где я не прав? Буду рад любой информации.
Аноним 07/08/17 Пнд 15:04:02 #238 №430635 
>>430613
йеп. потоки в юнити только для какой-то своей хуйни, а что-то этакое оно сделает само.

ну а профиты разумеется есть когда ты делаешь какую-то хуйню которой в главном треде быть не должно

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

кстати эти ссылки переживают сериализацию юнити, при повторной загрузке они по прежнему будут ссылатся на один и тот-же объект.

у юнити кстати ещё и специальная хуйня существует ScriptableObject которая специально для хранения данных, а не геймобжектов которая так-же сериализуется.
хотя имеет свои минусы.
Аноним 07/08/17 Пнд 15:07:19 #239 №430639 
>а также ваши доходы ограничены 100 000 долларов в год
Не понял, как это регулируется? Вот встрою я в свое говноподелие трусики на героиню за донат, и кто будет следить за объемом доходов?
Мимо ньюфаг
Аноним 07/08/17 Пнд 15:31:09 #240 №430670 
>>430059
Чёт я глянул на шейдоры - трудна.
Ну, допустим, я буду использовать сорт оф дисплейсмент и во время игры рисовать по текстуре. А с нормалями чё делать? Никакого волшебного рекалкулейт нет. В интернетах какие-то грандиозные алгоритмы.
Аноним 07/08/17 Пнд 15:48:45 #241 №430691 
>>430626
>>430635
Вообще, кстати, юнити далеко не всегда создает инстансы обьектов, если тебе интересно. если хочешь то воспользуйся https://docs.unity3d.com/ScriptReference/ISerializationCallbackReceiver.html чтобы узнать когда там че происходит.

впрочем префабы с охуительными массивами в компонентах действительно могут обосрать все.

>>430670
rконечно трудно, там кругом всякие тайные слова.
https://docs.unity3d.com/ScriptReference/Mesh.RecalculateNormals.html это чтоли хочешь
Аноним 07/08/17 Пнд 15:52:38 #242 №430696 
>>430691
Оно, только мне в шейдоре нужно.
Аноним 07/08/17 Пнд 16:11:31 #243 №430705 
>>430696
а, это. а хуй его знает, можно самому считать нормали конечно. но вообще как насчет того что иметь две текстуры? одну для дисплейсмента другую для нормалей. можно же на местах куда давят не только глубину брать, но и нормаль того что камера видит и поворачивать её наоборот.
Аноним 07/08/17 Пнд 16:14:50 #244 №430708 
>>430705
Где это почитать можно? Не совсем понимаю, как это всё с глубиной и камерой. Я предполагал просто рисовать чёрным по серой текстуре.
Аноним 07/08/17 Пнд 16:19:31 #245 №430714 
>>430708
даже не знаю откуда начать и чего тебе такого дать. почитай про render texture наверно для начала, камера может рендерить туда, а ты берешь оттуда.
Аноним 07/08/17 Пнд 16:22:16 #246 №430721 
>>430714
а во. https://docs.unity3d.com/Manual/SL-CameraDepthTexture.html отдельная страничка даже есть
Аноним 07/08/17 Пнд 18:24:00 #247 №430909 
В чем суть сериализации? Каждая вторая статья по юнити говорит мне СЕРИАЛИЗАЦИЯ, СЕРИАЛИЗАЦИЯ!!! МОНОБЕХИ ДЛЯ ЛОХОВ, ScriptableObject ДЛЯ ПОЧОНОВ! и тому подобное.

Но я никак не могу вдуплить. Зачем нам какая-то там сериализация, типа сохранять данные обьекта как последовательность байтов, если мы можем не записывать всё подряд а написать просто пару цифр, подразумевая что первая, например, это LVL, вторая это HP и так далее. Это же быстрее, меньше писанины в файлах, и никаких заморочек с атрибутами и возни с капризами юнити аля "ЭТО Я ХОЧУ СЕРИАЛИЗОВАТЬ, ТО Я НЕ ХОЧУ, БУДУ СБРАСЫВАТЬ" etc

Типа последовательность байтов быстрее считывается, чем просто несколько циферок, несмотря на то что в первом случае размер файла будет гораздо больше?
Или может это как раз для "удобства"? Типа написал чето в стиле "ну-ка, юнька, сериализуй-ка мне объект враг_3182", и типа можно не заморачиваться, какие там переменные хуеменные, позиция, вращение, кадр анимации, итд?
Аноним 07/08/17 Пнд 18:41:16 #248 №430943 
>>430909
>написать просто пару цифр, подразумевая что первая, например, это LVL, вторая это HP и так далее
писать свою сериализацию то не затрахаешься на каждый тип данных?
Аноним 07/08/17 Пнд 18:46:03 #249 №430949 
>>430909
Сериализация она разная бывает.
Я десериализую игровые объекты из json-файлов, например. Добавлять новые быстро, удобно, и не требует пересборки проекта. Это первое.
Второе - без сериализации ты не запилишь сейвы.
Аноним 07/08/17 Пнд 18:53:53 #250 №430956 
>>430909
>мы можем не записывать всё подряд а написать просто пару цифр, подразумевая что первая, например, это LVL, вторая это HP и так далее

Избирательная сериализация, это тоже сериализация. Если ты хочешь делать это сам, то ради бога. Однако изначальный смысл использования Юнити это отсутствие необходимости изобретать собственные велосипеды и тратить на это время. Поэтому оно так и преподносится, дескать всё для тебя заранее запрограммировали, надо только вызвать пару методов.
Аноним 07/08/17 Пнд 18:59:53 #251 №430966 
>>430956
хуево сделали только. юнити нонстоп сериализует всё подряд, они так и не сделали сериализацию абстрактных переменных. ещё эти манипуляции с hideFlags. гондоны.
Аноним 07/08/17 Пнд 19:25:48 #252 №430996 
В соседнем треде задавал вопрос, но все скатили в метание говном и троллеркоастер. Спрошу здесь.
Использую [SerializeField] на все поля, которые хочу задавать через редактор, но не хочу делать public. Можно ли так вообще делать? Чем это может быть чревато?
Аноним 07/08/17 Пнд 19:27:13 #253 №430997 
>>430996
да ничем. сериализует и ладно.
Аноним 07/08/17 Пнд 19:57:38 #254 №431052 
>>430721
Спасибо. А не становится ли оно всё слишком сложно для мобилки?
Аноним 07/08/17 Пнд 20:26:27 #255 №431100 
Безымянный.jpg
>>428774
совершена первая в истории человечества конпеляция. ну почти.

в общем, я столкнулся с теоретической проблемой. так-как граф один, а функций как минимум ДВЕ (vertex и fragment), то теоретически ведь может получиться так, что будет такой конфликт зависимостей, когда один node использует значение другого, который вычисляется уже после него или вообще в другой функции. Как-то так.
Аноним 07/08/17 Пнд 21:00:25 #256 №431147 
>>431052
Блять, да ну его нахуй. Ещё эти обрывчатые сведения по самым тёмным углам интернета собирать. Лучше вертексы двигать.
Аноним 07/08/17 Пнд 22:04:14 #257 №431265 
>>427717 (OP)
Когда выходит Юнити 2017?
Аноним 07/08/17 Пнд 22:05:36 #258 №431268 
>>431265
В 2017
Аноним 07/08/17 Пнд 22:32:38 #259 №431310 
g-pe8LXh.jpeg
>>431265
Аноним 07/08/17 Пнд 22:35:14 #260 №431313 
>>431100
В общем я решил сделать по дереву для каждой функции шейдера отдельно.
Непонимаю, почему во всех редакторах все сведено к одному дереву. Это сильно ограничивает программируемость шейдеров
Аноним 07/08/17 Пнд 22:36:19 #261 №431316 
>>431313
По сути, все что можно напрограммировать в вертексном шейдоре во всех нодовых редакторах - это всего-лишь добавить смешение вершине. И все.
Аноним 08/08/17 Втр 01:34:39 #262 №431610 
cimg3709.jpg
Извиняюсь за нубский вопрос, но как все-таки правильно двигать объекты? Везде блин противоречивая информация.

Как я понимаю: беру трансформу с коллайдером, цепляю rigidbody, без rigidbody двигать коллайдеры табу, ибо они static(или нет?). Далее, если тело кинематическое, я двигаю его через Rigidbody.Moverotation и Moveposition. Или через transform.position/rotation?? Есть разница? Одни пишут что через трансформу - нельзя, другие - что нужно, третьи советуют гонять трансформу вообще без rigidbody.

И еще, с чем все-таки сочетается CharacterController, с кинематическим телом??? Без rigidbody? В примерах вроде кинематика стоит.

Если не кинематическое, вроде все понятно, AddForce/AddTorque...
Аноним 08/08/17 Втр 01:44:43 #263 №431636 DELETED
>>431610
Как делаю я:
Вешаю коллайдер и ригидбоди(фриз ротейшен по х и z) на игрока, дальше просто делаю аддфорс.
Не знаю зачем все эти чарактер контроллеры, когда так все прозрачно, просто и понятно, а главное работает.
Аноним 08/08/17 Втр 02:05:51 #264 №431691 
>>431636
С аддфорсом у тебя получается реалистичная физика, с инерцией и прочее, или ты трением все это гасишь?

Нашел кстати вот исследование по коллайдерам:
https://forum.unity3d.com/threads/moving-static-colliders-performance.474772/

Говорят начиная с Юнити 5 можно двигать статику(коллайдер без ригидбоди), и это даже быстрее, чем кинематика. Кажется, документация пиздит.
Аноним 08/08/17 Втр 02:22:09 #265 №431737 DELETED
>>431691
> С аддфорсом у тебя получается реалистичная физика, с инерцией и прочее, или ты трением все это гасишь?
Ну инерция есть, трение есть. Меня устраивает.
Аноним 08/08/17 Втр 03:16:20 #266 №431876 
>>431691
Черт, кинематика проходит сквозь стены. Как же ее тогда использовать? Неужели есть два стула - реалистичная физика или CharacterController? Или самому писать детектор коллизий...
Аноним 08/08/17 Втр 03:26:03 #267 №431900 
1323824808029.jpg
>>431876
Похоже зря я выебал себе мозги, можно юзать обычное ригидбоди, и двигать его MovePosition. Слишком серьезно подошел к документации, мать ее за ногу.

Еще такой момент, видел в видосе в FixedUpdate домножали вектор передвижения на Time.FixedDeltaTime. Но ведь фикс апдейт и так фиксированный, по идее это сработает просто как константа?
Аноним 08/08/17 Втр 03:28:25 #268 №431908 DELETED
>>431900
Да нахуя? Делай как я через ригидбоди и адд форс. Это потом даст профиты.
Например если ты навмешагента повесишь - коллайдеры не будут работать нормально без ригидбоди, а с ригидбоди все охуенно.
> реалистичная физика
Она не реалистичная. Она такая, какую ты захочешь.
Аноним 08/08/17 Втр 03:53:20 #269 №431960 
148008596513659517.jpg
>>431908
Ну да, либо как ты говоришь, либо через MovePosition. Кстати глянул, в туториале они двигают через MovePosition в FixedUpdate, домноженный на time.deltaTime(чтобы обеспечить независимость от степа FixedUpdate, который оказывается можно менять). Такие дела.
Аноним 08/08/17 Втр 05:47:12 #270 №432211 
>>431960
На time.deltaTime умножают чтобы скорость движения была одинаковой при любом FPS.
Аноним 08/08/17 Втр 08:42:10 #271 №432542 
>>431960
>>432211
Чов? Дельтатайм в фикседАпдейт? Что за хуйня?
Аноним 08/08/17 Втр 11:24:11 #272 №432920 
sresh.png
Учимся программировать на Среше...
Аноним 08/08/17 Втр 11:27:33 #273 №432933 
>>432920
Проснись, ты программируешь!
Аноним 08/08/17 Втр 12:54:10 #274 №433181 
1.png
123123123.png
>>431100
клева, да.
а я эти дни потратил на вдумчивое чтение того говна что сунули в это dll. репу почесал и подумал что что-то мне эта хуйня не нравится. в итоге занимался тем что скурчивал сидение и колеса от этого велосипеда и приделывал к своему.
пока приделывал, кстати, обнаружил что есть такая хуйня как GenericMenu которое вот для контекстных меню сделали специально. сразу все стало по человечески.

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

>>431316
ещё вертексное освещение же делать можно и вабще

>>431052
да вроде нормально! рендерить только глубину и нормали то уж мобилки смогут.

>>431147
а ты все равно пытайся! вот у меня только с третьего наскока мотивации хватило. там везде какие-то тайные знания, да. зато какое могущество! смари какую хуйню можно делать в вычислительных шейдорах! здорово же

>>432542
в документации кстати написано что дельтатайм имеет разный результат в апдейте и фиксед апдейте. сам не проверял.
Аноним 08/08/17 Втр 13:24:35 #275 №433265 
>>433181
Ты откуда такой продвинутый? Я тоже так хочу.
Аноним 08/08/17 Втр 14:00:44 #276 №433342 
>>427717 (OP)
Посоны, а есть тут какие-нибудь КОМАНДЫ? Чтобы сидели в своих сычевальнях и вместе делали что-то. Есть такие? А можно к вам?
Аноним 08/08/17 Втр 15:11:01 #277 №433473 
>>433181
> в вычислительных
Я и простые-то осилить не могу. А в чём соль вычислительных - даже не понял. В том, что они могут вернуть какую-то информацию процессору? И с мобилками не понял. Будто они плохо дружат.
Аноним 08/08/17 Втр 15:20:38 #278 №433492 
Снимок экрана 2017-08-08 в 16.04.59.png
Ну что вот за хуйня
Пытаюсь выстрелить из калаша процедурно созданным шаром--
он летит прямо как надо,но как только я через instantiate стреляю префабом пули -- она летит в точку 0,0,0 или хз еще куда,при том что код тот же самый,ниче не меняется,префаб пули никакого кода не исполняет,повернут как надо,все 10 раз перепроверил
Аноним 08/08/17 Втр 15:38:50 #279 №433526 
Unity 2017-05-20 10-44-46-51.png
Unity 2017-05-26 17-59-51-38.png
Unity 2017-05-25 11-14-14-66.png
Unity.png
>>433265
тогда садись и крути это говно днями.

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

ну а про мобилки - мобилки чтото могут. наверно то что я предложил с тайной камерой они тоже смогут. я не знаю, я не проверял.

>>433492
да ты код нам дай, мы же не провидцы
Аноним 08/08/17 Втр 15:47:00 #280 №433537 
>>433526
Впечатляющая штука. А может ты ещё и литературы по ним подкинешь? Или видосиков на трубе хватит? Ну и, собственно, куда их цеплять? Обычный в материал втыкается, а этот куда?
Аноним 08/08/17 Втр 16:00:06 #281 №433558 
>>433537
по ним информации довольно много можно найти на самом деле, она больше собрана в кучу. вон на хабре например приятная статья была https://habrahabr.ru/post/248755/ правда про то какие индексы каким тредам присваиваются нигде нормально не рассказывают и там тоже есть свои тайные слова которые можно в код добавлять.

цеплять их никуда не надо, надо создать через Create>Shader>Compute Shader, потом сослатся на него, сунуть в него данные, взять кернел и сказать ему чтобы он делал все. а потом забрать то что он сделал. или не забирать а заставить другой шейдор залезть туда и нарисовать.

с мобилками правда оно не особо дружит, если тебе это важно. но хоть с синтаксисом ознакомишься, может после этого и в обычные шейдоры проникнешь.
Аноним 08/08/17 Втр 16:04:12 #282 №433563 
>>433558
Во, отлично, спасибо. Ну а на ведре потом сам гляну, как оно будет себя вести.
Аноним 08/08/17 Втр 16:07:27 #283 №433568 
>>433181
>у меня есть схожая проблема. нельзя чтобы на графе были замкнутые круги.
лел, тоже об это подумал. Я так понимаю, что такие закольцованые ноды - это ошибка. Как это во всяких Shader Forge сделано, интересно.

А как-ты вычисляешь значения в своих нодах?
Аноним 08/08/17 Втр 16:22:55 #284 №433594 
>>433568
иерархично снизу вверх. в прошлом прототипе у меня были ноды-ассеты, где в качестве инпута были собственно всякие ассеты. какие-то ноды рисовали траву, какие-то деревья, какие-то текстурки на земле, какие-то геймобжекты расставляли всякие вроде грибочков под деревьями. ноды-ассеты смотрели: "у нас есть такие слоты, граф, давай мне инпут из этих слотов". граф лез в ноды которые присоединены в этот слот и просил аутпут уже у них, а если ещё и этим нодам нужен какой-то инпут то так и следовал по цепочке до самого верха. ну и все это разумеется громко ругалось в консоль если я пытался применить граф с нодами где не заполнены слоты с обязательным инпутом.

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

а в шейдор фордже не знаю. я им не пользовался. наверно примерно так-же. проверяют и кнопка "сделать шейдор" не включается пока граф не валиден. наверно тоже проверяют всю цепочку чтобы левые ноды смотрели только в сторону инпута, а правые только в сторону аутпута.
Аноним 08/08/17 Втр 16:26:58 #285 №433605 
>>433594
хотя кстати хуй даже знает как поступать с всем этим многообразием типов. всякие там float float2 float3 float4 float4x4 и так далее то. для каждого типа свои специфичные ноды чтоли писать?
Аноним 08/08/17 Втр 16:39:39 #286 №433623 
>>433563
кстати чуть не забыл. http://on-demand.gputechconf.com/gtc/2010/presentations/S12312-DirectCompute-Pre-Conference-Tutorial.pdf обязательно прочти. на тему оптимизации. там пошагово на пальцах обьясняют как можно сделать очень быстрым что-то такое элементарное как суммирование всех элементов массива.
Аноним 08/08/17 Втр 16:51:28 #287 №433641 
sfssmainpagea.jpg
>>433594
>но как такую схему перевести в текст у меня довольно мутные идеи
у меня пока наоборот, при компиляции все ноды добавляются в список снизу-вверх, а потом выполняются сверху вниз. идея в том, что каждая node это что-то вроде сниппета кода.

я имел ввиду обновление нод при изменении параметров. всякие текстурки там в риалтайме.
Аноним 08/08/17 Втр 17:01:57 #288 №433660 
>>433641
а, предпросмотр промежуточных результатов. а если честно хуй его знает. не выглядит как то что следует делать шейдорами. может сделать в нодах имплементацию на шарпе специально для предпросмотра результатов?
Аноним 08/08/17 Втр 17:15:15 #289 №433683 
Кто-нибудь продажей ассетов в юнити-сторе занимается? Что там лучше всего покупается, кроме мошн-паков?
А то смотрю, количество юнити-лохов всё растёт и растёт, похоже на них можно неплохо зарбатывать, но слабо представляю, что пользуется спросом. Шейдеры? Расширение функционала самого движка? Гуи? Наборы "сделай игру жанра Х"?
Аноним 08/08/17 Втр 17:47:41 #290 №433728 
>>433683
Чтобы в сторе поделие продавалось, мало сделать что-то нужное всё то, что юнети не предаставляет из карёпки (AI, диалоги и т.д.), но нужно и понятно преподать: тьюториалы на ютюбе, практичные примерчики. По статистике у таких и больше покупают.
Аноним 08/08/17 Втр 18:15:11 #291 №433739 
Без имени-1.png
>>433623
Далеко я не уехал.
Аноним 08/08/17 Втр 18:22:35 #292 №433741 
>>433526
так дело не в коде,код работает когда создаю шар
а когда создаю префаб он не работает
я думаю это баг движка
Аноним 08/08/17 Втр 18:29:19 #293 №433743 
>>433683
я за так отдаю свое. в топ пэйд долгое время висит А*. вообще я сомневаюсь что можно продать что-то из разряда того что юнити напильником дорабатывает и надо всем. конкурентов много, сделать лучше чем они сложно. продавать красивые модельки и анимации скорей всего лучший вариант.

>>433739
это ожидаемо и я говорил

>>433741
думаю это твой баг, а не баг движка. поэтому давай показывай все, а мы подумаем кто виноват и как это исправить.
Аноним 08/08/17 Втр 18:34:17 #294 №433745 
Unity 2016-02-18 03-23-34-50.png
Unity 2016-02-18 08-05-26-63.png
Unity 2016-02-18 08-14-18-12.png
>>433743
кстати о багах юнити. покажу один старый но забавный. до сих пор никаких идей как же это вышло. воспроизвести не смог. обычный вид сцены, слегка необычный вид сцены, вид сцены когда я камерой покрутил
Аноним 08/08/17 Втр 18:42:25 #295 №433747 
>>433745
Всё очень просто.
https://www.youtube.com/watch?v=ilF5AAf41s0
Аноним 08/08/17 Втр 22:04:58 #296 №433792 
jSxj3Dg5yg.jpg
n8WACCeRrLY.jpg
PBYg3f-wVo.jpg
ZgmrkoegBmE.jpg
Ну а я sypermarket делаю.
Аноним 08/08/17 Втр 22:05:25 #297 №433793 
>>433792
> sypermarket
Простите, я обдолбан.
Аноним 08/08/17 Втр 22:21:16 #298 №433797 DELETED
>>433792
3 пик очень всратый из-за пола. Остальное охуенно.
Аноним 08/08/17 Втр 22:23:47 #299 №433798 
>>433797
>> 3 пик очень всратый из-за пола
- Это "холодильная камера"
По этому пол там и такой =)
Аноним 08/08/17 Втр 22:27:39 #300 №433801 DELETED
>>433798
Сделал бы его чуть темнее.
Аноним 08/08/17 Втр 22:28:39 #301 №433804 DELETED
>>433798
>>433801
А, не, вот в чем дело. Вот это глаза режет.
Аноним 09/08/17 Срд 00:26:03 #302 №433845 
test1.jpg
test2.jpg
test3.jpg
>>433804
?
Не совсем понял как бы..
Аноним 09/08/17 Срд 02:58:29 #303 №433865 
>>433845
>УЕЧ
>вконтакте
>AIMP
>спизженные substance painter, photoshop и maya
>васянская тема
Эталонный набор говноеда
Аноним 09/08/17 Срд 04:28:54 #304 №433870 
Бывает, у объекта есть дочерние объекты, которые должны двигаться за ним, но не должны вертеться вместе с ним. Вот думаю, стоит их отделять через transform.parent = null, или проще вертеть каждый фрейм, возвращая им изначальный поворот? Первое решение ведет к дополнительным усилиям при включении/выключении объекта, и при повторной инстанциации(нужно следить за остатками). Может есть какое-то элегантное решение проблемы?
Аноним 09/08/17 Срд 06:08:22 #305 №433874 
>>433870
Риджидбади на дочернем объекте есть?
Аноним 09/08/17 Срд 06:23:56 #306 №433875 
>>433874
Нету.
Аноним 09/08/17 Срд 07:17:51 #307 №433878 
>>433875
Ну тогда что-то типа такого.

void Start () {
Quaternion origRotation = transform.rotation;
}

void LateUpdate () {
transform.rotation = origRotation;
}
Аноним 09/08/17 Срд 07:24:56 #308 №433879 
>>433878
А, не, объявлять в старте не надо, там только определять.
Короче, ты понял.

Quaternion origRotation;

void Start () {
origRotation = transform.rotation;
}

void LateUpdate () {
transform.rotation = origRotation;
}
Аноним 09/08/17 Срд 09:40:13 #309 №433893 
>>433342
Может есть какие конфочки?
Чтоб там можно было смотреть дейли прогресс всяких упоротых и задовать и отвечать на глупые вопросы?
Аноним 09/08/17 Срд 10:32:00 #310 №433908 
Где бест практисес для структуры проекта и основных классов на ивенты и интерфейсов можно посмотреть?
А то хочу влезть в юньку, ничего не знаю, и хочу поддерживаемый проект, чтобы хватило сил докончить
Аноним 09/08/17 Срд 11:18:26 #311 №433916 
А чего, поменять цвет индивидуального вертекса нельзя? У меня так не работает. Приходится менять в копии массива и присваивать массив целиком.
Аноним 09/08/17 Срд 11:19:16 #312 №433918 
>>433865
>> Эталонный набор говноеда
Всё, откукарекался?
Аноним 09/08/17 Срд 11:43:56 #313 №433929 
>>433916
Ты тупой.
Аноним 09/08/17 Срд 11:56:07 #314 №433933 
>>433929
О, заебись, заработало. Спасибо.
Аноним 09/08/17 Срд 13:31:43 #315 №433958 
Юнитач, приводить типы в апдейте это плохая идея, да? Да.
Аноним 09/08/17 Срд 13:38:51 #316 №433960 
Без имени-1.png
Почему я таким образом всегда получаю позицию первого по порядку колеса, которое не в воздухе?
Аноним 09/08/17 Срд 14:46:19 #317 №433977 
>>433960
Блять. Пиздец какой-то. Нихуя не понимаю.
Аноним 09/08/17 Срд 15:17:24 #318 №433982 
Девач, есть специфическая проблема. Хочу перевести чужую игру на юнити. Вопрос: как можно это сделать? Можно или из уже скомпилированной игры вытащить исходники? Можно ли отдельно найти файлы с текстом? Как?
Аноним 09/08/17 Срд 17:48:52 #319 №434028 
>>430059
>что у тебя за проблемы такие? нахуй ты в трансформ вообще лезешь если у тебя RB? если у тебя RB то манипуляции уже делай все через него. у тебя же специальные AddForce, AddTorque и прочие есть которые гарантируют тебе что все будет через физон.
У меня проблема в том, что если я мучу передвижение через физон, то игра резко становится очень требовательной, я хз почему так. Ну мей би это как-то с мобами связано, т.к. если я их удаляю, то всё ок становится.

Кстати, а вот касательно мобов вопрос. Им же по сути вообще rigidbody не нужен, только при смерти, по логике?
Аноним 09/08/17 Срд 18:01:44 #320 №434031 
dsc00820.jpg
Разбираюсь вот с Фотоном, прикрутил по дефолту PhotonTransformView, а там такое написано:

currentPosition = Vector3.Lerp( currentPosition, targetPosition, Time.deltaTime * m_Model.InterpolateLerpSpeed );

Это я чего-то недопонимаю, или у них детская ошибка в лерпе? Оно же неравномерно двигаться будет. Надо видно свой скрипт писать. Если есть фотонщики, каково ваше мнение?
Аноним 09/08/17 Срд 18:01:56 #321 №434032 
>>433982
>вытащить исходники
Нет.
>найти файлы с текстом
Если автор их выкладывал, то можно.
Аноним 09/08/17 Срд 18:08:32 #322 №434033 
>>433958
Тащемта нет.
И вообще не надо ничего оптимизировать, если оно не тормозит.
Аноним 09/08/17 Срд 18:10:48 #323 №434034 
>>433870
Сделай им обоим общего родителя, который двигается, и вращай только того чайлда, которого нужно.
Аноним 09/08/17 Срд 18:20:40 #324 №434038 
game.png
>>434032
Потыкался. Нашёл файлы без расширения, открыл. Весь текст в 50+ файлах примерно такого вида. Втупую заменил одну фразу на русский перевод - игра кмк просто не стала загружать этот файл, т.е. запустилась, но на сцену с заменённой фразой не перешла. Вернул обратно - нормально. Поменял кодировку файла (они изначально в ansi) - игра крашнулась.
Аноним 09/08/17 Срд 18:38:50 #325 №434043 
14205117567140.jpg
>>434038
> Втупую заменил одну фразу на русский перевод
Аноним 09/08/17 Срд 18:55:07 #326 №434053 
>>434043
Я пытался попробовать даже откровенную хуйню.
Аноним 09/08/17 Срд 19:19:09 #327 №434064 
>>433893
есть одна но ты туда не ходи там какие-то мудаки сидят.

>>433958
на самом деле не особо. что-то на уровне "похуй".

>>434028
включи ка профайлер в юнити и посмотри.
Аноним 09/08/17 Срд 19:24:30 #328 №434068 
>>427717 (OP)
Посоветуйте, как более эффективно вкатиться в эти ваши скрипты? Я неделю пытаюсь разные фишечки реализовывать, просто, чтобы научиться скриптить.

Не смотря на то, что я никогда в жизни не занимался программированием, мне вроде всё кажется интуитивно понятным. Но проблема в том, что если я хочу хоть что-то реализовать, то мне надо сидеть и часами гуглить свою вещь. Почему часами? Да потому что я не знаю английский. Пробовал почитать книгу "Юнити в действии", но как и везде, там описаны какие-то частные вещи и, если, я, например, хочу сделать продвинутый ИИ или что-то в этом роде, то уже зная и представляя, как это будет работать, я просто гуглю сами команды языка. Собственно, есть ли кто-нибудь, кто как я вкатывался с нуля и, в итоге, нормально так умеет? И что можете посоветовать для более качественного развития?
Аноним 09/08/17 Срд 19:46:42 #329 №434073 
Есть смысл читать книгу из шапки, если я имею опыт в проганье, но не имею в использовании игровых движков? Или книга для совсем ньюфагов?
А то я к книгам по разработке отношусь предвзято.
Аноним 09/08/17 Срд 20:17:14 #330 №434082 
>>434064
Можно организовать другую конфу. И редкостных мудаков кикать. Просто я хз, есть ли вообще желающие. Т.к. может и тут хватает общения?
Запилить дискорд сервер то просто
Аноним 09/08/17 Срд 20:19:06 #331 №434084 
>>434068
>Да потому что я не знаю английский.
Тебе нужно учить не скрипты, а английский, сынок.
Аноним 09/08/17 Срд 20:20:47 #332 №434085 
>>434073
> Есть смысл читать книгу из шапки, если я имею опыт в проганье, но не имею в использовании игровых движков?
Читай внимательнее, блин.
> Если ты уже умеешь использовать язык
> Крайне рекомендуется купить/скачать книгу Unity in action

Перевожу: книга как раз для тех, кто умеет кодить, не не знает движок.
Так что ответ на твой вопрос: да.

Научитесь же вы читать уже
Аноним 09/08/17 Срд 20:21:24 #333 №434086 
>>434085
*но не знает движок
Аноним 09/08/17 Срд 22:08:33 #334 №434114 
>>434038
Реквестирую какой-нибудь материал про юнити и кодировки, потому что чую проблему в них. Как юнити работает с кодировками?
Аноним 09/08/17 Срд 22:29:42 #335 №434116 
8.png
> length =5;
> vertPerSide = 10;
> float step = length / vertPerSide;
> print(step);
> 0
Я, наверное, с ума схожу, да?
Аноним 09/08/17 Срд 22:35:30 #336 №434119 
energybeambylyriclychallngd.jpg
Как сделать эффекты энергетических лучей(пиу-пиу)? Есть какие-нибудь годные туториалы? Что мне приходит на ум, так это пустить частицы префаером с вращением, но как-то не уверен, опыта очень мало.
Аноним 09/08/17 Срд 22:36:34 #337 №434120 
>>434116
float a = 5;
float b = 10;

void Start () {
float c = a / b;
print (c);
}

Выдаёт 0,5. Ищи где ты наговнокодил.
Аноним 09/08/17 Срд 22:39:40 #338 №434123 
>>434120
Блять, да у меня ж инты делились. Вот оно что. C (float) перед делением всё нормально.
Аноним 09/08/17 Срд 22:48:26 #339 №434126 
>>434114
Да какого же хрена он читает скрипты только на ansi? В utf вылетает, у меня идей нет.
Аноним 09/08/17 Срд 22:52:21 #340 №434127 
>>434119
Еще нашел вариант - эмитить из цилиндрического меша в разные стороны, вроде как живенько, но частиц получается дофига. Как сделали бы батьки?(инбифо пошли в магазин и купили ассет за 300$)
Аноним 10/08/17 Чтв 09:29:59 #341 №434235 
>>434068
лучше английский выучи чтобы хоть что-то на базовом уровне понятно было, хоть в процессе поиска доучишь. это анальное страдание будет у тебя без этого

>>434073
если погромировать умеешь то документацию лучше начни читать, а не книжки. решай проблемы по мере их поступления. но для начала что нибудь простое ебани чтобы освоится

>>434082
это так не работает

>>434119
https://www.assetstore.unity3d.com/en/#!/content/5141
вон старый экзампл почитай. если бы я хотел сделать какое-то там вращение то я бы наверно сделал процедурненько цепочку рэйкастов чтобы лучик пускать, потом вокруг него ещё повращал бы сколько-то линий красиво через лайн рендерреры вычисляя их позицию относительно основной линии, ебанул бы партиклов красивей с обоих концов.
Аноним 10/08/17 Чтв 14:00:09 #342 №434262 
>>434068
> Пробовал почитать книгу "Юнити в действии"
Нахуя ты читаешь книгу, которая рассчитана на тех, кто уже знает язык, при этом сам язык ты не знаешь?
Аноним 10/08/17 Чтв 15:08:45 #343 №434272 
9O0LwXruMJQ.jpg
Вот у меня есть префаб объекта 2D. Как сделать так, чтобы я мог поместить его на сцену, и с помощью ползунков настроить цвет разных его частей. Куда копать? Я так понимаю чтобы делать это "на лету" используется шейдеры, но мне нужно просто в эдиторе настроить его, поставить куда надо, и забыть.
Аноним 10/08/17 Чтв 16:38:46 #344 №434284 
>>434272
Погуглил сейчас про это. Насколько я понимаю нужно разделить мой спрайт на части с одинаковым цветом. И на каждую часть применять renderer.color = new Color(blabla); в Start(), при этом сделать public цвет, который можно выбирать в инспекторе. Всё правильно?
Аноним 10/08/17 Чтв 16:49:34 #345 №434286 
Делаю 2д анимацию.
Эта сука почему-то пропускает крайние ключи (последний или первый). НЕзависимо от того, как работает ключ - включение геймобжекта / спрайтрендера / кадры спрайтшита.
Не улавливаю где проёб.
Аноним 10/08/17 Чтв 19:26:21 #346 №434478 
>>434085
>>434235
Ну и кому из вас верить?

Вот и в интернетах в комментах на хабре и проч мнения диаметрально противоположные по этому поводу, надеялся анон подскажет.
Хуй с вами, буду параллельно читать книгу и пробовать чот свое по докам и гуглежу.
Аноним 10/08/17 Чтв 19:28:03 #347 №434481 
>>434478
> Ну и кому из вас верить?
Обоим. Книга для тех, кто язык уже знает. И английский учить тоже надо.
Аноним 10/08/17 Чтв 19:31:23 #348 №434487 
>>434478
>>434481
А ты не тот, кто про английский спрашивал.
В любом случае, можешь и документацию курить и книгу прочесть. Там 300+ страниц всего, за несколько вечеров осваивается. Лишней уж точно не будет, особенно если в движке слабо ориентируешься.
Аноним 10/08/17 Чтв 22:01:40 #349 №435270 
>>434262
Нужно ли умножать на дельтатайм при движении через rb?
Аноним 10/08/17 Чтв 22:47:35 #350 №435504 
14251471382542.jpg
Как писать свой шейдер который при этом поддерживает встроенные функции освещения и всяких нормал-карт? Шейдер ведь один на материал. Нужно тупо копировать свой код в код нужного шейдера, или как?
Аноним 10/08/17 Чтв 22:57:21 #351 №435559 
Unity 2017-08-10 23-56-13-24.png
Unity 2017-08-10 23-54-39-96.png
Unity 2017-08-10 23-54-59-33.png
о. а мое говно сегодня даже стало что-то делать! травку садит, текстурки накладывает, деревья делает.

>>434478
верь мне во всем. вообще нахуй тебе какие-то книги читать? погромировать то на каком языке умеешь уже? в юнити конечно есть какие-то особенные фичи касаемые взаимодействия компонентов и вот много уже за тебя сделали. первое может быть не очевидным, второе вот только с гуглом и найти можно.

>>435270
умножать то не нужно, но полезно.

>>435504
сейчас я дам тебе что-то очень интересное. обязательно прочитай.
http://beta.unity3d.com/download/472613c02cf7/builtin_shaders-2017.1.0f3.zip
Аноним 10/08/17 Чтв 23:00:37 #352 №435577 
>>427800
2 объекта. 1 ближе, 2 дальше. Если 1 объект встанет на одну линию со вторым, то для второго (hit.transform.tag == "Object" && hit.distance < minDist) выполняется.
Аноним 10/08/17 Чтв 23:01:05 #353 №435582 
>>435559
>погромировать то на каком языке умеешь уже
Работаю жс-ёбом не вебмакака, с шарпом имел теплые дружеские отношения.
>в юнити конечно есть какие-то особенные фичи касаемые взаимодействия компонентов
Например?
Аноним 10/08/17 Чтв 23:02:24 #354 №435587 
>>435559
>сейчас я дам тебе что-то очень интересное
т.е. таки нужно вживлять свой код в готовые шейдеры? Оке, спасибо.
Аноним 10/08/17 Чтв 23:06:33 #355 №435603 
>>435582
если жс то че, нормально все. почти одно и то-же.

а например вот есть чтото особенное как SendMessage или SendMessageUpwards которое удобно. ещё и имеет разную производительность в едиторе и сбилженном проекте.

>>435587
я к тому что прочитай то как можно делать освещение, нормал мапы и прочее.
Аноним 10/08/17 Чтв 23:09:26 #356 №435608 
>>435587
https://docs.unity3d.com/Manual/SL-SurfaceShaders.html
Аноним 10/08/17 Чтв 23:34:03 #357 №435651 
>>435582
а, кстати, вот стоит ещё сказать особенное. почитай про то как юнити обманывает систему с удалением обьектов. если сделать Destroy(object) то объект то удалится. но как по твоему что станет с ссылками на этот объект у тех у кого она уже есть? или ещё лучше - как на это будут реагировать коллекции вроде хэшсета?
почитай про сериализацию в юнити, тоже интересное чтиво. можно вон теоретически создать инстанс абстрактного класса.
про корутины как заменитель тредов и даже такой базовой хуйни как апдейт почитай.
Если собрался костыли немного писать то почитай про Event.current и control id.
у юнити то много всякой удивительной хуйни творится которая в целом в большинстве своем довольно могущественная но в ней могут творится удивительные вещи.
Аноним 11/08/17 Птн 13:25:52 #358 №436262 
>>435559
Мне нравится твой редактор. Он лучше дефолтного.
Я тоже пытался сделать свой, но не осилил прокрутку. Да и вообще что-то приуныл от осознания того, что придется слишком много времени потратить на изучение всратого юнитивского гуи.
Аноним 11/08/17 Птн 15:30:36 #359 №436290 
Есть ли в юнити система анимации как во флеше(нативно или плагином) чтоб у каждого обьекта были кадры и в разных кадрах я мог добавлять обьекту другие обьекты(допустим в 7 кадре вложить меч в руки) и у этих обьектов были свои ленты в которых я добавлю обьекты?И чтоб это все можно было в wyswig редакторе редоктировать ручками
Аноним 11/08/17 Птн 15:42:57 #360 №436296 
>>436290
Рядом с кнопкой "сделать пиздато"
Аноним 11/08/17 Птн 16:22:20 #361 №436300 
>>428774
Итак, прошла первая неделя. За это время было сделано ничего.
В общем, у меня появилась некая теория как это все сделать. Я хочу сделать что-то вроде простого ShaderDOM, из которого затем генерировать код шейдора.
Так-же у меня появилась идея как можно не разделять граф на 2 шейдора. Для этого нужно один и тот-же граф конпелировать в 2 прохода: суть в том, что во время вертексного прохода, все связанные с вертексным шейдером ноды запишут какой нужно код, а во время пиксельного - соответственно запишут пиксельный код. Правда я не уверен насчет того, что это все будет работать.

В общем, я пока решил сделать просто демку генерации surface-шейдера из графа. Без preview и прочих мокрописек.
Аноним 11/08/17 Птн 17:09:33 #362 №436331 
>>436290
> редоктировать
От слова "редоктор"?
Аноним 11/08/17 Птн 17:29:07 #363 №436353 
Дратитя. Я у мамы параноик, поэтому хочу зашифровать код своего юни-поделия, чтобы любой школьник не мог вытащить через ILDasm или типа того. Да-да, знаю, что это глупо и не надо нахуй.

Так как я ТРУЪ-indei читай "нищеброд" то использовать проприетарные дорогие обфускаторы не могу. И тут я подумал, а что если практически весь код, ну скажем кроме гейм-менеджера, перенести в ДЛЛ на с++?

1. Не потеряю ли таким образом кросс-платформенность?
2. Я слабо представляю, как это делается и какой обьём работы предстоит. Достаточно ли будет написать типа враппера какого-то, ну регистрация функций, да и всё? Насколько вообще ебанутая идея?
3. И как думаете, на производительность сильно повлияет?
Аноним 11/08/17 Птн 17:46:18 #364 №436374 
>>436353
Анус себе зашифруй, пес.
Аноним 11/08/17 Птн 17:48:43 #365 №436375 
Можно ли проверять радиус между лучами, выпущенными из одной точки? Хз, понятно ли сформулировал. Например, из объекта выпущен луч вперёд и влево, соответственно у них радиус 90 должен выйти.
Аноним 11/08/17 Птн 17:55:51 #366 №436376 
>>436375
Это угол, а не радиус. Ещё не проходили что ли?
Аноним 11/08/17 Птн 18:22:00 #367 №436381 
>>436375
Косинус угла между векторами равен скалярному произведению векторов, поделенному на произведение модулей векторов.

В принципе можно ручками посчитать. Простейшие вещи, в школе такое проходят.

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

Можно и так:
Vector3.Angle (a, b);
Аноним 11/08/17 Птн 18:25:16 #368 №436382 
Можно ли проверять котангенс между точками, расположенными на одной прямой? Хз, понятно ли сформулировал.
Аноним 11/08/17 Птн 18:27:25 #369 №436383 
>>436382
Ну продолжил бы. Типа "Например, между точкой А и точкой Б 2 метра, соответственно у них котангенс 2 должен выйти."
Аноним 11/08/17 Птн 18:29:33 #370 №436384 
p.png
>>436262
я бы дал свой да он на самом деле тоже так себе. просто приспособил под свои нужды и не имплементил всякую хуйню вроде множественного выбора нод. и реализовал соединение не через перетягивание а просто через нажатие двух кнопок в гуи. и не писал эту ерудну с пропертями у нод, ололо. даже не знаю нахуй это сделали.
у юнити то на самом деле этот лэйаут гуи довольно клевый, советую ознакомится.

прокрутка у меня буквально заимплеменчена как
if(Event.current.type == EventType.MouseDrag && graphExtents.Contains(mousePosition)) {
scrollPosition -= Event.current.delta;
needRepaint = true;
}

>>436300
а я кстати таки сорт оф сделал для некоторых важных нод. можно нажать пкм и сказать чтобы оно показало. например если нажать на превью ноды "Biome bool". правда пришел к выводу что это надо делать отдельно для каждого слота, или чтобы там был предпросмотр с закладками чтобы каждый отдельный аутпут слот мог показать что он там другим передает.

>>436375
уверен ли ты что ты хочешь именно радиус? ведь он 90 должен быть.
Аноним 11/08/17 Птн 20:31:41 #371 №436407 
Привет всем. Я абсолютный новичок в геймдевелопинге, но у меня есть очень годная идея для игры. На данный момент осваиваю юнити и C# + прописываю диалоги, квесты и прочий текстовый контент + рисую арты для игры.
Хотел бы найти такого же новичка для создания чего-то вроде команды, ибо в одного пилить очень трудоемко. Если говорить кратко, то хочу сделать нечто вроде гибрида This is the Police + Космические рейнджеры 2. Если вдруг заинтересовало, то предлагаю скооперироваться и разрабатывать её вместе - если получится реализовать задуманное, то все доходы 50/50.
Мой скайп - the_twixxie
Аноним 11/08/17 Птн 20:39:45 #372 №436408 
>>436407
>у меня есть очень годная идея для игры
Расскажи ка.
мимо-менеджер-ЕА-пизжу-идеи-на-дваче
Аноним 11/08/17 Птн 21:01:45 #373 №436412 
>>436376
>>436381
>>436384
Я в школе еще не проходил просто этого, спасибо большое.
Аноним 11/08/17 Птн 21:57:57 #374 №436426 
scrin.jpg
Друзья, подскажите, пожалуйста, где я проебался? Я реально понять не могу, тут всего 2 строчки, почему он с некоторых сторон не видит игрока?
Вот видео, если я хуёво(плохо) объяснил проблему:
https://www.youtube.com/watch?v=uLAvxn4-3zE
Аноним 11/08/17 Птн 22:27:54 #375 №436443 
scrin.jpg
>>436426
Понял, в чем дело.
Аноним 12/08/17 Суб 00:14:00 #376 №436470 
Чуваки, я щас подумал, а почему нельзя написать шейдер на чистом си шарпе? Прикиньте как удобно бы было бы? Ну а чо, типа какой-нибудь крипт похожий на монобихейвиор и библиотека человеческая и там прям хуяришь на си шарпе, а потом они само это переписывает в шейдоровский язык. Прикиньте, было бы круто? Можно было бы изменять шейдер в рантайме, ну вообще все было бы легко и прсто, лубой чувак, который знает си шапр, мог бы написать шейдер. Круто же?
Аноним 12/08/17 Суб 00:54:32 #377 №436481 DELETED
>>436426
>прозрел
Аноним 12/08/17 Суб 01:56:21 #378 №436488 
>>436470
Зачем? HLSL и так простейший язык.
Сложность шейдеров в алгоритмах
Аноним 12/08/17 Суб 02:18:30 #379 №436492 
>>436488
зачем ты повелся на эту толстоту
Аноним 12/08/17 Суб 02:57:56 #380 №436493 
>>436492
https://www.youtube.com/watch?time_continue=72&v=hJZwaaXMfUA
ой, нахуй иди, ага умник хуев.
Аноним 12/08/17 Суб 08:31:55 #381 №436505 
>>436353
Лучше проведи сам анализ, создавай, компиль проекты, дизассемблируй и шарься в исходниках. Большинство, думаю, принимает уровень защиты как данность или юзает дорохие продукты чтобы спать спокойно. Ведь если ты что-то делаешь на продажу, то и деньги должны быть на защиту твоей жепы, а если бесплатно будешь распространять, то переосмысли нужно ли тебе это вообще, и стоит ли работа затрачиваемых ресурсов.
Аноним 12/08/17 Суб 08:34:11 #382 №436506 
>>436407
Если новичок, не лучше ли фармить опыт на проектах уровнем пониже кр2? Не думаю, что стоит бросаться в этот омут, пожалей время хотя бы.
Аноним 12/08/17 Суб 08:58:36 #383 №436507 
Как настроить ябучий unity Remote. Android SDK стоит, в Editor'е самого юнити включил Any Device. ЧТО ЕЩЁ НАДО?
Аноним 12/08/17 Суб 09:49:19 #384 №436511 
>>436506

Из КР2 я хочу взять только систему квестов
Аноним 12/08/17 Суб 10:00:48 #385 №436516 
>>436511
>Из КР2 я хочу взять только систему квестов
Ты только учти что их квесторедактор и квестоплеер писал весьма годный кодер. А сами квесты писали несколько человек около года, и это были не рандом школьники с улицы.
Предлагаю тебе опробовать свои силы, возьми любой известный квесто-движок и напиши пару для пробы. И людям покажи. Вангую гавнище получится несусветное.
Аноним 12/08/17 Суб 10:01:53 #386 №436517 
>>436516
Неужели этому нельзя обучиться за N-ое количество времени?
Аноним 12/08/17 Суб 10:12:41 #387 №436520 
>>436516
Что там за квесты такие?
Аноним 12/08/17 Суб 10:37:02 #388 №436524 
>>436516
Ну квесторедактор и квестоплеер я хотел в одном своём проекте использовать, который пока у меня в в стадии замороженного бекенда. Где-то была статья даже как у них все реализовано.
левый чел
Аноним 12/08/17 Суб 10:44:31 #389 №436526 
>>436520

Спасибо, надо погуглить.
Аноним 12/08/17 Суб 15:23:09 #390 №436591 
>>436493
Ну, насколько я понял по видео, этот код просто парсится roslyn'ом, и потом из syntax tree генерируется шейдерный код. Никакого дебагинга там нет конечно, просто метод стабы.
Аноним 12/08/17 Суб 15:43:56 #391 №436592 
>>436591
Просто не понимаю в чем смысл делать какую-то сложную йоба-абстракцию над чем-то очень простым. Вместо того, чтобы потратить немного времени на изучение HLSL, ты потратишь в итоге намного больше времени на изучение архитектуры и особенностей этой НЕХ. И если зная HLSL, ты омжешь писать шейдоры для любого движка, то твои знания этой приблуды генерирующей шейдеры будут ограничены конкретно этой приблудой.
Аноним 12/08/17 Суб 15:52:01 #392 №436598 
Только что настроил Unity Remote, запустил игру, а вместо сочной картинки, которую я получал, когда тестил игру в самой Юньке, получил мыло. Как это исправить? Так как я ньюфаг в андроид разработке.
Аноним 12/08/17 Суб 18:41:26 #393 №436620 
>>436598
Compression в пнг поставь
Аноним 12/08/17 Суб 22:42:12 #394 №436641 
ads.png
Добрый вечер.

2D арена. Пытаюсь реализовать выстрел в направлении курсора. Всё вроде бы работает, но есть проблема с получением координат курсора. При использовании Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, 10.0f)); снаряды летят в нужном направлении только когда игрок в начальных координатах (0,0,0). Чем дальше игрок перемещается тем сильнее отклонение.

Я понимаю что нужно использовать координаты курсора относительно игрока, но не могу разобраться как это сделать. Ткните носом, куда копать, что гуглить?

Спасибо.
Аноним 12/08/17 Суб 22:49:34 #395 №436642 
reaction-gif-lol-ingfb2299137.jpg
>>436641
>этот код
Аноним 12/08/17 Суб 22:59:18 #396 №436644 
>>436642
Что не так? Нужно как-то по особому оформлять?
Аноним 12/08/17 Суб 23:12:40 #397 №436646 
>>436641
так ты рэйкаст из камеры ебани чтобы мировые координаты узнать. https://docs.unity3d.com/Manual/CameraRays.html
Аноним 12/08/17 Суб 23:20:09 #398 №436651 
c44.gif
>>436646
>рэйкаст
>2д
Аноним 12/08/17 Суб 23:20:45 #399 №436652 
>>436641
а хотя ты и вопрос через жопу задал. код прочитал. ты же понимаешь что если взять координаты А и Б, вычесть из Б координату А, то ты получишь направление от А к Б? и тебе нужно похоже именно направление? ты бы вычел из положения курсора позицию игрока. чтобы они стали локальными для позиции игрока и были относительно позиции игрока.

>>436651
в 2д тоже работает, хули.
Аноним 12/08/17 Суб 23:23:09 #400 №436653 
>>436652
>в 2д тоже работает
в 2д ScreenToWorldPoint и есть точка в мировых координатах
Аноним 12/08/17 Суб 23:25:13 #401 №436655 
>>436653
он же там зачем-то ещё десятку по оси z прибавляет. меня это насторожило.
Аноним 12/08/17 Суб 23:27:39 #402 №436657 
>>436655
Снаряды через 2 секунды "исчезали". Debug.Log(shootDirection) показывал -10 по Z. Добавил +10 перестали пропадать.
Аноним 12/08/17 Суб 23:41:13 #403 №436663 
>>436657
очевидно потому что у тебя камера находится на -10 по оси z. вообще нахуй ты ScreenToWorldPoint пользуешся? оно же валидно только для ортографической камеры. ещё и начнешь видеть некоторое дерьмо если попытаешься её наклонить немного.
алсо что за хуйня. там же в 2д спрайтах можно менять порядок отрисовки независимо от оси z. или у тебя там что-то особенное?
Аноним 12/08/17 Суб 23:44:23 #404 №436664 
>>427717 (OP)
Пасаны, при сериализации юнитиивента не сохраняются параметры. Задаю ивент в кастомном инспекторе через проперти филд. В чем может быть проблема?
Аноним 12/08/17 Суб 23:47:35 #405 №436666 
>>436664
для обьектов в проекте EditorUtility.SetDirty
для обьектов в сцене там щяс подругому надо заставлять их сериализоватся. Dirty только для хуйни в проекте. там теперь новая хуйня для этого https://docs.unity3d.com/ScriptReference/Undo.RecordObject.html инструкция выглядит загадочной
Аноним 12/08/17 Суб 23:50:07 #406 №436667 
>>436407
Я тут юнити эдитор слепил для квестов. Может хочешь поделать что-нибудь вместе.
Аноним 12/08/17 Суб 23:50:50 #407 №436668 
>>436407
>>436667
Почту оставь.
Аноним 13/08/17 Вск 00:57:44 #408 №436675 
>>436652
>>436663
Благодарю, подсказали верный путь.

>>вообще нахуй ты ScreenToWorldPoint пользуешся?
Что нагуглил тем и пользуюсь.
Аноним 13/08/17 Вск 05:48:32 #409 №437912 
>>436620
Нихера не помогает, может что-то ещё надо изменить?
Аноним 13/08/17 Вск 08:38:18 #410 №437924 
Ребята, помогите, как сделать чтобы сцена запускалась при нажатии на любую точку экрана(глобальный тач), кроме кнопок, которые находятся в канвасе.
Пробовал так, но рэйкаст просто не воспринимает кнопки, как gameobject, просто ничего не происходит
if (Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hitInfo;

if (Physics.Raycast(ray, out hitInfo))
{
if (hitInfo.transform.tag != "Button")
{
SceneManager.LoadScene(1);
}
}
}
Аноним 13/08/17 Вск 08:44:07 #411 №437925 
Как понять, какая сцена сейчас активна, через код офк?
Аноним 13/08/17 Вск 10:42:50 #412 №437934 
>>437924
if (Input.GetMouseButtonDown (0) && !EventSystem.current.IsPointerOverGameObject ())
{
SceneManager.LoadScene(1);
}
Аноним 13/08/17 Вск 10:45:48 #413 №437935 
>>437934
Ах да, сначала надо подключить вот это
using UnityEngine.EventSystems;
Аноним 13/08/17 Вск 12:00:48 #414 №437937 
>>437935
Ага, ага, ты прям выручил, спасибо парень)
Аноним 13/08/17 Вск 14:38:26 #415 №437965 
>>436353
У тебя есть IL2CPP пизда ты тупая.
Аноним 13/08/17 Вск 14:39:20 #416 №437966 
>>436290
Есть блядь, почитай мануал про аниматор.
Аноним 13/08/17 Вск 14:43:30 #417 №437969 
>>437925
Спроси у менеджера сцен текущую сцену, придурок.
Аноним 13/08/17 Вск 17:03:05 #418 №437978 
Сделал реализацию паузы, т.е. когда рэйкаст попадает по коллайдеру геймобжекта кнопки паузы - игра останавливается и спрайт у этого геймобджекта меняется на кнопку плэй.
Всё вроде норм, но на деле, когда нажимаешь на паузу, то в 70% случаях кнопка меняется два раза(пауза -> плэй -> пауза) и соответственно игра продолжает "играть".
Помогите, не могу понять почему такая херня творится, если что могу код скинуть.
Аноним 13/08/17 Вск 17:04:19 #419 №437979 
Я, кажется, тупой, но я вижу только следующий способ работы с HTTP: юзать WWW(url) для GET и WWW(url, data) для POST.
А можно отправить как-то POST без данных, или вообще например DELETE?
Аноним 13/08/17 Вск 17:04:42 #420 №437980 
>>437978
Ты б сначала написал как паузу реализовал. Знаешь ли, хрустальный шар давно у всех сломался.
Аноним 13/08/17 Вск 17:10:41 #421 №437982 
>>437978
что у тебя за кнопка такая которую ты рэйкастом жмешь ололо
небось тригериш нажатие кнопки по нажатию и отпусканию кнопки мыши, или ещё что-то более глупое
Аноним 13/08/17 Вск 17:14:35 #422 №437984 
>>437979
Тебе - нельзя
Аноним 13/08/17 Вск 17:15:31 #423 №437985 
>>437982
Если не рейкастом, то чем?
Аноним 13/08/17 Вск 17:25:58 #424 №437987 
>>437980
foreach (Touch touch in Input.touches)
{
Ray ray = Camera.main.ScreenPointToRay(touch.position);
RaycastHit hit;

if (Physics.Raycast(ray, out hit))
{
...
if (hit.transform.gameObject == PlayPause)
{
if (!isPaused)
{
Time.timeScale = 0;
isPaused = true;

spritePP.sprite = BTNPlay;
}
else
{
Time.timeScale = 1;
isPaused = false;

spritePP.sprite = BTNPause;
}
}
}
}
Аноним 13/08/17 Вск 17:30:05 #425 №437988 
>>437987
Зачем ты так усложняешь? Лови событие по OnClick, нахуя ты рэйкастишь на гуй?
Аноним 13/08/17 Вск 17:33:25 #426 №437989 
>>437984
А не мне?
Аноним 14/08/17 Пнд 01:39:39 #427 №438089 
Unity 2017-08-14 02-25-02-38.png
Unity 2017-08-14 02-34-32-32.png
ух! Перелопатил то что внутри своей хуйни! нету теперь больше закладок в биомах, метод генерации биом и все карты сразу в одной биоме. день прошел продуктивно. надо ещё worley noise ебануть и побольше многопоточности

>>437985
может просто кнопку на гуи жать будешь? но вообще если ты там хуйней решил пострадать и чтото делать кликом на актуальный обьект то вообще-то есть https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnMouseDown.html
Аноним 14/08/17 Пнд 04:46:10 #428 №438101 
>>437966
Я читал про него и даже почти запилил на нем одну анимацию,но вопрос наверное и вправду тупой
Аноним 14/08/17 Пнд 04:48:51 #429 №438102 
>>437978
А вот если у меня планируется пауза в игре с замедлением времени,мне нужно только таймскел уменьшать или свою переменную завести глобальную
и к ней скорость движения и всех анимаций привязать?А то если таймскел уменьшить все рывками двигается
Аноним 14/08/17 Пнд 05:05:29 #430 №438103 
Забавно, как неглубоко иногда нужно копнуть, чтобы залезть в лютые дебри где хуй поймешь что делать. Казалось бы, задача palette swap для единичного объекта вещь довольно ординарная, но чет пиздец извиваться надо чтобы это реализовать. Я всю первую страницу гугла облазил чтобы только узнать как это называется.
Аноним 14/08/17 Пнд 05:21:49 #431 №438104 
>>437965
Под стендалон нет, а это целевая платформа.
Аноним 14/08/17 Пнд 07:45:57 #432 №438105 
>>437934
Теперь при нажатии на надписи, которые присутствуют в GUI сцена не загружается, как фиксить?
Аноним 14/08/17 Пнд 09:49:52 #433 №438112 
>>438105
Ну, например, надписям тег "Yoba". И потом пиши вот так:

if (Input.GetMouseButtonDown (0) && (!EventSystem.current.IsPointerOverGameObject () || EventSystem.current.currentSelectedGameObject.CompareTag("Yoba")))
{
SceneManager.LoadScene(1);
}
Аноним 14/08/17 Пнд 10:40:49 #434 №438121 
Как можно увеличить разрешение, четкость "Text" UI?
Знаю способ только увеличивать размер шрифта и уменьшать размеры объекта - но это говно какое-то. Есть ли нормальные способы? А то выглядит всё размыто.
Аноним 14/08/17 Пнд 15:29:19 #435 №438156 
Существует ли какая-нибудь конфа/чат где можно задавать нубские вопросы? По ходу обучения трачу довольно много времени на перебор ненужной информации в поисках решения задачи. Советы знающего человека в какую сторону гуглить очень помогли бы мне.

В треде обоссут и дадут 3 разных совета. К тому же вопросы действительно нубские и не достойны внимания Кармаков




Аноним 14/08/17 Пнд 15:37:38 #436 №438159 
>>438156
Да здесь пол треда нубских вопросов, так что не парься.
Аноним 14/08/17 Пнд 15:40:40 #437 №438161 
>>438156
Вряд ли найдёшь одно такое хорошее место. Я даже на оф сайте по вопросам юнити не дождался ни одного ответа. Так что приходится всё вместе юзать. \gd\, answers.unity, stackoverflow и всё прочее что в гугле найдёшь. Так больше шансов, что ответят. А найти одного спеца, который будет с тобой возиться - маловероятно.
Аноним 14/08/17 Пнд 15:50:27 #438 №438163 
>>438159
>>438161
В соседнем работотреде опытный товарищ предлагал свою помощь советом. Вот я и подумал, мало ли есть ещё одинокие альтруисты в /gd/.

Придется срать тут.
Аноним 14/08/17 Пнд 15:58:37 #439 №438164 
Unity 2017-08-14 16-47-24-44.png
>>438156
есть конференция мудаков, но к ним лучше не ходи. вопросы лучше тут задавай, больше шансов что дадут ответ и больше людей включится в обсуждение, если вопрос интересный. к тому-же задавая вопрос тут и получив ответ возможно другой хуй прочтет его и узнает что-то новое.
ну а то что тебя обоссут так это само собой разумеющееся, зато ответят на твои ответы. вообще ты лучше давай учись вопросы задавать правильно.
Аноним 14/08/17 Пнд 16:43:02 #440 №438167 
Игрок может выбрать один из нескольких видов оружия. При клике "Fire1" должен вызываться соответствующий метод выстрела.

Проблема в том, что метод вызывается только при первом клике.

Идти читать дальше про делегаты?

https://pastebin.com/rCbTbUbG
https://pastebin.com/RruL88eT
Аноним 14/08/17 Пнд 16:50:44 #441 №438169 
>>438167
Похоже, что у тебя код линейно выполняется. А если попробовать вызывать на каком-нибудь onmousedown (или ином, что триггерит fire1)?
Аноним 14/08/17 Пнд 16:53:50 #442 №438170 
>>427717 (OP)
ОП, а уже кто-нибудь говорил, что в шапку можно добавить Hearthstone? Он же тоже на юнити. На момент классика и наксрамасса, по крайней мере. Думаю, что и сейчас - потроха вроде не поменялись.
Аноним 14/08/17 Пнд 16:53:55 #443 №438171 
>>438121
Бамп вопроса.
Аноним 14/08/17 Пнд 17:01:26 #444 №438173 
>>427895
На пустой сцене же, как помню, есть освещение, как минимум.
Аноним 14/08/17 Пнд 17:14:08 #445 №438174 
>>438173
Ты понимаешь значение слова "пустой"? Удалял я свет, нет там нихера, только камера.
Аноним 14/08/17 Пнд 17:15:36 #446 №438175 
>>438169
>>А если попробовать вызывать на каком-нибудь onmousedown (или ином, что триггерит fire1)?
Тоже самое. Дело не в делегате. В упор не могу понять почему простой if в Update() не работает.
Аноним 14/08/17 Пнд 17:23:12 #447 №438177 
>>438121
>>438171
Короче, делаю через TextMeshPro. Благо он бесплатен теперь.
Аноним 14/08/17 Пнд 17:56:25 #448 №438181 
Unity 2017-08-14 18-53-06-94.png
>>438167
чего ты вообще в делегаты то полез? не лезь в делегаты без надобности. для такой хуйни лучше пользуйся префабами.
помню у меня где-то был экзампл для мудака одного, тебе тоже дам. https://www.dropbox.com/s/fiz18gxi03tjy8e/2ch%20example.unitypackage?dl=0
скачай, Assets/Import Package/Custom Package и укажи на файлик.
Аноним 14/08/17 Пнд 18:28:40 #449 №438186 
>>438181
А почему бы и нет? Смысл делегат вроде как понятен + к моей задаче подходит. Ты погоди, я ещё синглтон GameManager сделаю и под событийное программирование всё переделаю.

За префаб спасибо, на его основе реализую сам выстрел.

>>438175
Пиздец, ебучая аномалияили нет?. По какой-то причине код в Update() вызывался только один раз. Ребутнул юнити всё стало как раньше.
Аноним 14/08/17 Пнд 18:39:50 #450 №438190 
>>438181
причина простая - в твоем случае префаб имеет ссылки на ресурсы и их проще категоризировать по папкам. тыж представь какая срань выйдет если ты такой с делегатами "вот тут у меня самалет, он стреляет этим, этим, ещё этим, а вот ссылка на партиклы и ещё и ещё и материалы не забудем" и внутри ещё делегаты ебошишь чтобы оно эти ресурсы пихало куда надо, собирало делегаты в кучу. проще ебануть папку "вот тут красивый выстрел", там префаб, компонент, все это собрано было красиво, чтобы осталось только перетащить куда надо. ещё и можно разных версий поделать, вот тут префаб с таким компонентом, а рядом другой похожий, но ещё красненьким мигает.
Аноним 14/08/17 Пнд 18:42:28 #451 №438191 
>>438190
>>438186
не туда нажал.

вообще реально делегаты нужны вот для гуи-хуюи, для каллбеков, или каких-то дженерик методов, или ещё чего клевого. но нахуй оно надо для такого то?
Аноним 14/08/17 Пнд 18:52:56 #452 №438195 
>>438190
Но... я использую делегаты всего лишь для определения типа стрельбы. Какое оружие возьмешь, такой метод и будет вызываться. И каждый метод создает копию префаба "своего" выстрела.

Почему именно так? Стараюсь оставлять минимум логики и расчетов в Update().

Аноним 14/08/17 Пнд 19:01:02 #453 №438196 
>>438195
но зачем ты вообще выстрел в делегат то суешь если ты ещё и инстанс создаешь? если хочешь присваивать к переменной то пользуйся ООП. чтобы у тебя метод "ебошить" был универсальным и ты переключал ссылку на активное ебошило, где и вызывался бы этот метод. а лол не сначала выбирал активное ебошило, а потом ещё зачем-то метод в нем хватал
Аноним 14/08/17 Пнд 19:20:26 #454 №438204 
>>438196
Переопределение метода как в твоем префабе? Метод Shoot() переопределяется в каждом типе выстрела и делает что-то своё. Это я понимаю.

>>переключал ссылку на активное ебошило

Т.е. реализовать выбор оружия. Вот это я пока не понимаю как сделать НЕ делегатами.

>>чтобы у тебя метод "ебошить" был универсальным и ты переключал ссылку на активное ебошило, где и вызывался бы этот метод. а лол не сначала выбирал активное ебошило, а потом ещё зачем-то метод в нем хватал

Я правильно понимаю что твой вариант: 1) Выстрелить (ебошить) 2) Выбрать оружие (переключить ссылку) ?

Чем он лучше моего варианта: 1) Выбрать оружие (switch в Start() ) 2) Выстрелить (вызвать метод запускающий снаряд)
Аноним 14/08/17 Пнд 19:38:10 #455 №438211 
>>438204
например есть класс
abstract class Weapon{
public abstract Shoot();
}
у него есть два наследника Pistol : Weapon и Rifle : Weapon. Они оба имплементят метод Shoot. допустим у тебя есть каждого из них инстанс (а может и не один), но активный слот у тебя только один. ты пытаешься зачем-то хватать делегат. но зачем хватать делегат, если ты знаешь что все пистолеты и ружья у тебя имплементят метод Shoot? проще иметь переменную Weapon currentWeapon, а потом в апдейте проверять.
if(currentWeapon != null && Input.GetMouseButtonDown(0)){
currentWeapon.Shoot();
}
и чтобы менять текущее оружие ты соответственно меняешь ссылку у переменной currentWeapon.
ты пользуешься ссылкой на иснтанс класса, зная что он наследуется от того класса который может стрелять.

делегат просто лишний шаг в данном случае. мало того что ты сводишь все к одному методу, а значит вся ебучая логика стрельбы будет собрана в нем, так ты ещё и пользуешься только одним сраным методом. а у оружия может же быть что-то другое полезное. например ссылка на иконку, или количество оставшихся патрон в магазине которое ты можешь потом совать в ГУИ пользуясь ссылкой на инстанс текущего оружия.

а что если ты например выбросишь оружие, но забудешь обнулить делегат? при попытке стрелять будет стрелять оружие брошенное на землю чтоли лол. нахуй такое говно
Аноним 14/08/17 Пнд 20:29:51 #456 №438223 
фчяс.png
>>438211
>>и чтобы менять текущее оружие ты соответственно меняешь ссылку у переменной currentWeapon.
Сслыку на префаб я полагаю? Вот тут у меня и был ступор - я упорно думал что выстрел это обязательно метод, отсюда нагуглил делегаты. Теперь я слегка прозрел, спасибо.

У меня простая 2D арена. И мой вариант кажется лучшепока я не наткнусь на кучу подводных камней :).

https://pastebin.com/562FwaAK
https://pastebin.com/pGKQ8KpL

Аноним 14/08/17 Пнд 21:06:25 #457 №438236 
>>438223
да не обязательно префаб. ссылку на компонент в префабе который стреляет. который является инстансом типа который стреляет. стрельба то разумеется метод. просто метод может не иметь описания в себе и перекладывать описание его на наследующиеся от него классы. а ты страдаешь какой-то хуйней с этими делегатами.

лучше бы сел и прочитал сначала что-то отсюда https://unity3d.com/ru/learn/resources/downloads
в частности посмотрел бы это https://unity3d.com/ru/learn/tutorials/projects/space-shooter-tutorial наиболее близкое к твоему говну. там тебе видео и экзампл.
Аноним 14/08/17 Пнд 21:07:24 #458 №438238 
162-1-1398761876.jpg
>>427717 (OP)
Здаров, в общем маза такая. Хотим запилить онлайн версию оч крутой настолки Machi koro//

Что приветствуется?

1. Наличие пряморуких погромистов

2. Ваш опыт в геймдеве, ахутиельные идеи откуда можно взять финансирование ну и просто деловые предложения.
Одним словом, есть крутая идея, можно заработать. Можно выпустить не онлайн а полноценную версию, но об этом позже. Главное сейчас найти программистов, маркетологов и прочее гавно. Отписываемся, не стесняемся. Запилим конфу в телеге и будем решать как быть.

Если вы сможете финансово поддержать проект, чтож тем лучше.

У меня есть опыт в индустрии игор, так что для Вас он не есть обязательный критерий. Главное - желание заработать и что бы вы могли в какой-то игровой движок нормальный типа uniti.

telegram @alo1x
Аноним 14/08/17 Пнд 22:14:38 #459 №438246 
Делаю угол обзора у врагов 2D игра.
RaycastHit2D hit = Physics2D.Raycast (transform.position, Player.transform.position - transform.position);
RaycastHit2D hit2 = Physics2D.Raycast (transform.position, transform.right);
ang = Vector2.Angle (hit.normal, hit2.normal);
Если враг смотрит вверх, вниз, вправо, влево, то всё нормально работает. Но если враг поворачивается не на 90 градусов, то угол высчитывается так, будто бы поворот врага округляется. (0 градусов -- враг смотрит вправо. Если он повернут на 63 градуса, то угол будет считаться так, будто он повернут на 90)
В чем проблема? Во мне.
Аноним 14/08/17 Пнд 22:44:36 #460 №438249 
>>438246
чего лол. нахуй ты нормали попаданий от рэйкаста сравниваешь? что за охуительный план? просто взять угол между transform.forward и Player.transform.position - transform.position нет?
Аноним 14/08/17 Пнд 23:57:59 #461 №438262 
>>438236
Ты прав, страдаю хуйней. Спасибо ещё раз.
Аноним 15/08/17 Втр 11:20:12 #462 №438293 
Как явно остановить анимацию? Везде показано только для Legacy animation
Аноним 15/08/17 Втр 11:24:15 #463 №438297 
>>438293
YourObject.GetComponent<Animator>().enabled = false;
Аноним 15/08/17 Втр 15:27:13 #464 №438323 
Ваши предложения, какая структура данных лучше всего подходит для графа, чтобы хранить информацию о узлах и рёбрах разных типов
Ну или какой есть фри ассет для этого
Аноним 15/08/17 Втр 15:37:42 #465 №438329 
Unity 2017-08-15 16-36-43-25.png
>>438323
да не то что бы у методов хранения графа было уж так много вариантов. чё делаешь то?
Аноним 15/08/17 Втр 15:44:46 #466 №438333 
>>438329
Дейтсим для порнотреда рядом. Последние пару дней вникаю в юнити, почитывая фоном unity in action и придумывая систему отношений между жГГ и неписями. Вот на графах хочу сделать связи между неписями, чтобы сделав хорошо одному, мы повысили свою репутацию у близких ему людей.

Можете посоветовать что почитать для реализации всяких gameManager и EventAgregator?
Аноним 15/08/17 Втр 16:04:18 #467 №438336 
Unity 2017-08-15 16-46-26-44.png
>>438333
не если намерян вручную редактировать граф то советую сделать что-то вроде такого:

public class Graph {
List<Node> nodes;
List<Edge> edges;
Dictionary<int, Slot> slotByID;
}

public class Node {
List<Slot> slots;
}

public class Slot {
int id;
}

public class Edge {
int idFrom, idTo;
}

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

если собрался хранить игровые данные хоть в чем-то из этого то советую наследоваться от ScriptableObject.

данные о соединении в слотах не храни.
Аноним 15/08/17 Втр 22:25:47 #468 №438373 
Может кто делать ревью кода, чтобы я знал, что не делаю откровенное гавно?
И как загрузить строки из .txt в массив? Хотел юзать textAsset, но он null выдает.
Аноним 15/08/17 Втр 22:51:56 #469 №438375 
>>438373
охуеть ревью кода. вот до чего людей доводит групповое погромирование. ну ты главное давай, а там разберемся
ничего он нулл не выдает. TextAsset отлично содержимое читает. не понял как пользоваться чтоли?
Аноним 16/08/17 Срд 05:17:00 #470 №438395 
>>438373
>я знал, что не делаю откровенное гавно
Обычно люди, которые думают, что делают не-говно, делают такую фиерическую хуету, что окружающие разбивают лица фейспалмом. И при этом с умным видом учат других работать.
Так что прими как факт то, что твой код всегда не очень, и живи с этим, читая книги и размышляя, что можно улучшить/переделать.
Аноним 16/08/17 Срд 12:22:43 #471 №438417 
>>438336
Давно в хуюнити макароны из ынрыла появились или это не то, о чём я думаю?
Аноним 16/08/17 Срд 12:24:02 #472 №438418 
>>438417
http://unity3de.blogspot.ru/2015/08/reveal-unknown-graph-and-graphgui-class.html
Аноним 16/08/17 Срд 13:01:24 #473 №438422 
В каком namespace находятся все наследники монобеха? В смысле, мне нужен полный "путь".
получаю доступ к коду билда из стороннего приложения, потрошу Assembly-CSharp

Пробовал следующие варианты и они не прокатывают:
UnityEngine.MyClass
MySolution=имя проекта.Assembly-CSharp.MyClass
MySolution.MyClass
Assembly=CSharp.MyClass
И всякое разно...Ниче не работает. Пробовал сувать MyClass и Type.GetType(MyClass).ToString() в Debug.Log - не выдаёт ничего особенного.

ЧЯДНТ?
Аноним 16/08/17 Срд 14:16:34 #474 №438426 
>>438422
А, всё. Дело было не в namespace'ах. Это я криворукий. Полный путь так и выглядит "MyClass", вот и всё.
Аноним 16/08/17 Срд 14:50:31 #475 №438427 
Есть туториалы на русском? Пока моего навыка не достаточно.
Аноним 16/08/17 Срд 18:10:49 #476 №438451 
>>438427
> Есть туториалы на русском?
Полный ютуб.
Аноним 16/08/17 Срд 18:58:10 #477 №438463 
>>438451
А текстовые? Не люблю я видиотуториалы. Хотя можно ещё скилл инглиша подтянуть и обмазаться годнотой.
Аноним 16/08/17 Срд 19:57:54 #478 №438472 
Безымявыфвфнный.png
Алярма! У меня пропали крючки RectTransform! Как фиксить?
Аноним 16/08/17 Срд 21:08:00 #479 №438490 
1.png
доволен. сорт оф сделал весь функционал который хотел, теперь вот пару дней эту хуйню напильником поточить и будет заебись. даже InOut ноды сделал, кликабельные превью и отделил актуальную карту высот от используемой в графе.

>>438395
обычно люди не думают, а просто делают.

>>438417
это самописное говно и оно ближе к этим нодовым редакторам шейдоров.

>>438418
на самом деле я почти не пользуюсь тем что там есть и в итоге сделал свое, взяв оттуда пару вещей.

>>438463
да лучше уж смотри на английском тогда, если хоть пару слов связать можешь. языки то быстро подтягиваются от практического применения.

>>438472
крючки лол. вообще навскидку не вижу в чем дело. но их кстати можно менять если ткнуть на квадратик в рект трансформе. там опции меняются если жать Alt, Shift, Alt+Shift. что-то из этого перемещает их.
Аноним 16/08/17 Срд 21:33:12 #480 №438493 
>>438490
Что на скрине происходит? Ты это будешь в ассет стор выкладывать, или для себя пилишь?
Аноним 16/08/17 Срд 21:39:44 #481 №438494 
>>438493
> Что на скрине происходит?
Редактор террейна, кажись.
Аноним 16/08/17 Срд 23:13:23 #482 №438503 
Поясните за сжатие картинок в юнити. Я слышал, что-то про то, что 2д игры на юнити - гиблое дело, потому что он переводит пнг в бмп формат и какая-нибудь визуальная новелла весит 5 Гб. Сам видел такие игры, где пара десятков картинок, а игра на 2 гига.
Аноним 16/08/17 Срд 23:34:21 #483 №438505 
Unity 2017-08-17 00-19-42-50.png
Unity 2017-08-17 00-24-30-43.png
>>438493
на скрине происходит всякое. это же простенький генератор террейна.
слева делается инстанс хранилки с Vector2, которая сохраняет их в гриде чтобы была возможность быстро проверять нет ли поблизости ещё Vector2 при добавлении, потом туда делается 250 попыток добавить пойнт при минимальном расстоянии в 20 юнитов. потом по полученым пойнтам генерируется диаграмма вороного. потом эта диаграмма вороного структурируется удобно чтобы разделить её на землю, воду, считается высота вертексов пропорционально дистанции до ближайшей границы "воды". потом это все растеризуется в карту высот, карты биом, карту наклонности. что-то из этого размывается. а потом с этими картами происходят всякие интересные манипуляции в своих отдельных нодах. они там плюсуются, перемножаются и прочее. а на концы к ним можно прицепить накладываемые текстурки, или чтобы там были деревья, или травка, или геймобжекты.

пишу пока для себя. потом поделаю имплементацию триангуляции делоне с divide and conquer алгоритмом, может выложу на ассетстор потом за смешную цену, или бесплатно.
хотя там и так уже похожие вещи есть. например MapMagic. но проще уж хуйню под свои нужды ебануть, чем за это 75 долларов отдать.

например простенький паттерн и его результат. в процесе я слишком наклоненный террейн сделал горой, нагенерировал пойнтов, оставил их только там где зеленое будет. сделал шум, обрезал его, травки сунул. потом вот не понравилось, помножил травку на 2, снова сунул, травки стало больше.

>>438503
чего лол. сжатие ты сам настраиваешь как тебе там надо. больше занимает всякая музыка и озвучка. вон HuniePop сраные 300 мегабайт занимает, например.

к тому-же нет ничего плохого в играх которые занимают 2-5 гб.
Аноним 16/08/17 Срд 23:54:15 #484 №438507 
Товарищи юнитиводы.
Я давно мечтаю запилить РТС. Освоил выделение юнитов рамкой, перемещение их с помощью NavMesh, автоатаку, директ атаку, перемещение "на муве" и всякие хелсбары. И тут я понял, что 3D-графику рисовать не потяну. Посему решил переместиться в 2D и сделать что то в стиле warcraft II. Но вот беда, NavMesh работает в осях XZ, а 2D режим юнити в XY. Как быть? Как реализовать навигацию в 2D?
Аноним 17/08/17 Чтв 00:03:39 #485 №438514 
>>438507
https://docs.unity3d.com/ScriptReference/AI.NavMeshBuilder.BuildNavMeshData.html
почитай внимательно. новый навмеш в юнити такой охуенный что его можно крутить.
Аноним 17/08/17 Чтв 00:04:42 #486 №438515 
>>438514
>>438507
а да. чуть не забыл.
https://github.com/Unity-Technologies/NavMeshComponents на, возьми отсюда компоненты и экзамплы
Аноним 17/08/17 Чтв 01:30:10 #487 №438524 
>>438507

Я не смог разобраться, извини. Можешь на примере объяснить как мне сделать 2D-проект с использованием навмеша? Если сможешь, то со скриншотами.
Аноним 17/08/17 Чтв 01:44:26 #488 №438528 
>>438524
ну? чего же ты такой гейдевелопер хуевый? тебе ссылку дали ниже, открой экзампл 3_free_orientation и посмотри.
Аноним 17/08/17 Чтв 14:31:22 #489 №438600 
Привет, есть вопрос.
Задача стоит создать объект с помощью Instantiate. Как создать его с поворотом, т.е. как использовать кватерион?
Аноним 17/08/17 Чтв 14:35:02 #490 №438601 
>>438600
Нахуя тебе прям кватернион? Юзай Quaternion.Euler и не еби мозги.
Аноним 17/08/17 Чтв 14:39:24 #491 №438602 
>>438601
Спасибо, это именно то что мне было нужно.
Аноним 17/08/17 Чтв 16:41:34 #492 №438634 
asd1111.png
Почему это говно выдает Object reference not set to an instance of an object? Какая ссылка равна null?

В инспекторе префаб shoot и объект shootSpawn перенес.
Аноним 17/08/17 Чтв 16:47:40 #493 №438635 
>>438634
брейкпоинт поставь и посмотри, откуда мы бля знаем че у тебя там нулл
Аноним 17/08/17 Чтв 18:12:34 #494 №438649 
>>438634
хз, почему так не работает, но я реализовывал это так:
shoot = Instantiate (shoot, shootSpawn.transform.position, shootSpawn.transform.rotation);
Аноним 17/08/17 Чтв 18:13:52 #495 №438650 
>>438635
Ты рофлишь? У чувака 1 строка кода
Аноним 17/08/17 Чтв 18:17:23 #496 №438651 
Как проверить что я не кликаю на кнопку, а просто по экрану?
Аноним 17/08/17 Чтв 18:25:33 #497 №438655 
>>438651
Если кнопка сделана через обычный UI, то
using UnityEngine.EventSystems;
...
if (Input.GetMouseButtonDown (0) && !EventSystem.current.IsPointerOverGameObject ())
{
//хуйпизда
}
Аноним 17/08/17 Чтв 18:27:11 #498 №438656 
>>438655
Спасибо, это то что нужно.
Аноним 17/08/17 Чтв 18:40:36 #499 №438662 
Сморю сейчас на Юнити 2017 - первым делом решил оценить фичу - sprite mask
И сразу непонимание - нахрена мне этой маской прятать объекты в окне Scene ?
Есть ли где-то галочка какая-нибудь, чтобы можно было оставить их видимыми в окне Scene (или включать когда нужно) ?
И почему тогда не сделали возможность применять маску к 3Д мешам? Без этого оно теряет половину смысла.
Аноним 17/08/17 Чтв 18:47:40 #500 №438665 
>>438649
>>438650
>>438635
Зря спросил, нахуевертил с полиморфизмом, напрямую всё работает. Хотя у меня ничего нормально не работает. Сраный AddForce
Аноним 17/08/17 Чтв 19:13:52 #501 №438670 
asd.png
Подскажите по поводу камеры - перспективная или ортографическая? ДваДэ, вид сверху.

И ещё вопрос. Instatiate'ом делаю копии префаба (стрельба). Запутался в координатах. Какие именно мне нужны что бы снаряд летел в направлении курсора? В данном исполнении снаряды летят куда нужно только в начальной позиции.
Аноним 17/08/17 Чтв 19:32:56 #502 №438675 
>>438670
> Подскажите по поводу камеры - перспективная или ортографическая?
Если нужна перспективная, то перспективная. Если нужна орто, то орто. Для 2D обычно используется орто.

> что бы снаряд летел в направлении курсора
float speed = 2f; // или сколько тебе надо
...
Vector3 pos = Input.mousePosition;
pos.z = 10f; // или не 10, короче подставляешь своё значение по z
transform.position = Vector3.Lerp (transform.position, Camera.main.ScreenToWorldPoint (pos), speed * Time.deltaTime);
Аноним 17/08/17 Чтв 19:35:50 #503 №438677 
>>438675
>Vector3.Lerp
У тебя пули будут лететь с разной скоростью в зависимости от расстояния.
Аноним 17/08/17 Чтв 19:38:13 #504 №438678 
>>438677
Тогда
transform.position = Vector3.MoveTowards(transform.position, Camera.main.ScreenToWorldPoint (pos), speed * Time.deltaTime);
Смотря как ему надо.
Аноним 17/08/17 Чтв 19:46:35 #505 №438679 
>>438678
А, скрин не посмотрел. Тогда точно MoveTowards
Аноним 17/08/17 Чтв 19:50:32 #506 №438680 
>>438670
> В данном исполнении снаряды летят куда нужно только в начальной позиции
Ёптваюмать, может это потому что ты Input.mousePosition получаешь в старте, а не в апдейте? Откуда твой старт знает что ты мышку сместил?
Аноним 17/08/17 Чтв 20:45:11 #507 №438682 
>>438680
Это скрипт снаряда, если получать Input.mousePosition в update() то снаряды будут смещаться с движением мыши.
>>438675
В апдейте закомиченно именно то что ты предлагаешь. Снаряды перемещаются вместо со мной.
Аноним 17/08/17 Чтв 20:47:27 #508 №438683 
>>438682
>>В апдейте закомиченно именно то что ты предлагаешь. Снаряды перемещаются вместо со мной.

Пизжу, снаряды просто перемещаются в точку куда кликнул.
Аноним 17/08/17 Чтв 20:48:51 #509 №438684 
>>438682
> снаряды будут смещаться с движением мыши
Снаряды будут лететь туда, где мышка. Тебе разве не это надо?
Аноним 17/08/17 Чтв 20:49:34 #510 №438685 
>>438683
> снаряды просто перемещаются в точку куда кликнул
Где у тебя в коде хоть слово про "кликнул"?
Аноним 17/08/17 Чтв 20:50:54 #511 №438686 
>>438684
Меняют траекторию во время полета.
Аноним 17/08/17 Чтв 20:51:37 #512 №438688 
>>438686
Ну так разве это не
> что бы снаряд летел в направлении курсора
?

Изъясняйся нормально что тебе нужно.
Аноним 17/08/17 Чтв 20:55:01 #513 №438689 
>>438685

В PlayerController

//Префаб снаряда
public GameObject shoot;
//Объект откуда стреляю
public Transform shootSpawn;


void Update()
{
if (Input.GetMouseButtonDown(0))
{
Instantiate(shoot, shootSpawn.position, shootSpawn.rotation);
}

}
Аноним 17/08/17 Чтв 20:57:19 #514 №438690 
>>438688
Обычная стрельба кусками говна. Игрок жмет клик, куда мышка направленна туда и летит снаряд. Без воздействий на снаряд во время полета.
Аноним 17/08/17 Чтв 20:58:27 #515 №438691 
>>438690
Ну так и что конкретно у тебя не работает, если
> В данном исполнении снаряды летят куда нужно только в начальной позиции
?
Аноним 17/08/17 Чтв 21:01:56 #516 №438692 
>>438691
http://recordit.co/yQsoMlQcA0
Аноним 17/08/17 Чтв 21:05:44 #517 №438693 
>>438692
Ааа, в смысле дальше не летят. Так бы сразу и сказал.
Аноним 17/08/17 Чтв 21:17:30 #518 №438695 
Ебать я даун, я уже задавал такой же вопрос. >>436652 - ответ
Нехуй проебывать геометрию в школе


Аноним 17/08/17 Чтв 21:40:06 #519 №438698 
Снимок.PNG
Сап юнитяч! Как нормально подружить юнити проекты с гитом? У меня чет какая то хуйня выходит.

Сделал проектик на компе дома. Закоммитил сначала все кроме билда и папки Library с какими-то как я понял метаданными. Запушил на гитхабчик. Запулился с ноута - открыл проект - он немного покоцался: в сцене в навешанных на элементы скриптах пропали все прикрепленные из редактора ссылочки на префабы, компоненты и т.п. (см. пикрил, вместо этих штук везде было Missing). Потом почему-то создался дублирующий файл .csproj (проектик студии) и стал использоваться он (Был старый Project.csproj, добавился новый Project-CSharp.csproj). А когда я открыл C#-файлик какого то скрипта из юнитиредактора даблкликом и запустилась вижуалстудия, она не подсвечивала синтаксис и писала "Проект был выгружен.", причем райтклик по решению и нажатие "перезагрузить проект" не помогало.

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

Запуллился дома с компа. Открываю проект. Так эта сука говорит "нет, извини, у тебя в мета-данных какая-то хуйня, пожалуй перестрою ка я библиотеку". И опять отрывает все ссылочки от скриптов.

ЧТО ЕЙ НАДО ТО ХОССССПАДИ?!?!?!
Аноним 17/08/17 Чтв 21:41:26 #520 №438699 
>>438698
Ебать, используй Collaborate, нахуя ты велосипед создаёшь?
Аноним 17/08/17 Чтв 21:44:09 #521 №438700 
>>438699
Что такое коллаборейт и как его юзать? К гиту уже давно привык, т.к. не первый год прогаю, проблем с ним никогда не испытывал, пока не решил повкатываться в юньку...
Аноним 17/08/17 Чтв 21:47:29 #522 №438702 
>>438700
Window - Services - Collaborate
Все изменения заливаются в облако (контроль версий присутствует), с другого компа/ноута изменения сливаешь и работаешь дальше. Так же можно использовать в команде.
Всё делается в два клика.
Аноним 17/08/17 Чтв 22:12:49 #523 №438704 
>>438698
Метафайлы (*.meta) коммитил?
Аноним 17/08/17 Чтв 22:28:14 #524 №438708 
>>438695
Можно ещё так (вешать на снаряд):

public float speed = 10f;

void Start () {
Vector3 pos = Camera.main.ScreenToWorldPoint (Input.mousePosition);
pos.z = transform.position.z;
transform.LookAt (pos);
}

void Update () {
transform.Translate (Vector3.forward speed Time.deltaTime);
}
Аноним 17/08/17 Чтв 22:34:41 #525 №438709 
>>438708
Ах да, это если у тебя 3d-объекты, а не спрайты.
Аноним 17/08/17 Чтв 22:55:04 #526 №438714 
>>427717 (OP)
Кстати возник вопрос. Как можно отрисовать только часть спрайта?
Допустим для открывающейся вверх двери. Пока уменьшаю scale но выглядит ущербно.
Аноним 17/08/17 Чтв 23:12:18 #527 №438718 
>>438709
У меня спрайты. Сделал вот так:


mousePosition = Input.mousePosition;
mousePositionRay = Camera.main.ScreenToWorldPoint(mousePosition);

rb.AddForce((mousePositionRay - transform.position) * speed, ForceMode2D.Force);

Причём чем дальше больше расстояние игрок - место клика, тем больше сила. Тащем-то баг превратился в фичу. Можно создавать препятствия перед ебальником или показывать скилушечку кликая как можно дальше от корабля ( сила увеличивается).
Аноним 17/08/17 Чтв 23:12:34 #528 №438719 
image.png
>>438714
Аноним 17/08/17 Чтв 23:16:33 #529 №438721 
image.png
>>438719
хз, как для 3-мерных спрайтов, но обычный можно через спрайтрендер
Аноним 17/08/17 Чтв 23:18:58 #530 №438722 
>>438714
Только у меня вопрос. Если дверь должна открываться, то почему её просто не передвинуть, вместо того, чтобы сжимать?
Аноним 17/08/17 Чтв 23:43:13 #531 №438727 
Untitled.webm
Я просто оставлю это здесь
Аноним 17/08/17 Чтв 23:53:01 #532 №438730 
>>438727
ТОКИ?
Аноним 17/08/17 Чтв 23:54:08 #533 №438731 
>>438730
>ТОКИ
какие токи?
Аноним 17/08/17 Чтв 23:54:24 #534 №438732 
Котаны, нужно создать префаб, проиграть одну анимацию и уничтожить его. А теперь вопрос, как проиграть анимацию и получить коллбэк об окончании? И шоб ДжваД
Аноним 17/08/17 Чтв 23:55:08 #535 №438733 
>>438731
Конкурс инвалидов
https://tabun.everypony.ru/blog/OKI/172165.html
Аноним 18/08/17 Птн 00:45:43 #536 №438741 
output.webm
еее, аутизмус, еее

нужен был хостинг шебма
Аноним 18/08/17 Птн 09:34:44 #537 №438756 
>>438650
И как же 1 строка помешает установки брейкпоинта?
Аноним 18/08/17 Птн 09:47:29 #538 №438758 
>>438722
Потолок в который открывается слишком маленький чтобы оно туда влезло
>>438721
Спасибо
Аноним 18/08/17 Птн 09:48:14 #539 №438759 
>>438756
Дааа, это сильно поможет понять, в какой строке ошибка.
Аноним 18/08/17 Птн 10:12:19 #540 №438760 
2.jpg
4.jpg
6.jpg
>>427717 (OP)
Запилил на юнити игру. Покритикуйте.

Sel.
play.google.com/store/apps/details?id=com.LonelyGod.sel

Все просто: уничтожайте квадратики одного цвета, получайте очки.

Испытайте вашу скорость реакции в трех режимах игры: аркада, 13 ходов и 49 секунд. В аркадном режиме уничтожая квадратики вы получаете очки и дополнительное время. В режимах на время и на ходы - заработайте как можно больше очков за 49 секунд или за 13 ходов.
Аноним 18/08/17 Птн 10:12:41 #541 №438761 
>>438759
Довен, во время дебага можно навести мышку на переменную и будет показано ее значение.
Аноним 18/08/17 Птн 10:54:35 #542 №438764 
>>438732
Можно поставить ивент на конец анимации, хендлить его и вызывать дестрой
Аноним 18/08/17 Птн 10:59:28 #543 №438765 
bea1285a2668292c386e2250d227e458.png
>>438760
Ты б у спрайтов по краям хотя бы в пару пикселей альфа-обводку делал, чтоб они в кашу не сливались. Примерно так.
Аноним 18/08/17 Птн 11:52:27 #544 №438771 
>>438760
У меня глаза от скринов вытекли
Аноним 18/08/17 Птн 12:51:53 #545 №438782 
tybMHJOfec.jpg
>>438771
Аноним 18/08/17 Птн 13:30:47 #546 №438787 
>>438373
>Может кто делать ревью кода, чтобы я знал, что не делаю откровенное гавно?
>И как загрузить строки из .txt в массив? Хотел юзать textAsset, но он null выдает.
На Codacy или аналог загрузи
Аноним 18/08/17 Птн 13:32:51 #547 №438788 
loderunnerbygfball84887.jpg
Привет.
Подскажите, при навыках в рисовании, и нулевом навыке в программинге, смогу я запилить в юнити простенький "камерный" платформер с такой же простой 8-битной графикой. Что то вроде:

https://www.youtube.com/watch?v=x57Gn0beSs8
это лишь пример, игру другую буду пилить но схожую по сложности и типу.

Не умея программировать, смогу ли я обойтись туториалами и возможно какими-то готовыми скриптами, и не потратив 1000+ часов на создания? Рисовать буду сам, скил есть. Не могу выбрать движок.

Все на таком же базовом уровне.
Аноним 18/08/17 Птн 13:35:29 #548 №438789 
>>438788
> смогу ли я обойтись туториалами и возможно какими-то готовыми скриптами
Если IQ больше чем длина члена, то сможешь.
Аноним 18/08/17 Птн 13:41:24 #549 №438790 
>>438698
https://github.com/github/gitignore/blob/master/Unity.gitignore

Аноним 18/08/17 Птн 18:21:17 #550 №438839 
image.png
Ну охуеть теперь
Аноним 18/08/17 Птн 18:23:41 #551 №438840 
>>438839
можете хуев на почту покидать заодно, че уж там
Аноним 18/08/17 Птн 18:30:19 #552 №438841 
>>438839
Я обновы подожду, один хуй я свои говноподелия ещё даже не билдил.
Аноним 18/08/17 Птн 18:37:36 #553 №438843 
>>438788
Сможешь. Написание простых скриптов в юнити, это оооочень далеко от страшного слова "программирование". Тебе по сути надо будет только писать штуки вроде "если Столкновение(Игрок, Враг) то Игрок.Сдох()"
Можно, конечно, заюзать конструкторы, где кодить вообще не надо, но там свободы будет меньше, больше запутанности, так что самую-самую базу надо уметь делать, элементарно там, что такое классы, переменные, циклы, условия.
Аноним 18/08/17 Птн 18:41:33 #554 №438844 
>>438788
> готовыми скриптами
Лучше не надо. Лучше потрать на пару вечеров больше, но зато напишешь сам и будешь знать что у тебя где и почему, если что-то поменять захочешь.
Аноним 18/08/17 Птн 18:43:13 #555 №438846 
>>438841
>in editor
Жопой читаешь? В редакторе эксплоит, через который твою пекарню могут угнать.
Аноним 18/08/17 Птн 18:45:52 #556 №438847 
>>438846
> Жопой читаешь?
Видимо да.
> твою пекарню могут угнать
Очень вряд ли, у меня и хардварный и софтварный фаервол, и оба настроены очень параноидально.
Если подозрительная хуета начнётся — накачу.
Аноним 18/08/17 Птн 20:13:59 #557 №438852 
Есть у меня на объекте obj скрипт Yoba. В скрипте написано:
void OnMouseDown () {
// хуёмоё
}
Соответственно, при клике по объекту что-то происходит.

Есть у меня другой скрипт, в котором прописано
obj.GetComponent<Yoba> ().enabled = false;

Скрипт срабатывает, в инспекторе на объекте obj скрипт Yoba становится неактивным (галочка на компоненте исчезает). Но всё равно при клике на obj скрипт срабатывает, хотя в инспекторе чётко видно что скрипт неактивен.

Это что за говно? Я, конечно, переделал под флажок в скрипте и всё работает, но хуйня всё равно странная.
Аноним 18/08/17 Птн 20:31:11 #558 №438857 
>>438852
А, ещё лучше. Можно даже безо всяких вторых скриптов, тупо в инспекторе с объекта снять галочку с условного скрипта Yoba, но он всё равно будет срабатывать.
Аноним 18/08/17 Птн 21:14:13 #559 №438863 
8-1.png
А реально ли ообещ запилить какой-то глобальный лидер-борд с рекордами по количеству очков, между всеми играками в игру? Или это типа какой-то сервак поднимать надо?
Аноним 18/08/17 Птн 21:37:32 #560 №438864 
Можно ли как-то сделать, чтобы Visual Studio подсказывала код, названия компонентов и их свойств?
Аноним 18/08/17 Птн 21:48:04 #561 №438866 
>>438864
Поковыряйся в настройках:
Сервис > Параметры > Текстовый редактор > C#
Аноним 18/08/17 Птн 22:08:40 #562 №438869 
>>438863
Да сервер, но без античита нахуй не нужно.
Аноним 19/08/17 Суб 00:09:27 #563 №438876 
>>438869
Античат какая проблема?
Аноним 19/08/17 Суб 03:37:21 #564 №438881 
Я так понимаю, писать всякие конфиги для настроек и сохранять, допустим, внешность персонажа нормально можно только в .xml? Вкиньте нормальный гайд по node'ам, документация с msdn вообще не читабельна.
Аноним 19/08/17 Суб 10:33:29 #565 №438896 
вопрос. как узнать скрин спейс координаты у RectTransform когда канвас находится в камера спейсе? position начинает возвращать мировые координаты же. я конечно придумал решение, но какое-то оно плохое
Аноним 19/08/17 Суб 13:42:14 #566 №438909 
Запилил реакцию на свайпы вправо и влево, которые выключают анимацию объекта через cube.GetComponent<Animator>().enabled = false; и включают булевые переменные IsActiveRightRotate(при правом свайпе) или IsActiveLeftRotate соответственно.При том, противоположные переменные ставлю в false

Далее в Update пихаю енто

if (IsActiveRightRotate)
{
cube.transform.rotation = new Quaternion(0, -30, 0, 5);
}
else if (IsActiveLeftRotate)
{
cube.transform.Rotate(new Vector3(0, 30, 0));
}

но куб просто прекращает анимацию и зависает на своем прежнем месте.
Что не так?
Аноним 19/08/17 Суб 13:44:27 #567 №438910 
>>438909
Забыл сказать, что пробовал по разному реализовать поворот. И через Rotate, и через свойство rotation
Аноним 19/08/17 Суб 13:46:49 #568 №438911 
>>438909
что за странная схема присвоения ротации то такая? может просто в апдейте будешь делать ротацию на дельта-ротацию перемножая текущую ротацию на дельту?
Аноним 19/08/17 Суб 13:57:18 #569 №438918 
>>438909
вообще на самом то деле ничего удивительного что у тебя что-то там встает. в первом варианте ты зачем-то напрямую выставляешь ротацию, во втором тоже. тебе надо менять ротацию же.

например вот так:
[Range(0f,1f)]
public float speed = 0.9f;
Quaternion targetRotation;

void Start () {
targetRotation = transform.rotation;
}

void Update () {
targetRotation *= Quaternion.Euler(Input.GetAxis("Vertical"), Input.GetAxis("Horizontal"), 0);
transform.rotation = Quaternion.Lerp(transform.rotation, targetRotation, speed);
}
Аноним 19/08/17 Суб 13:58:14 #570 №438920 
>>438910
>>438909
Решил проблемы корутиной
Аноним 19/08/17 Суб 19:49:39 #571 №438944 
image.png
Добрый вечер, уважаемые гейм девелоперы.
Столкнулся со следующей проблемой.
Имеются блоки 1х1, стоящие в ряд строго друг за другом и на одной высоте. На блоки навешен Box Collider 2D.
Есть круг с фиксированным Rotation, с RigidBody 2D, Circle Collider 2D и скриптом, в апдейте задающий фиксированную скорость по координате X.
Результат: Круг перемещается по блоком, но слегка отскакивает так, будто натыкается на выпирающие элементы.

Аноны, как мне разрешить сию проблему? Как заставить круг не отскакивать?
Аноним 19/08/17 Суб 19:50:35 #572 №438945 
>>438944
Забыл добавить.
На коллайдерах никаких материалов не висит.
Аноним 19/08/17 Суб 19:59:48 #573 №438948 
>>438944
Я бы посоветовал просто сделать 1 коллайдер на все блоки. Но я надеюсь, здесь найдётся кто-нибудь умней меня.
Аноним 19/08/17 Суб 20:02:21 #574 №438949 
>>438948
Проблема в том, что блоки генерятся на ходу.
Но этот вариант я рассматриваю как решение, если лучше не найдется. Все таки не хочется мучаться с длиною блока и переделывать генератор целиком.
Аноним 19/08/17 Суб 20:07:43 #575 №438950 
>>438949
Я сам не так давно юнити использую, но там похоже есть трабла с координатами. В общем они, как я понял, округляются и если кодом их изменять, в одном случае могут получатся разные значения в.
Аноним 19/08/17 Суб 20:21:18 #576 №438952 
>>438950
Можешь кинуть, где ты это вычитал?
Аноним 19/08/17 Суб 22:04:41 #577 №438960 
>>438952
Да я сам когда камеру вращал на 180 градусов, увидел, что у неё после нескольких оборотов в положении последняя цифра после запятой начала изменяться.
Аноним 19/08/17 Суб 22:36:38 #578 №438963 
>>438950
Округляй сам. Например,
static Vector2 round (Vector2 v) {
return new Vector2 (Mathf.RoundToInt (v.x), Mathf.RoundToInt (v.y));
}
и потом просто в коде его вызываешь
Аноним 19/08/17 Суб 23:56:52 #579 №438969 
>>427717 (OP)
Посоны, есть объект со способностью наносить урон, при коллизии с объектом. Как назвать интерфейс с
float Damage {get;}
void OnCollisionEnter2D(Collision2D collision)
?
Аноним 20/08/17 Вск 02:22:07 #580 №438977 
>>438969
Damageable
Аноним 20/08/17 Вск 13:37:10 #581 №439002 
>>438952
http://floating-point-gui.de/basic/

Аноним 20/08/17 Вск 13:53:56 #582 №439003 
>>439002
Ну окей, но я не использую никаких вычислений. Я просто инстантинирую блоки с заданной заранее для всех координатой Y. Даже если округление кривое, то оно должно быть одинаково кривым для всех, нет?
Аноним 20/08/17 Вск 14:17:14 #583 №439004 
9821357.jpg
Посоветуйте сайты с фрилансерами с которыми имели дело и можете рекомендовать

Команду мне не собрать, а денег есть на небольшие задания по говнокодингу и сборке карты
Аноним 20/08/17 Вск 14:20:44 #584 №439005 
>>439004
Что за задание по говнокодингу? Может впишусь, один хуй скучно.
Аноним 20/08/17 Вск 14:31:50 #585 №439006 
>>439005
поставить систему диалогов с памятью у NPC
там же, понятно, привязка по ивентам

цель - получить от NPC инфу и/или ништяки за любовь и/или ништяки, нужные им.

AI + dialogues

японел, что это не просто говнокодинг и задача не тривиальна ни разу
Аноним 20/08/17 Вск 14:34:29 #586 №439008 
>>439005
а вообще мне нужен кто-то, с кем поговорить
Аноним 20/08/17 Вск 15:02:23 #587 №439010 
Нихуя не добрый нахуй хуевый день!

Начал делать кароче не гугл кардбоард херню на юнити.

Создал проект, сделал всё по мануалу етц.

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

Кароче нит про тип инб4 соси
Аноним 20/08/17 Вск 15:05:17 #588 №439011 
>>439010
гугли how to debug an Android app

>Билжу - билдится
запускать пробовал?
Аноним 20/08/17 Вск 15:11:29 #589 №439012 
>>439011
Так говорю все запускается у них, у кого то даже картинка есть. Но всех отправляет в маркет за приложением Google Cardboard - и у всех оно не ставится, хотя спеки нормальные и другие приложения VR работают.

Есть правда еще проблема что у меня лично на руках нет телефона с андроидом выше 4.4 (а ниже не деплоится кардборд)
Аноним 20/08/17 Вск 15:16:29 #590 №439013 
>>439012
я про это и спрашивал:
>запускать пробовал?

как можно что-то девелопить, не имея возможности отдебажить самому! Любой говнокод соберется, если нет косяков по синтаксу.

Короче, уговори одолжить тебе тюлюфон
Аноним 20/08/17 Вск 15:38:17 #591 №439014 
>>439006
ВНку лепишь что ли?
Аноним 20/08/17 Вск 16:14:41 #592 №439018 
>>439014
Эх, я спрашивал за графы на прошлой неделе, но так ничего и не сделал. Тоже диалоговую систему буду через графы пилить.
Может накидаете что-ли как делать собственные окна и элементы в гуи редактора?
Аноним 20/08/17 Вск 16:57:21 #593 №439023 
>>439014
3д эдвенчер с флиртом и еблей
Аноним 20/08/17 Вск 17:15:53 #594 №439027 
>>439023
Я это ты, только у меня 2дэ и я без денег
Аноним 20/08/17 Вск 19:34:31 #595 №439054 
>>439018
окна и элементы то легко, https://docs.unity3d.com/ScriptReference/EditorWindow.html а дальше все как в старом ГУИ. разве что ещё есть EditorGUI и EditorGUILayout для всякого специфичного говна. ещё Handles есть которым всякие интересные вещи можно на гуи рисовать. но самое интересное говно случится то как всегда когда захочется что-то хорошего сделать. вообще ты вот вопросы лучше задавай по конкретным проблемам. тема то большая.
Аноним 20/08/17 Вск 20:15:32 #596 №439056 
Я этот антон >>439004
так и не дождавшись советов, покапался на фрилансер.ком, где зареган года с 2008-го работодателем.

5 бачей в час для фрилансера из мухосранска хотя город известный это как?
Аноним 20/08/17 Вск 20:16:59 #597 №439057 
>>439056
Ты лучше сначала скажи как ты будешь отслеживать сколько часов у него реально ушло на скрипт.
Аноним 20/08/17 Вск 20:29:59 #598 №439058 
>>439057
Я перечитал на в месяц. получилось для мухосрани очень не плохо (600+). Он сделал пока 3-4 проекта, где каждый 100-150 бачей и сдавал через неделю. Это мне подходит.

Моя проблема даже не особо в прогании. Сам подпилю как-нибудь. GTGD на ютубе, например, все хорошо объясняет.

Мне надо сделать красиво из имеющихся ассетов на мне защитный шлем от какашек, можете кидать

Ну, не хочу я творить левел! Пусть кто-то накидает, а я там погуляю, оценю.
Аноним 20/08/17 Вск 20:31:10 #599 №439059 
>>439008
Сделал бы твою хуйню, но ты просто очередной грязный делец, который хочет нажиться на добропорядочных хикках, так что рака яиц тебе желаю
Аноним 20/08/17 Вск 20:36:20 #600 №439060 
>>439059
>>439059
>Сделал бы твою хуйню
сколько лет опыта в юнети?
портфолио имеется?
Аноним 20/08/17 Вск 22:19:53 #601 №439069 
Аноны, неужели никто не может помочь с этим?
>>438944
Аноним 20/08/17 Вск 22:27:47 #602 №439070 
>>439069
Нихуя ты с этим не сделаешь. Либо пили общий коллайдер, либо иди нахуй.
Аноним 20/08/17 Вск 22:36:59 #603 №439071 
>>439070
Должен быть выход. Иначе как работают прочие игры, где уровень из блоков состоит?
Аноним 20/08/17 Вск 23:28:32 #604 №439075 
>>439071
А ты не проверял просто. Там такое же говно происходит. Я по teamfortress2 знаю, что в соурсе можно удариться в стену, если она состоит из нескольких блоков и ты летишь вверх вплотную к ней.
Аноним 20/08/17 Вск 23:31:09 #605 №439076 
>>439075
Т.е. ты делаешь рокетджамп, летишь вверх у высокой такой стены, собираешься пустить в стену ещё 1 ракету и полететь дальше, но тут происходит внезапный пиздец. Ты резко останавливаешься и начинаешь падать.
Аноним 20/08/17 Вск 23:58:57 #606 №439080 
>>439076
Ну блин, это же откровенный баг движка, не?
Аноним 21/08/17 Пнд 00:28:35 #607 №439089 
Джоп запостил, если кому на водку не хватает
https://www.upwork.com/ab/applicants/899376062433861632/job-details
Аноним 21/08/17 Пнд 00:46:15 #608 №439097 
>>438852
enabled отвечает только за выполнение метода Update твоего скрипта все остальное продолжает работать, сделай флаг в своей йобе и чекай его.
Аноним 21/08/17 Пнд 00:47:44 #609 №439098 
>>439097
можешь так вообще сделать
void OnMouseDown () {
if(this.enabled){
// хуёмоё
}
}
Аноним 21/08/17 Пнд 00:48:50 #610 №439099 
>>439080
По своему игровому опыту я бы сказал, что почти все движки одинаковые. Похоже эта проблема просто обязана существовать, иначе ей на смену просто придут другие.
Аноним 21/08/17 Пнд 00:52:50 #611 №439101 
>>438881
Можешь json-ы юзать, а можешь вообще скриптабл обжекты юзать и не выебываться.
https://docs.unity3d.com/Manual/JSONSerialization.html
https://docs.unity3d.com/ScriptReference/ScriptableObject.html
Аноним 21/08/17 Пнд 00:56:54 #612 №439104 
>>438896
https://docs.unity3d.com/ScriptReference/Camera.WorldToScreenPoint.html
Аноним 21/08/17 Пнд 01:05:44 #613 №439106 
>>439006
У меня есть такая шляпа. Могу пояснить как делать за нихуя или переделать под твои нужды (не за нихуя).
Аноним 21/08/17 Пнд 01:09:21 #614 №439107 
>>439106
поклянись, что не хахел
[email protected]
Аноним 21/08/17 Пнд 03:48:30 #615 №439111 
В какой программе можно сделать анимации 2d чара, движения конечностей, глаз тп, избегая листа png? after effect не зашел
Аноним 21/08/17 Пнд 03:54:54 #616 №439112 
>>439106
Поясни как делать за нихуя
Аноним 21/08/17 Пнд 05:54:25 #617 №439115 
>>439097
> enabled отвечает только за выполнение метода Update твоего скрипта все остальное продолжает работать
Вон оно как. Спасибо.
Аноним 21/08/17 Пнд 07:45:53 #618 №439120 
>>439111
Spine или я непонел вопроса
Аноним 21/08/17 Пнд 11:17:30 #619 №439141 
photofacefuncom1503303023.jpg
photofacefuncom1503303129.jpg
Ребята, подскажите, кто знает, пожалуйста.
У меня есть платформ(пикча 1) с пивотом на гране, для того, чтобы при изменении rotation, объект поворачивался как надо.
Так вот, как мне сделать, чтобы когда куб на него падает, то платформа поварачивалась вслед, как на второй пикче.
Аноним 21/08/17 Пнд 11:27:06 #620 №439143 
>>439104
да я так и сделал, но там плюс ещё кривая формула конвертации прочего говна чтобы правильно сдвигать рект в нужную сторону. но этот метод выглядит переусложненным.

>>439101
кстати скриптабл обжекты я бы в этом случае особо не советовал. в сбилженом проекте их особо не посоздаешь и поменяешь. они все-же для организации проекта.

>>439141
что за странный вопрос. как сделать то хочешь? физоном? анимацией?
Аноним 21/08/17 Пнд 11:28:17 #621 №439144 
>>439143
Физикой офк
Аноним 21/08/17 Пнд 11:31:18 #622 №439145 
>>439144
ну привесь хуйню на джойнт че ты
Аноним 21/08/17 Пнд 11:34:11 #623 №439148 
>>439145
Поподробней, я енто где-то слышал, но не ебу, как делать
Аноним 21/08/17 Пнд 11:36:28 #624 №439150 
>>439148
ууу бестолоч. гуглить не может уже. на. https://unity3d.com/ru/learn/tutorials/topics/physics/physics-joints
Аноним 21/08/17 Пнд 11:38:12 #625 №439151 
>>439150
Ух, ща посмотрим
Аноним 21/08/17 Пнд 12:37:54 #626 №439169 
>>439150
Ну посмотрел я видосы, поставил на пивот платформы Hinge Joint, все параметры пересмотрел, всё перепробывал, всё равно, когда куб падает на платформу, она чуть-чуть дрогнет и всё.
Помоги, криворукому рукожопу
Аноним 21/08/17 Пнд 13:35:44 #627 №439175 
Перестал пилить свою игру из-за других дел, и у меня ломка. Это норма?
Аноним 21/08/17 Пнд 15:04:16 #628 №439187 
>>439175
ломка от чего?
Аноним 21/08/17 Пнд 15:07:57 #629 №439188 
>>439187
От того что перестал. Это как зависимость, когда пилишь игру на юнити, твои труды сразу вознаграждаются тем, что твое поделие совершенствуется, и ты сразу на экране можешь видеть как твой персонаж стал лучше выглядеть, или как враги стали умнее, или как появился УИ, и удовольствие и от того что решил какую-то непростую задачу, и от того что твое детище совершенствуется и это чувство прогресса и того что ты не проебываешь время зря в кое-то веки просто охуенно. Короче, я подсел.
Аноним 21/08/17 Пнд 15:19:13 #630 №439192 
>>439188
Через пару годиков это пройдет
Аноним 21/08/17 Пнд 19:39:12 #631 №439273 
>>439120
На spine нет торрента
Аноним 21/08/17 Пнд 20:54:37 #632 №439285 
image.png
image.png
Анон, почему при запуске игры этот меш отображается черным? Меш менял. В эдиторе все выглядит норм (2-й пик). Скриптов на нем никаких нет.
Аноним 21/08/17 Пнд 20:54:59 #633 №439286 
>>439285
>Меш менял
Материал менял всмысле
Аноним 21/08/17 Пнд 22:27:45 #634 №439303 
>>439286
Он у тебя должен быть розовым? Выглядит так, будто у тебя ссылки на материал похерились или на щейдер или ошибка в шейдерее.
Аноним 21/08/17 Пнд 22:31:42 #635 №439305 
>>439112
Контакты оставь.
Аноним 21/08/17 Пнд 22:37:22 #636 №439308 
>>439303
Да, для начала хотя бы розовым. Материалы пробовал назначать новые, шейдеры удалял, не помогло. Попробую пересоздать.
Аноним 22/08/17 Втр 12:11:09 #637 №439364 
image.png
Как через код достучаться до этого компонента UI?
Аноним 22/08/17 Втр 12:16:51 #638 №439368 
>>439364
using UnityEngine.UI;
Image _image;
_image = GetComponent<Image> ();
Аноним 22/08/17 Втр 12:20:42 #639 №439369 
>>439368
Вот я дурак, забыл про UI.
Спасибо тебе, добрый человек
Аноним 22/08/17 Втр 13:49:19 #640 №439380 
Повесил на кнопку это скрипт:

public AudioClip sound;

void OnMouseDown()
{
StartCoroutine(RotateBTN());

AudioSource.PlayClipAtPoint(sound, transform.position);

transform.localScale += new Vector3(0.05f, 0.05f);
}

void OnMouseUp()
{
transform.localScale -= new Vector3(0.05f, 0.05f);
}

private IEnumerator RotateBTN()
{
transform.Rotate(0, 0, 2);

yield return new WaitForEndOfFrame();

StartCoroutine(RotateBTN());
}

Корутина выполняется один раз(Когда нажимаешь на кнопку, то она поварачивается на (0, 0, 2) и всё, хотя должна крутиться), в чём проблема?
Аноним 22/08/17 Втр 14:55:57 #641 №439394 
bandicam 2017-08-22 16-53-35-054.webm
2239cd36d554f4cc8b10d7fda31aab1a.png
>>439380
Хуй знает, братишка, у меня всё крутится.
Аноним 22/08/17 Втр 15:00:11 #642 №439396 
>>439380
нахуй ты корутины запускаешь рекурсивно, ебан? про while не слышал?
Аноним 22/08/17 Втр 15:02:46 #643 №439397 
>>439396
Да, блядь, потому что всё перепробывал, даже до рекурсии дошел
Аноним 22/08/17 Втр 15:03:38 #644 №439398 
>>439397
> всё перепробывал
while (true) и ебашишь туда всё что надо, базарю, ещё захочешь.
Аноним 22/08/17 Втр 17:40:27 #645 №439425 
fd91dff5-c731-437c-bf2b-d2110e945484.jpg
Вот есть у меня анимированный перс, который может бегать, махать мечом и т.п. Мне нужно менять некоторые анимации в зависимости от надетого эквипа(удар мечом на удар кинжалом, к примеру).

Как это правильно делается? Можно создать для каждой анимации саб-стейт машину, и переключать анимации в зависимости от установленной float переменной. Но выглядит как-то не очень здорово. Плюс придется повторять много работы для каждого айтема. Если эквипа много, то получится неподдерживаемое развесистое дерево.

Может менять анимации в ран-тайм(как это делать)? Или юзать разные контроллеры/разные слои?
Аноним 22/08/17 Втр 17:50:57 #646 №439426 
>>439425
Я это делал так: каждому оружию добавлял string с именем булевой переменной, которая в аниматоре отвечала за переход, и потом её передавал в контроллер, а тот уже в аниматор.
Я сомневаюсь что это был рациональный способ, но у меня было три с половиной вида оружия и всё работало.
Аноним 22/08/17 Втр 18:29:34 #647 №439428 
>>439305
tg:krasnovmv
Аноним 22/08/17 Втр 19:05:45 #648 №439431 
Сап, не подскажите где можно глянуть сырцы готовых игр на юнити, чтобы прямо в эдиторе открыть и посмотреть архитектуру. Вознамерился пилить простенькую рпг и хотелось бы заценить годные реализации.
Аноним 22/08/17 Втр 19:08:12 #649 №439432 
Есть какой-то аналог Rigidbody.AddExplosionForce для 2D?
Аноним 22/08/17 Втр 19:09:38 #650 №439433 
>>439432
Зачем тебе аналог?
Аноним 22/08/17 Втр 19:18:56 #651 №439436 
>>439433
Потому что AddExplosionForce is not a member of UnityEngine.Rigidbody2D ?
Аноним 22/08/17 Втр 19:34:49 #652 №439440 
>>439436
Ну и почему ты такой ленивы хуй, что не можешь загуглить "addexplosionforce 2d", где по первой же ссылке всё чёрным по белому написано?
Даже помогу тебе, вдруг у тебя в гугле пожизненный бан.
https://forum.unity3d.com/threads/need-rigidbody2d-addexplosionforce.212173/
Аноним 22/08/17 Втр 19:46:17 #653 №439442 
>>439440
Но я это уже нагуглил, поэтом и спрашиваю, есть ли нормальные способы.
Аноним 22/08/17 Втр 19:50:50 #654 №439443 
>>439442
А чем тебе способ по ссылке не нормальный?
Ну ладно, можешь по уловному "взрыву" высчитывать расстояния от центра "взрыва" до объектов, которые надо откинуть, отнимать значение от заведомого большого константного вектора и передавать это самое значение в Rigidbody2D.AddForce каждого объекта.
Аноним 22/08/17 Втр 19:51:06 #655 №439444 
>>439443
*условному
Аноним 22/08/17 Втр 20:03:58 #656 №439445 
>>439443
>>А чем тебе способ по ссылке не нормальный?
Есть готовый метод и не нужно придумывать велосипед?
Аноним 22/08/17 Втр 20:07:26 #657 №439446 
>>439445
Прям готовый из коробки для 2д — кажется нет. Я как раз велосипедил с вычислением векторов расстояния. Но то было относительно давно, я с 2д давненько не работаю. Но тот же гугл говорит, что тут без педалей не обойтись.
Аноним 22/08/17 Втр 20:31:31 #658 №439449 
>>439445
Покури ещё Collider.ClosestPointOnBounds, но не уверен что оно в 2д работает.
Аноним 22/08/17 Втр 20:45:59 #659 №439452 
>>439431
бамп
Аноним 22/08/17 Втр 23:02:03 #660 №439462 
>>427717 (OP)
UnityWebRequest не умеет принимать больше одной куки на андроиде. Одна остается, а остальные просто отбрасываются. Они там охуели такие баги делать?
Аноним 22/08/17 Втр 23:55:30 #661 №439468 
>>439425
Слоеный mecanim
/thread
Аноним 23/08/17 Срд 00:09:34 #662 №439470 
Снимок экрана 2017-08-22 в 22.28.17.png
Снимок экрана 2017-08-22 в 22.28.52.png
>>427717 (OP)
Поцоны хелп,не могу взять сферой обьекты принадлежащие к слою obstacles(хочу зоны видимости запилить)
Запилил слой,навесил на стенку(пик 2)
нихуя не находит
float viewAngle=180f;
float viewRadius=20f;
visibleTargets.Clear();
obstacleMask=9;
Collider[] targetsInViewRadius=Physics.OverlapSphere(transform.position,viewRadius,obstacleMask);
Debug.Log(targetsInViewRadius.Length);
targetsInViewRadius.Length выдает 0
Аноним 23/08/17 Срд 00:32:36 #663 №439472 
>>439468
Спасибо. Нашел вот примерно как это делается через синхронизированные слои.
https://forum.unity3d.com/threads/mecanim-sync-layer.198079/
Аноним 23/08/17 Срд 00:35:56 #664 №439473 
>>439470
OverlapSphere ловит коллайдеры, у тебя они там есть? Кстати зачем тебе ловить препятствия сферой, я бы ловил игроков/мобов, потом рейкастил в каждого через слой obstacles, если рейкаст долетел - значит увидели его.
Аноним 23/08/17 Срд 00:39:46 #665 №439474 
Screenshot25.png
>>439470
Есть вариант, что он GameObject, на котором висит, считает за объект, с которым он пересекается. С рейкастами, по крайней мере, такая хуйня происходит. Проверь физон в настройках.
Аноним 23/08/17 Срд 00:41:06 #666 №439475 
>>439473
коладеры есть,сделать так решил для теста
игроков она тоже не ловит
Аноним 23/08/17 Срд 00:45:22 #667 №439476 
>>439462
Чо делать? Есть ли способ получить доступ к нераспарсенным хедерам?
Аноним 23/08/17 Срд 01:00:11 #668 №439478 
>>439475
А obstacleMask это маска или integer? Может с маской что-то?
Аноним 23/08/17 Срд 13:55:58 #669 №439540 
>>439431
бамп вопросу
Аноним 23/08/17 Срд 14:25:50 #670 №439542 
>>427717 (OP)
Анончики, подскажите как лучше организовать взаимодействие между компонентами одного геймобджекта, допустим у меня есть компонент который реализует таймер и вызывает переданную как параметр функцию после. Есть компонент который реализует взрыв. Мне нужно сделать бомбу которая взрывается по таймеру. Про геткомпонент естественно знаю, но выходит что скрипт в котором будут обращения к компоненту таймера и взрыва будет зависеть от того висят ли эти компоненты на геймобджекте или нет. Мне не кажется, что это норм вариант, или я уебался, или чет совсем не так делаю.
Аноним 23/08/17 Срд 14:28:44 #671 №439543 
>>439542
> будет зависеть от того висят ли эти компоненты на геймобджекте или нет
[RequireComponent(typeof(YobaComponent))]
Аноним 23/08/17 Срд 14:31:17 #672 №439544 
>>439542
Подумал, что можно в принципе добавлять компоненты самому, но не уверен, что это хорошее решение.
Аноним 23/08/17 Срд 14:37:10 #673 №439547 
>>439542
На null проверяй, лишним не будет. Если отсутствие компонента - не баг, ничего не пиши. Если баг, пиши LogError.
Аноним 23/08/17 Срд 14:55:45 #674 №439548 
Стоит ли использовать события аниматора для увязывания скриптов и анимации, или лучше все далать внутри скрипта?
Аноним 23/08/17 Срд 16:55:26 #675 №439562 
Бля, почему столько хуевых уроков по Юинти? Открываешь видос, думаешь там то что тебе нужно, а вместо этого видишь хуя простого вроде себя, который рассказывает банальности, еще и неправильно/криво делает. Самое главное, ни хрена про реальные проблемы и решения, только говно-шутеры с бегающими яйцами - в 150й раз. Есть "продвинутые" каналы, в смысле чтобы не совсем тривиальная инфа была?

вот эти вроде норм из того что нашел, хотя brackeys мало смотрел
https://www.youtube.com/user/Cercopithecan/playlists
https://www.youtube.com/user/Brackeys/playlists
https://www.youtube.com/channel/UCtQPCnbIB7SP_gM1Xtv8bDQ/playlists
https://www.youtube.com/channel/UCtb1s859RTxx-RIgFs5ZVQA/playlists

Аноним 23/08/17 Срд 17:59:50 #676 №439576 
>>439562
У brackeys тоже толком ничего продвинутого, но он, в отличие от большинства, даже простые вещи делает по уму
sageАноним 23/08/17 Срд 18:41:53 #677 №439583 
>>439548
Стоит, если правильно это сделаешь. Встроенные события работают через sendmessage, что является довольно говеным способом, но можешь написать свой обработчик эвентов и вызывать даже небо/аллаха из аниматора.
Аноним 23/08/17 Срд 19:34:09 #678 №439589 
>>439583
Любопытно, а как приделать свой обработчик? Юзать коллбэки из StateMachineBehaviour?
Аноним 23/08/17 Срд 20:01:13 #679 №439591 
Перед началом игры выбираешь вид корабля. Каждый из них имеет свои статы, анимацию и звук. Вопрос в том, как реализовать выбор.

Сделать префаб каждого вида кораблей и подгружать соответствующий, но я не совсем понимаю как перенести все нужные компоненты с префаба на игрока. Какую фразу гуглить
Аноним 23/08/17 Срд 20:32:50 #680 №439597 
>>439591
>компоненты с префаба на игрока
Нихуя не понял, что ты этим хотел сказать, чуть подробнее, либо другими словами.
Аноним 23/08/17 Срд 20:48:31 #681 №439601 
>>439591
Игра сетевая? Если нет все вообще тривиально. Просто инстанциируй префаб и все. Префаб это и есть "объект игрока".
Аноним 23/08/17 Срд 21:59:43 #682 №439607 
>>439597
Есть игрок, к которому прикреплен скрипт на перемещение.

Есть разные виды кораблей. У каждого свои характеристики, анимация и звук. Для удобства каждый вид засунут в свой префаб.

Как передать характеристики корабля игроку я понимаю (переменные), но как мне заменить анимацию и звук?

Думаю в этом направлении:
gameObject.GetComponent<SpriteRenderer>().sprite = _playerShipSprite;
// _playerShipSprite - ссылка на спрайт корабля
Аноним 23/08/17 Срд 22:12:06 #683 №439609 
>>439607
Да что за игрок то у тебя, елки-палки? Чем тебя не устраивает уничтожать старый объект и инстанциировать новый?
Аноним 23/08/17 Срд 22:29:04 #684 №439613 
>>439607
Отдели вижуал от остального и просто инстанциируй префаб, созраняя ссылку на созданный тобой геймобджект в скрипте игрока, хули ты там выдумываешь?
Аноним 23/08/17 Срд 22:35:03 #685 №439614 
>>439609
Я просто плохо объясняю.
>Чем тебя не устраивает уничтожать старый объект и инстанциировать новый?
Получается он должен содержать в себе скрипт на передвижение/обзор и прочее что нужно игроку?
Аноним 23/08/17 Срд 22:56:19 #686 №439621 
>>439614
Ну да, к примеру, скрипты контроля, камеры и прочее сидит на префабе, приходят и уходят с ним.

Если тебе нужно сохранять какую-то информацию, когда префабы меняются, можешь повесить скрипт на пустой объект. Пусть он называется PlayerManager, чисто для примера. Можешь даже добавить DontDestroyOnLoad, если нужно сохранить его при загрузке новых сцен.

В этом объекте можешь хранить статы игрока, имя, экспу, и т.п. Как общаться скриптам с префаба и этому скрипту? Можешь инстанциировать новый префаб из этого самого скрипта, Instantiate вернет ссылку на объект, которую сохранишь в переменной. Потом передашь нужные статы и ссылки созданному объекту. Можно в PlayerManager сделать public static PlayerManager Instance { get; private set; } и в Awake() {if(Instance == null) Instance = this;} И общаться с PlayerManager скриптом через Instance. Можешь связывать объекты через FindObject, только не вызывай его каждый раз, а сохрани ссылку один раз, он тяжелый.

Наконец, можно сделать префаб из модели с анимацией и звуком, и сделать его дочерним объектом своего объекта-игрока через transform.parent. Короче, зависит от того, что тебе нужно, и как должно взаимодейтствовать.
Аноним 23/08/17 Срд 23:01:50 #687 №439623 
>>439621
>>439613
Спасибо огромное.
Аноним 23/08/17 Срд 23:10:06 #688 №439625 
>>439305
Напиши ну, если нет телеги, могу почту оставить
Аноним 23/08/17 Срд 23:19:25 #689 №439626 
>>439547
> На null проверяй
Вот этот пидор знает о чём говорит, я даже если на 100% уверен что компонент на объекте есть, всё равно проверку делаю. В нашем деле лишняя паранойя не повредит.
Аноним 23/08/17 Срд 23:25:50 #690 №439628 
Как правильно прицепить скрипт, который будет выполняться при старте сцены?
Сейчас использую событие старт на объекте, но это некрасиво. Вдруг я удалю этот объект или захочу их множество из префаба использовать, тогда у меня мой Start или не будет запускаться или запустится несколько раз.
Куда общий для сцены скрипт прицепить?
Аноним 23/08/17 Срд 23:27:59 #691 №439629 
Как правильно сделать скрипт, который будет выполняться при старте сцены?
Сейчас использую событие Start() на объекте, но это некрасиво. Вдруг я удалю этот объект, или
захочу их множество из префаба использовать, тогда у меня мой Start() или не будет запускаться вообще или запустится несколько раз.
Куда общий для сцены скрипт прицепить? И как сделать так, чтобы он выполнялся при старте сцены?
Аноним 23/08/17 Срд 23:30:34 #692 №439630 
>>439629
> Куда общий для сцены скрипт прицепить?
Создай пустой объект-контроллер, или на камеру прицепи, уж она-то у тебя точно всегда на сцене будет.
> И как сделать так, чтобы он выполнялся при старте сцены?
void Awake () {
}
Аноним 23/08/17 Срд 23:45:40 #693 №439633 
>>439629
https://docs.unity3d.com/ScriptReference/SceneManagement.SceneManager-sceneLoaded.html

или вот это
Аноним 24/08/17 Чтв 01:35:25 #694 №439648 
UI Layouts
Допустим по умолчанию уи создано под вертикальную ориентацию, и как теперь быть когда нужно в горизонтальную? Под андроид можно 2 лейаута использовать для каждой из ориентаций. А тут то как делать? Пока хотелось бы только измененное положение/размеры/?иерархию_сцены?, без новых уи-объектов (т.е. без: выдвижные менюшки в верт. / 2-3 колонки в гор.). Хотя тоже бы хотелось узнать как такое тут и такое можно сделать.



Анимация UI
Представим, для примера, что у нас есть склад товара до 10ед. и нам нужна кнопка, которая меняла бы свой цвет/спрайт/текст в зависимости от заполненности склада. По одному "стилю" на каждую единицу товара (т.е. всего 11 состояний и стилей). Количество товара на складе может изменятся случайно (внешним скриптом) и при нажатии на кнопку (только определённым образом: +1, но на 10 с 50/50% может перейти в 2 или 7). По цвету изменяем только Color, т.е. хайлайт, прессед и т.п. работают как обычно. Почитав мануалы, посмотрев уроки я создал всё это (ну аниматор там, анимации граф переходов, кондишн и т.п.), но у меня есть вопросы.

Как интерполировать цвет по HSV (и т.п.), а не по RGB? Есть что-то встроенное или нужно свое писать?

Можно ли интерполировать не из заданного значения, а из текущего на момент запуска анимации? Например чтобы задать только финальный цвет и интерполировать к нему из текущего.

Кривые указывают конкретные значения, а как задать только форму кривой? Ну чтобы можно было менять значения, а характер интерполяции оставался таким же.

Как задать одну и ту же форму кривой для нескольких параметров (см. вопросы выше), т.е. для всех каналов цвета разом, но у них разные значения.

Переходы (transition) между анимациями (state) имеют какие-то настройки. И я так понимаю они нужны для 3D и бесполезны в нашем примере (ну кроме условия перехода)? Как их правильно отключить?

Как организовать анимацию перехода из одного состояния в другое? Например анимация состояния это просто 1 цвет или "мигание" какое, а анимация перехода это интерполяция из старого цвета в новый. Нужно будет создавать на это 2 стейта (переход + цикличная анимация состояния)?

Если считать что анимация состояния это "мигание" цветом по HSL, то как синхронизировать мигание анимации старого состояния, перехода (изменяя только HSL) и нового?

Как будут работать transition при переходе из state A в state B, когда есть переход из any state в state B. У кого будет приоритет?

Как-нибудь покомпактней можно анимации создавать? Десятки файлов .anim+.meta по 10КБ на один сраный статичный цвет не есть гуд.

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

*Стоит ли мне дальше ебать мозг всей этой unity-хуйнёй если такой простой пример я могу запилить в контроллере и анимировать в Update? Будет разве что захардкожено.
Аноним 24/08/17 Чтв 12:56:24 #695 №439677 
Привет. Решил вкатиться в юнити. Читаю юнити ин экшн, пилю свою первую игру. Понимаю, что сишарп для меня СЛОЖНО, ибо я ноль в программировании. Хочу пойти на курсы для ньюфагов. Что думаете, курсы хоть как-то помогают, или это объеб на доллары для корзиночек типа меня?
Аноним 24/08/17 Чтв 12:58:01 #696 №439678 
>>439677
> Читаю юнити ин экшн
> Понимаю, что сишарп для меня СЛОЖНО, ибо я ноль в программировании
Не то ты читать начал. Это книга для тех, кто в шарпах уже смыслит.
В шапке есть ссылка на курсы, попробуй сначала их.
Аноним 24/08/17 Чтв 13:05:31 #697 №439681 
>>439677
Сишарп легко изучается самостоятельно по любым бесплатным урокам из интернета (которых дофига, как и по юнити). По мне так, если и ходить на курсы, то по юнити. Там материала побольше узнать нужно, чтобы начать. Но опять же я думаю, если ты не можешь всё изучить самостоятельно - смысла платить за это доллары нет.
Аноним 24/08/17 Чтв 13:06:37 #698 №439682 
>>439678
Хорошо, пройдусь пока по курсам, и еще запишусь на ирл-курсы. Вообще, по книжке все понятно, но очевидно, что шаг в сторону сделать не могу.
Аноним 24/08/17 Чтв 13:06:45 #699 №439683 
>>439681
> думаю, если ты не можешь всё изучить самостоятельно - смысла платить за это доллары нет
Всё правильно говоришь.
Аноним 24/08/17 Чтв 13:07:21 #700 №439684 
>>439628
На пустой объект, не?
Аноним 24/08/17 Чтв 13:09:04 #701 №439685 
>>439681
У меня проблемы с самомотивацией и дисциплиной. С той же тренажеркой - хожу в зал, хотя можно все упражнения делать дома. Но дома ленюсь. А вообще, сколько надо времени для изучения шарпа для старта хоть какой-то самостоятельной работы в юнити, если я ничем сложнее html/css в жизни не занимался?
Аноним 24/08/17 Чтв 13:12:45 #702 №439687 
>>439685
> А вообще, сколько надо времени для изучения шарпа для старта
Очень индивидуально. Кому-то недели хватит, кому-то и года недостаточно будет.
Если ты совсем корзинус, то заканчивай школу и иди в универ на очку, там будет тебе и мотивация в виде мамки, которая будет тебя дрючить чтоб не проёбывал заплаченные за учёбу деньги, и дисциплина в виде преподов и деканата.
А если хочешь чтоб дома, но не так сухо как в книгах и обычных туториалах, то поищи на ютубе уроки русскоязычного парня с ником stream. Неплохо рассказывал, хоть иногда и тупил, но для поверхностного ознакомления будет полезно.
Аноним 24/08/17 Чтв 13:16:56 #703 №439688 
>>439685
Курсы по программированию нужны чтобы обучать, а не мотивировать. А шарп нужно знать вообще по минимуму: переменные, условия и иногда матрицы. Если тупо посмотреть все уроки и повторить, можно успеть за пару дней.
>Но дома ленюсь
Попробуй программировать в тренажерке
Аноним 24/08/17 Чтв 14:52:54 #704 №439712 
>>439687
В упор не могу его найти. Поможешь?
Аноним 24/08/17 Чтв 16:20:00 #705 №439724 
>>439685
Нафиг не нужно зубрить язык от корки до корки, мотивация стухнет(у меня, по крайней мере). Пробуй чего-нибудь сделать, подсмотри как пишут скрипты в официальных туториалах Юнити, и делай так же. Если не знаешь что-то - Гугли и сдувай алгоритм. Непонятно что-то в языке - c# Reference или Гугл подскажет.
Аноним 24/08/17 Чтв 16:24:41 #706 №439725 
>>439712
А, он выпилился. Но есть канал с перезаливками. Там видео не по порядку, так что ищи с порядковым номером "#1" и потом иди по порядку, "#2", "#3" и так далее. Разберёшься.
https://www.youtube.com/channel/UCyh-t-R60C3IwX8iId9y1Rw
Аноним 24/08/17 Чтв 16:28:21 #707 №439726 
>>439712
>>439725
Короче, вот отсюда и по порядку
https://www.youtube.com/watch?v=ON4styauqp8
Аноним 24/08/17 Чтв 17:39:19 #708 №439733 
>>439562
Я недавно неплохой канал по шейдерам и эфектам нашел.
https://www.youtube.com/channel/UCEklP9iLcpExB8vp_fWQseg
Аноним 24/08/17 Чтв 17:46:50 #709 №439736 
>>439648
Ты уверен, что хочешь менять кнопочку через аниматор? Не проще ли написать скрипт? Ты походу микроскопом гвозди заколачиваешь.
Аноним 24/08/17 Чтв 18:34:54 #710 №439742 
>>439648
>Допустим по умолчанию уи создано под вертикальную ориентацию, и как теперь быть когда нужно в горизонтальную?
Можно универсальный UI запилить например

>>439648
>Под андроид можно 2 лейаута использовать для каждой из ориентаций
Можешь и тут 2 лейаута навелосипедить

>>439648
>А тут то как делать?
Где тут то, йоба? Мы не экстрасенсы

Аноним 24/08/17 Чтв 19:03:01 #711 №439744 
>>439733
Спасибо, запишем.
Аноним 24/08/17 Чтв 19:45:21 #712 №439752 
245.jpg
Ютуб выдал мне в "рекомендованных", прости господи, туториал длиною в два часа, в котором школьник из ассетов лепит ХОРАР. 100к просмотров, пачка лайков, восторженные комментарии, в которых на одно слово 10 ошибок, и около 27к подписоты.
Видео — это просто пиздец, как говна поел. И это я его листал, если б целиком посмотрел, то, наверное, сознание бы потерял.
Я это к чему. Теперь я понимаю откуда у юнити такая репутация. Они ж реально думают что это готовая игра, билдят её и потом срут этим в сеть.
Ах да, этот урок или, как его именует "автор", КУРС изначально был ПЛАТНЫМ.
Аноним 24/08/17 Чтв 19:56:11 #713 №439754 
>>439752
https://youtu.be/xWkB3thulCk?t=10m23s
Аноним 24/08/17 Чтв 19:58:16 #714 №439755 
>>439754
Этот "Калобок" — шедевр геймдева по сравнению с тем, что я посмотрел.
https://www.youtube.com/watch?v=cnEr4P6gGWo
Аноним 24/08/17 Чтв 20:29:19 #715 №439760 
>>439755
> видео
блять сука блять сука блять сука блять сука
Аноним 24/08/17 Чтв 20:47:37 #716 №439762 
Игрок - инстанциируемый, в начале сцены, префаб. Камера должна находить игрока и цепляться к нему. Этого естественно не происходитobject reference not set to an instance of an object.

Скрипт для камеры:
public GameObject player;
private Vector3 offset;

void Start () {
player = GameObject.FindGameObjectWithTag("Player");
offset = transform.position - player.transform.position;
}
void LateUpdate () {
if (player == true)
{
transform.position = player.transform.position + offset;
}

Полагаю, камера появляется первой в сцене, когда ещё нет объекта с тегом "Player". Попробовал засунуть в Update() - у камеры сбиваются координаты по Z. Где я проебланил?

Аноним 24/08/17 Чтв 20:48:53 #717 №439763 
>>439762
> инстанциируемый, в начале сцены
Нахуя? Ставь его на сцену ручками. К чему этот пердолинг?
Аноним 24/08/17 Чтв 20:54:48 #718 №439766 
>>439763

>>439621
Аноним 24/08/17 Чтв 20:55:14 #719 №439768 
>>439762
Скрипт, который интсантит игрока, пихай в Awake, а прицеп камеры - в Start.
Аноним 24/08/17 Чтв 20:57:52 #720 №439770 
>>439755
> апдейт выполняется то ли каждую секунду, то ли вообще каждый кадр
Сука, и этот человек ещё с кого-то деньги берёт за ОБУЧЕНИЕ
Аноним 24/08/17 Чтв 20:59:07 #721 №439771 
>>439768
Благодарствую. Доделаю свою парашу, получу работу, проставлю пиво всем треду - вы охуенные.
Аноним 24/08/17 Чтв 21:27:56 #722 №439784 
>>439726
>>439725
Спасибо, господа. Какой у вас тред адекватный.
Аноним 24/08/17 Чтв 21:52:48 #723 №439788 
>>439752
>Теперь я понимаю откуда у юнити такая репутация
Репутация БЕСПЛАТНОГО движка. Ибо ты не сможиш слепить такую игорь, чтобы пробить потолок в 50к по обороту.

Ты не одиног 2bqh

тут некоторые щитают, что получив свет изкорёпки от уеча, им тут же задонатят 3к
Аноним 24/08/17 Чтв 21:57:08 #724 №439789 
>>439059
Я-таки захайрил двух подающих надежды на апуорке.
а ты злой
Аноним 24/08/17 Чтв 21:57:56 #725 №439790 
>>439788
Ну тот же уеч вроде тоже бесплатный. Но то ли там СЛОЖНА, то ли плюсы все позабыли, но там такого школотронства не наблюдается.
Аноним 24/08/17 Чтв 22:31:50 #726 №439792 
>>439790
Уеч бесплатный до того щасливава момента, когда внезапно твою игру начнут донатить. А это значит, что 5% ты внезапно должен отстегнуть.

У юнети первая гроница лежит на 100к 35$ в месяц
Аноним 24/08/17 Чтв 22:36:20 #727 №439793 
Хорошие вроде как видео гайдики спираченые, по дефолту курс за 200 бачей.
https://rutracker.org/forum/viewtopic.php?t=5426859
Аноним 24/08/17 Чтв 22:36:41 #728 №439794 
>>439790
>такого школотронства
В юнети проще втянуться. Полный магаз ассетов, включая полные проекты игорь с видео-тьюториалами. И сами оффицыальные тьюториалы от создателей юнети.

Не удевитильно, что школоло пойдёт проторённой дорожкой.

но свет в уече лучше из коробки, дела не в крестах, а хитровыебанности игровой механики в уече
Аноним 24/08/17 Чтв 22:37:31 #729 №439795 
>>439792
> Generally, you are obligated to pay to Epic 5% of all gross revenue after the first $3,000 per game or application per calendar quarter
Аноним 24/08/17 Чтв 22:38:53 #730 №439796 
>>439793
> 200 бачей.
Столько получит кирил из мухосранска за неделю работы на мой говнопроджект upwork dot com
Аноним 24/08/17 Чтв 22:44:39 #731 №439797 
>>439795
>after the first $3,000
Я под этим и понимал внезапно
Читай: первые 3к начего не платишь. После первых 3к отстёгиваешь ежеквартально 5%
Аноним 24/08/17 Чтв 23:12:08 #732 №439799 
>>439797
русня ебаная, после $3,000 заработаных за квартал платишь проценты в этом квартале. т.е. с вечноговна они процент не берут. и что юнетивские 100к бачей, что анрильские 3к в реалиях /gd/ совершенно недостижимы, не волнуйся.
Аноним 25/08/17 Птн 00:19:59 #733 №439807 
>>439793
Выглядит неплохо. Скачаю, проверю, отпишусь, как оно для нуба зайдет.
Аноним 25/08/17 Птн 00:45:17 #734 №439809 
Привет.
Супернубский вопрос.
Почему меши из ассетстора не ведут себя как гейм-обжект?
Т.е. я настроил так, чтобы игрок не мог проходить через стены/пол и мог стрелять в них. Но загруженные модельки бестелыею

1-день-в-юнити-кун
Аноним 25/08/17 Птн 00:47:14 #735 №439810 
>>439809
Чего блять?
Аноним 25/08/17 Птн 00:48:43 #736 №439811 
>>439809
гугли mesh collider
Аноним 25/08/17 Птн 01:14:26 #737 №439813 
>>439809
Поставь галку Convex на меш-коллайдере, если вообще нет коллайдера - прилепи какой-нибудь. Прилепи так же rigidbody на все что движется. Неподвижное - статик коллайдер.
Аноним 25/08/17 Птн 01:23:09 #738 №439815 
>>439811
>>439813
Спасибо. Все заработало.
Аноним 25/08/17 Птн 01:28:46 #739 №439816 
InverseTransformPoint предположительно пиздит... Нахуй я вообще туда полез, как будто проблема отнять один вектор от другого.
Аноним 25/08/17 Птн 07:57:33 #740 №439827 
>>439816
ебанашка ты хоть знаешь что такое матрицы вообще?
Аноним 25/08/17 Птн 11:28:11 #741 №439845 
>>439827
Ну кстати да, пизжу все-таки я. Но при чем здесь твой вопрос?
Аноним 25/08/17 Птн 11:52:49 #742 №439847 
Господа, пытаюсь немного разобраться с юнити, путем разработки простенькой игры. Допустим мне нужно чтобы у меня была определенная кучка объектов которые обладают различным поведением(какие-то взрываются, какие-то стреляют), так же есть различные условия срабатывания данных действий(таймер, попадание в определенный радиус действия, или комбинация этих условий). Хочу обстряпать все так, чтобы я мог потом комбинируя данные данные характеристики получать новые виды объектов. Соответственно также нужны некие фабрики. Была идея описать данные характеристики отдельными компонентами унаследованными от MonoBehavior, собирать их в одном GameObject, и еще один скрипт вещать который координирует работу этих компонентов. Как в таком случае обстряпать фабрики. Может есть у кого схожие примеры, как реализовывали? Как вообще в юнити лучше делать подобное? Может я изначально на неверном пути?
Аноним 25/08/17 Птн 12:00:29 #743 №439848 
Кстати, вдруг кто не знает, Visual Studio Code неплохая замена Монодевелопу для тех, кто по каким-то причинам не хочет ставить старшую Студию. Еще там можно сделать интеллектуальные подсказки на все функции типа FixedUpdate и на коллбеки типа OnTriggerEnter и т.д. Мелочь а приятно. В аддонах поищите по слову Unity.
Аноним 25/08/17 Птн 12:02:25 #744 №439849 
>>439848
> Еще там можно сделать интеллектуальные подсказки на все функции типа FixedUpdate и на коллбеки типа OnTriggerEnter и т.д.
ОКАЗУАЛЕЛЕ!
Аноним 25/08/17 Птн 14:18:57 #745 №439869 
dE30IVurYocut-photo.ru (1).jpg
h1IIjiS9lRkcut-photo.ru.jpg
Может быть, это тупой вопрос, но почему объект из сцены не хочет прикрепляться к префабу? Всегда, блядь, прикреплялись, а теперь нет, в чём может быть проблема?
Аноним 25/08/17 Птн 14:21:09 #746 №439871 
>>439869
Нормально объясняй. На твоих скринах ни объекта ни префаба нет, только компонент и окно поиска.
Аноним 25/08/17 Птн 14:25:23 #747 №439873 
>>439871
Сейчас гифку кину
Аноним 25/08/17 Птн 14:25:50 #748 №439874 
>>439869
Потому что к префаб знает только о тех компонентах, которые к нему самому прикреплены(или к его дочерним объектам). Чтобы взаимодействовать со сценой, нужно либо искать объект на сцене через GamObject.Find, либо через Instance(синглетон) как описано выше >>439621, либо еще как-то...
Аноним 25/08/17 Птн 14:28:57 #749 №439875 
>>439874
Точно, спасибо, ебать, я долбаеб, братишка, земля мне пухом
Аноним 25/08/17 Птн 14:34:18 #750 №439877 
>>439874
Спасибо тебе ещё раз, у меня все проблемы разом решились. И, кстать, префаб ещё знает о других префабах
Аноним 25/08/17 Птн 14:43:49 #751 №439885 
>>439877
Да, но именно как о префабах. Если ты инстанциируешь из них объекты, придется связывать их во время исполнения.
Аноним 25/08/17 Птн 14:46:36 #752 №439888 
>>439848
Добавлю для порядка, что у меня возникли проблемы с дебаггером, при попытке поставить брейкпоинты. Если что имейте в виду. Может быть не у всех это вылезает, я хз.
Аноним 25/08/17 Птн 18:20:25 #753 №439914 
>>439755
Прошвырнулся по ютубу, посмотрел подобные ролики (только не такие длинные, я ебал), оказывается я ещё ничё так. Показать ничего готового пока, к сожалению, нечего (потому как "сделал - удалил, сделал - удалил", тупо руку набиваю), но я просто бог моделлинга и скриптинга на фоне тех идиотов, которые просто стандартные ассеты по сцене раскидывают и готовые скрипты к объектам лепят, а им в комментах поют оды и кричат "чувак, ты крут!". А я-то думал что я дно коим я и являюсь, да.
Аноним 25/08/17 Птн 19:09:30 #754 №439924 
>>439914
Ну в плане ассетов их можно понять. Я вот начал недавно, и сначала как-то мало внимания обратил на проблему моделек и анимаций. А оказалось это самый большой затык для начинающего - годные ассеты стоят дохуя, да и не факт что подберешь, художники еще дороже, а самому нормально нарисовать - это нужны годы практики. В основном модели, созданные самодельщиками, это тот еще шок-контент.
Аноним 25/08/17 Птн 19:12:56 #755 №439927 
>>439924
> Ну в плане ассетов их можно понять
Это "уроки", понимаешь? Чему ты научишь своим "уроком", в котором ты просто таскаешь ассеты по сцене? Ладно бы это были видео "я изучаю юнити с записываю это бэндикамом", так нет, это "смотрите как это делается и запоминайте".
Ничему так не научишь.
Аноним 25/08/17 Птн 21:57:25 #756 №439963 
1365331490x7b1135a6.jpg
Подскажите идиоту - как правильнее реализовывать милишный комбат? Поначалу думал нацепить триггер и махать им, аки дубиной. Вроде как самое естественное поведение и легкая подстройка АоЕ. Но триггер на большой скорости пролета демонстрирует странное поведение... На пути триггера, только часть тростинок из пучка падает, другие рандомно падают при последующих ударах(из той же точки).

Хитбоксы при помощи всяких OverlapSphere - геморно настраивать форму АоЕ хитбокса, под длину и замах оружия. Не самое естественное поведение. Но работают стабильно.

Еще вариант - пускать несколько штук рейкастов из основания оружия по его длине, скажем треугольником, каждый фиксед апдейт. Может это норм? Тоже легко настраивать длину.
Аноним 25/08/17 Птн 22:03:16 #757 №439965 
>>439963
смотря че ты там собрался делать. советую воспользоваться https://docs.unity3d.com/ScriptReference/Rigidbody.SweepTest.html
Аноним 26/08/17 Суб 09:32:14 #758 №440016 
>>439799
Маня не может в английский, маня игори пилит
Аноним 26/08/17 Суб 09:35:10 #759 №440018 
>>439847
>путем разработки простенькой игры
И начинаешь с непонятного ни тебе, ни другим
Аноним 26/08/17 Суб 09:51:18 #760 №440020 
>>440016
Тут расписано. Тот злой анон был прав: 5% в случае, когда за квартал оборот больше 3000$

У юнети граница в 10 раз выше (100к против 12к в год)
Аноним 26/08/17 Суб 09:51:53 #761 №440021 
>>440020
Ссылка отклеилась

https://gamedev.stackexchange.com/questions/104805/when-and-how-often-does-epic-charge-me-royalties-on-my-game
Аноним 26/08/17 Суб 16:12:44 #762 №440089 
Выпросил у мамки 200 бачей на юнети.
Каких ассетов загрузить посоветуете?
Аноним 26/08/17 Суб 17:01:03 #763 №440098 
>>440089
ZdelatPizdato.unitypackage
Аноним 26/08/17 Суб 20:02:35 #764 №440139 
Оказывается, можно делать ИИ на Меканиме(StateMachineBehaviour).
Аноним 26/08/17 Суб 20:39:56 #765 №440143 
троллейбус из хлеба.jpg
>>440139
Аноним 26/08/17 Суб 22:05:01 #766 №440158 
>>440143
В смысле "зачем делать ИИ на стейт машине?"?
Аноним 26/08/17 Суб 23:09:02 #767 №440173 
>>440139
ты мыслишь в правильном направлении

https://medium.com/the-unity-developers-handbook/dont-re-invent-finite-state-machines-how-to-repurpose-unity-s-animator-7c6c421e5785
Аноним 26/08/17 Суб 23:43:48 #768 №440180 
>>440158
да, зачем делать ИИ на меканиме? ну тоесь конечно можно сделать какое-то примитивное говно из пары нод и оно будет работать и это адекватно, хоть и глупо. но что-то сложное как делать то? а что если ноды требуют параметры? ебаться через StateMachineBehaviour и чтобы узнать чем нода А отличается от ноды Б надо кликать на неё? через меканим и диалоговую систему можно сделать с таким-же успехом и много чего требующего бихейвор три, но пользоваться этим можно только в очень малых масштабах.
Аноним 26/08/17 Суб 23:50:02 #769 №440182 
>>440180
Ты не сказал главного: какие альтернативы?
Аноним 27/08/17 Вск 00:03:06 #770 №440185 
>>440182
альтернативы зависят от задачи, разумеется
и это не уклончивый ответ. уже готовых платных и бесплатных имплементаций ИИ хватает. всякие reGOAP, RAIN и прочее.
Аноним 27/08/17 Вск 00:27:06 #771 №440189 
>>440185
RAIN
Глючное говно, которое не поддерживается уже давно.
Только время зря на него потратил. Из полезных фич только простое создание зоны видимости/слышимости персонажа и случайный перебор точек маршрута.

В итоге накатил Playmaker и вполне доволен. В нем есть ноды для работы со встроенным в юнити Navigator. Легко обмениваться данными с меканимом и скриптами.
Аноним 27/08/17 Вск 00:28:18 #772 №440190 
>>440185
Если бы вопрос сводился чисто к тому, что стоит ли велосипедить, то, конечно, нет, а следовало бы сначала примерить имеющиеся решения (RAIN бесплатен) к своей задаче.

Решение через меканим подкупает тем, что
1. это полноценная FSM
2. наглядно дебажится
3. состояния логично собираются в группы
4. надо ивенты - пожалуйста
Аноним 27/08/17 Вск 00:30:52 #773 №440191 
>>440190
Ага, только все это есть в плеймейкере.
Аноним 27/08/17 Вск 00:33:19 #774 №440193 
>>440191
погромист сможет в логику плеймейкера?

я пытался в блюпринтс уеча - послал к хуям. Ведь функции надо все равно знать на зубок
Аноним 27/08/17 Вск 00:43:17 #775 №440194 
>>440193
Если дохуя программист, то не пользуешься встроенными переменными и экшонами плеймейкера, а пишешь скрипт и экшон, который будет этот скрипт из ноды вызывать.
Но если ты такой программист, который не знает все нужные для работы классы в unity api, то лучше встроенные экшоны использовать, они интуитивные, с подсказками, легко запоминаются.
Аноним 27/08/17 Вск 03:44:22 #776 №440208 
И так допустим у вас есть персонаж, у него есть два слота под левую руку и под правую, и есть два типа оружия - одноручное и двуручное. Под эквип у меня сейчас запилена такая структурка и обьект типа этой струры лежит в Character:
[Serializable]
public struct Equipment_struct
{
public HelmentItem helment;
public MailItem mail;
public HandSlotItem left_hand_slot;
public HandSlotItem right_hand_slot;
}
Хенд слот итем:
public class HandSlotItem : Item {
public bool one_handed;
public int condition;
public int fatigue_cost;
}
public class WeaponeItem : HandSlotItem{
public int min_dmg;
public int max_dmg;
public bool melee;
public int accuracy;
public int attak_range;
//public skills[] skills;
}
Наследую чтобы запилить еще щит потому что у него статы как у армора а берется он в руку.
public class ShieldItem : HandSlotItem {
public int melee_deff;
public int range_deff;
new public bool one_handed = true;
//public skills[] skills;
}

Сейчас пишу функцию эквипа оружия, и при эквипе двуруча я не могу придумать не костыльный метод, пока приходит в голову только эквипать двуруч в обе руки и скипать его в одной из рук при подсчетах статов и при снятии, но это же просто пиздец костыль. Поделитесь мудростью как это лучше сделать.
Аноним 27/08/17 Вск 03:46:03 #777 №440209 
>>440208
На //public skills[] skills; не обращайте внимание, со временем у меня пушки будут давать скилы, но вопрос не об этом.
Аноним 27/08/17 Вск 08:59:06 #778 №440219 
>>440208
По идее, это должны быть два разных слота (в смысле класса), потому что разницы между головой, правой и левой рукой с точки зрения логики надевания предметов нет, а у головы отдельный класс.

Хотя по-моему лучше сделать один класс SlotItem, которому добавить идентификатор конкретной части тела в виде простого enum.
Я бы прикостылил требования внутрь самого предмета, чтобы он требовал наличия списка (или одного) свободных слотов с нужными айди, а в методе экипировки просто проверял, что у персонажа свободные слоты удовлетворяют требованиям предмета.
Аноним 27/08/17 Вск 10:51:20 #779 №440250 
выаaersdefdfrdsdва.png
>>440208
По моему эквипить в обе руки - норм идея. А что бы не скипать костыльно - не обрабатывай руки как отдельные сущности. Обрабатывай человека. А он там сам разберется что за говно у него в руках.
Аноним 27/08/17 Вск 18:37:35 #780 №440370 
>>440219
> разницы между головой, правой и левой рукой с точки зрения логики надевания предметов нет
там есть разница в том что я так сделал чтобы даже через эдитор нельзя было засунуть в слот шлема броню, но твоя мысль по поводу идентификаторов мне нравится, спасибо за ответ.
>>440250
Я так и делаю, но с "он там сам разберется что за говно у него в руках" как раз и возникают костыли.
Аноним 27/08/17 Вск 19:10:19 #781 №440374 
image.png
>>440370
Oтклеилось
Аноним 27/08/17 Вск 19:11:19 #782 №440375 
image.png
Сап, юнитаны.
Есть вот эта хуйня на пикче - здание в горах, так сказать. На здание кинул меш коллайдер и ригидбади, на плеера - соответственно, тоже.
Так вот, если меш-коллайдер повторяет форму здания, игрок через него спокойно проходит. Если поставить галку конвекс - врезается и отскакивает, как и положено, только вот коллайдер тогда у нас в форме куска говна (см. пик), и в здание зайти нельзя.
Неужели придется городить кучу коллайдеров-паралелепипедов вокруг всех стен и углов, чтобы они повторяли форму здания? Я ж заебусь. А как с землей тогда быть? С ней та же самая проблема, а она вообще довольно сложной формы, хоть и состоит из здоровенных полигонов. Или мне эти модельки разрезать на кучу выпуклых мешей, чтобы конвекс-коллайдеры им назначить? Подскажите, плиз.

Еще проблема - ебанутая скорость прокрутки мышью во вьюпорте. Могу либо с такого расстояния смотреть, либо уже внутри здания, один поворот колесика мышки на 300 метров перемещает. Это оттого что меши здания и земли (гор) у меня нехуево так заскейлены?
Аноним 27/08/17 Вск 19:13:15 #783 №440377 
>>440375
Не работал с 3д в юнити но в поле меш в меш коллайдере попробуй перетащить свою модельку здания.
Аноним 27/08/17 Вск 19:20:53 #784 №440379 
>>440375
Чем не нравится идея напихать бокс коллайдеров, куда надо? А куда не надо - не пихать. Меш коллайдер придется самому рисовать(упрощенный), я так понимаю у тебя его нет.
Аноним 27/08/17 Вск 19:28:00 #785 №440380 
image.png
image.png
>>440377
Он уже там, см. пик. Так как я назначаю меш-коллайдер этому мешу, естественно что он берет форму этой модельки.
>>440379
Долго, я думал есть варианты попроще. Да и с чересчур отзывчивым вьюпортом это будет сложновато. Алсо, открыт вопрос, что делать с коллайдером для модельки земли, см. пик. 2
Единственное что приходит мне в голову с учетом открывшихся ограничений - переделать все нахуй, вообще убрать всякие там двухэтажные здания, сделать землю ровной как стол и разделить ее по уровням, и все это закидывать бокс-коллайдерами... но это кажется как-то тупо.
Аноним 27/08/17 Вск 19:33:23 #786 №440381 
>>440380
Есть еще такой стул https://www.assetstore.unity3d.com/en/#!/content/4596 можешь попробовать напиратить где то либо разобраться как они его запилили.
Аноним 27/08/17 Вск 19:57:31 #787 №440382 
>>440380
Там же есть встроенный земляной коллайдер. Можно в принципе из модели сделать terrain http://wiki.unity3d.com/index.php?title=Object2Terrain

Алсо, пробовал делать коллайдер здания статиком(без твердого тела и без конвекса)?
Аноним 27/08/17 Вск 20:09:55 #788 №440383 
>>440380
Кстати, у тебя игрок кинематика наверное? Не кинематика не должна проходить через обычный меш коллайдер.
Аноним 27/08/17 Вск 21:48:33 #789 №440389 
image.png
>>440382
>Там же есть встроенный земляной коллайдер.
И правда, думал что он только для созданного в юнити террейна подходит.
>>440383
Нет, галочку is kinematic первым делом везде проверил.
В общем, с землей вроде нормально все, а здания значит буду переделывать с учетом нюансов.
Аноним 27/08/17 Вск 21:59:33 #790 №440390 
>>440389
У тебя коллайдер-капсула, а не CharacterController? Он странно ведет себя в связке с физическим телом. Не должна она проходить через меш коллайдер. В Standard Assets Example Project там все по этим мешам гоняет, шарики всякие, и люди.
Аноним 27/08/17 Вск 22:08:35 #791 №440392 
>>440390
Капсула, капсула.
Ради интереса я только что создал в юньке плоскость, куб, кинул на куб меш-коллайдер, набежал на куб плеером, и о чудо! все работает!
Чем ему не угодила моя моделька - не пойму. Попробую экспортировать по-другому.
Аноним 28/08/17 Пнд 00:07:28 #792 №440409 
>>440219
Закодил как ты советовал, но всплыла противоположная проблема, что ставить одноручному оружию в требуемые слоты? Можно левую и правую и флажок что это одноручное, но это снова костыль.
Аноним 28/08/17 Пнд 00:46:41 #793 №440415 
>>440409
Одноручное - один слот(правый или левый), двуручное - два(один из них - заглушка).

мимокрок
Аноним 28/08/17 Пнд 00:51:48 #794 №440416 
>>440415
Но у меня по необходимым слотам очищает то что уже надето, и как туда засунуть без кучи ифов еще логику или или я не могу придумать.
Аноним 28/08/17 Пнд 01:26:12 #795 №440418 
>>440416
Не понимат. Допустим у тебя на болванчике слоты, каждый итем занимает N слотов. Скажем, если надета шапка, она не мешает надеть ботинки. Может у тебя совсем другая система какая-то.
Аноним 28/08/17 Пнд 04:20:27 #796 №440437 
monsters2.gif
Аноны. У меня тут возникла проблема с осознанием того, что я вообще не понимаю что такое система событий, и как ее использовать.

У меня просто весь код пишется на отъебись. Допустим есть 5 объектов и на каждом висит скрипт, где в апдейте высчитывается куда было нажатие мыши. А я только сейчас понимаю, что это неправильно, и скорее всего должен быть один скрипт, где бы считалось куда кликнули мышкой, а затем уже выполнялось то или иное действие. Или нет?

Ну или мне постоянно нужно высчитывать время. Так вот у меня может быть по 10 скриптов, где в каждом имеется таймер time= time+time.deltatime. А ведь это скорее всего перегружает саму игру?

Или я ошибаюсь?

Ну суть в том, что может вы знаете годные видео гайды или ресурсы, где про это разжевывают, именно разжевывают, что и как лучше делать, а что лучше не делать. Желательно с примерами.
Аноним 28/08/17 Пнд 05:19:21 #797 №440447 
>>440409
Юзай что-то вроде этого для хранения данных:
enum InventorySlotID {
rightHand,
leftHand,
Jopa
}
struct Item {
string name = "Dildak"
List<InventorySlotID> requiredSlots = {0, 2};
string meshData = "Resources/Dildak.mesh";
string matData = "Resources/DildakMaterial.mat"
int damage = 5;
int length = 50;
}

bool Equip(Item item) {
foreach (InventorySlotID id in item.requiredSlots) {
if (!character.SlotIsFree(id)) {
return false;
}
}
character.Equip(item);
return true;
}

Алсо, итемы можно загружать из JSON и хранить во внешних текстовых файлах, можно будет читерить себе всякое на ходу.
Аноним 28/08/17 Пнд 05:27:22 #798 №440448 
>>440437
>где в апдейте высчитывается куда было нажатие мыши
Там есть метод OnMouseOver, который отрабатывает когда мышь над объектом.
>Ну или мне постоянно нужно высчитывать время.
Лично я для этого навелосипедил TimeController, который считает время и дает остальным DateTime gameTime, fixedGameTime, NextFixedGameTime.

>знаете годные видео гайды или ресурсы
https://www.youtube.com/channel/UCPXOQq7PWh5OdCwEO60Y8jQ
Аноним 28/08/17 Пнд 12:21:29 #799 №440492 
Есть одна модель из блендера, внутри просто 2 куба, один серый, другой белый синий и полупрозрачный. Экспортирую FBX 7,4 бинарным экспортером. В юнити гружу через Resources.Load.

В итоге ряд проблем.
1. Все размеры кубов из блендера игнорируются, юнити рисует мне просто ёбаный куб! Какие бы размеры в блендере ни были, в Юньке просто куб каждый раз! ВТФ? Родителей у объекта нет, просто на сцене висит.

2. Грузит только первый меш-куб, второго нет. Resources.LoadAll тоже не пашет. Я уже хз, что делать.

При этом когда смотрю в самом редакторе папку Resources, там и размеры и сабмешы нормально показываются.
Аноним 28/08/17 Пнд 12:38:12 #800 №440494 
А, да! И к чему я про цвета говорил - материалы ведь тоже не импортируются! В инспекторе всё норм, а при загрузке и добавлении в MeshFilter нихренашечки!

>>440492 - кун
Аноним 28/08/17 Пнд 13:20:14 #801 №440499 
>>440492
Ctrl-a Scale делал?
Материалы не экспортируются, нужно запекать в текстуры.
Аноним 28/08/17 Пнд 15:53:58 #802 №440527 
>>440492
ctrl+j нажми, чмоха
Аноним 28/08/17 Пнд 17:03:19 #803 №440560 
>>440527
Уебывай, мудила токсичный.
Аноним 28/08/17 Пнд 18:10:47 #804 №440569 
>>440560
Уебал тебе за щеку
Аноним 28/08/17 Пнд 22:17:49 #805 №440591 
Зочем юнети, если есть бажесвеный Playmaker!

Спосибо, добрый антон >>440194 за хароши савет

А вы ебитесь тут с сисярпом!
Аноним 29/08/17 Втр 06:43:41 #806 №440621 
Здарова, как скопировать компонент одного GameObject'а на другой GameObject, через код офк?
Аноним 29/08/17 Втр 10:39:25 #807 №440637 
Ребята, я новичёк в юнити, подскажите, как плавно переместить объект в определенные координаты и с поворотом через transform.RotateAround(). Знаю, что плавное передвижение делается с помощью Lerp или Translate, но не знаю как реализовать.
Так вот, нужно, чтобы при нажатии, допустим, на пробел камера облетала куб чуть выше его и остановилась в той точке, которую нам надо, а не рандомом подгонять значения для Mathf.Lerp().
Аноним 29/08/17 Втр 11:14:41 #808 №440644 
>>440637
> нужно, чтобы при нажатии, допустим, на пробел камера облетала куб чуть выше его и остановилась в той точке, которую нам надо
Не нужен тебе ни транслейти ни лерп, используй анимацию.
Аноним 29/08/17 Втр 11:30:58 #809 №440646 
>>440644
Я уже и сделал анимацию, но в процессе работы понял, что мне нужна привязка к объекту, вокруг которого камера будет двигаться. А с помощью анимации такого не сделать. Или сделать?
Аноним 29/08/17 Втр 13:11:57 #810 №440655 
>>440621
public GameObject yoba1;
this.GetComponent<YobaComponent>() = yoba1.GetComponent<YobaComponent>()
Аноним 29/08/17 Втр 13:44:05 #811 №440657 
>>440621
через сериализацию, гугли unity copy component to other gameobject и не слушай этого накромана >>440655

Но лучше сделай по-другому, у меня за 3 года на юнити ни разу такой потребности не возникало
Аноним 29/08/17 Втр 13:47:56 #812 №440658 
>>440646
Сделай пустой объект, на него аниматор, а камеру внутрь. Потом добавляешь этот объект в любой другой, а анимация сохраняется относительно локальных координат

Алсо, у вектора есть методы вроде SmoothDamp для плавного передвижения, почитай
Аноним 29/08/17 Втр 14:53:31 #813 №440666 
Screenshot26.png
Поясните за настройку управления. Хочу, чтобы как у белых людей можно было открыть меню настроек посреди игры и перебиндить кнопки движения/взаимодействия/дрочения.
Все, что я нашел — это костыль на пикрелейтед. В настройках проверяются ивенты, если ивент — нажатие клавиши, то spinYoba приравнивается к ней.
Аноним 29/08/17 Втр 14:55:48 #814 №440667 
Поясните за XML/Json vs ScriptableObjects для хранения инфы по итемам в игре. Возможно есть еще какие-то варианты, нашел идеально подходящий мне гайдик но там чувак делает все на хмльках, я понимаю их преймущество в том что можно легко менять статы и т д после того как игра уже скомпилена, но в скриптбл обджектах если я захочу добавить еще какое-то поле в итем, я просто добавлю его и оно появится во всех созданых ранее итемах, + их легко создавать просто через CreateAssetMenu и потом прямо в эдиторе забивать поля + можно наследовать и выстраивать из них иерархию. Вобщем нужны мысли более опытных анонов. Вот гайдик о котором я говорил - https://www.youtube.com/watch?v=FcqW5Nmh6Qs&list=PLX-uZVK_0K_7V8z0lfuC9680FnCWoYdbb&index=16
Аноним 29/08/17 Втр 15:32:15 #815 №440668 
>>440666
одын
http://wiki.unity3d.com/index.php/KeyboardEventManager

два
http://roidz.weebly.com/
Аноним 29/08/17 Втр 15:53:02 #816 №440669 
>>440668
От души, пойду ковырять.
Я уж подумал, что ты призываешь меня потратить 15 долларов.
Аноним 29/08/17 Втр 18:04:48 #817 №440692 
Хочу запилить РПГшку в мультяшной графике (примерно как в расте). Сейчас немного знаю с++, на уровне консоли и создания простых приложений под винду. Посоветуйте движок пж - unreal или unity?
Аноним 29/08/17 Втр 18:23:39 #818 №440698 
>>440692
Советую сначала выучить язык получше.
Аноним 29/08/17 Втр 18:41:48 #819 №440703 
>>440698
Буду учить по ходу.
Я просто для того и решил пилить игру, потому иначе мне как-то медленно и лениво это, а так будет желание разбираться по ходу.
Аноним 29/08/17 Втр 18:51:45 #820 №440704 
>>440692
А где контент для игры будешь брать, покупать, или сам моделишь и рисуешь?
Аноним 29/08/17 Втр 19:01:02 #821 №440705 
>>440692
да без разницы. в юнити первый результат получишь быстрей.
Аноним 29/08/17 Втр 19:29:48 #822 №440706 
>>440704
Буду все делать сам, супердолго, учиться по ходу.
Аноним 29/08/17 Втр 19:48:15 #823 №440707 
>>440703
Крайне высок шанс того, что тебе станет похуй. Это гавно вообще как качели: то пиздец интересно, то нахуй все, лучше подрочить на игры, из-за которых ты решил сделать так же, только заебись.
Аноним 29/08/17 Втр 20:39:38 #824 №440720 
roadmap.jpg
>>440707
Чтобы такого не было, надо наметить роадмап с достижимыми шагами, и делать их один за одним. Охуеваешь от трудности чего-то одного, переключаешься на какую-нибудь задачу полегче, чтобы отдохнуть.
И системы контроля версий еще помогают, потому что дают уверенность, что если нахуевертишь изменений, то можно откатиться на предыдущий чекпоинт.
Аноним 29/08/17 Втр 20:43:25 #825 №440721 
>>440720
> Охуеваешь от трудности чего-то одного, переключаешься на какую-нибудь задачу полегче
Не в трудностях дело, просто надоедает. Я вот могу по две-три недели часов по 14 целый день хуярить, аж дым идёт, но потом недели на полторы забиваю хуй, ибо заебало неимоверно.
Аноним 29/08/17 Втр 21:34:28 #826 №440722 
>>440720
спасибо за совет!
пока что наяриваю туториалы на ютабе на скорости 2.0
Аноним 29/08/17 Втр 21:35:06 #827 №440723 
>>440706
Кстати по 3д моделлингу не меньше хуевых туториалов, чем по Юнити. Так что будь настороже. Выше кидали пару нормальных каналов, еще официальные туториалы Юнити и ворованные/покупные уроки годятся. А что по Блендеру посмотреть из бесплатного - сам вот не знаю.
Аноним 29/08/17 Втр 21:47:56 #828 №440725 
>>440447
Ребят, может кто объяснить нубу, что этот анон написал?
Аноним 29/08/17 Втр 21:55:10 #829 №440728 
how-to-model-a-dog-in-Blender.png
>>440722
Короче не жри все подряд туториалы типа пикрелейтед. А по кодингу посмотри конвенции нейминга и написания кода, и когда видишь, что чувак пишет совсем не так, от балды, то скорее всего не стоит его смотреть. То же самое, если явно игнорирует рекомендации Юнити, и делает кривую хрень.
Аноним 29/08/17 Втр 21:57:59 #830 №440731 
>>440725
https://docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/

И далее там же.
Аноним 29/08/17 Втр 22:09:52 #831 №440732 
image.png
>>440731
Я просто хочу понять, зачем создавать переменные внутри функций и что значит enum и struct?
Аноним 29/08/17 Втр 22:14:27 #832 №440734 
>>440732
http://lmgtfy.com/?q=c+sharp+enum
http://lmgtfy.com/?q=c+sharp+struct
Аноним 29/08/17 Втр 22:15:02 #833 №440735 
2a9762df8e86faa84a981701c2336908.png
>>440732
> что значит enum
Пиздец, ты в гугле забанен?
Первая же ссылка.
Аноним 29/08/17 Втр 22:21:16 #834 №440736 
>>440732
> зачем создавать переменные внутри функций
Чтобы они хранили в себе значение.
> что значит enum
Перечисление.
> и struct
Структура.
Аноним 29/08/17 Втр 22:24:57 #835 №440738 
>>440736
в смысле это только для удобства нужно? практической пользы в этом нет?
Аноним 29/08/17 Втр 22:26:51 #836 №440739 
>>440738
> в смысле это только для удобства нужно?
Конечно нахуй не нужно. Можно вообще забить хуй на переменные и пользоваться магическими числами. И вообще код в одну строчку писать. И корутинами не пользоваться, а ебаться с флажками в апдейте.
Аноним 29/08/17 Втр 22:28:22 #837 №440740 
>>440739
А я то гадал, зачем нужны корутины. Хорошо, спасибо
Аноним 29/08/17 Втр 22:29:14 #838 №440741 
14205117567140.jpg
>>440740
Аноним 30/08/17 Срд 00:16:33 #839 №440755 DELETED
>>438156

Очевидная.
Аноним 30/08/17 Срд 03:53:37 #840 №440798 
>>440621
http://answers.unity3d.com/questions/530178/how-to-get-a-component-from-an-object-and-add-it-t.html
Аноним 30/08/17 Срд 03:56:24 #841 №440799 
>>440667
Юзал джейсоны, перекатился на скриптабл обджекты. Батя говорит "Молодца", тянки боятся, быдло завидует, зависимость есть. Можешь свои редакторы для скриптабл обджектов писать.
Аноним 30/08/17 Срд 09:24:35 #842 №440810 
Салам, гдач!

Смотри, я импортнул модельку, в редакторе отображается обьект с названием модельки, который имеет только трансформ, и его чайлды - два GameObject с MeshFilter, MeshRender всё как положено.

Есть ли способ из коробки, чтобы Transform этого родительского GameObject рассчитывался таким образом, чтобы типа BoundBox вокруг этих child-mesh строился?
Или самому писать?

Грубо говоря, два куба стоят размером 1, один слева, другой правее. Мне надо чтобы родительский ГО свой трансформ делал типа 2,1,1. Тогда я бы смог накинуть на него куб-коллайдер и он бы принял габариты охватывающие все меши в модельке.
Аноним 30/08/17 Срд 10:58:52 #843 №440817 
d4072d787199447293122af68c5b0006.png
Завезли свежий шарп и разных ништяков. https://habrahabr.ru/company/everydaytools/blog/336714/
Аноним 30/08/17 Срд 11:10:33 #844 №440818 
>>440810
Ебанутый чухан, что ты делаешь?
Аноним 30/08/17 Срд 11:31:43 #845 №440823 
>>440818
Ты опять выходишь на связь, мудило?
Аноним 30/08/17 Срд 12:30:57 #846 №440829 
>>440817
Говорят, крашится часто. Ссыкотно ставить.
Аноним 30/08/17 Срд 13:32:09 #847 №440838 
>>440799
Я так и думал, спасибо за ответ, побежал радовать батю.
Аноним 30/08/17 Срд 14:46:37 #848 №440846 
>>440817
вся суть хуюнити
теперь юнетидетям даже ассет таскать не нужно чтобы навесить ВАУ-ПОЦЭФФЕКТЫ. тепреь они РЕАЛЬНЫЕ ИГРОДЕЛЫ.
Аноним 30/08/17 Срд 15:03:02 #849 №440850 
4144183+e521245a4344c2822a913236edb4b776.png
>>440846
> не написал движок с нуля — нимужик
Тут люди на коленке ковыряют шарп, о каком графоне может идти речь?
Аноним 30/08/17 Срд 15:23:51 #850 №440851 
>>440846
Кто-то делает игры, кто-то рендерит треугольники. А теперь съеби.
Аноним 30/08/17 Срд 15:46:50 #851 №440854 
>>440817
Это ж ещё с июля вроде.
Аноним 30/08/17 Срд 19:43:36 #852 №440890 
>>434038
Лол, зашёл чтобы задать тот же вопрос.
Видимо ответа пока нет, во всяком случае здесь.
Тоже распаковал *assets, нашёл там файл без расширения с текстом игры (мне даже проще - весь текст в одном файле) и дальше тупик.
Короче ты это я.
Аноним 30/08/17 Срд 22:01:55 #853 №440960 
>>440890
Вы чо совсем ебобо без доступа к Гуглу?
http://www.zoneofgames.ru/forum/index.php?showtopic=36240
Аноним 30/08/17 Срд 23:01:43 #854 №440968 
В Unity можно как-то сделать, чтобы от объектов на сцене отражалась нижняя часть комнаты, например пол? Как бы не пытался добавить отражения на объекты, они отражают только верх, только небо, только Аллаха.
Аноним 30/08/17 Срд 23:10:43 #855 №440970 
>>440960

Спасибо.
Аноним 31/08/17 Чтв 01:53:30 #856 №440994 DELETED
>>438156

Очевидная.
Аноним 31/08/17 Чтв 02:35:29 #857 №440996 
Снимок экрана 2017-08-31 в 2.21.51.png
Этот вопрос знатокам прислал Макар из города Велосипедска.
Хочу редактировать ивенты через кастомный инспектор. Сделал, как на пикче, все отображается, ивенты редактируются. Но есть одна проблема, не сериализуются поля ивента. То есть они сериализуются, но только если я метод заново назначаю.
https://youtu.be/u2E_rLuF-PY
Аноним 31/08/17 Чтв 06:00:26 #858 №441007 
>>440996
Ты в курсе что ОнИнспекторГуи вызывается не один, а каждый раз когда надо перерисовать панельку? У тебя там new SerializedObject при каждом чихе создается, по нескольку раз в секунду.
Аноним 31/08/17 Чтв 06:07:11 #859 №441008 
>>441007
Да, в курсе, в любом случае инициализация проперти в OnEnable проблемы не решает.
Аноним 31/08/17 Чтв 10:56:35 #860 №441034 
>>440996
Вроде должно сохранять, но почитай на всякий случай про EditorUtility SetDirty
Аноним 31/08/17 Чтв 12:37:16 #861 №441062 
Есть ли сервисы по сетапу популярных в юнити основ под ммо (либо любой другой клиентсерверной хуйни) в один клик?

Для сайтов такое есть у многих хостеров - выбираешь фреймворк, оно тебе само устанавливает зависимости, генерит репо со всеми нужными хуками, и дальше ты просто коммитишь туда и в хуй не дуешь.
Аноним 31/08/17 Чтв 13:14:42 #862 №441073 
>>441062
Нет.
Аноним 31/08/17 Чтв 13:27:31 #863 №441075 
Где можно глянуть реализацию простенького GameManager и SceneManager ?
Аноним 31/08/17 Чтв 13:44:51 #864 №441076 
>>441075
Можно.
Аноним 31/08/17 Чтв 14:26:06 #865 №441080 
>>441034
это для файлов в проекте. для файлов в сцене https://docs.unity3d.com/ScriptReference/Undo.RecordObject.html
Аноним 31/08/17 Чтв 17:21:34 #866 №441102 
image.png
Скачал Sdk-tools. Не понимаю где тут manager. И вообще все выглядит не так как в туторах
Аноним 31/08/17 Чтв 17:22:53 #867 №441103 
1379883362041.jpg
>>441102
Аноним 31/08/17 Чтв 17:24:25 #868 №441104 
>>441103
Мне не смешно.
Аноним 31/08/17 Чтв 18:33:31 #869 №441118 
unitywtf.PNG
Привет поцоны. Столкнулся в юнити то ли с багами, то ли с собственной тупостью, потому что я абсолютли ньюфаг со стажем неделя.

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

2) Сейчас разбираюсь с 3D звуком, тещу его функции. И вот у меня случилась такая мертвая зона в игре. Я сделал три колонки (просто кубы, в которых вшита музыка). Но звук распространяется только в одну сторону от объекта, а не вокруг. Как-будто кубы стоят не по центру распространения звука, а у самого края. Но позиционка звука не настраивается же, если просто использовать как компонент к объекту. Так что я теперь нихера не понимаю, в чем дело.
Аноним 31/08/17 Чтв 18:37:43 #870 №441120 
>>441118
> абсолютли ньюфаг со стажем неделя
> разбираюсь с 3D звуком
Ты б основы сначала поковырял.
Аноним 31/08/17 Чтв 18:39:58 #871 №441121 
>>441120
Так я все подряд ковыряю. Уже много чего научился делать. Я учусь по урокам Стрима, как-раз проходил звук. И вот обратил внимание на такой нюанс, и не понимаю, как это настроить.

Алсо, первый вопрос отменяется - это моя тупость.
Аноним 31/08/17 Чтв 18:41:48 #872 №441122 
>>441121
> Я учусь по урокам Стрима
А, видать я тебе его на днях и кидал, лол.
Аноним 31/08/17 Чтв 18:43:30 #873 №441123 
>>441122
Да, скорее всего. Охуенные уроки, спасибо. Круто, что не просто код копируешь, а реально понимаешь и свои скрипты пробуешь. Пока что дошел до интерфейса (пропустил анимацию, считаю ее не такой пока что важной).
Аноним 31/08/17 Чтв 18:45:57 #874 №441124 
>>441123
Да на здоровье.
Действительно хороший материал в русскоязычном сегменте.
Аноним 31/08/17 Чтв 18:51:58 #875 №441125 
>>441124
А можешь что посоветовать не из русскоязычного? Я язык знаю.
Аноним 31/08/17 Чтв 18:53:23 #876 №441127 
>>441125
Элементарно можешь штудировать официальные уроки на сайте юнити. Если ты совсем новенький, то много полезного узнаешь.
Но они суховаты, да. Стрим более такой, "чувак", так сказать.
Англоязычных таких "чуваков" не подскажу, но, думаю, за меня кто-то подскажет.
Аноним 31/08/17 Чтв 19:55:00 #877 №441134 


public class button_testing : MonoBehaviour {
GameObject enemy;

void Start () {

enemy = GameObject.FindGameObjectWithTag ("FearOfSun");

}



public void slay (float param) {

if (enemy != null) {

if (param > 5f) {

Destroy (enemy);
}



Привет еще раз. Смотрите, что хочу сделать. Привязываю скрипт к слайдеру и к объекту с тэгом. Хочу, чтобы при значении слайдера > 5 уничтожался объект. Однако, это не работает. Что я сделал не так? Компилится нормально.
Аноним 31/08/17 Чтв 19:56:33 #878 №441135 
>>441134
> public void slay (float param)
> float param
Что и откуда ты туда передаёшь?
Аноним 31/08/17 Чтв 20:01:26 #879 №441136 
>>441102
Последний андроид СДК консольный, а так открывать батник
Аноним 31/08/17 Чтв 20:13:26 #880 №441139 
void OnCollisionEnter2D(Collision2D coll)
{
if (coll.gameObject.tag == "Enemy")
Debug.Log("ENEMY");
}
Rigidbody, коллайдеры и теги на месте, везде 2d. Но всё равно не работает. В чём может быть проблема? Вопрос распространенный.Нас даунов много
Аноним 31/08/17 Чтв 20:25:05 #881 №441140 
>>441135

Я брал пример из урока:

public void slay (float param) {

transform.localScale = new Vector 3 (1f, param, 1f); }

Скрипт привязывается к слайдеру, и param передается от value слайдера. Но когда я захотел что-то поменять - получилось нихуя.
Аноним 31/08/17 Чтв 20:27:11 #882 №441141 
>>441140
Блять, откуда ты param передаёшь? Ты вообще видишь что у тебя в коде?
Аноним 31/08/17 Чтв 20:37:15 #883 №441142 
the-neverending-rest-api-design-debate-17-638.jpg
https://docs.microsoft.com/en-us/dotnet/standard/design-guidelines/naming-guidelines
Аноним 31/08/17 Чтв 22:01:28 #884 №441151 
>>441140
У тебя максимальное значение слайдера не 1 случайно? К onValueChanged цепляешь свою функцию? Посмотри в дебаггере что там происходит, не равна ли null ссылка на объект.
Аноним 31/08/17 Чтв 22:20:01 #885 №441154 
>>441125
https://www.youtube.com/user/KnnthRA
https://www.youtube.com/channel/UCifiUB82IZ6kCkjNXN8dwsQ
https://www.youtube.com/channel/UCYbK_tjZ2OrIZFBvU6CCMiA
https://www.youtube.com/channel/UCPXOQq7PWh5OdCwEO60Y8jQ
https://www.youtube.com/user/Cercopithecan
Вот у этих чуваков находил то что мне было нужно и вроде как довольно таки ровно запиленое.
Аноним 31/08/17 Чтв 23:03:52 #886 №441159 
hui.jpg
Чуваки, я тут после работы взялся моделить всякую хуйню.
Пикрилейтед - попытка винтажного холодильника. Завтра доделывать\красить, но вот вопрос. Если не для графонистой хайполи игры, а сорт оф икском, нужно ли делать ретопологию, или вообще похуй?
Не сглаженная 768 полигонов, на сглаженной 6100.
thoneick 01/09/17 Птн 00:04:46 #887 №441164 
images1.jpg
images2.jpg
images3.jpg
images4.jpg
...
Аноним 01/09/17 Птн 00:20:59 #888 №441166 
>>440996
Если кому мнтересно, решил проблему с помощью SerializedObject.ApplyModifiedProperties.
Аноним 01/09/17 Птн 01:49:50 #889 №441171 
images1.jpg
images2.jpg
images3.jpg
images4.jpg
>>441164
И ещё.
Аноним 01/09/17 Птн 06:31:23 #890 №441177 
>>441164
>...
Че сказать-то хотел? Сити генератор? Самописный? А дальше что?
Аноним 01/09/17 Птн 09:25:07 #891 №441185 
>>441159
А не много для коробки?
Аноним 01/09/17 Птн 10:05:07 #892 №441186 
>>441185
Согласен, немного убрать можно. Но немного. Много лупов для корректного смуфа, и чтобы вообще сетка по пизде не пошла. Я начинал делать на отьебись, чтобы в минимум полигонов убраться, но в финале столкнулся с тотальным пиздецом, что пришлось переделать с нуля.
Но таки интересно за юнити.

И еще есть пара вопросов юнити. Допустим я в максе настрою маты на отражения, на ржавчину и тд. Юнити это переварит, или там отдельно надо настраивать?
Я просто хз как это все устроено.
Аноним 01/09/17 Птн 10:07:34 #893 №441187 
>>441186
> Допустим я в максе настрою маты на отражения, на ржавчину и тд. Юнити это переварит, или там отдельно надо настраивать?
Не совсем понял чё ты хочешь. Юнька отдельно хавает карту нормали, спекуляр и так далее. Так что красишь свой холодильник, всё запекаешь в текстурах и свободен.
Аноним 01/09/17 Птн 12:28:49 #894 №441209 
>>441177
> Сити генератор?
Пак зданий.
Аноним 01/09/17 Птн 12:51:52 #895 №441214 
>>441186
> Допустим я в максе настрою маты на отражения, на ржавчину и тд. Юнити это переварит, или там отдельно надо настраивать?
в максе вообще ничего не крась, макс ебанутый и озалупился со своими ебанутыми материалами. у него даже нормали через жопу отображатся, и это не просто Y+/Y- а что-то иное.
красить модельки нужно в специально предназначенных для этого приложениях.
Аноним 01/09/17 Птн 13:13:03 #896 №441218 
Чому в шапке треда нет Clustertruck, SUPERHOT, Firewatch? Уж эти тайтлы круче, чем блицкриг какой-то.
Аноним 01/09/17 Птн 13:47:16 #897 №441227 
>>441214
> у него даже нормали через жопу отображатся
Не пизди мне тут.
> и это не просто Y+/Y- а что-то иное.
красить модельки нужно в специально предназначенных для этого приложениях.

Не слушайте его, он - ебанашка.
>>441186
>И еще есть пара вопросов юнити. Допустим я в максе настрою маты на отражения, на ржавчину и тд. Юнити это переварит, или там отдельно надо настраивать?


Для спека, хейд мап, ао- отдельно будешь настраивать в самом unity.
3ds max тебе разве что автоматически сгенерирует дифуз/альбедо и нормал мап.
Аноним 01/09/17 Птн 13:50:00 #898 №441228 
>>441227
Добавлю.
Вообще, ты можешь моделировать хоть в сие царском, королевском 3ds max.
Ну или blender, maya.
Главное, сделай норм модель и развёртку.
Что бы можно было в пейнтере текстурировать.
Аноним 01/09/17 Птн 13:53:28 #899 №441229 
>>441227
> Не пизди мне тут.
нет это ты не пизди мне тут.

> Что бы можно было в пейнтере текстурировать.
> красить модельки нужно в специально предназначенных для этого приложениях.
зачем ты повторяешь что я сказал? ты попугай?
Аноним 01/09/17 Птн 13:55:03 #900 №441230 
>>441229
> нет это ты не пизди мне тут.
нет это ты не пизди мне тут

>зачем ты повторяешь что я сказал? ты попугай?
Нет это ты попугай
Аноним 01/09/17 Птн 13:56:17 #901 №441231 
>>441230
> нет это ты не пизди мне тут
нет это ты пиздишь

> Нет это ты попугай
нет это ты попугай
Аноним 01/09/17 Птн 13:57:31 #902 №441232 
>>441231
>> нет это ты пиздишь
Нет это ты пиздишь

> нет это ты попугай
Нет это ты попугай
Аноним 01/09/17 Птн 13:58:52 #903 №441233 
>>441231
>>441232
Харош щитпостить, заебали.
Аноним 01/09/17 Птн 13:59:12 #904 №441234 
>>441232
> Нет это ты пиздишь
нет это ты пиздишь

> Нет это ты попугай
нет это ты попугай
Аноним 01/09/17 Птн 13:59:39 #905 №441235 
>>441233
Нет это ты заебал
Аноним 01/09/17 Птн 13:59:46 #906 №441236 
>>441233
скажи кто пиздит а кто попугай, мы и закончим.
Аноним 01/09/17 Птн 14:00:07 #907 №441237 
>>441235
а ты попугай
Аноним 01/09/17 Птн 14:00:13 #908 №441238 
>>441234
> Нет это ты пиздишь

Нет это ты пиздишь

> Нет это ты попугай
Нет это ты попугай
Аноним 01/09/17 Птн 14:00:42 #909 №441239 
>>441236
Он пиздит и попугай.
Аноним 01/09/17 Птн 14:01:07 #910 №441240 
>>441237
Нет это ты попугай
Аноним 01/09/17 Птн 14:01:54 #911 №441241 
>>441239
нет это ты пиздишь и ты попугай
попугай
Аноним 01/09/17 Птн 14:02:30 #912 №441243 
>>441241
нет это ты пиздишь и ты попугай
я не попугай
Аноним 01/09/17 Птн 14:03:20 #913 №441244 
>>441243
ты пиздишь что ты попугай
попугай
Аноним 01/09/17 Птн 14:04:12 #914 №441245 
>>441244
ты пиздишь что я попугай
я не попугай
Аноним 01/09/17 Птн 14:05:02 #915 №441246 
>>441245
ты не попугай и не пиздишь
пиздун
Аноним 01/09/17 Птн 14:06:10 #916 №441247 
>>441246
да я не попугай и не пизжу.
я красавчик
Аноним 01/09/17 Птн 14:21:22 #917 №441249 
That+cat+on+the+top+looks+like+a+ewok+1bbc6e5868c08d55b7cfd[...].jpg
Поясните по юнити. Реально с нуля за неспешные полгода в одиночку наваять несложную ламповую игрушку, способную получить зелёный свет в стиме?
Аноним 01/09/17 Птн 14:23:30 #918 №441250 
>>441249
> зелёный свет в стиме
Наркоман ебучий, гринлайт ещё с июня новые проекты не принимает.
Аноним 01/09/17 Птн 14:29:22 #919 №441251 
image.png
>>441249
за джве недели
sageАноним 01/09/17 Птн 15:12:36 #920 №441262 
Что вы тут за херню развели?
Аноним 01/09/17 Птн 16:37:00 #921 №441278 
Тупой вопрос такой тупой.

Делаю простое зеркало через камеру + рендер.текстуру.
Зеркало получается обратным - персонаж идет направо, в зеркале движется налево. Как поправить?
Аноним 01/09/17 Птн 16:39:05 #922 №441280 
>>441278
Я дебил, простите.
Аноним 01/09/17 Птн 16:40:42 #923 №441281 
>>441278
По иксу в -1 ебани.
Аноним 01/09/17 Птн 16:41:08 #924 №441282 
>>441278
http://wiki.unity3d.com/index.php/MirrorReflection4
а твои махинации применением камеры это костыль.
Аноним 01/09/17 Птн 16:57:10 #925 №441283 
Как сделать расположение интерфейса, скейлящееся под разрешение? В юньке все нормально, когда билдю игру - все элементы интерфейса сбиваются в кучу.

Алсо, звуки, которые звучали с нормальной громкостью в редакторе - в готовой игре звучат ОЧЕНЬ тихо.
Аноним 01/09/17 Птн 17:08:41 #926 №441285 
>>441283
1. Не проебываешь анчоры на канвасе
2. Правильно выбираешь относительный, либо абсолютный размер ui элементов.
3. ????
4. Профит
Аноним 01/09/17 Птн 17:09:46 #927 №441286 
>>441283
Якоря для кого, блджад?
Аноним 01/09/17 Птн 20:46:57 #928 №441308 
>>441249
>Поясните по юнити. Реально с нуля за неспешные полгода в одиночку наваять несложную ламповую игрушку, способную получить зелёный свет в стиме?

Зависит от того, что ты хочешь.
Аноним 01/09/17 Птн 21:11:46 #929 №441309 
>>441249
Гринлайт всё. Теперь это называется Steam Direct и туда принимают любое говно, надо только заплатить взнос в размере $100 и пройти проверку на вирусы.

Вопрос только в том, сделаешь ты вообще что-то или нет.
Аноним 01/09/17 Птн 21:46:21 #930 №441311 
КТо-то итт юзал DevXUnity ?
Чё, реально можно распаковать билд обратно в проект?
30$ лично мне жаль на проверку.
инби4 разраб DevXUnity
Аноним 01/09/17 Птн 21:50:49 #931 №441312 
>>441311
Ты долбоёб? Вот только честно.
Аноним 01/09/17 Птн 21:52:21 #932 №441313 
>>441312
Ты нормально объясни, чего ругаешься сразу.
Все ж мы люди.
Аноним 02/09/17 Суб 13:22:41 #933 №441343 
Поясните ньюфагу:
гугл на вопрос об иоке мне говорит "юзай зенджект, сука", но в нем конфигурация только через код, а я хочу через хмл/джсон/йамл. Насколько сложно подключить левый нетовский контейнер, есть ли какие-нибудь подводные?
Аноним 02/09/17 Суб 13:41:37 #934 №441346 
Как заново перезапустить анимационный клип?
Аноним 02/09/17 Суб 14:52:50 #935 №441350 
Пилю скролл-шутер в ГП по вечерам. Сделал геймплей. Мыслить стараюсь реально, поэтому хочу ПОЧУВСТВОВАТЬ СЕБЯ ГЕЙДЕВЕЛОПЕРОМ и получить прибыль с рекламы хотя бы на полторашку большой кружки. Значит нужно удержать игрока для показов. Пока пришел к магазину с кораблями. Разница будет в хп, скорости, вооружении. И вот тут пошли вопросы. Как это реализовать? Сделать для каждого корабля свой скрипт? Так отличие в паре строк. Юзать один скрипт и менять параметры через свичкейз в зависимости от корабля? Куда копать. Алсо, есть тут успешные девелоперы в ГП, которые могут дать советы кроме очевидного: НЕ ЛЕЗЬ ДЕБИЛ СУКА по продвижению проекта?
Аноним 02/09/17 Суб 15:16:59 #936 №441352 
>>441343
> но в нем конфигурация только через код
Язык учи.
Аноним 02/09/17 Суб 15:56:47 #937 №441355 
>>441352
Читать учись.
Аноним 02/09/17 Суб 16:10:40 #938 №441356 
Пацаны, можно ли в юнити в сцене использовать видеофрагменты? Mov?
Аноним 02/09/17 Суб 16:15:33 #939 №441357 
>>441356
Все, поостерегусь в следующий раз задавать вопросы, предварительно не залезая в гугл. Извините.
Аноним 02/09/17 Суб 17:06:58 #940 №441359 
>>441355
Читать я научился когда ты ещё у папы в яйцах чесался.
Но если ты упираешься в код, то учи код.
Аноним 02/09/17 Суб 18:16:17 #941 №441367 
>>441359
Значит хуево научился, учись еще.
Подсказка: конфиги (и все константы вообще) выносят в отдельные файлы без лишнего синтаксиса не потому что упираются в код, а потому что это удобнее.
Аноним 02/09/17 Суб 18:21:31 #942 №441368 
>>441367
Странно, с идиотским вопросом врываешься ты, а чёто там хуёво читаю я, ага.
Аноним 02/09/17 Суб 18:56:25 #943 №441371 
>>441311

Вот где я наебался - эта киллер фича стоит у разраба 200$.
> - Generate Unity3D project (from win, mac, APK) (scenes, sripts, resources) - Currently not full implementation (Is being finalized)!
Бесплатный вьювер показывает ресурсы игры офигенно, я будто смотрю проект в юнити (загружаю во вьювер exe игры, остальное прога подтягивает сама).
Но 200 баксов лишних у меня конечно нет.
Как и кейгена.
Аноним 03/09/17 Вск 10:43:00 #944 №441427 
>>441371
Блядь, вот что надо было делать, а я-то всё думал, как лучше всего на юнити-лошках бабла срубить. Как всегда все самые прибыльные идеи реализуют до нас.
Аноним 03/09/17 Вск 10:47:24 #945 №441428 
>>441427
Почему ты такой токсичный? Этот тред создан для высмеивания? И этот же вопрос я задавал постов 70 назад и никто не ответил, если ты такой знаток то поделись.
мимопроходил
Аноним 03/09/17 Вск 12:39:39 #946 №441440 
>>441427
Хуй знает что ты хотел этим сказать.
Программки для работы с *assets (просмотр, распаковка, перепаковка) - их есть 2-3 штуки как минимум, неплохих и бесплатных.
DevXUnity стоит на много уровней выше, это как хуй с пальцем сравнить. По твоему легко реализовать такое:
> Generate Unity3D project (from win, mac, APK)
100% оно коряво это делает и всё потом нужно доделывать руками, но хоть что-то.
Сделай аналог дешевле, разбогатеешь.
С другой стороны хорошо, что у школьников нет возможности получить проект из чужой игры.
Аноним 03/09/17 Вск 14:18:42 #947 №441449 
Как переместить объект, у которого включена анимация, при этом не выключая её?
Аноним 03/09/17 Вск 14:49:24 #948 №441452 
>>441449
Не то, чтобы я в принципе использовал анимацию, но почему она должна выключаться, если ты её просто перемещаешь каким-нибудь Rigidbody.velocity
Аноним 03/09/17 Вск 14:59:38 #949 №441454 
>>441452
Не равботает
Аноним 03/09/17 Вск 15:01:15 #950 №441455 
>>441454
У этого парня всё работает https://www.youtube.com/watch?v=CAPVBTKk3Ww
Аноним 03/09/17 Вск 15:04:05 #951 №441456 
>>441455
Может таймкод дашь?
Аноним 03/09/17 Вск 15:07:50 #952 №441457 
>>441455
Сделал всё, как он, но не работает, стоит мне выключить анимацию, сразу начинает двигаться
Аноним 03/09/17 Вск 15:28:37 #953 №441459 
>>441457
ёбай онимку на чайлд, а не на сам тот геймобжект что двигаешь
Аноним 03/09/17 Вск 17:32:42 #954 №441469 
>>441371
Чот хуево у них с маркетингом - залили бы чтоли видосов с левого аккаунта с реальными играми, чтобы показать текущие возможности, а то пруфофконцепт две сотни не стоит.
Аноним 03/09/17 Вск 19:03:56 #955 №441475 
Не знаю, глупый это вопрос или нет. Но допустим у меня есть объект, состоящий из нескольких объектов с разными компонентами и скриптами. Могу я, не копируя тот объект, отобразить его копию на сцене?
Аноним 03/09/17 Вск 19:05:51 #956 №441476 
>>441475
> допустим у меня есть объект, состоящий из нескольких объектов
Не может у тебя объект состоять из объектов. Он может быть родителем других объектов, но это всё равно самостоятельный объект.
Аноним 03/09/17 Вск 19:07:34 #957 №441477 
>>441476
Ок, но как мне сделать копию его изображения?
Аноним 03/09/17 Вск 19:24:56 #958 №441479 
>>441477
Добавить вторую камеру и рендерить с неё на текстуру, а текстуру прилепить куда тебе надо.
Аноним 03/09/17 Вск 19:36:44 #959 №441481 
>>441479
Звучит, как костыль. Я слышал, что камеры не лучший способ оптимизировать игру
Аноним 03/09/17 Вск 20:07:54 #960 №441482 
>>441481
>Я слышал
Ну если ты слышал, то тогда конечно. Послушай еще, может услышишь другое решение для твоего ебанутого случая.
Аноним 03/09/17 Вск 20:22:43 #961 №441485 
>>441475
блять, нормально ситуацию объясняй. как вы заебали, сначала костыли выдумываете, а потом спрашиваете А КАКОЙ КОСТЫЛЬ ЗДЕЛАТЬ ЧТОБЫ МОЙ ДРУГОЙ КОСТЫЛЬ ЗАРАБОТАЛ
Аноним 03/09/17 Вск 20:42:04 #962 №441487 
>>441485
Какие костыли? У меня 2д-шный дебил бегает, у него руки, ноги, голова и у всего этого коллайдеры, ригидбоди и скрипты. Мне просто нужно скопировать картинку без всего этого.
Аноним 03/09/17 Вск 21:35:01 #963 №441493 
>>441487
>>441487
Клацни по нему райткликом, сделай дубликат, убери все ненужные компоненты, перетащи в папку с префабами. Потом в коде где то где удобно сделай переменную в класе типа GameObject захуярь туда свой префаб. Потом через https://docs.unity3d.com/ScriptReference/Object.Instantiate.html добавляешь его на сцену.
Аноним 03/09/17 Вск 21:35:39 #964 №441494 
>>441487
я не про то. какова цель коприрования? обьясняй ситуацию в подробностях с предысториями
Аноним 03/09/17 Вск 21:44:44 #965 №441495 
>>441469
> Чот хуево у них с маркетингом
Разработчик русский же.
Аноним 03/09/17 Вск 21:57:25 #966 №441496 
>>441494
Вообще мне нужно, чтобы худ игрока (UI) уехал в одну сторону и выехал из другой. Хочу запариться с пространством свободным на экране. В общем тут показывать надо.
Аноним 03/09/17 Вск 22:07:07 #967 №441498 
>>441496
Просто хочу создать 1 объект, копирующий второй, вместо двух объектов
Аноним 03/09/17 Вск 22:08:34 #968 №441499 
троллейбус из хлеба-2015-05-02-21-07-00-028-5149.jpg
>>441498
Понятно, ещё один.
Аноним 03/09/17 Вск 22:09:15 #969 №441500 
>>441499
Что плохого в оптимизации?
Аноним 03/09/17 Вск 22:11:12 #970 №441501 
>>441500
Костыли — это не оптимизация.
Ты игру сначала сделай. Слышал про вайтбоксинг, не? Прототипирование там, все дела.
Ты не тем занимаешься.
Аноним 03/09/17 Вск 22:11:25 #971 №441502 
>>441500
1 обьект который копирует второй это два обьекта.
Аноним 03/09/17 Вск 22:12:56 #972 №441503 
>>441502
но он не будет выполнять скрипты
Аноним 03/09/17 Вск 22:13:39 #973 №441504 
>>441503
Кто "он", блять? Скрипты выполняет не объект.
Аноним 03/09/17 Вск 22:15:01 #974 №441505 
>>441504
но скриптов то всё равно больше будет выполняться. они же привязаны к объекту
Аноним 03/09/17 Вск 22:15:45 #975 №441507 
>>441505
Парень, подучи азы сначала, а потом приходи. Ты хуйню несёшь.
Аноним 03/09/17 Вск 22:17:05 #976 №441508 
>>441504
хуле тебе не ясно. есть объект, на нём скрипты. ставим объект на сцену, скрипты выполняются. ставим больше объектов - выполняется больше скриптов
Аноним 03/09/17 Вск 22:17:27 #977 №441509 
>>441507
>>441508
Аноним 03/09/17 Вск 22:18:48 #978 №441510 
>>441508
Перестань, я ж соседей разбужу.
Аноним 03/09/17 Вск 22:19:21 #979 №441511 
>>441510
ещё скажи, что не так
Аноним 03/09/17 Вск 22:20:01 #980 №441512 
>>441511
Три раза уже сказал. Не умеешь читать — кодить не берись.
Аноним 03/09/17 Вск 22:20:27 #981 №441513 
>>441512
ты мне скажи, что тебе не нравится, умник
Аноним 03/09/17 Вск 22:52:45 #982 №441517 
>>441513
Короче, пидор. Это можно сделать шейдером, если твой пидор это цельный скиннед меш. Но ты слишком тупой для этого, так что просто иди нахуй.
Аноним 03/09/17 Вск 22:53:57 #983 №441518 
>>441517
> цельный скиннед меш
Он таких слов не знает, пощади.
Аноним 03/09/17 Вск 22:59:02 #984 №441520 
>>441517
Да, только у меня ui и ничего цельного
Аноним 03/09/17 Вск 23:01:12 #985 №441521 
image.png
>>441517
Это ты сам написал?>>441517
Найти то не проблема, но похоже это не будет работать
Аноним 03/09/17 Вск 23:01:39 #986 №441523 
>>441521
>фикс
>>441521
Это ты сам написал?>>441518
Аноним 03/09/17 Вск 23:02:17 #987 №441524 
>>441523
>блять, фикс
>>441517
Это ты сам написал?>>441518
Аноним 03/09/17 Вск 23:02:51 #988 №441525 
>>441521
>>441523
>>441524
Иди поспи, у тебя уже руки трясутся.
Аноним 03/09/17 Вск 23:03:59 #989 №441528 
>>441525
Они у меня всегда трясутся.
Аноним 03/09/17 Вск 23:11:33 #990 №441530 
>>441517
Ладно, спс за идею, анон, я спать.
Аноним 04/09/17 Пнд 04:29:31 #991 №441548 
>>427717 (OP)
Award Winning Idea
Аноны, никто и вас до такого бы не додумался
https://www.youtube.com/watch?v=_4ISYP3P9IU
Аноним 04/09/17 Пнд 09:12:19 #992 №441555 
human bean.webm
>>441548
Аноним 04/09/17 Пнд 17:35:44 #993 №441585 
>>441548
Более того - старо как мир. В первый раз подобную штуковину фигачили в интернет-редацкии Times, в виде съемок панорамных видосиков. Около года назад. В итоге чуть-ли не треть пресс-релизов были по поводу этого самого empathy generation. Остальное это философствования по поводу места человека в VR-пространстве и виртуальных изнасилованиях, травле в виртуал-спейсе и других sotial-vr платформах, anti-harasming bubbles.

P.S Короче - в "Кремниевой Долине" полный пиздец и разработчиков VR/AR меньше, чем всяких журналистиков, пихологов, евангелистов, теоретиков, исследователей экспириенса и прочей шелупони

P.S.S я бы с удовольствием показал ей свой код, покопался бы в ее, и научил всяким приемчикам.
Аноним 04/09/17 Пнд 21:04:03 #994 №441604 
>>441548
>утю-тю какой милый беззащитный щеночек
>почему он вырос в волкодава
>почему он меня не слушается
>почему он откусил мне руку
>почему я под шконкой
Аноним 05/09/17 Втр 07:05:11 #995 №441619 
Без имени-1.png
Ребята, которые в шейдорах понимают, тут же были такие, помогите.
Захотел я для стора модели пилить, а чтобы была ФИШЕЧКА решил сделать простой шейдор, который как стандартный, только по альфе диффуза можно цвет менять.
Получился пикрелейтед. Но я, вот, боюсь. А вдруг он не у всех работать будет? Или, может, сломается после какого-нибудь обновления унити?
Аноним 05/09/17 Втр 07:33:56 #996 №441620 
Metallica-JumpintheFirecover.jpg
Посоны, вопрос: очень заебывает ждать пока юнити соизвилит скомпилировать скрипт для редактора. Еще нихуя не понятн скомпилировал он его заново или нет, так что приходится делать тестовый вывод в духе "compile_version = 33" и пердолить при каждом изменении. В юнити нету кнопки скомпилировать скрипты редактора. А то заебало сидеть ждать каждое изменение.
Аноним 05/09/17 Втр 09:30:34 #997 №441624 
>>441620
> Еще нихуя не понятн скомпилировал он его заново или нет
Чего блять? Если ты скрипт сохранил и перевалился в редактор, то он его начинает компилить, что даже визуально видно по вращающемуся кружочку.
Аноним 05/09/17 Втр 09:53:29 #998 №441625 
>>441624
нихуя, это для обычных скриптов так
а когда делаешь какие-то изменения для скриптов редактора (Editor) то они хуй когда скомпилируются и нихуя это кружечком не показывается

что и бесит дико
Аноним 05/09/17 Втр 19:36:01 #999 №441657 
>>441625
пкм+refresh
Аноним 06/09/17 Срд 01:03:27 #1000 №441691 
1503195367472.jpg
>>441548
Аноним 06/09/17 Срд 12:28:54 #1001 №441716 
>>441619
Ну помогите. Меня смущают эти стандартные штуки.
Аноним 06/09/17 Срд 12:30:50 #1002 №441717 
546.PNG
В VS блоки кода под "ненужные" платформы #if ... #endif становятся серыми, обычным текстом, как эту хуйню отключить? Мне надо чтоб подсвечивалось все как обычно.
Аноним 06/09/17 Срд 15:10:51 #1003 №441727 
у меня вопрос. А могу ли я проверить работает ли сейчас корутин?
Аноним 06/09/17 Срд 15:12:52 #1004 №441728 
>>441727
ну пусть от тебе в концоль пишет, пока работает.
Аноним 06/09/17 Срд 15:15:24 #1005 №441729 
>>441728
Не я хочу запускать его только тогда когда он уже закончил работать
Аноним 06/09/17 Срд 15:15:30 #1006 №441730 
>>441727
bool rabotaet;

...

IEnumerator blabla
{

rabotaet = true;

... //korutina

rabotaet = false;
}
Аноним 06/09/17 Срд 15:29:28 #1007 №441731 
>>441730
Да, у меня все получилось. Спасибо
Аноним 07/09/17 Чтв 00:29:21 #1008 №441776 
>>438944
Если у кого была такая проблема, решение тут
https://docs.unity3d.com/ScriptReference/CompositeCollider2D.html
Аноним 07/09/17 Чтв 00:53:44 #1009 №441778 
Через скрипт геймманагера создаю геймобджекты как хранитель, внутри геймобджекты как сущности и раскидываю им компонентом скрипт класса. Затем хочу создать в другом скрипте массив указателей на эти компоненты, чтобы легко к ним обращаться, как это сделать?
Неужели надо каждый раз получать эти обджекты из сцены чтобы при необходимости изменить?

И ещё как сделать переменную в классе, в которую я смогу положить любой существующий класс, что-то уровня void?
Аноним 07/09/17 Чтв 05:55:52 #1010 №441792 
>>441778
В юнити есть базовый класс object для любых unity объектов.
Аноним 07/09/17 Чтв 10:31:05 #1011 №441811 
>>441716
Да не ссы ты, все нормально. Не нужно бояться шейдеров.
sageАноним 07/09/17 Чтв 18:33:55 #1012 №441891 
>>441778
Шизик ебаный, ты сам то понял что написал?
Аноним 08/09/17 Птн 10:58:06 #1013 №441959 
>>441778
>Затем хочу создать в другом скрипте массив указателей на эти компоненты, чтобы легко к ним обращаться, как это сделать?
без задней мысли, создал да передал.

>как сделать переменную в классе, в которую я смогу положить любой существующий класс
зачем?
Аноним 08/09/17 Птн 11:01:48 #1014 №441960 
В чем преимущества и недостатки EventSystem по сравнению с простым рейкастом, в плане взаимодействия с миром? На ум приходит то, что можно не следить за слоями. Есть какие-то подводные?
Аноним 08/09/17 Птн 12:04:56 #1015 №441965 
photofacefuncom1504861368.jpg
Как запустить анимационный клип(пикча) сначала?
Аноним 08/09/17 Птн 12:16:31 #1016 №441970 
>>441965

anim.Play("CubeAnimation", <layer#>, 0f);
Аноним 08/09/17 Птн 12:21:56 #1017 №441972 
>>441970
Как понять, какой слой использовать?
Аноним 08/09/17 Птн 12:23:03 #1018 №441973 
>>441970
А, всё, я определился, спасибо тебе огромное
Аноним 08/09/17 Птн 12:49:41 #1019 №441977 
>>441350
> Как это реализовать? Сделать для каждого корабля свой скрипт? Так отличие в паре строк.
ScriptableObject жи.
Аноним 08/09/17 Птн 12:54:28 #1020 №441978 
>>441965
Я конечно не настаиваю, но может тебе изучить аниматор? Переходы там, параметры, эвенты. StateMachineBehavior тоже пригодится. Клип как правило должен запускаться из state machine, а не из рандомного места в коде. Ты рискуешь получить большие трудности с дебагом(если сподобишься соорудить что-то сложнее хеллоуворлда).
Аноним 08/09/17 Птн 13:14:57 #1021 №441979 
3c4f837e4435bb9aed86f47de51c69c4.png
3cda4af29044ef3e5fdada6bd0f6876d.png
Почему некоторые значения в трансформе выделены жирным? В некоторых объектах норм, а в некоторых вот так.
О чём это он мне сигнализирует?
Аноним 08/09/17 Птн 13:34:39 #1022 №441983 
>>441979
Жирным выделены значения, отличающиеся от дефолтных в префабе.
Аноним 08/09/17 Птн 13:35:01 #1023 №441984 
>>441983
А, вон оно как.
Спасибо, братишка.
Аноним 08/09/17 Птн 17:54:42 #1024 №442015 
14806220351880.webm
>>438156
Аноним 08/09/17 Птн 18:18:32 #1025 №442017 
11681.jpg
Кто-нибудь решал проблему с толпой NavMeshAgent'ов, мешающих друг другу пройти в точку на карте? Они беспорядочно дрыгаются, не хотят стоять спокойно.

Что я пока придумал - сканировать переднюю полусферу лучами/триггером, проверяя направление пути. Если путь направлен в сторону forward, и триггер сработал - останавливаемся.

И еще вариант - отключить автоматическое обновление позиции агентом, и двигать основной объект, только если дистанция между ними больше некоторого порогового значения(lerp,ом). Это убирает мелкие дрыганья.

Плюс включаю NavMeshObstacle и отключаю Navmeshagent по достижении цели. А нет ли случаем "красивых" решений?
Аноним 08/09/17 Птн 18:39:13 #1026 №442020 
Совсем новичок в юнити.

Запилил хп персонажу по слайдбару. И такой скрипт.

public class Fire : MonoBehaviour
private float health = 100;
GameObject player;

В апдейте

if (player != null)
{ float distance = Vector3.Distance(transform.position, player.transform.position);
if (distance < 1.5f)
{ health -= (50f * Time.deltaTime);
slider.value = health;
if (health <= 0)
{ Destroy(player);
} ....

Собственно, этот скрипт висит на каждом препятствии и противнике милишнике. Но дело в том, что для каждого препятствия/врага хп персонажа существует параллельно. Т.е. каждый проверяет состояние хп, которое было при последнем контакте именно с объектом, на который висит скрипт, а не с глобального параметра хп.
Как переписать?

Аноним 08/09/17 Птн 19:28:09 #1027 №442023 
>>442020
Ебать ты задом наперед все сделал. Скрипт игрока сам может следить за своим здоровьем.
Если игрок один, сделай синглтон. А так навесь него что-то типа:
void OnHit(float damage)
{
health -= damage
if (health < 0)
{
OnDeath();
}
}

В противниках у тебя теперь просто будет:
if (distance == ...)
{
player.OnHit(50 * Time.deltaTime);
}

Слайдер хп тоже прописывай в игроке, очевидно же. И максимальное значение не проеби.
А вообще коллайдеры поковыряй.
Аноним 08/09/17 Птн 19:40:53 #1028 №442024 
>>442023
Спасибо, сейчас попробую.
Я сам подозревал, что что-то совсем нелогично, но использовал скрипт из урока, сам пока что еще совсем слабо. Сделал подобные врагам. Чтобы их могли тоже препятствия коцать, вроде все работает.
Но сейчас поковыряю. Опыт в юньке неделя.
Аноним 08/09/17 Птн 19:58:00 #1029 №442025 
>>442024
У меня повреждения через интерфейс
public interface IDamageable {

float CurrentHealth { get; }
void TakeDamage (float amount);
}

потом любая дамажащая хуета проверяет(при попадании лучом или коллайдером в колалйдер)
var hp =otherCollider.GetComponent<IDamageable>();
if(hp != null) {hp.TakeDamage(число);}

И еще вариант сделать повреждения через базовый класс Health - какой вариант лучше, это уже на любителя(есть конечно и другие варианты кроме этих).

А как получать дамаг(или не получать), какие эффекты/звуки проигрывать, дамажимый объект решает сам.

мимоанон
Аноним 08/09/17 Птн 20:08:22 #1030 №442027 
>>442024
> Опыт в юньке неделя
Не, тогда не ковыряй ну или ковыряй, я тебя не остановлю. Полистай что-нибудь по шарпу из /pr/ (C# Player's Guide попробуй — еще захочешь), заметно уменьшишь количество новых велосипедов в коде.
>>442025
Двачую, сам так сделал (правда, под предлогом того, что на всякие коробки и табуретки бессмысленно вешать весь класс NPC).
Аноним 08/09/17 Птн 20:34:09 #1031 №442029 
taagdhsh.jpg
Чому у вас юнити-тред новый не делают?
Полгода назад накодил себе основу для пошаговой стратегии, я тут писал немного и велосипедил. Лето прошло, можно снова садиться за код, и, в общем, решил начать с девконсоли - чтобы в самой игре можно было в нужной точке призывать нужных юнитов, площадки и т.п. Глянул туториалы по этому делу, помедитировал, и понял, что хочу сделать свой велосипед. А для своего велосипеда нужно делать свой велосипедный input field. Ради бога не спрашивайте зачем. Оно и без слов понятно, что из готового можно стяпляпить что-то рабочее и эффективное, просто у меня наполеоновские планы К тому же если я хочу замену определённой последовательности символов на произвольную картинку, то всё равно придётся что-то похожее с нуля кодить. Ричтекст же не работает всё ещё?
Собственно, вопрос: как лучше всего ловить нажатия клавиш? Я знаю про кейкоды и геткейдаун/ап, но я спрашиваю про принцип за ними. Как эта система с переключением языков, шифтами и т.п. вообще работает? Допустим, я напишу класс, в который будет ловиться нажатие клавиши через геткеи и переводить её в нужный формат. Это же совсем пиздец?
Аноним 08/09/17 Птн 20:50:05 #1032 №442032 
>>442029
да
Аноним 08/09/17 Птн 20:57:53 #1033 №442033 
>>442032
А поподробнее можно? Нельзя мне куда-нибудь в коде прицепиться, чтобы уже преобразованный текст использовать?
Аноним 08/09/17 Птн 22:38:47 #1034 №442038 
daun.png
Хотел быстренько отредактировать модель в блендере, сохраняю в fbx, и вот такая хуета с анимациями. Раньше все работало без проблем. Пытался во все форматы сохранять - бесполезно. Блять, и смех и грех. Как пофиксить? Можно конечно взять другую модельку для прототипа, но что за хуйня-то?
Аноним 08/09/17 Птн 22:41:45 #1035 №442039 
>>442038
В голос в этого рептилоида, спасибо, анон.
Без обид.
Аноним 08/09/17 Птн 22:58:40 #1036 №442040 
daun.png
>>442038
Нашел сам как пофиксить, вдруг кому интересно.

>>442039
Оно еще и анимированное.
Аноним 08/09/17 Птн 22:58:54 #1037 №442041 
1.mp4
> Made with Unity
Аноним 09/09/17 Суб 11:16:49 #1038 №442066 
>>442041
дай мне!
Аноним 09/09/17 Суб 14:23:11 #1039 №442078 
Делать систему HP/Damage через EventManager - нормальная практика? Простой платформер с быстрым темпом игры
Аноним 09/09/17 Суб 14:25:06 #1040 №442080 
scrp.png
Анон, я все сломал
Сделал несколько панелей, написал скрипт. Закинул его в кнопку, там это. Я даже не сразу понял, в чем дело. Пошел проверил старые кнопки, а там такая хуйня. Теперь рядом с названием шестеренка, а не иконка с# и нет никаких функций. Что делать, как чинить?
Аноним 09/09/17 Суб 20:11:59 #1041 №442106 
Подскажите, как сделать поиск путя для вражины? 2D, вид сверху.
Аноним 09/09/17 Суб 20:18:39 #1042 №442107 
>>442106
рейкаст и путь идет к последней точке, где тебя видел/зарейкастил
Аноним 09/09/17 Суб 20:54:24 #1043 №442116 
Есть ли альтернативные физические движки, в которых все действующие на объект силы всегда доступны наружу, или они все как и дефолтный на черной магии работают и дают читать только конечный вектор?
Аноним 09/09/17 Суб 21:37:50 #1044 №442119 
>>442041
Чувак, как стать богом?
Аноним 09/09/17 Суб 21:40:53 #1045 №442121 
ПЕРЕКАТ
https://2ch.hk/gd/res/442120.html
https://2ch.hk/gd/res/442120.html
Аноним 12/09/17 Втр 20:00:39 #1046 №442657 
Аноны, хелп! Писал на юнити игру с февраля 2017, значит все собрал, все работает и решил я накинуть плагинов с рекламой и достижениями. Выбрал плагин от аподила и плагин от гугла с достижениями. И они вместе никак не хотят работать. Вылетает ошибка unable to convert java dex format. Проблема в том что в папке plugins слишком много плагинов и андроид не может собрать апк. Подскажите, может кто-то с таким сталкивался. Пытался собрать через градл, но там полетело еще больше ошибок. Хочется чтоб и ачивки были, и копеечка с релкамы.
Аноним 12/09/17 Втр 20:54:56 #1047 №442667 
>>442121
>>442657
Аноним 29/10/17 Вск 14:33:21 #1048 №453121 
так что это. как тут общаться можно? вопросы задают тут или только за стримерш дрочат?
вопрос: почему в unity отрабатывает ДЕАКТИВИРОВАННЫЙ В ИНСПЕКТОРЕ, но висящий на объекте скрипт?
Аноним 21/12/17 Чтв 03:30:30 #1049 №462223 
>>453121
Платиновые вопросы? Галочка вы инспекторе выключает только выполнение Srart, Update и прочего.
comments powered by Disqus

Отзывы и предложения