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 10.05.2015 01:15

Ответ: Вопросы от новичка
 
Имхо просто делай дубликат итема через контекстное меню.

Gector 10.05.2015 01:25

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от pax (Сообщение 295752)
Имхо просто делай дубликат итема через контекстное меню.

Это ок. Спасибо) А size нельзя убрать или заблочить от редактирования?
Так то можно не обращать внимание, но... раздражет он. :-D

ANIK123 10.05.2015 02:23

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от Gector (Сообщение 295753)
Это ок. Спасибо) А size нельзя убрать или заблочить от редактирования?
Так то можно не обращать внимание, но... раздражет он. :-D

Прикольная штука

Как заставить UI Graphic перерисоваться? Сейчас делаю вот так :) :
PHP код:

gr.gameObject.SetActive(false); gr.gameObject.SetActive(true); 


pax 11.05.2015 08:54

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от ANIK123 (Сообщение 295754)
Как заставить UI Graphic перерисоваться? Сейчас делаю вот так :) :
PHP код:

gr.gameObject.SetActive(false); gr.gameObject.SetActive(true); 


Попробуй http://docs.unity3d.com/ScriptRefere...tAllDirty.html

ILonion 13.05.2015 01:48

Ответ: Вопросы от новичка
 
Выполнение такого куска:
int a = 34000;
float b = 0.01f;
a = (int)(b * a);
Debug.Log(a);
дает 339.
Подскажите, а куда единица девается ?

Nex 13.05.2015 02:34

Ответ: Вопросы от новичка
 
Цитата:

Сообщение от ILonion (Сообщение 295798)
Выполнение такого куска:
int a = 34000;
float b = 0.01f;
a = (int)(b * a);
Debug.Log(a);
дает 339.
Подскажите, а куда единица девается ?

Возможно из за не точности float. Попробуй использовать Double, а не float.

pax 13.05.2015 09:15

Ответ: Вопросы от новичка
 
Да, это из-за не точности float, просто отбрасывается дробная часть (которая равна например 0,99999999). Можно так:
PHP код:

Mathf.RoundToInt(a); 


ILonion 13.05.2015 18:49

Ответ: Вопросы от новичка
 
Спасибо! Понятно.
double тоже дала 339.
Mathf.RoundToInt дала нужное.

ILonion 13.05.2015 19:02

Ответ: Вопросы от новичка
 
Уточнение-вопрос:
Мне нужно чтобы в результате вычисление флоат*флоат, инт*флоат, флоат*инт, получалось целое без дробной части. Но главное без округления. Т.е. даже если 100.9999999999, чтобы давало на выходе - 100.
Mathf.RoundToInt может такое только делать гарантировано? хотя оно как раз вроде и округляет.
Или просто приведение (int) не будет округлять, а только отбрасывать дробное?
*имеется ввиду на случай если что-то будет заковыристое описанное в пред. вопросе

pax 14.05.2015 09:47

Ответ: Вопросы от новичка
 
приведение к int отбрасывает дробную часть
Mathf.RoundToInt округляет до целого
Mathf.CeilToInt Возвращает наименьшее целое число, которое больше или равно заданному числу
Mathf.FloorToInt Возвращает наибольшее целое число, которое меньше или равно заданному числу

ILonion 14.05.2015 18:01

Ответ: Вопросы от новичка
 
Спасибо!

seaman 14.05.2015 19:58

Ответ: Вопросы от новичка
 
http://poqxert.ru/page/matematika-un...uglenie-chisel

ILonion 17.05.2015 00:02

Ответ: Вопросы от новичка
 
Подскажите, пожалуйста, как правильно действовать:
Дано: огромное кол-во 3д объектов. По надобности делается копия одного из, и "забрасывается" в игровой процесс.
В блитце делал так: загружал все сразу на старте и hideentity. По надобности: копировал, showentity, использовал.

В юнити, с выключенным setactive, Instantiate не делается. Решил выключать компонент renderer. Далее то же самое что в блитце.

Правильный ли это подход в юнити для данного случая?

pax 17.05.2015 10:12

Ответ: Вопросы от новичка
 
В Unity для копирования используются префабы. Не надо их в сцену помещать.

По поводу Instaniate и SetActive - вероятно ты забыл включить снова скопированный объект (SetActive(true))

ANIK123 18.05.2015 02:05

Ответ: Вопросы от новичка
 
Не ожидал, что застряну на такой мелочи, но: как достать исходный обьект из SerializedProperty?
Пишу это:
PHP код:

List<Level.Cell> list = (List<Level.Cell>)(object)property.objectReferenceValue

компилит, но вызывает такое:
type is not a supported pptr value
А других вариантов гугл вроде не выдает
(Пытаюсь достать данные из элементов вышеупомянутого List-а, а не просто нарисовать их)

Или иначе: как, будучи внутри своего PropertyDrawer-а, достать обьект, который он рисует?


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

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