Я не совсем понимаю чем вам 3 стандартных эффекта не подходят?
ага, я тоже когда копался - обрадовался, что они есть. EdgeDetectEffect почти подошел - но он не делает трехтоновое преобразование цветов текстур объекта, только вуалирует сильнее или слабее.
кстати клево получилось с его помощью чернобелый мульт сделать!! шикарный эффект.
но ведь если тот же шейдер Toon-BasicOutline просто проецировать на видимые объекты, всего ОДИН, то будет - сразу два эффекта и цветотоновая коррекция и оутлайн. так что... пока ищу.
а крейзи - вообще полуэффект у меня как ни крутил - обводится оутлайн только сверху..
Я не совсем понимаю чем вам 3 стандартных эффекта не подходят?
ага, я тоже когда копался - обрадовался, что они есть. EdgeDetectEffect почти подошел - но он не делает трехтоновое преобразование цветов текстур объекта, только вуалирует сильнее или слабее.
кстати клево получилось с его помощью чернобелый мульт сделать!! шикарный эффект.
но ведь если тот же шейдер Toon-BasicOutline просто проецировать на видимые объекты, всего ОДИН, то будет - сразу два эффекта и цветотоновая коррекция и оутлайн. так что... пока ищу.
а крейзи - вообще полуэффект у меня как ни крутил - обводится оутлайн только сверху..
Добавлено (14.01.2013, 18:31) --------------------------------------------- ПОЗДРАВЛЯЮ!! Появился свет в конце туннеля!
Для решения этой задачи (наложение шейдера на все объекты воспринимаемые камерой) оказывается существует механизм (видимо в Pro версии):
RenderWithShader SetReplacementShader
Через эти методы мы делаем именно такую процедуру!!!! УРА!!!
вот ссылка на Assets store в котором пример (просто афигенный) в свободном доступе для зарегистрированных пользователей стора.
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
У меня на опере с каптчей всё норм. Может у тебя действительно проблема с браузером или инетом?
у меня НА ДРУГИХ форумах и сайтах через мой браузер -- с каптчей вообще и с такой же в частности - тоже все нормально. буду рыться в интернете про 5 циферок которые неверны по 40 минут, хотя введены правильно. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Спасибо. буду ждать новостей с передовой. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
спасибо, что не процессор и планету! :) у меня Chrome предпоследний. Нигде (сайты, форумы и тп) такой проблемы не было. Даже с той же юкозовской каптчей... Хотя один раз чет она переклинила.. но это же не 40 минут!!
но ... ммм.. спасибо за участие! Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Width и height - нужные тебе ширина и высота GUI-элемента.
мне не нужна ширина моего же GUI элемента (выводимой текстуры) - её я хорошо знаю. мне нужен width,height "силуэта" 3D объекта на вьюпорте в каждый тик времени и с любого ракурса. тогда я смогу позицию моего GUI элемента вычислять совершенно точно!
и ещё вопрос: можешь разъяснить про "GUITexture.pixelInset" для чего он? я так понял из трех строчек в справке что он устанавливает правильный размер пикселя выводимой текстуры. и ещё там было что я при этом могу установить мой камень преткновения - localScale моего объекта в zero для того чтобы размер пикселя был одинаковый... но смысл ускользнул... зачем мне это?!?! Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Понедельник, 14 Января 2013, 16:47
Еле еле зарегистрировался у вас. Отличный форум и вообще сайт. Спасибо.
Пока регистрировался думал разнесу весь дом! Капча сама себя не понимает, или устаревает быстро или ещё что.. но БЕСИТ СТРАШНО!!!!!
Вводишь цифры которые намалеваны в этом самом дебильном (извиняюсь за выражения) виде каптчи который я только встречал, а он упорно пишет "Неверный код безопасности". Прямо сейчас сижу уже 40 минут - пытаюсь сменить аватар на свой :((((((((((((((((((((((( Формат подогнал.. но каптча мне все нервы вынесла - все время код неверный.... и млин сбрасывает мой выбор аватара - каждый раз при неверной каптче нужно заново выбирать аватар...
ааааааа :((((((((((((((((((((((((((((((( Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
главная проблема при подготовке отрисовки - это вычислить ВИДИМУЮ ШИРИНУ И ВЫСОТУ объекта относительно вьюпорта (т.е. в координатах от 0 до 1) или игрового мира (потом легко преобразовать). как только решим эту проблему - все, будет ИДЕАЛЬНЫЙ скрипт! Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Понедельник, 14 Января 2013, 09:50
Чем не устраивает первый вариант? Текстура висит ровно над объектом, что еще надо то?
я писал в начале - у меня ДВА вывода (один постоянный, один при наведении). и второй выше-правее основного тела.
когда первый метод используешь - съезжает вывод если ты выше стоишь - черт знает куда, да и при некоторых других условиях тоже. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Понедельник, 14 Января 2013, 16:37
облазил больше 300 страниц в нэте... и вот пишу вопрос!
нужен алгоритм (хотя бы) или скрипт как в Unity повесить 2D текстуру в гуе над строго определенной точкой 3Д мира?!?! при удалении от этой точки на 100 "метров" она размером 100Х100 при приближении - увеличивается до полного, при движении в разных направлениях по 3Д миру она указывает на помеченную точку смещаясь по 2Д экрану..
Переписал скрипты (где были) проверил - самая большая проблема это при отходе Player'а от объекта - надписи или рисунок смещается так, что перестает с ним соотносится нормально.. короче нет ни одной ГЛАДКОЙ технологии... про матрицы (перемножит четыре матрицы в трех преобразованиях) я так и не разобрался.. оставил на потом. возможно осилю на днях. но... Мы имеем - например машина стоит на нашем уровне в 150 метрах от героя, над ней висит 2D метка к которой нужно дойти через улицы, дома и тп. все с разных высот. (3D объект вешать - это будет другая тема!! я сейчас конкретно по этому вопросу). вешаю над машиной текст (картинку) и при небольшом смещении в сторону персонажа, с подъемом на другую высоту - все! уже указатель съехал куда то в другую сторону. это происходит потому что высота машины под этим углом теперь не соответствует ортогональной точке куда я прикреплял (расчет точки ведется со смещением на размер надписи и тп.)!!! плюс ещё объект в сцене - имеет неравномерные очертания, и что самое тяжкое - НЕРАВНОМЕРНЫЙ scale!! да все это под разными углами... и все. занавес просто!!! алгоритм в сети есть (4 матрицы умножаются на друг друга) но реализации так и не попалось! а между тем это повсеместно используемый механизм - во всех играх от стратегий до стрелялок!!! а у меня над объектом появляется маркер и справо-над - появляется спец информация. смещение вычислять критично. чтобы было цивильно!
самым идеальным вариантом считаю такой: мысленно делаем стопкадр игры, во время него делаем силуэтную проекцию 3D объекта как бы он лег на экран если бы его снизу-сзади подсветили. получаем силуэт с шириной и высотой! все. очень тупо рисуем над силуэтом по формуле - х = (ширина силуэта / 2) - ширина картинки / 2; у = (высота силуэта / 2 + 10 пикселей престижа) + вся высота картинки. (плюс выс. карт. потому что так в Unity) все. задача была бы решена.
но как написать такую проекцию силуэта?! вот в чем вопрос!!! Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Воскресенье, 13 Января 2013, 20:51
Пробовал - для игры приходится лишние движения делать... решил что так - меньше.
и там не маус лок - мышь не отключается, отключается постоянное вращение камеры. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Понадобилось для проекта (бродилка от первого лица) сделать так, чтобы указатель мыши действовал в игровом пространстве не смещая обзор. Хотел порыться в нэте - несколько версий запроса дали пустышки. Поэтому написал сам.
Выкладываю может кому пригодится!!
Одна фигня - на javascripte (aka Unityscript) пишу недавно и скрипт получился очень громоздкий!! Если кто пригладит его или там причешет - будет ещё лучше. А так оттестировал у меня все ок!
function Update () { if(rigidbody) rigidbody.freezeRotation = true;
var posMouse = camera.ScreenToViewportPoint( Input.mousePosition ); var deltaX : float; var deltaY : float; var rotationX : float; var rotationY : float = 0F;
Да, Про. Есть все стандартные скрипты Image Effects. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сразу к примеру - хочу сделать чтобы в моей игре в определенный момент вся графика становилась Toon-shader'ной (Cel-shader, cartoon style и т.п.). Вот такая В Про версии Юнити поставляется четыре материала + шейдеры к ним для создания этого эффекта. Но!! Эффект этот создается только у тех объектов, которым добавили этот шейдер/материал!!!
Я не хочу всем объектам в сцене добавлять этот шейдер!! Ведь ежу понятно что можно написать Image Effect с подключенным к нему шейдером и посадить его на камеру!! Все видимые объекты для этой камеры тогда будут автоматом преобразовываться этим шейдером.
ВОПРОС - КАК ЭТО СДЕЛАТЬ??!
От этого вопроса - к более глобальному: облазив нэт нашел тучу описаний как писать шейдеры, но где описание как создать Image Effect?!?!?? Если у вас есть ссылки - поделитесь... Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
из справки по OnCollisionEnter Note that collision events are only sent if one of the colliders also has a non-kinematic rigidbody attached. Примечание: событие "Коллизия" вызывается ТОЛЬКО ЕСЛИ ОДИН ИЗ КОЛЛАЙДЕРОВ ИМЕЕТ не кинетический РЕГИДБОДИ!!!!
всем кто отвечал - спасибо!! Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Сообщение отредактировал KamiRonin - Среда, 09 Января 2013, 12:32
andarky молодчик.. но ёпрст - тут же надо найти причину.. я просто понять хочу .. логику Unity! чтобы в других вещах потом так же не бегать по всему инэту. Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
он и так сработает. CharacterController содержит в себе капсулуКолайдер
видно не во всех губерниях!
создаю новый проект. вставляю бокс. пишу javascript с OnCollisionEnter(), в котором вывожу лэйбл что наступили на бокс (одна строка, без условий), сажаю этот скрипт на этот бокс вставляю стандартный FPC - запуск. НИФИГА! ставлю ОнТриггерЕнтер (с IsTrigger у бокса) - все замечательно, ОнКоллизионЕнтер - нифига, ОнТриггер - замечательно. ОнКоллизион - нифига.
добавляю сферу над боксом, вешаю регидбоди на неё. падает - ураааа.. ОнКоллизионЕнтер замечательно работает.
Читаю на аборигенском в справке по скриптам, OnCollisionEnter и CharacterController: - по ОнКоллизион - "событие срабатывает при соприкосновении Coolider/Collider или Rigidbody/Collider - по CharacterController - "встроенный КапсулаКолайдер (ну прям неожиданно так!!) не оказывает физического воздействия, но можно запрограммировать самому через OnControllerColliderHit" и больше ничего по OnCollision нету. - ищу внутри скриптов и самого объекта FPC. Находим вложенный в ФПК Graphics - в котором есть MESH в виде капсулы а не капсульКоллайдер (субкласс что ли?!)!! У капсульКоллайдера нету кучи пропертей от ЧарактерКонтроллера.. уже думал переписать весь ЧарактерМотор скприпт.. но во время опомнился. - если вставить капсульКоллайдер отдельно в сцену - то там видно что есть И коллайдер И меш..
Либо лыжи не едут, либо никто не проверял, либо губерния моя в черном списке у него.... :((((((( Но OnControllerColliderHit - единственная альтернатива как я понял.. но его надо вешать на Player чтобы потом выявлять столкновения.. левой нагой правое ухо получается!
Добавлено (09.01.2013, 11:34) --------------------------------------------- Главное - аж взрыв мозга нафиг - в описании CharacterController, где проперти, функции этого объекта и тп.. - там есть черным по белом "Унаследованные методы" - и среди них OnCollisionEnter присутствует!!! :((((((((((((
Мыслю - значит программирую... Конструктивная критика - умных ведет к совершенству... Великие умы обсуждают идеи, средние - обсуждают поступки, а малые - людей.
Строил в Unity3D 4.0 проект от первого лица и столкнулся с вопросами, ответы на которые не смог найти ни в сети, ни в справках, ни в книгах (читаю только по русски ).
1. FPC - имеет CharacterController, а не коллайдер, как заставить срабатывать на него OnCollisionEnter()!!!!!!????????????? Просто каждый раз втыкать триггеры - муть, когда есть штатный метод!! 2. FPC - имеет вес (он же падает)? Но ведь не имеет rigidbody! Это как сделано?! Как контролировать?!