Unity3d-cкриптинг - Страница 4 - Форум Игроделов
Чт, 02 Май 2024, 15:30 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 4 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Форум Игроделов » UNITY3D » СКРИПТИНГ » Unity3d-cкриптинг (C#, JavaScript, Boo.)
Unity3d-cкриптинг
seamanДата: Ср, 11 Июл 2012, 18:01 | Сообщение # 61
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Code
class MyGUI : MonoBehaviour
{
bool enbl;

void OnGUI()
{
if(Input.GetKeyUp(KeyCode.I)) enbl = !enbl;
if(!enbl) return;
//Выводим ГУИ
}
}
 
Сообщение
Code
class MyGUI : MonoBehaviour
{
bool enbl;

void OnGUI()
{
if(Input.GetKeyUp(KeyCode.I)) enbl = !enbl;
if(!enbl) return;
//Выводим ГУИ
}
}

Автор - seaman
Дата добавления - 11 Июл 2012 в 18:01
НиколайДата: Ср, 11 Июл 2012, 20:40 | Сообщение # 62
 
Сообщений: 385
Награды: 5
Репутация: 78
Статус: Offline
Левша, я так хочу))) seaman, спасибо!

Добавлено (11.07.2012, 20:40)
---------------------------------------------
Левша, а как бы это выглядело в случае со слоями?


 
СообщениеЛевша, я так хочу))) seaman, спасибо!

Добавлено (11.07.2012, 20:40)
---------------------------------------------
Левша, а как бы это выглядело в случае со слоями?


Автор - Николай
Дата добавления - 11 Июл 2012 в 20:40
ЛевшаДата: Ср, 11 Июл 2012, 22:36 | Сообщение # 63
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (Колямба)
как бы это выглядело в случае со слоями?

В твоем случае (on/of) не актуально, а вот в многоЭкранном меню - оч. даже практично. smile

Code

var myCurentMask : LayerMask;
var kamera : Camera;

kamera.cullingMask = myCurentMask;


X.cor.R (Prologue)
 
Сообщение
Quote (Колямба)
как бы это выглядело в случае со слоями?

В твоем случае (on/of) не актуально, а вот в многоЭкранном меню - оч. даже практично. smile

Code

var myCurentMask : LayerMask;
var kamera : Camera;

kamera.cullingMask = myCurentMask;

Автор - Левша
Дата добавления - 11 Июл 2012 в 22:36
НиколайДата: Чт, 12 Июл 2012, 23:37 | Сообщение # 64
 
Сообщений: 385
Награды: 5
Репутация: 78
Статус: Offline
Quote
В твоем случае (on/of) не актуально, а вот в многоЭкранном меню - оч. даже практично.

Левша, да. Наверное лучше буду использовать данный способ!


 
Сообщение
Quote
В твоем случае (on/of) не актуально, а вот в многоЭкранном меню - оч. даже практично.

Левша, да. Наверное лучше буду использовать данный способ!

Автор - Николай
Дата добавления - 12 Июл 2012 в 23:37
KasperskyДата: Пт, 13 Июл 2012, 08:27 | Сообщение # 65
 
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Quote (seaman)
Вопросы весьма странные.

Потому что я новичек в unity.
Quote (seaman)
Зачем Вам вообще что-то сохранять, если Вы не знаете как с уровня на уровень перейти? Посмотрите на название функции - LevelUp.

Я использую
Code
Application.LoadLevel ();

Quote (seaman)
Вам нужно не игру писать, а с чего-то попроще начинать.

3 года назад, я делал моды в ГЭКК (Инструмент для Fallout 3), за 4 месяца я выучил все аспекты ГЭКК'а, потом я перешел на Fps Creator, далее у меня был UDK, но он мне не понравился, так что теперь я решил остановится на Unity. И вообще причем в коде
Code
int level;   
   ...   

   void LevelUp()   
   {   
   level++;   
   }   
   ...

если нужны только
Code
PlayerPrefs.SetInt("Уровень", level);   
     Application.LoadLevel(PlayerPrefs.GetInt("Уровень"));

