|
Общие вопросы вопросы не попадающие ни в один из доступных разделов |
27.08.2013, 01:28
|
#1801
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
seaman, я не хочу его реализовывать. Мне просто нужен энумератор, который типа будет пробегать по 3д массиву. Надоело все время писать кучу вложенных циклов.
|
(Offline)
|
|
27.08.2013, 09:42
|
#1802
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
Сообщение от WISHMASTER35
seaman, я не хочу его реализовывать. Мне просто нужен энумератор, который типа будет пробегать по 3д массиву. Надоело все время писать кучу вложенных циклов.
|
Немного не понял как анонимный класс поможет сделать перебор многомерного массива. В C# есть анонимные классы без методов, они используются как промежуточные структуры данных.
var pax = new {name = "PAX", age = 30}; print(pax.name);
Имхо тебе просто надо написать метод расширения для IEnumerable
http://stackoverflow.com/questions/2...t-ienumerablet
один из ответов:
public static class ArrayExtensions { public static IEnumerable<T> ToEnumerable<T>(this Array target) { foreach (var item in target) yield return (T)item; } }
|
(Offline)
|
|
27.08.2013, 17:37
|
#1803
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
pax, в java можно было создавать анонимные классы с методами.
Например:
var obj = new ArrayExtensions() {
public override void F() {...}
}
Можно было создать такое в самом методе, чтобы оно больше нигде не мешалось. Это было бы удобно.
|
(Offline)
|
|
27.08.2013, 18:15
|
#1804
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
Трудно написать один раз, зато не трудно в каждом методе писать анонимные классы с вложенными методами? Я чет запутался.
|
(Offline)
|
|
27.08.2013, 20:36
|
#1805
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
pax, зачем его в каждом методе писать? Это можно в одном методе написать, который будет возвращать объект анонимного класса.
И таких методов я хотел несколько, которые будят немного отличатся в реализации. Ну да черт с ним.
|
(Offline)
|
|
30.08.2013, 01:11
|
#1806
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Вопросы от новичка
Бесплатная юнити поддерживает только sm 2.0?
|
(Offline)
|
|
30.08.2013, 08:56
|
#1807
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
Сообщение от dsd
Бесплатная юнити поддерживает только sm 2.0?
|
Все поддерживает.
#pragma target 3.0 - по моему так
Последний раз редактировалось pax, 30.08.2013 в 11:33.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
01.09.2013, 00:25
|
#1808
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
Как определить объекты, которые мешают обзору главного объекта?
Т.е. камера кружится вокруг объекта и могут попадаться между камерой и объектом другие объекты, которые мешают обзору.
|
(Offline)
|
|
01.09.2013, 02:18
|
#1809
|
Знающий
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений (для 180 пользователей)
|
Ответ: Вопросы от новичка
Пустить луч
|
(Offline)
|
|
01.09.2013, 13:13
|
#1810
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
seaman, и сколько лучей мне пускать?
Как найти область которую объект занимает на экране?
Уж лучше искать пересечение этих областей.
|
(Offline)
|
|
01.09.2013, 13:55
|
#1811
|
Unity/C# кодер
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений (для 5,323 пользователей)
|
Ответ: Вопросы от новичка
пускай не луч, а сферу в сторону от игрока до камеры.
http://docs.unity3d.com/Documentatio...phereCast.html
|
(Offline)
|
|
02.09.2013, 01:21
|
#1812
|
Знающий
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений (для 180 пользователей)
|
Ответ: Вопросы от новичка
и сколько лучей мне пускать
|
5
Прекрасно давным-давно работает оклюжн камеры на этом:
УРОК
|
(Offline)
|
|
02.09.2013, 02:21
|
#1813
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
seaman, ну в камере у меня тоже так коллизия работает.
Но чтобы определить перекрывает ли собой один объект, другой объект, лучше проверять 2д bounds.
Только не пойму как найти 2д описывающий квадрат.
Точнее не пойму как спроэцировать точку на экран в систему координа т GUI.
Vector3 min = bounds.min;
Vector3 max = bounds.max;
Vector3[] pts = new Vector3[] {
new Vector3(min.x, max.y, min.z),
new Vector3(min.x, max.y, max.z),
new Vector3(max.x, max.y, min.z),
new Vector3(max.x, max.y, max.z),
new Vector3(min.x, min.y, min.z),
new Vector3(min.x, min.y, max.z),
new Vector3(max.x, min.y, min.z),
new Vector3(max.x, min.y, max.z),
};
foreach(Vector3 v in pts) {
Vector2 v2d = Camera.main.WorldToScreenPoint(v);
v2d = GUIUtility.ScreenToGUIPoint(v2d);
GUI.Box( new Rect(v2d.x, v2d.y, 10, 10), GUIContent.none );
}
В результате боксы рисуются не на своих местах, а буд-то ScreenToGUIPoint не работает.
|
(Offline)
|
|
02.09.2013, 02:36
|
#1814
|
Знающий
Регистрация: 08.01.2013
Адрес: Самара
Сообщений: 284
Написано 104 полезных сообщений (для 180 пользователей)
|
Ответ: Вопросы от новичка
чтобы определить перекрывает ли собой один объект, другой объект
|
Но вопрос по перекрытию одного объекта другим не решаем без камеры. Т.е. нужно точка зрения - откуда смотришь. Отсюда - перекрывают, с другой точки зрения - нет. А если говорить о камере - никаких Bounds не надо. Все решается как написано по ссылке выше.
Или Вы хотите сделать свой собственный Occlusion Culling?
|
(Offline)
|
|
02.09.2013, 19:54
|
#1815
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: Вопросы от новичка
Сообщение от seaman
Но вопрос по перекрытию одного объекта другим не решаем без камеры. Т.е. нужно точка зрения - откуда смотришь. Отсюда - перекрывают, с другой точки зрения - нет. А если говорить о камере - никаких Bounds не надо. Все решается как написано по ссылке выше.
Или Вы хотите сделать свой собственный Occlusion Culling?
|
Да я же с помощью камеры проецирую вершины на экран.
Да и не OcclusionCulling я делаю. Мне просто надо делать прозрачными объекты, которые закрывают главный объект - цель.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:39.
|