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

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

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

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

Ответ
 
Опции темы
Старый 15.02.2013, 19:18   #1351
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

pax, не плохое там количество заготовленных делегатов)) Action(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16)
А делегаты нельзя перечислять как params?
(Offline)
 
Ответить с цитированием
Старый 15.02.2013, 21:09   #1352
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Ну собственно params Action[] methods должно работать как и подразумевается
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 15.02.2013, 21:35   #1353
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

pax, я перепутал. Я хотел написать дженерики. Т.е. Action(params T[] values). Но видно нельзя, если сделали столько перегрузок.
(Offline)
 
Ответить с цитированием
Старый 15.02.2013, 21:43   #1354
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

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

Хочу сделать вращение объекта мышкой как в Blender.
Для этого нужно из координат мышки вычислить рычаг за который будем крутить объект.
А чтобы вычислить этот рычаг нужно спроецировать курсор на сферу.
Есть идеи как это правильно сделать?

Сейчас так написал, но по-моему это не совсем правильно.
float tx = (Input.mousePosition.x-Screen.width/2)/Screen.width * 2;
float ty = (Input.mousePosition.y-Screen.height/2)/Screen.height * 2;
tx = Mathf.Clamp(tx, -1, 1);
ty = Mathf.Clamp(ty, -1, 1);
				
dir = new Vector3(tx, ty, 0);
dir.z = -Mathf.Clamp01(1-dir.magnitude);
dir.Normalize();
Т.е. если точка в самом правом углу дисплея, то рычаг будет справа на сфере. Рисунок немного неверный, нужно было обрезать синюю линию.
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 2305
Размер:	19.8 Кб
ID:	18786  
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 11:04   #1356
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Попробуй посмотреть вот этот пример http://wiki.unity3d.com/index.php?title=ArcBall
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 18:07   #1357
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
Ответ: Вопросы от новичка

Ну в таких случаях я ставлю в коде Debug.Log(1) ... Debug.Log(N) и смотрю на какой строке проблема в логе (проблема будет после последней выведенной цифры в лог). Но у меня такого практически не бывает.
pax, не совсем понял. Напиши пример пожалуйста
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 18:14   #1358
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Строка кода 1;
Debug.Log(1);
Строка кода 2;
Debug.Log(2);
Строка кода 3;
Debug.Log(3);
Строка кода 4;
Debug.Log(4);
Строка кода 5;
Debug.Log(5); 
Если последнее в логе перед ошибкой цифра 3, то ошибка на строке "Строка кода 4;"
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 18:38   #1359
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
Ответ: Вопросы от новичка

мда
лог:
1
2
10
23
54
1
2
10
54
И так далее.
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 19:03   #1360
den
Дэвелопер
 
Аватар для den
 
Регистрация: 13.02.2010
Сообщений: 1,645
Написано 620 полезных сообщений
(для 2,419 пользователей)
Ответ: Вопросы от новичка

Ну в таких случаях я ставлю в коде Debug.Log(1) ... Debug.Log(N)...
а пошагового выполнения в юнити нет?
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 21:17   #1361
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Сообщение от Okay Посмотреть сообщение
мда
лог:

И так далее.
Так ошибка после какой цифры то?


Сообщение от Den Посмотреть сообщение
а пошагового выполнения в юнити нет?
В билде нет.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Старый 16.02.2013, 23:46   #1362
WISHMASTER35
Бывалый
 
Аватар для WISHMASTER35
 
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений
(для 357 пользователей)
Ответ: Вопросы от новичка

Сообщение от pax Посмотреть сообщение
Попробуй посмотреть вот этот пример http://wiki.unity3d.com/index.php?title=ArcBall
Что-то не понял как тот пример работает, но мой код работает хорошо.
public class Trackball : MonoBehaviour {
	void Update () {
		if(Input.GetMouseButton(1)) {
			float screenSize = Mathf.Max(Screen.width, Screen.height);
			float tx = (Input.mousePosition.x-Screen.width/2)/screenSize * 2;
			float ty = (Input.mousePosition.y-Screen.height/2)/screenSize * 2;
			
			tx = Mathf.Clamp(tx, -1, 1);
			ty = Mathf.Clamp(ty, -1, 1);
			
			
			Vector3 lever = new Vector3(tx, ty, 0);
			lever.z = -Mathf.Clamp01(1-lever.magnitude);
			lever.Normalize();
			
			Vector3 delta = new Vector3(Input.GetAxis("Mouse X"), Input.GetAxis("Mouse Y"));
			
			Vector3 axis = Vector3.Cross(lever, delta);
			axis = Camera.mainCamera.transform.TransformDirection(axis);
			transform.Rotate(axis, delta.magnitude*5, Space.World);
			
			Debug.DrawLine(transform.position, transform.position+lever, Color.green);
		}
	}
}
(Offline)
 
Ответить с цитированием
Старый 17.02.2013, 00:26   #1363
is.SarCasm
Бывалый
 
Аватар для is.SarCasm
 
Регистрация: 17.05.2009
Адрес: Днепропетровск
Сообщений: 672
Написано 180 полезных сообщений
(для 428 пользователей)
Ответ: Вопросы от новичка

1. Как в Photon'е добавить свойство к комнате? Например мне нужно уровень(сцену) этой команты.
2. Как использовать Photon Cloud?
(Offline)
 
Ответить с цитированием
Старый 17.02.2013, 00:41   #1364
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
Ответ: Вопросы от новичка

Так ошибка после какой цифры то?
pax, в дебаг выводит только вот эти 5 цифр. Причем 23 - через раз выводится. Походу только 5 функций из 54 - правильны.
(Offline)
 
Ответить с цитированием
Старый 17.02.2013, 01:56   #1365
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Вопросы от новичка

Сообщение от is.SarCasm Посмотреть сообщение
1. Как в Photon'е добавить свойство к комнате? Например мне нужно уровень(сцену) этой команты.
2. Как использовать Photon Cloud?
1. PhotonNetwork.CreateRoom принимает i'i таблицу параметров комнаты и массив имен открытых параметров.
2. Скачать с ассет стора Photon Unity Networking. Посмотреть пример с сантехником.

Сообщение от Okay Посмотреть сообщение
pax, в дебаг выводит только вот эти 5 цифр. Причем 23 - через раз выводится. Походу только 5 функций из 54 - правильны.
Если не выводит в лог ошибок, значит их нет.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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


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


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