или я опять туплю?(так как он ругается на level)


Сообщение отредактировал Kaspersky - Пт, 13 Июл 2012, 08:31
 
Сообщение
Quote (seaman)
Вопросы весьма странные.

Потому что я новичек в unity.
Quote (seaman)
Зачем Вам вообще что-то сохранять, если Вы не знаете как с уровня на уровень перейти? Посмотрите на название функции - LevelUp.

Я использую
Code
Application.LoadLevel ();

Quote (seaman)
Вам нужно не игру писать, а с чего-то попроще начинать.

3 года назад, я делал моды в ГЭКК (Инструмент для Fallout 3), за 4 месяца я выучил все аспекты ГЭКК'а, потом я перешел на Fps Creator, далее у меня был UDK, но он мне не понравился, так что теперь я решил остановится на Unity. И вообще причем в коде
Code
int level;   
   ...   

   void LevelUp()   
   {   
   level++;   
   }   
   ...

если нужны только
Code
PlayerPrefs.SetInt("Уровень", level);   
     Application.LoadLevel(PlayerPrefs.GetInt("Уровень"));

или я опять туплю?(так как он ругается на level)

Автор - Kaspersky
Дата добавления - 13 Июл 2012 в 08:27
НиколайДата: Пт, 13 Июл 2012, 10:54 | Сообщение # 66
 
Сообщений: 385
Награды: 5
Репутация: 78
Статус: Offline
Quote
PlayerPrefs.SetInt("Уровень", level);
Application.LoadLevel(PlayerPrefs.GetInt("Уровень"));

или я опять туплю?(так как он ругается на level)


Может быть следовало указывать под ´level´ его порядок?


 
Сообщение
Quote
PlayerPrefs.SetInt("Уровень", level);
Application.LoadLevel(PlayerPrefs.GetInt("Уровень"));

или я опять туплю?(так как он ругается на level)


Может быть следовало указывать под ´level´ его порядок?

Автор - Николай
Дата добавления - 13 Июл 2012 в 10:54
seamanДата: Пт, 13 Июл 2012, 12:04 | Сообщение # 67
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Quote
или я опять туплю?(так как он ругается на level)

В общем разговор ни о чем. Вы не знаете что такое переменная, как ее определить, как ее установить. Что уж дальше то говорить.
 
Сообщение
Quote
или я опять туплю?(так как он ругается на level)

В общем разговор ни о чем. Вы не знаете что такое переменная, как ее определить, как ее установить. Что уж дальше то говорить.

Автор - seaman
Дата добавления - 13 Июл 2012 в 12:04
HunjethДата: Пт, 13 Июл 2012, 14:40 | Сообщение # 68
 
Сообщений: 354
Награды: 1
Репутация: 112
Статус: Offline
static function SetInt (key : String, value : int) : void
2 значение только int
Code
PlayerPrefs.SetInt("levelName", 1);

и тут посмотри тоже
http://docs.unity3d.com/Documen....erPrefs


Сообщение отредактировал Hunjeth - Пт, 13 Июл 2012, 14:45
 
Сообщениеstatic function SetInt (key : String, value : int) : void
2 значение только int
Code
PlayerPrefs.SetInt("levelName", 1);

и тут посмотри тоже
http://docs.unity3d.com/Documen....erPrefs

Автор - Hunjeth
Дата добавления - 13 Июл 2012 в 14:40
KasperskyДата: Пт, 13 Июл 2012, 15:48 | Сообщение # 69
 
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
Hunjeth,
Code
PlayerPrefs.SetInt("levelName", 1);

кидаю на кнопку "Выход" и у меня будет любой номер уровеня(сцены) сохраняться или только определенный?


Сообщение отредактировал Kaspersky - Пт, 13 Июл 2012, 15:50
 
СообщениеHunjeth,
Code
PlayerPrefs.SetInt("levelName", 1);

кидаю на кнопку "Выход" и у меня будет любой номер уровеня(сцены) сохраняться или только определенный?

