цензура в Unity

техническая поддержка по Unity

Сообщение цензура в Unity
» 05 ноя 2015, 18:39

всем привет. хочу сделать цензуру как в The Sims(квадратики, когда сим голый), но что-то не могу нагуглить... есть пиксельная камера, но она делает все в квадратиках, а мне нужно наложить маску на объект, и чтоб все, что за этим объектом было зацензурено. я думаю все поняли о чем я, но на всякий случай приведу пример из нашего Констракта. если сделать спрайт, и наложить на него эффект PixellateMask размером, скажем, 16, и этот спрайт поставить над другим спрайтом, то будет такой эффект.
Аватара пользователя

Участник
Сообщений: 125
Я тут с 14 окт 2014
Репутация 15 [ ? ]

Сообщение цензура в Unity
» 08 ноя 2015, 10:48

Shuher, а если сделать объект с шейдором/эффектом?
Построй мне мегалит, да побольше!
Аватара пользователя

Участник
Сообщений: 523
Я тут с 08 июл 2015
Откуда: Из цикла
Двиг: construct 2
Лицензия: personal
Репутация 6 [ ? ]

Сообщение цензура в Unity
» 08 ноя 2015, 11:33

я про то и спрашиваю)) с шейдерами не дружу, поэтому сам накодить не смогу. если есть ссылочка на подобный урок - не жадничайте)
Аватара пользователя

Участник
Сообщений: 125
Я тут с 14 окт 2014
Репутация 15 [ ? ]

Сообщение цензура в Unity
» 09 ноя 2015, 03:17

Shuher, не нашол пойди и спроси в unity3d.ru
Построй мне мегалит, да побольше!
Аватара пользователя

Участник
Сообщений: 523
Я тут с 08 июл 2015
Откуда: Из цикла
Двиг: construct 2
Лицензия: personal
Репутация 6 [ ? ]

Сообщение цензура в Unity
» 11 ноя 2015, 09:31

так хочется же наш раздел развивать... а на том форуме все такие всезнайки, на вопросы не отвечают, а отсылают читать мануалы. оно то было бы хорошо, если бы люди просили ссылки на мануалы, а не задавали конкретные вопросы))
Аватара пользователя

Участник
Сообщений: 125
Я тут с 14 окт 2014
Репутация 15 [ ? ]

Сообщение цензура в Unity
» 12 ноя 2015, 17:49

Shuher, я не всезнайка! :acute: Я просто пришёл сюда потому что construct не очень нормальный. А не могу ответить потому что я новичок/нуб.
Построй мне мегалит, да побольше!
Аватара пользователя

Участник
Сообщений: 523
Я тут с 08 июл 2015
Откуда: Из цикла
Двиг: construct 2
Лицензия: personal
Репутация 6 [ ? ]

Сообщение цензура в Unity
» 13 ноя 2015, 20:47

Syoga, спрашивается, какого лешего тогда тут флудишь??? И что не так с С2? Ясное дело, не прилагая усилий, знания в голову не залезут...
Аватара пользователя

Игродел
Сообщений: 2223
Я тут с 22 авг 2013
Репутация 454 [ ? ]

Сообщение цензура в Unity
» 15 ноя 2015, 16:01

rokstars, пошёл плакать в угол :cray:
Построй мне мегалит, да побольше!
Аватара пользователя

Участник
Сообщений: 523
Я тут с 08 июл 2015
Откуда: Из цикла
Двиг: construct 2
Лицензия: personal
Репутация 6 [ ? ]

Сообщение цензура в Unity
» 19 ноя 2015, 17:52

вот шейдер
Код: Выделить всё
Shader "Custom\Pixelate"
{
    Properties
    {
        _CellSize ("Cell Size", Vector) = (0.02, 0.02, 0, 0)
    }
    SubShader {
        Tags { "RenderType"="Opaque" "Queue" = "Transparent" }
        LOD 200
     
        GrabPass { "_PixelationGrabTexture"}
     
        Pass {
            CGPROGRAM
                #pragma vertex vert
                #pragma fragment frag
                #include "UnityCG.cginc"
         
                struct v2f {
                    float4 pos : SV_POSITION;
                    float4 grabUV : TEXCOORD0;
                };
             
                float4 _CellSize;
             
                v2f vert(appdata_base v) {
                    v2f o;
                    o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
                    o.grabUV = ComputeGrabScreenPos(o.pos);
                    return o;
                }
         
                sampler2D _PixelationGrabTexture;
         
                float4 frag(v2f IN) : COLOR
                {
                    float2 steppedUV = IN.grabUV.xy/IN.grabUV.w;
                    steppedUV /= _CellSize.xy;
                    steppedUV = round(steppedUV);
                    steppedUV *= _CellSize.xy;
                    return tex2D(_PixelationGrabTexture, steppedUV);
                }
            ENDCG
        }
    }
}


потом нужно создать плоскость, накинуть на нее материал и поставить этот шейдер.
ссылка на исходное обсуждение(да простят меня админы), в целях повышения образованности))
Аватара пользователя

Участник
Сообщений: 125
Я тут с 14 окт 2014
Репутация 15 [ ? ]

Сообщение цензура в Unity
» 20 ноя 2015, 06:26

Linux + Windows - MacOS = Lino Dows

Карантин
Сообщений: 47
Я тут с 19 ноя 2015
Двиг: Construct 2
Лицензия: Personal
Репутация 2 [ ? ]



Вернуться в Вопрос-Ответ по Unity

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх