Результаты поиска
| |
MANMANA | Дата: Среда, 15 Апреля 2015, 15:21 | Сообщение # 361 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| не, не, не... кто учится, я или Вы?:)
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Вторник, 14 Апреля 2015, 21:04 | Сообщение # 362 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| как-то все это мудрено. по-хорошему разбираться в коде нужно...
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Вторник, 14 Апреля 2015, 19:28 | Сообщение # 363 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| Цитата Pe4enka (  ) Еще вопрос... Как удалить с инвентаря допустим оружие, но чтобы оно выкинулось вперед и можно было снова подобрать ? Почему то не могу сделать ( нуу, батенька, не первый день на форуме же... как я могу ванговать? A. Как он у вас запихувается в инвентарь? у вас есть ГО (инстанс префаба на сцене) (i) из пула объектов? (ii) инстанциируется каждый раз из префаба, например, в момент гибели врага, открытия сундука и т.д.? (iii) как-то еще, например, сложена куча объектов в координатах (100000, 100000, 100000), а вы перетаскиваете их в место, где они должны появиться при той же гибели врага
B. когда вы подходите к объекту и нажимаете кнопку, соответствующую "Хапнуть шмот", то (i) ГО возвращается в пул объектов (ii) ГО удаляется через Delete(ГО); (iii) ГО перемещается в дефолтные координаты (100000, 100000, 100000) и добавляете запись в List/Array
Вы можете создать для пула объектов (i), для префабов (ii) для объектов в координатах (iii) их описание, например, БД с ними и их характеристиками, и при необходимости выкладывания ГО брать ID ГО и выполнять действия в п. A, причем касательно ВЫБРОСА ГО следует ГО назначить координаты игрока (или рядом с ним в случае использования физики, чтобы ГО не застрял в игроке, или коллайдер игрока не отбросил коллайдер ГО вместе с его коллайдером :)) с соответствующей позицией по Y, которая может быть взята из координаты Y персонажа (все зависит от того, где находится pivot point меша игрока), или м.б. использован RayCast вертикально вниз, чтобы определить точку пересечения с террейном. И.... назначить ГО вычисленные координаты. Можете задать ГО импульс вперед. Перед - есть вектор forward персонажа. минус forward сделает из игрока серебряное копытце, ну... или подходит для выброса кирпичей очень испуганным персонажем...
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Вторник, 14 Апреля 2015, 19:41 |
|
| |
MANMANA | Дата: Вторник, 14 Апреля 2015, 16:38 | Сообщение # 364 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| ага... там объявлено пространство имен Код namespace UnitySampleAssets.Characters.FirstPerson{... . ну, хотите использовать это пространство имен, то используйте по аналогии с using UnityEngine; using System.Collections;
в своем скрипте удалите нафик Код namespace UnitySampleAssets.Characters.FirstPerson{... (закрывающую скобочку удалить тоже не забудьте) и поставьте после using System.Collections;
вот так: using UnitySampleAssets.Characters.FirstPerson;
и тогда Вы сможете достучаться до любой функции скрипта FirstPerson
Метод попроще: просто писать Код UnitySampleAssets.Characters.FirstPerson.__названиефункции____ каждый раз при обращении к той или иной функции
например, UnitySampleAssets.Characters.FirstPerson.m_FovKick();
и тогда мне непонятно, зачем Вам потребовалась вот это Код GetComponent<FirstPerson>().enabled=true;// Не могу обратиться вот в этой строчке это какой-то Ваш скрипт?Добавлено (14 апреля 2015, 16:38) --------------------------------------------- или Вы вот это прочитали?
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Вторник, 14 Апреля 2015, 14:00 | Сообщение # 365 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| Цитата Pe4enka (  ) MANMANA, Я сам пока не понимаю зачем это,но судя из гугла и Англоязычных форумов это есть решение, по сути я хочу получить доступ к скрипту First Person Controller(который ввели в Unity 5 ), но в public его нет, да и других способов чтобы его откопать я не знаю ( кинь скрин, пожалуйста, с новым контроллером на C# (где он находится, как выглядят первые стройки кода). а то я тебе писал на предыдущей странице, но я так и не понял, к чему ты хочешь достучаться... раз тебе не подошел код, который я предлагал.
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 23:07 | Сообщение # 366 | Тема: Ограничение поворота обьекта |
почти ветеран
Сейчас нет на сайте
| Цитата Artemoid (  ) Как сделать так, чтобы она была не конкретно этого значения? все в коде и даже с комментариями Цитата Artemoid (  ) float yLimit = 20.0f;//максимум/минимум верх-низ можно эту строку заменить на Код float yLimitUp = 40.0f; float yLimitDown = 20.0f; а вот эту строку Код rot.x = Mathf.Clamp(rot.x + h, -yLimit, yLimit);//записываем в переменную rot (а точне в ее х-часть) значение, ограниченное минимум и максимумом на Код rot.x = Mathf.Clamp(rot.x + h, -yLimitDown, yLimitUp);//записываем в переменную rot (а точне в ее х-часть) значение, ограниченное минимум и максимумом
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Понедельник, 13 Апреля 2015, 23:09 |
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 22:32 | Сообщение # 367 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| Цитата Pe4enka (  ) MANMANA, Что-то не помогает ( Стоп, а чей-то вы хотите этим сделать¿ namespace UnitySampleAssets.Characters.FirstPerson Вы создаете пространство имен с таким именем? Страаанное название. А если назвать namespac firstPers http://docs.unity3d.com/ru/current/Manual/Namespaces.html Или ты собираешься использовать это пространство?Добавлено (13 апреля 2015, 22:32) --------------------------------------------- Это UnitySampleAssets.Characters. зачем? По аналогии с using System.Collection? Обратите внимание на первый пример из https://msdn.microsoft.com/ru-ru/library/z2kcy19k.aspx
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 21:46 | Сообщение # 368 | Тема: Ограничение поворота обьекта |
почти ветеран
Сейчас нет на сайте
| Цитата Artemoid (  ) Интересно) но обьект так и ломится смотреть вперёд(зависит от другого обьекта который крутится) и как исправить? Я так и не могу понять почему он так делает..почему же? может, нужно смотреть и читать уроки? скрипт рабочий, я у себя тестил на камере. а вот что там у Вас еще от чего зависит я не знаю.
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 20:08 | Сообщение # 369 | Тема: Ограничение поворота обьекта |
почти ветеран
Сейчас нет на сайте
| Код using UnityEngine; using System.Collections;
public class CamMove : MonoBehaviour {
float verticalSpeed = 2.0F; Vector3 rot;//объявляем переменную для хранения текущей ориентации ГО в углах Эйлера float yLimit = 20.0f;//максимум/минимум верх-низ
//[url=http://docs.unity3d.com/ScriptReference/Mathf.Clamp.html]Mathf.Clamp[/url] функция, ограничивающая значение переменной максимумом и минимумом void Start() { rot = transform.eulerAngles;//сохраняем в rot текущую ориентацию (угол наклона) камеры в углах Эйлера } void Update () { float h = - verticalSpeed * Input.GetAxis("Mouse Y");//записываем в переменную изменение угла наклона камеры в зависимости от положения мыши по оси Y rot.x = Mathf.Clamp(rot.x + h, -yLimit, yLimit);//записываем в переменную rot (а точне в ее х-часть) значение, ограниченное минимум и максимумом transform.eulerAngles = rot;//устанавливаем новую ориентацию ГО в углах Эйлера
} }
transform.eulerAngles Mathf.Clamp функция, ограничивающая значение переменной максимумом и минимумом
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Понедельник, 13 Апреля 2015, 20:08 |
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 17:22 | Сообщение # 370 | Тема: Движение объектов по орбитам |
почти ветеран
Сейчас нет на сайте
| Цитата HPlusDiese (  ) 1) А как мне рассчитать расстояние учитывая правильные пропорции? Как мне...
mercury.transform.position = new Vector3 (5.79f,1.0f,0.0f);//стартовая позиция Меркурия и т.д. (расстояние от Солнца *10 млн км)
5.79*10 = 57,9 млн км до солнца. открой интернет и проверь эту цифру для Меркурия. Для остальных также. Это все есть в комментариях к коду. 5.79 - это в единицах Юнити. По-умолчанию 1 Unity-единица равна 1 метру.
Цитата DebieCooper (  ) 2) Можно подробней про то как работают эти методы? transform.RotateAround transform.Rotate transform.position void Start () void Update()
Цитата HPlusDiese (  ) 3) А можно как-нибудь сделать так, чтобы я менять скорость "игры" и все объекты подчинялись. Например, по дефолту я сделал так что все объекты имеют такое же время обращения вокруг солнца.Год, для земли например. А потом меняя одно значение я ускоряю этот период. перед стартом public float coeffSpeed;
в Start coeffSpeed = 100.0f;//теперь можно в инспекторе менять скорость вращения планет, но только перед нажатием кнопки play periodMercury = coeffSpeed * 87.969f/baseMercuryPeriod; periodVenus = coeffSpeed * 224.7f/baseMercuryPeriod; periodEarth = coeffSpeed * 365.26f/baseMercuryPeriod;
если хочется менять скорость по ходу работы приложения, поставь эти четыре строки сразу после Update(){ или просто скопируй
Цитата DebieCooper (  ) 4) Как мне регулировать скорость вращения вокруг своей оси?) mercury.transform.Rotate (Vector3.up * coeff * Time.deltaTime);//вращаем Марс вокруг собственной оси т.е. даже комментарии в коде читать не хотим Цитата MANMANA (  ) private float coeff = 50.0f;//период обращения планет вокруг собственных осей. здесь - один для всех. можно поставить разный назови это скоростью вращения вокруг собственной оси
Цитата DebieCooper (  ) 5) Как мне настроить, чтобы меркурий реально вращался вокруг солнца со скоростью: 1 оборот за 88 дней?) хрена се ты долгожитель... приходи через 2,5 месяца, скажешь - правильно работает или нет... все планеты вращаются с условными периодами обращения, взятыми из энциклопии (можешь проверить): Цитата MANMANA (  ) periodMercury = 87.969f/baseMercuryPeriod;//=1 periodVenus = 224.7f/baseMercuryPeriod; periodEarth = 365.26f/baseMercuryPeriod; в секунды переведи все это сам уж... если хочешь сделать шкалу времени 1:1, то почитай про Time.deltaTime, тогда тебе станет понятна запись Цитата DebieCooper (  ) mercury.transform.RotateAround(Vector3.zero, Vector3.up, 10 * periodMercury *Time.deltaTime);//вращаем Меркурий вокруг Солнца 10*-ку я поставил, чтобы не ждать пару минут, когда планеты обернутся хотя бы раз вокруг солнца
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Понедельник, 13 Апреля 2015, 17:24 |
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 16:50 | Сообщение # 371 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| здесь ты объявил FirstPerson пространством имен Цитата Pe4enka (  ) namespace UnitySampleAssets.Characters.FirstPerson{ а здесь ты уже обращаешься к компоненту, но откуда же Юньке знать, что ты имеешь ввиду компонент, а не пространство имен?
Цитата Pe4enka (  ) GetComponent<FirstPerson>().enabled=true;// Не могу обратиться вот в этой строчке
Переназови UnitySampleAssets.Characters.FirstPerson как UnitySampleAssets.Characters.FirstPersonAss , например. или UnitySampleAssets.Characters.FirstPersonAsset
Вот подобная ошибка http://answers.unity3d.com/questions/240864/cs0118-error.html
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 11:03 | Сообщение # 372 | Тема: Пещеры и модели [Решено] |
почти ветеран
Сейчас нет на сайте
| Это как из анекдота... а зачем тогда <strike>пукать</strike>... Блендер? Ставь в Юньке материал на модель и она примет таки цвет модели. Ах, да, я знаю, заечм Блендер нужен: чтобы мутьтитекстуры... я на турбосквиде, например, встретил вот такой сборник моделей http://www.turbosquid.com/FullPreview/Index.cfm/ID/203851 без разверток (за все не скажу, но один барак точно состоит из 7 материалов, а дальше я и смотреть не стал)...
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 02:46 | Сообщение # 373 | Тема: Движение объектов по орбитам |
почти ветеран
Сейчас нет на сайте
| Цитата DebieCooper (  ) П.С. Только картинка не отображается ваша) крикните, у кого еще не отображается, а то у меня все отображается
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 02:46 | Сообщение # 374 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| Цитата Pe4enka (  ) , эта ошибка все испортила, она появляется когда в инвентарь ложиться более 1-ой вещи в момент открытия инвентаря... Как решать я не знаю, поэтому пришел за помощью в очередной раз.) а если вместо
Код GUILayout.EndVertical(); } GUILayout.EndScrollView(); } GUILayout.EndArea(); вот так Код GUILayout.EndVertical(); } } GUILayout.EndScrollView(); GUILayout.EndArea(); т.е. вынести GUILayout.EndScrollView(); за цикл for Вроде бы, со скобками я не напутал
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Понедельник, 13 Апреля 2015, 02:18 | Сообщение # 375 | Тема: Движение объектов по орбитам |
почти ветеран
Сейчас нет на сайте
| если орбита устроит не эллиптическая, а в форме окружности, то
создаешь на сцене сферы по размеру планет создаешь на сцене сферу - солнце, на него вешаешь скрипт создаешь сферу поменьше для Луны и делаешь ее дочерней к Земле (перетаскиваешь в инспекторе Луну на Землю)
Код using UnityEngine; using System.Collections;
public class PlanetsScript : MonoBehaviour { //переменные, в которые необходимо перетащить в инспекторе созданные на сцене объекты (сферы, к примеру). создавать объекты можно в любой точке сцены public GameObject mercury; public GameObject venus; public GameObject earth; public GameObject moon; //public GameObject mars; //public GameObject jupiter; //public GameObject saturn; //public GameObject uranus; //public GameObject neptune; //public GameObject pluto; private float baseMercuryPeriod = 87.969f;//период обращения Меркурия вокруг Солнца //Переменные обращения каждой из планет вокруг Солнца в относительных единицах (по отношению к периоду обращения Меркурия вокруг Солнца) private float periodMercury; private float periodVenus; private float periodEarth; private float coeff = 50.0f;//период обращения планет вокруг собственных осей. здесь - один для всех. можно поставить разный
void Start () { periodMercury = 87.969f/baseMercuryPeriod;//=1 periodVenus = 224.7f/baseMercuryPeriod; periodEarth = 365.26f/baseMercuryPeriod; transform.position = new Vector3 (0.0f,1.0f,0.0f);//стартовая позиция Солнца mercury.transform.position = new Vector3 (5.79f,1.0f,0.0f);//стартовая позиция Меркурия и т.д. (расстояние от Солнца *10 млн км) venus.transform.position = new Vector3 (10.82f,1.0f,0.0f); earth.transform.position = new Vector3 (14.96f,1.0f,0.0f); moon.transform.position = new Vector3 (16.0f,1.0f,0.0f); } void Update () { transform.RotateAround(Vector3.zero, Vector3.up, 10 * Time.deltaTime);//вращаем Солнышко вокруг собственной оси (нужно ли?). Если нужно, то можно заменить эту строку на transform.Rotate (Vector3.up); mercury.transform.RotateAround(Vector3.zero, Vector3.up, 10 * periodMercury *Time.deltaTime);//вращаем Меркурий вокруг Солнца mercury.transform.Rotate (Vector3.up * coeff * Time.deltaTime);//вращаем Марс вокруг собственной оси venus.transform.RotateAround(Vector3.zero, Vector3.up, 10 * periodVenus * Time.deltaTime);//вращаем Венеру вокруг Солнца venus.transform.Rotate (Vector3.up * coeff * Time.deltaTime);//вращаем Венеру вокруг собственной оси earth.transform.RotateAround(Vector3.zero, Vector3.up, 10 * periodEarth * Time.deltaTime);//вращаем Землю вокруг Солнца earth.transform.Rotate (Vector3.up * coeff * Time.deltaTime);//вращаем Землю вокруг собственной оси moon.transform.RotateAround(earth.transform.position, Vector3.up, 10 * periodEarth * Time.deltaTime);//вращаем Луну вокруг Земли } }
В инспекторе перетаскиваешь созданные планеты сферы в соответствующие слоты скрипта. Вуаля. тот маленький звезденыш около земли - это Луна.
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Понедельник, 13 Апреля 2015, 02:20 |
|
| |
MANMANA | Дата: Воскресенье, 12 Апреля 2015, 23:28 | Сообщение # 376 | Тема: Движение объектов по орбитам |
почти ветеран
Сейчас нет на сайте
| первый скрипт от Scribe рисует красивую траекторию через LineRenderer http://answers.unity3d.com/questio....it.html, причем есть настройки траектории
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Воскресенье, 12 Апреля 2015, 23:29 |
|
| |
MANMANA | Дата: Воскресенье, 12 Апреля 2015, 18:05 | Сообщение # 377 | Тема: Наложение несколько текстур на объект |
почти ветеран
Сейчас нет на сайте
| прожектор, декали, шейдер, в который загружаются две текстуры (вторая - ваши трещины с прозрачным фоном) либо смешивание текстур на хабре
http://answers.unity3d.com/questio....sh.html http://stackoverflow.com/questio....unity3d
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Воскресенье, 12 Апреля 2015, 13:00 | Сообщение # 378 | Тема: Не работают скрипты, ВСЕ! |
почти ветеран
Сейчас нет на сайте
| Вам же говорили начинать с обучалок Вот ссылки на статьи участников форума:
http://gcup.ru/publ....1-0-374 http://gcup.ru/publ....1-0-376 http://gcup.ru/publ....1-0-487 http://gcup.ru/publ....1-0-489 http://gcup.ru/publ....1-0-493
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
|
|
| |
MANMANA | Дата: Воскресенье, 12 Апреля 2015, 09:15 | Сообщение # 379 | Тема: Пещеры и модели [Решено] |
почти ветеран
Сейчас нет на сайте
| Цитата Spaceship (  ) Здравствуйте! Меня давно мучает вопрос~ как делать пещеры, и с помощью ли ассета можно делать их? И можно ли в юнити поставить модель и затекстурить ее уже в движке, а не в Blender. можно. можно с помощью ассетов TexturePaint; можно с помощью самописного кода для редактора, например, реализовав вот такое Смешивание текстур ландшафта, но для меша, или использовав уже готовый ассет, написанный для террейна авторами упомянутой статьи.
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Воскресенье, 12 Апреля 2015, 09:15 |
|
| |
MANMANA | Дата: Пятница, 10 Апреля 2015, 18:06 | Сообщение # 380 | Тема: Вопрос-[ответ] по Unity |
почти ветеран
Сейчас нет на сайте
| Цитата Pe4enka (  ) NEBR, Не должно, но оно есть...
Вызываемая функция RemoveItem у вас не удаляет элемент массива, а лишь делает его значение равным null. Если вы хотите удалить элемент массива, то вот здесь Код public void RemoveItem(Item item){ for(int i=0; i < Items.Count; i++){ if(Items[i]==item){ Items[i]=null; } } } вместо Items[i]=null; вам стоит использовать Items.RemoveAt(i); (у вас же есть вызов этой функции листа в вашей функции "public void Remove(Item item)", правда ваша функция нигде не вызывается в листинге вашего файла)
Приравнивать Items[i]=null; - дохлый номер, поскольку для T (Объекта коллекции List<T>) для ссылочных типов допускается значение null, т.е. не является способом удаления элемента листа.
Цитата Pe4enka (  ) Особенно заметно когда в инвент добавляется новая вещь, она идет не в эту пустую клетку, а в следующую. Т.е, первая клетка пустая, затем клетка не пустая... List<T>.Add - метод, добавляющий объект в конец коллекции List<T>.Добавлено (10 апреля 2015, 18:06) --------------------------------------------- p.s. бойтесь одинаковых значений, передаваемых в и обрабатываемых вашей функцией RemoveItem, поскольку при таком вашем подходе
Код public void RemoveItem(Item item){ for(int i=0; i < Items.Count; i++){ if(Items[i]==item){ Items[i]=null; } } }
если в List'е содержится несколько элементов с одинаковыми значениями, например, "молоток элитный 80lvl rangers only", то обнулятся все эти молотки. и использование приведенного выше Items.RemoveAt(i); (для удаления, а не обнуления) еще и удалит элементы листа с одинаковыми значениями.
http://www.3dbuffer.com/ Текстуры, Unity3D, Blender: Эффекты, скрипты, моделирование, текстурирование, скульптинг VKонтакте 3Dbuffer
Последнее:
Новый раздел "Текстуры"
Как запатентовать, защитить техническое решение, игру, идею
Сообщение отредактировал MANMANA - Пятница, 10 Апреля 2015, 17:59 |
|
| |
|