Автор - Kaspersky
Дата добавления - 13 Июл 2012 в 15:48
seamanДата: Пт, 13 Июл 2012, 16:57 | Сообщение # 70
Гуру
 
Сообщений: 1748
Награды: 10
Репутация: 660
Статус: Offline
Где Вы в строчке "PlayerPrefs.SetInt("levelName", 1);" видите "любой номер сцены? Вы что считаете, что Юнити Ваши мысли читает? Откуда он сможет узнать другой номер, если Вы ему даете "1"! Подумайте немного! Ну зачем я Вам писал "PlayerPrefs.SetInt("Уровень", level);"? Для чего тут переменная, называемая level?
ЗЫ: Еще раз - зачем Вам сохранять номер уровня на котором игрок, если Вы совершенно не понимаете как задать этот уровень?
 
СообщениеГде Вы в строчке "PlayerPrefs.SetInt("levelName", 1);" видите "любой номер сцены? Вы что считаете, что Юнити Ваши мысли читает? Откуда он сможет узнать другой номер, если Вы ему даете "1"! Подумайте немного! Ну зачем я Вам писал "PlayerPrefs.SetInt("Уровень", level);"? Для чего тут переменная, называемая level?
ЗЫ: Еще раз - зачем Вам сохранять номер уровня на котором игрок, если Вы совершенно не понимаете как задать этот уровень?

Автор - seaman
Дата добавления - 13 Июл 2012 в 16:57
НиколайДата: Пт, 13 Июл 2012, 20:10 | Сообщение # 71
 
Сообщений: 385
Награды: 5
Репутация: 78
Статус: Offline
Kaspersky, при компилировании проекта вами же добавляются, а также упорядочиваются сцены. Собственно какое значение в функции примет переменная, та сцена под тем же номером и будет определена. Собственно... кому я всё это говорю...точнее мы все твердим?

 
СообщениеKaspersky, при компилировании проекта вами же добавляются, а также упорядочиваются сцены. Собственно какое значение в функции примет переменная, та сцена под тем же номером и будет определена. Собственно... кому я всё это говорю...точнее мы все твердим?

Автор - Николай
Дата добавления - 13 Июл 2012 в 20:10
KasperskyДата: Сб, 14 Июл 2012, 12:22 | Сообщение # 72
 
Сообщений: 12
Награды: 0
Репутация: 0
Статус: Offline
seaman, Колямба, Cвершилось чудо! Все заработало!
 
Сообщениеseaman, Колямба, Cвершилось чудо! Все заработало!

Автор - Kaspersky
Дата добавления - 14 Июл 2012 в 12:22
TheReaperДата: Пт, 27 Июл 2012, 01:06 | Сообщение # 73
Meet the revolution
 
Сообщений: 2738
Награды: 23
Репутация: 679
Статус: Offline
Смотрите, скрипт всем известного, но уже не многим Скептика. Я в скриптинге разбираюсь мало, а если бы даже разбирался, то вряд ли бы знал больше, чем Вова. Проблема состоит в том, что если таких скриптов в сцене будет несколько, т.е. висеть на множестве объектов, то fps снизится. Эта система простая, поэтому на другую переходить не хочу. Может быть, есть ошибка, а если нет, то просто интересно из-за чего проблема.
Скрипт, который вешается на объект

Скрипт, который вешается на вейпоинте



 
СообщениеСмотрите, скрипт всем известного, но уже не многим Скептика. Я в скриптинге разбираюсь мало, а если бы даже разбирался, то вряд ли бы знал больше, чем Вова. Проблема состоит в том, что если таких скриптов в сцене будет несколько, т.е. висеть на множестве объектов, то fps снизится. Эта система простая, поэтому на другую переходить не хочу. Может быть, есть ошибка, а если нет, то просто интересно из-за чего проблема.
Скрипт, который вешается на объект

Скрипт, который вешается на вейпоинте

