Возникает ошибка скрипта пены

Программирование на Юнити.

Возникает ошибка скрипта пены

Сообщение mihanocho 01 апр 2012, 16:29

Здравствуйте !
Скачал демо проект Тропический остров.
Но у меня возникает ошибка скрипта пены.
Вот такая:
http://online-kachka.ru/oshibka.png
Вот код файла:
Синтаксис:
Используется csharp
var waterLevel : float;
var uAudio : AudioClip;
var aAudio : AudioClip;

var uColor = Color(1,1,1,1);
var uDensity = .05;

var aColor = Color(1,1,1,1);
var aDensity = .008;

var waterSurface : Renderer;
var underwaterSurface : Renderer;

private var below = false;
private var glow : GlowEffect;
private var blur : BlurEffect;


function Awake() {
        if(!waterLevel)
        {
                water = FindObjectOfType(Water);
                if(water) waterLevel = water.gameObject;
        }
        aColor = RenderSettings.fogColor;
        aDensity = RenderSettings.fogDensity;
       
        glow = GetComponent(GlowEffect);
        blur = GetComponent(BlurEffect);
        if( !glow || !blur )
        {
                Debug.LogError("no right Glow/Blur assigned to camera!");
                enabled = false;
        }
        if( !waterSurface || !underwaterSurface )
        {
                Debug.LogError("assign water & underwater surfaces");
                enabled = false;
        }
        if( underwaterSurface != null )
                underwaterSurface.enabled = false; // initially underwater is disabled
}

function Update ()
{
        if (waterLevel < transform.position.y && below)
        {
                audio.clip = aAudio;
                audio.Play();
                RenderSettings.fogDensity = aDensity;
                RenderSettings.fogColor = aColor;
               
                below = false;
               
                glow.enabled = !below;
                blur.enabled = below;
                waterSurface.enabled = true;
                underwaterSurface.enabled = false;
        }
       
        if (waterLevel > transform.position.y && !below)
        {
                audio.clip = uAudio;
                audio.Play();
                RenderSettings.fogDensity = uDensity;
                RenderSettings.fogColor = uColor;
               
                below = true;
               
                glow.enabled = !below;
                blur.enabled = below;
                waterSurface.enabled = false;
                underwaterSurface.enabled = false;
        }
}

 
mihanocho
UNITрон
 
Сообщения: 167
Зарегистрирован: 19 фев 2012, 13:20

Re: Возникает ошибка скрипта пены

Сообщение unity 01 апр 2012, 18:52

Ты приравнял число waterlevel объекту.
И где можно скачать этот проект?
unity
UNец
 
Сообщения: 2
Зарегистрирован: 17 мар 2012, 14:11

Re: Возникает ошибка скрипта пены

Сообщение seaman 01 апр 2012, 20:30

В скрипте так и написано. Вот чем мне не нравится JS - элементарно присваивают один тип другому. Видимо раньше работало, теперь нет.

Решение - логично заменить строку:
Синтаксис:
Используется javascript
if(water) waterLevel = water.gameObject;

на строку:
Синтаксис:
Используется javascript
if(water) waterLevel = water.gameObject.transform.position.y;
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: Возникает ошибка скрипта пены

Сообщение mihanocho 03 апр 2012, 13:23

unity писал(а):Ты приравнял число waterlevel объекту.
И где можно скачать этот проект?

http://unity3d.com/gallery/demos/live-d ... l-paradise
Тут можно скачать проект
mihanocho
UNITрон
 
Сообщения: 167
Зарегистрирован: 19 фев 2012, 13:20


Вернуться в Скрипты

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

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