Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Общие вопросы

Общие вопросы вопросы не попадающие ни в один из доступных разделов

Ответ
 
Опции темы
Старый 31.01.2013, 18:36   #1231
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
Ответ: Вопросы от новичка

Сообщение от pax Посмотреть сообщение
притяжения куда? можно менять направление гравитации http://docs.unity3d.com/Documentatio...s-gravity.html
Блин.. В принципе то! Но не то, что мне нужно. Смотри. есть игрок и объект. Мне нужно, чтобы игрок смог бегать по объекту с любой стороны. Как в Assasin's Creed бегает по стенам
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 19:50   #1232
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Okay, не помню чтобы в асасине можно было бегать по стенам. Может просто лазить?
Кстати, на CharacterConroller Physics.gravity не действует. Изменять направление гравитации чарактеру будет очень сложно.
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 19:57   #1233
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
Ответ: Вопросы от новичка

Сообщение от WISHMASTER35 Посмотреть сообщение
Okay, не помню чтобы в асасине можно было бегать по стенам. Может просто лазить?
Кстати, на CharacterConroller Physics.gravity не действует. Изменять направление гравитации чарактеру будет очень сложно.
нет, нет, нет. В Ассасин можно было на стену забегать. Он по стене раза 3-4 ногами проходил. мне нужен примерно этот тип.
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 20:08   #1234
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Okay, помню бегать по стенам была фишка Принца Персии.
Тут тебе надо переделывать CharacterMotor. Черт знает как такое сделать. Наверно на секунду просто отключить или ослабить гравитацию.
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 20:28   #1235
mauNgerS
Разработчик
 
Аватар для mauNgerS
 
Регистрация: 10.10.2008
Сообщений: 501
Написано 258 полезных сообщений
(для 670 пользователей)
Ответ: Вопросы от новичка

Ещё вопрос про цели и пули.

Если нельзя быстро перебирать типы объектов, то как сделать самонаводящиеся ракеты например?

Допустим у ракеты есть определённый радиус захвата цели. Когда в этот радиус попадает какой-нибудь противник ракета сама наводится на него.

Выстрелил ракет штук 10 в разные стороны. Каждая ракета по ходу полёта нашла себе цель.
__________________
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 21:13   #1236
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

На ракету можно повесить большой колайдер в режиме триггера и RigidBody в режиме IsKinematic. Ловить ракетой событие http://docs.unity3d.com/Documentatio...ggerEnter.html
Как поймало Box (на нем должен быть колайдер) - можно удалить с себя триггер и лететь в сторону пойманного бокса.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mauNgerS (31.01.2013)
Старый 31.01.2013, 21:23   #1237
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Я бы в каком-то скрипте GameController хранил список игроков. А пушка в этом списке искала себе подходящую цель.
Впрочем зависит от типа игры и от степени оптимизации.
Не думаю что в шутере типа Crysis хорошо было бы хранить всех врагов огромного уровня в одном списке.
Хотя с другой стороны, если арена с парой игроков, то вряд ли триггер будет тормозить.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
mauNgerS (31.01.2013)
Старый 31.01.2013, 21:57   #1238
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Чем лучше пользоваться для сохранения\загрузки xml?
Попробовал XmlDocumen. Но как только увидел такое
XmlNode childNode = document.CreateElement("BlockSet");
document.AppendChild(childNode);
засомневался стоит ли использовать этот класс. Как-то не хорошо вручную добавлять чальды.

Получаю результат через document.OuterXml, но все элементы в одну строчку.
(Offline)
 
Ответить с цитированием
Старый 31.01.2013, 23:24   #1239
mepihin
ПроЭктировщик
 
Регистрация: 31.12.2012
Сообщений: 165
Написано 5 полезных сообщений
(для 7 пользователей)
Ответ: Вопросы от новичка

Сообщение от WISHMASTER35 Посмотреть сообщение
Чем лучше пользоваться для сохранения\загрузки xml?
Попробовал XmlDocumen. Но как только увидел такое
XmlNode childNode = document.CreateElement("BlockSet");
document.AppendChild(childNode);
засомневался стоит ли использовать этот класс. Как-то не хорошо вручную добавлять чальды.

Получаю результат через document.OuterXml, но все элементы в одну строчку.
Как насчет PlayerPrefs - реестр
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 00:12   #1240
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

mepihin, причем тут PlayerPrefs и реестр?
Кстати, сохранить с переносами можно так
        StringWriter stringWriter = new StringWriter(new StringBuilder());
        XmlTextWriter xmlTextWriter = new XmlTextWriter(stringWriter);
	xmlTextWriter.Formatting = Formatting.Indented;
        document.Save( xmlTextWriter );
        return stringWriter.ToString();
Не пойму какой смысл создавать нод таким образом document.CreateElement("BlockSet")
Если все равно его вручную нужно добавлять в иерархию.
А по другому XmlNode не создашь.
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 01:50   #1241
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Пытаюсь сделать универсальный метод для сохранения объекта в XML т.е. что-то типа своей сериализации.
Пишу такое
	private static XmlNode FieldToXml(FieldInfo field, object obj, XmlDocument document) {
		XmlNode node = document.CreateElement( field.Name );
		FieldInfo[] fields = obj.GetType().GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
		foreach(FieldInfo childField in fields) {
			XmlNode childNode = FieldToXml(childField, childField.GetValue(obj), document);
			if(childNode != null) node.AppendChild(childNode);
		}
		return node;
	}
Но этот метод зависает т.к. GetFields все время получает элемент m_value.
Как можно правильно такое сделать? Еще и это "m_" дописывает к именам переменных.
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 01:59   #1242
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

убери BindingFlags.NonPublic, зачем тебе приватные переменные, которые не надо сериализовать?
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 02:05   #1243
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Я обычно переменные делаю приватными и помечаю их атрибутом SerializeField.
Хотя действительно просто приватные не надо сохранять.
Добавил такую проверку
Attribute.IsDefined(field, typeof(SerializeField))
Теперь нормально.

Черт! Нормальный универсальный метод для сохранения всех типов не сделаешь!
Например Rect. x, y, width, height это не поля, а свойства. Если сохранять и свойства, то захватится и всякая фигня вроде center.
(Offline)
 
Ответить с цитированием
Старый 01.02.2013, 21:08   #1244
is.SarCasm
Бывалый
 
Аватар для is.SarCasm
 
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений
(для 428 пользователей)
Ответ: Вопросы от новичка

Как замедлить одну определенную анимацию в Mecanim?
(Offline)
 
Ответить с цитированием
Старый 02.02.2013, 00:38   #1245
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

pax, не подскажешь еще как достать свойства?
Использую такие флаги BindingFlags.Public|BindingFlags.Instance но как в прошлый раз бесконечная рекурсия.
Там похоже постоянно какой-то System.Single получается.

is.SarCasm, а в Mecanim используется тот же CharacterController? Писали, что там обычный коллайдер и RigidBody.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 15:03.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com