Автор - TheReaper
Дата добавления - 27 Июл 2012 в 01:06
ЛевшаДата: Пт, 27 Июл 2012, 04:37 | Сообщение # 74
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (TheReaper)
просто интересно из-за чего проблема.

Думаю дело в rigidBody, это не самый производительный компонент как ты понимаешь. Размножение обьектов с этим компонентом на сцене, а так же скриптовое управление многими обьектами с этим компонентом одновременно и дает спад fps. ИМХО.


X.cor.R (Prologue)
 
Сообщение
Quote (TheReaper)
просто интересно из-за чего проблема.

Думаю дело в rigidBody, это не самый производительный компонент как ты понимаешь. Размножение обьектов с этим компонентом на сцене, а так же скриптовое управление многими обьектами с этим компонентом одновременно и дает спад fps. ИМХО.

Автор - Левша
Дата добавления - 27 Июл 2012 в 04:37
TheReaperДата: Сб, 28 Июл 2012, 19:35 | Сообщение # 75
Meet the revolution
 
Сообщений: 2738
Награды: 23
Репутация: 679
Статус: Offline
Quote (Левша)
Размножение обьектов с этим компонентом на сцене, а так же скриптовое управление многими обьектами с этим компонентом одновременно и дает спад fps

Соглашусь.
Quote (Левша)
Думаю дело в rigidBody

А избавиться от этого в этом случае никак?



 
Сообщение
Quote (Левша)
Размножение обьектов с этим компонентом на сцене, а так же скриптовое управление многими обьектами с этим компонентом одновременно и дает спад fps

Соглашусь.
Quote (Левша)
Думаю дело в rigidBody

А избавиться от этого в этом случае никак?

Автор - TheReaper
Дата добавления - 28 Июл 2012 в 19:35
ЛевшаДата: Сб, 28 Июл 2012, 19:49 | Сообщение # 76
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Quote (TheReaper)
избавиться от этого в этом случае никак?

Надо знать что ты делаешь, чтоб что то советовать...


X.cor.R (Prologue)
 
Сообщение
Quote (TheReaper)
избавиться от этого в этом случае никак?

Надо знать что ты делаешь, чтоб что то советовать...

Автор - Левша
Дата добавления - 28 Июл 2012 в 19:49
TheReaperДата: Вс, 29 Июл 2012, 17:52 | Сообщение # 77
Meet the revolution
 
Сообщений: 2738
Награды: 23
Репутация: 679
Статус: Offline
Quote (Левша)
Надо знать что ты делаешь, чтоб что то советовать...

Использую систему для перемещения транспорта по вейпоинтам.



 
Сообщение
Quote (Левша)
Надо знать что ты делаешь, чтоб что то советовать...

Использую систему для перемещения транспорта по вейпоинтам.

Автор - TheReaper
Дата добавления - 29 Июл 2012 в 17:52
iluxaДата: Вс, 29 Июл 2012, 18:04 | Сообщение # 78
 
Сообщений: 71
Награды: 0
Репутация: 12
Статус: Offline
Ребят, есть проблема. Пытаюсь изменить переменную родительского объекта таким скриптом:
Code
  var vehicles : GameObject[];
private var    i : int = 0;
   
function OnTriggerEnter(theCollider : Collider)  {
  //Добавление нового вагона
  Instantiate (vehicles [Random.Range(0, vehicles.Length-1) ], Vector3(transform.position.x + 5 - transform.localPosition.x, transform.position.y - transform.localPosition.y, transform.position.z - transform.localPosition.z), Quaternion.identity);
  i++;
  //Изменение VagonState
  if (transform.parent.VagonState == 1) {
[b]    transform.parent.VagonState++;[/b]
  }
  }


Этот скрипт прикреплен на триггер, прикрепленный к главному объекту, т.е. получается вот так:

Объект
|-Триггер

На сам объект прицеплен простой скрипт, просто содержащий переменную:

Code
#pragma strict
[b]
static var VagonState : int = 0; [/b]

function Start () {
}

function Update () {

}


