Couldn't load the script

Общие вопросы о Unity3D

Couldn't load the script

Сообщение Serge 05 июн 2009, 20:46

Добавил в проект джава скрипт, запустил в редакторе – работает, скомпилировал, не работает. Содержимое лога:

Код: Выделить всё
Audio devices: Generic Hardware (default: Generic Hardware)
Player: init engine
Direct3D:
    Version:  Direct3D 9.0c [nv4_disp.dll 6.14.11.7824]
    Renderer: NVIDIA GeForce 8500 GT
    Vendor:   NVIDIA
    VRAM:     512 MB
desktop: 1280x1024 60Hz; virtual: 1280x1024 at 0,0
     Couldn't load the script "CoconutThrow" because its file name doesn't match the class name.
Please make sure the file name of the script is the same as the class defined inside it.
(Filename: ..\..\Runtime\Mono\MonoScript.cpp Line: 384)

Cleanup player


Содержимое скрипта, кот.не может загрузить, чтоб его:

Код: Выделить всё
var  myShellPrefab : Rigidbody;
var ShellForce = 30;
var  ShellRotate : Vector3;

function Update () {
   if (Input.GetButtonDown("Fire1"))
        {
            var Coconut : Rigidbody = Instantiate(myShellPrefab, transform.position, transform.rotation);
         Coconut.transform.position = Coconut.transform.position + ShellRotate;
            Coconut.velocity = transform.TransformDirection(ShellForce, 0, 0);
      }
}



Провозился часа три, пробовал разные имена давать, писать на Си, всяко пробовал. В редакторе работает, после компиляции нет. Есть еще в проекте скрипт написанный мной, он работает.
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 05 июн 2009, 20:58

А на Шарпе в каком виде это было? И чего говорил дебаггер? :-?

Кстати, в вашем скрипте, грубейшим образом нарушена Венгерская нотация. Всё, что написано про код для [unity 3D] Юнити, настоятельнейшим образом рекомендует придерживаться двух простых правил :
Переменные пишутся с мааааленькой буквы.
Функции пишутся с Большой.

Очень может быть, что ваши Coconat и прочие ShellRotate не нравятся дебаггеру, потому что он принимает их за объявление класса.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Serge 05 июн 2009, 21:11

Код в шарпе:

Код: Выделить всё
using UnityEngine;
using System.Collections;

public class NewBehaviourScript : MonoBehaviour {

    public Rigidbody myShellPrefab;
    public int ShellForce = 30;
    //public AudioClip ShellClip;
    public Vector3 ShellRotate;
   
   // Update is called once per frame
   void Update ()
    {
        if (Input.GetButtonDown("Fire2"))
        {
            Rigidbody Coconut = (Rigidbody)Instantiate(myShellPrefab, transform.position, transform.rotation);
          //Vector3 Shelposition = New Vector3(3, 0, 0);
         //obj.transform.position = new Vector3(0,0,0);
         //   Coconut.transform.Rotate(ShellRotate);
         Coconut.transform.position = Coconut.transform.position + ShellRotate;
            Coconut.velocity = transform.TransformDirection(ShellForce, 0, 0);
         //Physics.IgnoreCollision(Coconut.collider, transform.root.collider);
         //   audio.PlayOneShot(ShellClip);           
      }
   }
}


При запуске в редакторе, так-же, никаких ошибок, в логе тоже самое, что и с джавой.

Правила учту, и буду использовать. В работающем скрипте все написано согласно этих правил, сейчас все исправлю и проверю.
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Serge 05 июн 2009, 21:37

Не помогло. Вот в таком виде, в другом проекте он работает (mCoconutThrow_sha.cs):

Код: Выделить всё
using UnityEngine;
using System.Collections;

public class mCoconutThrow_sha : MonoBehaviour
{
    public Rigidbody myShellPrefab;
    public int ShellForce = 20;
    public AudioClip ShellClip;
    public Vector3 ShellRotate;
   
   // Update is called once per frame
    void Update ()
    {
        if (Input.GetButtonDown("Fire2"))
        {
            Rigidbody Coconut = (Rigidbody)Instantiate(myShellPrefab, transform.position, transform.rotation);
            Coconut.transform.Rotate(ShellRotate);
            Coconut.velocity = transform.TransformDirection(0, 0, ShellForce);
       Physics.IgnoreCollision(Coconut.collider, transform.root.collider);
            audio.PlayOneShot(ShellClip);           
      }
   }
}
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 05 июн 2009, 21:57

Тут надо сравнить на разных машинах. Выкладывайте ваш проект, пощупаем. :-?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Serge 06 июн 2009, 08:16

О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Serge 06 июн 2009, 08:29

Там ГО lesson4_end, внутри – arr, на него подвешено два моих скрипта mTransl и CoconutThrow. Проект очень сырой, я только учусь, потому сильно не ругаться ;;) .
Это типа боулинга, управление клавиши курсора, бросок Left Ctrl.
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 06 июн 2009, 12:34

Тэг 4shared лучше использовать для папок на этом файлоскладе.
Проект погляжу, как время выдастся.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Neodrop 06 июн 2009, 13:34

А какой объект должен стоять в параметре My Shell Prefab ?
В проекте не указан (или потерялся куда то) объект с этой переменной.
Видимо шар какой то для броска.
И вообще не понятно, кто вам нашептал такую идею - инстансировать RigidBody, а не объект, содержащий этот RigidBody :-?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Serge 06 июн 2009, 18:38

В префабах лежит mBoul, странно почему он потерялся. Сейчас открыл проект из архива, что выложил, все на месте.
Самое непонятное это то, что распаковав архив во временную папку и проверив наличие объекта, я скомпилировал его. И свершилось чудо, он заработал. Нечего не понимаю.
Проект из прежней папки, все так-же не желает работать. Если не трудно проверьте плиз работоспособность на своих компьютерах.
Да, чуть не забыл, такой жуткий код я позаимствовал в одном из примеров :) .
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 06 июн 2009, 21:57

Распаковка из архива корректно записывает файлы на диск.
У самого Юнити ещё есть с этим проблемы. К примеру - невозможно перенести проект с Мака - те же глюки, что и у вас. НО при переносе через архив RAR всё работает отлично.
Что-то с кодировкой файлов, я думаю. :-?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Serge 07 июн 2009, 13:00

Достало, после добавления каждого нового скрипта, сжимать в архив, затем распаковывать из оного. Что случилось не пойму. Добавлял ведь ранее скрипты и работали, а после определенного момента, не работают.
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 07 июн 2009, 13:13

Что то с ОСью. Явно глюка при записи на диск.
Куда установлен Юнити?
В путях к папкам нет русских букв?
Какая файловая система?
Что-нить ставили/удаляли перед тем как начались глюки?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: Couldn't load the script

Сообщение Serge 07 июн 2009, 13:24

1) c:\Unity\
2) E:\ProNew\123\Bouli\
3) NTFS
4) И ставил и удалял, всего не упомню.
О, сколько нам открытий чудных Готовят просвещенья дух И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель.
Аватара пользователя
Serge
UNIверсал
 
Сообщения: 476
Зарегистрирован: 20 мар 2009, 15:53
Откуда: Сибирь г. Омск
  • Сайт
  • ICQ

Re: Couldn't load the script

Сообщение Neodrop 07 июн 2009, 13:37

А какая ось?
32 бита или 64 ?
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

След.

Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9