half, float, fixed

Шейдеры и все-все-все.

half, float, fixed

Сообщение Receptor 05 окт 2012, 13:29

Чем эти типы отличаются? Как понять где какой тип лучше приводить? С флот понятно, а остальные, может это что-то типа double и int? :)
_VK.com
Аватара пользователя
Receptor
Адепт
 
Сообщения: 1706
Зарегистрирован: 22 ноя 2011, 07:09
Откуда: Волгодонск

Re: half, float, fixed

Сообщение waruiyume 05 окт 2012, 13:38

float: high precision floating point. Generally 32 bits, just like float type in regular programming languages.
half: medium precision floating point. Generally 16 bits, with a range of -60000 to +60000 and 3.3 decimal digits of precision.
fixed: low precision fixed point. Generally 11 bits, with a range of -2.0 to +2.0 and 1/256th precision.

http://docs.unity3d.com/Documentation/C ... mance.html
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону

Re: half, float, fixed

Сообщение Receptor 05 окт 2012, 14:37

Фактически, просто выделяется разный объем памяти, и все? Т.е. по сути можно везде флот юзать :) Спасибо.
_VK.com
Аватара пользователя
Receptor
Адепт
 
Сообщения: 1706
Зарегистрирован: 22 ноя 2011, 07:09
Откуда: Волгодонск

Re: half, float, fixed

Сообщение WhiteDevil 05 окт 2012, 14:44

Видеокарта с вами так просто не согласится :)
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: half, float, fixed

Сообщение DbIMok 05 окт 2012, 14:50

особенно на мобилках
Optimal precision for GPU family
• 11/12bit per-component (fixed) - SGX pre543, Tegra
• 16bit per-component (half) - SGX 543, Mali 4xx
• 32bit per-component (float) - Adreno, Mali T6xx

например, отсюда
правильный вопрос - половина ответа. учитесь формулировать вопросы понятно.
Новости > _Telegram чат @unity3d_ru (11.6k/4.8k online) > _Telegram канал @unity_news (4.8k подписчиков) > Телеграм тема > "Спасибо"
Аватара пользователя
DbIMok
Адепт
 
Сообщения: 6372
Зарегистрирован: 31 июл 2009, 14:05

Re: half, float, fixed

Сообщение Receptor 05 окт 2012, 16:18

Ну а как же разобраться под что выделить какой тип (popcorn) Хотя наверное со временем дойдет само
_VK.com
Аватара пользователя
Receptor
Адепт
 
Сообщения: 1706
Зарегистрирован: 22 ноя 2011, 07:09
Откуда: Волгодонск

Re: half, float, fixed

Сообщение WhiteDevil 05 окт 2012, 16:51

Вы ведь не выделяете в с# для переменных с плавающей точкой тип double
А для целочисленных long
А могли бы, если значение не помещается

Выделять память нужно по минимуму. Если значение попадает в рэнж -2.0 и 2.0, то fixed. А если от -3.4 × 10^38 до +3.4 × 10^38, то float
Вам же waruiyume ссылку привел
Аватара пользователя
WhiteDevil
UNIверсал
 
Сообщения: 455
Зарегистрирован: 19 дек 2010, 15:55

Re: half, float, fixed

Сообщение Receptor 05 окт 2012, 17:04

Мне это понятно, но иногда (даже чаще всего) я понятия не имею сколько памяти минимум мне надо. Ну хорошо, с опытом думаю придет
_VK.com
Аватара пользователя
Receptor
Адепт
 
Сообщения: 1706
Зарегистрирован: 22 ноя 2011, 07:09
Откуда: Волгодонск


Вернуться в Shader Lab

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

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