какая то ошибка
|
|
PaRtIzAn_MaXs | Дата: Воскресенье, 08 Декабря 2013, 03:24 | Сообщение # 1 |
почетный гость
Сейчас нет на сайте
| Cannot convert "int" to "unityEngine.Vector3" Вот скрипт Код var grabPower = 10.0; var throwPower = 50; var hit : RaycastHit; var RayDistance : float = 3.0; private var Grab : boolean = false; private var Throw : boolean = false; var offset : Transform;
function Update () { if(Input.GetMouseButtonDown(1)){
Physics.Raycast(transform.position, transform.forward, hit, RayDistance); if(hit.rigidbody); Grab = true; } } if(Input.GetMouseButtonDown(0)){ if(Grab){ if(hit.rigidbody); hit.rigidbody.velocity = (offset.position - (hit.transform.position + hit.rigidbody.centerOfMass))* grabPower; } } if(Throw){ if(hit.rigidbody){ hit.rigidbody.velocity = transform.forward = throwPower; Throw = false; } }
C#-Unity3D
|
|
| |
JHawk | Дата: Воскресенье, 08 Декабря 2013, 08:39 | Сообщение # 2 |
めゃくちゃちゃ
Сейчас нет на сайте
| ОМГ........... ты INTEGER приравниваешь к VECTOR3. Ищи, в какой строчке ошибка и исправляй сам, ибо нет желания копаться в твоем коде.Добавлено (08.12.2013, 08:39) --------------------------------------------- З.Ы, найти ошибку можно двойным кликом по ней в консольке.
|
|
| |
robertono | Дата: Воскресенье, 08 Декабря 2013, 12:15 | Сообщение # 3 |
Чокнутый Кот
Сейчас нет на сайте
| PaRtIzAn_MaXs, Я не знаю как учишь написание скриптов ты, но я : 1) Больше не беру чужие коды 2) Пишу только свой код, может большой и не оптимизированный но свой
И тебе так же советую)
|
|
| |
White9 | Дата: Воскресенье, 08 Декабря 2013, 12:35 | Сообщение # 4 |
заслуженный участник
Сейчас нет на сайте
| Код hit.rigidbody.velocity = transform.forward = throwPower; Вот здесь ошибка. Измени тип throwPower на Vector3 и задай именно как вектор. И мне кажется, что из-за такого присваивания тоже будет ошибка
Сообщение отредактировал White9 - Воскресенье, 08 Декабря 2013, 12:35 |
|
| |
robertono | Дата: Воскресенье, 08 Декабря 2013, 12:42 | Сообщение # 5 |
Чокнутый Кот
Сейчас нет на сайте
| Цитата White9 ( ) И мне кажется, что из-за такого присваивания тоже будет ошибка конечно)
|
|
| |
seaman | Дата: Воскресенье, 08 Декабря 2013, 12:58 | Сообщение # 6 |
старожил
Сейчас нет на сайте
| PaRtIzAn_MaXs, хочешь совет? Учись сам находить ошибки. Иначе постоянно будешь просить на форуме найти их и тем самым ухудшать и без того не очень хорошее мнение о себе. Как искать? 1. Внимательно читать что пишет Юнити. В консоли обычно пишется достаточно для того, чтобы определить где ошибка и в чем она заключается. Например: Цитата Assets/Move.cs(21,30): error CS0029: Cannot implicitly convert type `float' to `UnityEngine.Vector3' Что мы тут видим. Имя скрипта, в котором ошибка (Move.cs), строка и столбец в котором ошибка (21,30) и собственно текст ошибки. 2. Смотрим скрипт и место в нем где выдало ошибку. Код transform.position = test = t; 3. Переводим сообщение - не может косвенно конвертировать `float' в `UnityEngine.Vector3 4. Пытаемся сопоставить сообщение об ошибке и код. Ищем где тут float, где тут Vector3. Первое - это t, второе test и position. 5. Понимаем, что НЕЛЬЗЯ присвоить переменную типа float вектору. 6. Думаем - а что же мы тут вообще хотели сделать? БИНГО! Мы хотели просто в позицию записать вектор УМНОЖЕННЫЙ на константу! Пишем правильный код У Вас это будет... Подумайте сами.
Добавлено (08.12.2013, 12:58) --------------------------------------------- Цитата И мне кажется, что из-за такого присваивания тоже будет ошибка Не совсем понял, что Вы имеет в виду, но можно писать два равенства подряд, типа: Код Vector3 throwPower = Vector3.zero; hit.rigidbody.velocity = transform.forward = throwPower; Ошибки быть не должно.
Сообщение отредактировал seaman - Воскресенье, 08 Декабря 2013, 12:58 |
|
| |
robertono | Дата: Воскресенье, 08 Декабря 2013, 13:05 | Сообщение # 7 |
Чокнутый Кот
Сейчас нет на сайте
| Цитата seaman ( ) о можно писать два равенства подряд, типа: Цитата seaman ( ) hit.rigidbody.velocity = transform.forward = throwPower; Серьезно?
|
|
| |
seaman | Дата: Воскресенье, 08 Декабря 2013, 13:08 | Сообщение # 8 |
старожил
Сейчас нет на сайте
| Попробуйте. В шарпе точно работает.
|
|
| |
PaRtIzAn_MaXs | Дата: Воскресенье, 08 Декабря 2013, 13:16 | Сообщение # 9 |
почетный гость
Сейчас нет на сайте
| Цитата robertono ( ) PaRtIzAn_MaXs, Я не знаю как учишь написание скриптов ты, но я : 1) Больше не беру чужие коды 2) Пишу только свой код, может большой и не оптимизированный но свой
И тебе так же советую) У меня не получается учить.я и переписываю и учу и всё равно ничего не выходит
C#-Unity3D
|
|
| |
JHawk | Дата: Воскресенье, 08 Декабря 2013, 13:19 | Сообщение # 10 |
めゃくちゃちゃ
Сейчас нет на сайте
| Потому что ты ТУПОЙ школота!!!!Добавлено (08.12.2013, 13:19) --------------------------------------------- Только школота начинает вайнить на форуме, если у него что то не получается!
|
|
| |
PaRtIzAn_MaXs | Дата: Воскресенье, 08 Декабря 2013, 13:20 | Сообщение # 11 |
почетный гость
Сейчас нет на сайте
| Цитата JHawk ( ) Потому что ты ТУПОЙ школота!!!! Добавлено (08.12.2013, 13:19) --------------------------------------------- Только школота начинает вайнить на форуме, если у него что то не получается! И ты был школотой.То что я в школе ничего не значит
C#-Unity3D
|
|
| |
robertono | Дата: Воскресенье, 08 Декабря 2013, 13:45 | Сообщение # 12 |
Чокнутый Кот
Сейчас нет на сайте
| Цитата JHawk ( ) школота Цитата PaRtIzAn_MaXs ( ) в школе Цитата PaRtIzAn_MaXs ( ) И ты был школотой Добавлено (08.12.2013, 13:45) ---------------------------------------------
Цитата PaRtIzAn_MaXs ( ) У меня не получается учить.я и переписываю и учу и всё равно ничего не выходит Попробуй сделать как я : забить на гейм дев на 1 год, обдумать свои поступки и потом в него вернутся и лучше не возвращятся...
Сообщение отредактировал robertono - Воскресенье, 08 Декабря 2013, 13:44 |
|
| |
JHawk | Дата: Воскресенье, 08 Декабря 2013, 14:15 | Сообщение # 13 |
めゃくちゃちゃ
Сейчас нет на сайте
| robertono, КОКОКОКОКОМБО!!!!!!!! Короче по теме. PaRtIzAn_MaXs, иди крестиком вышивай, возвращайся в геймдев через n-дцать лет.
|
|
| |
White9 | Дата: Воскресенье, 08 Декабря 2013, 14:17 | Сообщение # 14 |
заслуженный участник
Сейчас нет на сайте
| Цитата seaman ( ) Попробуйте. В шарпе точно работает. Спасибо, просто ни разу так не делал )
|
|
| |
Adom | Дата: Воскресенье, 08 Декабря 2013, 14:39 | Сообщение # 15 |
Печенька!
Сейчас нет на сайте
| PaRtIzAn_MaXs, Мне 13 лет но ведь у меня не плохо получается писать свои скрипты а почему у тебя то не получается ?
|
|
| |
seaman | Дата: Воскресенье, 08 Декабря 2013, 14:44 | Сообщение # 16 |
старожил
Сейчас нет на сайте
| Потому что неправильно учится. Тут или нужно иметь способности приличные и тогда можно учится как угодно, или нужно учиться последовательно. Забыть на какое то время о Юнити. Взять книгу по программированию для новичков, посмотреть видеоуроки по шарпу. И желательно не просто просмотреть, а выполнить все задания не подглядывая в ответы из книги. Уже потом вернуться к Юнити.
Сообщение отредактировал seaman - Воскресенье, 08 Декабря 2013, 14:44 |
|
| |
White9 | Дата: Воскресенье, 08 Декабря 2013, 14:50 | Сообщение # 17 |
заслуженный участник
Сейчас нет на сайте
| seaman, а можешь что-нибудь посоветовать? В магазине видел только книги с самыми-самыми азами или без упражнений. Просто в универе мы программирование проходили довольно поверхностно (не затрагивали работу с классами, наследованием, паттернами и прочим). Точнее в теории что-то было, а на практике не применяли
Сообщение отредактировал White9 - Воскресенье, 08 Декабря 2013, 14:51 |
|
| |
Adom | Дата: Воскресенье, 08 Декабря 2013, 14:51 | Сообщение # 18 |
Печенька!
Сейчас нет на сайте
| seaman, Угусь а я в первое время копался в Unity что да как потом начал смотреть уроки и потом потихоньку начал писать мелкие скрипты а потом больше и больше ))
|
|
| |
JHawk | Дата: Воскресенье, 08 Декабря 2013, 15:47 | Сообщение # 19 |
めゃくちゃちゃ
Сейчас нет на сайте
| seaman, что бы уметь писать коды, надо логически мыслить. Изходя из этого мы имеем, что что бы быть хорошим программистом надо быть неплохим математиком, а значит что либо PaRtIzAn_MaXs слишком мал для математики (ну до 12 лет точно!), либо его успеваемость в школе крайне мала. Добавлено (08.12.2013, 15:47) --------------------------------------------- Лично я в математике (а следовательно и всех четких науках) силен и благодаря умению хорошо соображать смог научится писать коды еще будучи школотой.
|
|
| |
PaRtIzAn_MaXs | Дата: Воскресенье, 08 Декабря 2013, 18:50 | Сообщение # 20 |
почетный гость
Сейчас нет на сайте
| Цитата JHawk ( ) Лично я в математике (а следовательно и всех четких науках) силен и благодаря умению хорошо соображать смог научится писать коды еще будучи школотой. У меня по математике 7
C#-Unity3D
|
|
| |