В результате выдает ошибку на четвертой строке верхнего скрипта, т.е. там, где как раз изменяется переменная родительского объекта. Вычитал, что чтобы избавиться от проблемы нужно дописать к объявлению переменной "static", все равно не помогает.
 
СообщениеРебят, есть проблема. Пытаюсь изменить переменную родительского объекта таким скриптом:
Code
  var vehicles : GameObject[];
private var    i : int = 0;
   
function OnTriggerEnter(theCollider : Collider)  {
  //Добавление нового вагона
  Instantiate (vehicles [Random.Range(0, vehicles.Length-1) ], Vector3(transform.position.x + 5 - transform.localPosition.x, transform.position.y - transform.localPosition.y, transform.position.z - transform.localPosition.z), Quaternion.identity);
  i++;
  //Изменение VagonState
  if (transform.parent.VagonState == 1) {
[b]    transform.parent.VagonState++;[/b]
  }
  }


Этот скрипт прикреплен на триггер, прикрепленный к главному объекту, т.е. получается вот так:

Объект
|-Триггер

На сам объект прицеплен простой скрипт, просто содержащий переменную:

Code
#pragma strict
[b]
static var VagonState : int = 0; [/b]

function Start () {
}

function Update () {

}


В результате выдает ошибку на четвертой строке верхнего скрипта, т.е. там, где как раз изменяется переменная родительского объекта. Вычитал, что чтобы избавиться от проблемы нужно дописать к объявлению переменной "static", все равно не помогает.

Автор - iluxa
Дата добавления - 29 Июл 2012 в 18:04
ЛевшаДата: Вс, 29 Июл 2012, 19:13 | Сообщение # 79
Черный Волк
 
Сообщений: 7257
Награды: 30
Репутация: 3313
Статус: Offline
Нельзя обращаться к переменной через transform.parent....
Если переменная статик, то ИмяСкрипта.имяПеременной - ИмяСкрипта.VagonState

В твоем случае скрипты со статической переменной размножаються, учти что значение будет меняться во всех скритах. Поэтому тут видимо не целесообразно применение статик переменных...


X.cor.R (Prologue)
 
СообщениеНельзя обращаться к переменной через transform.parent....
Если переменная статик, то ИмяСкрипта.имяПеременной - ИмяСкрипта.VagonState

В твоем случае скрипты со статической переменной размножаються, учти что значение будет меняться во всех скритах. Поэтому тут видимо не целесообразно применение статик переменных...

Автор - Левша
Дата добавления - 29 Июл 2012 в 19:13
iluxaДата: Вс, 29 Июл 2012, 23:20 | Сообщение # 80
 
Сообщений: 71
Награды: 0
Репутация: 12
Статус: Offline
Quote (Левша)
Нельзя обращаться к переменной через transform.parent....
Если переменная статик, то ИмяСкрипта.имяПеременной - ИмяСкрипта.VagonState

В твоем случае скрипты со статической переменной размножаються, учти что значение будет меняться во всех скритах. Поэтому тут видимо не целесообразно применение статик переменных...

На самом деле мне все равно, какой именно тип будет у переменной. Если static не нужен, как сделать, чтобы работало без него и не выдавало "Expression 'self.transform.parent.VagonState' cannot be assigned to"?
 
Сообщение
Quote (Левша)
Нельзя обращаться к переменной через transform.parent....
Если переменная статик, то ИмяСкрипта.имяПеременной - ИмяСкрипта.VagonState

В твоем случае скрипты со статической переменной размножаються, учти что значение будет меняться во всех скритах. Поэтому тут видимо не целесообразно применение статик переменных...

На самом деле мне все равно, какой именно тип будет у переменной. Если static не нужен, как сделать, чтобы работало без него и не выдавало "Expression 'self.transform.parent.VagonState' cannot be assigned to"?

Автор - iluxa
Дата добавления - 29 Июл 2012 в 23:20
Форум Игроделов » UNITY3D » СКРИПТИНГ » Unity3d-cкриптинг (C#, JavaScript, Boo.)
  • Страница 4 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024