forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Общие вопросы (http://forum.boolean.name/forumdisplay.php?f=166)
-   -   Вопросы от новичка (http://forum.boolean.name/showthread.php?t=15809)

pax 14.01.2013 23:49

Ответ: Вопросы от новичка
 
AudioListener который обычно висит на камере есть в сцене?

Для музыки обычно делают 2d звук

pie 15.01.2013 01:51

Ответ: Вопросы от новичка
 
Всем привет! Делаю запрос при старте вот так:
Код:

public void Start() {
                Application.ExternalEval("" +
                        "VK.init(function() {" +
                                "VK.api(\"getProfiles\"," +
                                        "{uids:\""+vkId+"\",fields:\"photo\"}," +
                                        "function(data) {" +
                                                "GetUnity().SendMessage(\"General\", \"OnGetProfiles\", data.response)" +
                                        "}" +
                                ")" +
                        "});");
        }

В логах веб плеера ошибка:
Цитата:

MissingMethodException: The best match for method OnGetProfiles has some invalid parameter.
at System.MonoType.InvokeMember (System.String name, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object target, System.Object[] args, System.Reflection.ParameterModifier[] modifiers, System.Globalization.CultureInfo culture, System.String[] namedParameters) [0x00000] in <filename unknown>:0

at UnityEngine.SetupCoroutine.InvokeMember (System.Object behaviour, System.String name, System.Object variable) [0x00000] in <filename unknown>:0

(Filename: Line: -1)
Метод OnGetProfiles существует.

pie 15.01.2013 02:16

Ответ: Вопросы от новичка
 
Все работает. Просто отправлял не правильный параметр. Всем спасибо!)

pax 15.01.2013 02:17

Ответ: Вопросы от новичка
 
$.toJSON(data.response) если использовать тот плугин, который я тебе дал

mauNgerS 15.01.2013 11:11

Ответ: Вопросы от новичка
 
Только что заметил. В консоле юнити мне пишет с жёлтым треугольником:

Combine mesh instance 935 is null.
UnityEngine.Mesh:CombineMeshes(CombineInstance[])
CreateMap:Start() (at Assets/Scripts/CreateMap.cs:390)

При этом всё работает как мне нужно.
О чем это он? Всё же работает.

pax 15.01.2013 11:14

Ответ: Вопросы от новичка
 
возможно в массиве инстансов 935-й элемент - null

Morganolla 15.01.2013 14:03

Ответ: Вопросы от новичка
 
Где то видел, как задать очередность инициализации скриптов для объектов на сцене ( ф-ии Start() в классе) но сейчас не могу найти...:)
Подскажите пожалуйста :)

pax 15.01.2013 14:55

Ответ: Вопросы от новичка
 
Вот тут http://docs.unity3d.com/Documentatio...Execution.html

Morganolla 15.01.2013 16:09

Ответ: Вопросы от новичка
 
У меня почему то очень часто в ф-ии

void Update ()
{
switch(state)
case 0:
...
break;
case 1:
...............................................

используется оператор switch(), который переключает поведение объекта в зависимости от его текущего состояния (state) в игре а у вас??? :)
Многие ли используют этот прием? Или я один такой оригинал?

pax 15.01.2013 16:12

Ответ: Вопросы от новичка
 
Можно включать или выключать скрипты например, а так да, я тоже использую когда надо. Свитч быстро работает.

mauNgerS 15.01.2013 23:56

Ответ: Вопросы от новичка
 
Каким образом передать из скрипта в скрипт массив:

public int [,] Map = new int[32,32]

Описанными в вики способами получается получать переменные и методы, а вот с массивом не выходит.

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

NullReferenceException: Object reference not set to an instance of an object
Player.Start () (at Assets/Scripts/Player.cs:19)

seaman 15.01.2013 23:59

Ответ: Вопросы от новичка
 
Чем отличается массив от переменной?- ничем. Вывод - у Вас ошибка в скрипте - приводите скрипт.
ЗЫ: скорее всего не нашли второй скрипт, в котором определен массив.

mauNgerS 16.01.2013 00:21

Ответ: Вопросы от новичка
 
Вот фрагменты скриптов.
В первом скрипте:

PHP код:

public class CreateMapMonoBehaviour {
    public 
int grid=32;
    public 
int[,] LMap  = new int[38,38]; 

во втором:

PHP код:

public class Player MonoBehaviour {
    public 
CreateMap CreateMap;
    public 
int grid;
    public 
int[,] LMap;
    
    public 
void Awake()
    {
       
CreateMap GetComponent<CreateMap>();
    } 

при этом grid нормально используется, а на массив ошибка.

pie 16.01.2013 00:52

Ответ: Вопросы от новичка
 
Всем привет! Возник вопрос по поводу Веб плеера. Как можно поставить на фон загрузки картинку (в справке показано что можно ставить цвет);

seaman 16.01.2013 01:03

Ответ: Вопросы от новичка
 
Ну во первых вот так:
public CreateMap CreateMap;
лучше не делайте. Зачем самому путаться и других путать, в том числе и компилятор. Лучше так:
public CreateMap createMap;
Скрипты как я понимаю на одном объекте, и LMap во втором получаете так:
LMap = CreateMap.LMap;
Возможно компилятор считает, что Вы пытаетесь получить статическое поле LMap класса CreateMap. Его нет - вот и получается null.


Часовой пояс GMT +4, время: 20:46.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot