Ответ: _Epic
Цитата:
скрипт на игроке. скрипт на префабе пули. При клацании кнопки "агоньбатареяжгитеффсех!" скрипт игрока спавнит префаб пули. При этом он получает GameObject - пулю. Через этот GameObject он вызывает .GetComponent(имя_скрипта_пули_можно_в_кавычках) и получает ссылку на скрипт этой конкретной пули. А там уже можно установить переменную напрямую. Т.е. что-то типа такого будет: Цитата:
Цитата:
Нюанс правда: если у нас скрипт игрока висит на некотором пивоте, к которому присобачен объект с коллайдером - то Collision вернёт нам объект с коллайдером, на котором, ессно, никакого скрипта нету. Либо доставать через transform.parent(.patent.parent.parent.parent, иногда и так, да...), либо через transform.root (но тогда низя будет вкладывать кораблики в другие объекты, например, пустые пивоты - а это удобно для организации сцены). Кстати, из Collider и Transform тоже можно вытащить скрипт через GetComponent. Потому что они все наследованы от абстрактного Object, в котором лежит этот метод. Надеюсь, понятно объяснил.. |
Ответ: _Epic
Давай по порядку:
Чтобы передать пуле ссылку на игрока надо чтобы на пуле висел скрипт, который будет хранить эту ссылку. Скрипт можно повесить заранее, а можно во время создания пули. В первом варианте после создания объекта пули надо "добыть" скрипт этой пули и инициализировать ему переменную игроком. Во втором случае у тебя будет ссылка на скрипт при его добавлении. Допустим скрипт пули PHP код:
PHP код:
PHP код:
По поводу пустого объекта с функциями можно поступить по разному: 1. Создать объект в сцене, на него повесить скрипт с глобальными функциями. В Awake записать на него ссылку в статическую переменную. Через нее использовать функции этого объекта. PHP код:
PHP код:
3. Писать функции статическими, тогда их можно вызывать отовсюду и не обязательно вешать скрипт на объект: PHP код:
PHP код:
|
Ответ: _Epic
По поводу ГУИ.
На данный момент сделать аддитивные элементы ГУИ можно таким образом: 1. Создаешь дополнительную камеру. Называешь ее "GUI Camera". Закидываешь ее куда-нибудь подальше от "глаз" основной камеры (либо можно использовать слои, чтоб каждая из камер не видела объекты друг друга). 2. Ставишь "Clear Flags" у ГУИ камеры на "Depth" (чтоб ГУИ камера рисовала гуи-элементы поверх того, что уже отрендерилось). 3. Значение "Depth" делаешь чуть побольше, чем у основной камеры (чтоб ГУИ камера рендерила элементы однозначно позже основной камеры). 4. Перед ГУИ камерой ставишь какую-нибудь плоскость с материалом, который юзает шейдер Particles/Additive. Вот и всё. :) P.S. Поздравляю с переходом на Unity3D! Нам такие люди нужны. ) P.P.S. Depth во 2 и 3-ем пункте - разные вещи и никак друг с другом не связаны. :) |
Ответ: _Epic
Разобрался походу. Ну все, теперь только практика.
Как вам идея насчет того, чтобы написать игрушку для вконтакта? |
Ответ: _Epic
Лучше для iOS ;)
|
Ответ: _Epic
*обиженый ПеКа-фаг мод он* лучше для Win *обиженый ПеКа-фаг мод офф*
Ну и как бы да, тебе точно нужна помощь?)) Мне кажется, только мешать будем. |
Ответ: _Epic
У нас на работе парни хорошо шарят в юнити, один из них в составе 3х человек разрабатывает под вконтакт небольшую игрушку. Немного с ним переговорив, я понял, что может это шанс впервые заработать нормальных денег. Может это плохая идея, но я бы очень хотел попробовать, все таки опыт. Поэтому хотел бы знать все плюсы и минусы такого проекта. Ну и в геймдизайне подзаточусь еще (мне это по основной работе очень необходимо).
|
Ответ: _Epic
Цитата:
|
Часовой пояс GMT +4, время: 18:48. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot