• Как сделать прозрачным группу спрайтов SpriteRenderer одновременно?

    @namee
    видел как-то на просторах решение этой задачи через шейдеры.
    Вроде как вот этот

    // Шейдер при наложении спрайтов отключает просвечивание
    
    Shader "Custom/SpriteAlpha"
    {
    	Properties
    	{
    		[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
    		_Color ("Tint", Color) = (1,1,1,1)
    	}
    
    	SubShader
    	{
    		Tags
    		{ 
    			"Queue"="Transparent" 
    			"IgnoreProjector"="True" 
    			"RenderType"="Transparent" 
    			"PreviewType"="Plane"
    			"CanUseSpriteAtlas"="True"
    		}
    		
    		Cull Off
    		Lighting Off
    		ZWrite On
    		ZTest Less
    		Blend SrcAlpha OneMinusSrcAlpha
    
    		Pass
    		{
    		CGPROGRAM
    			#pragma vertex vert
    			#pragma fragment frag
    			#include "UnityCG.cginc"
    			
    			struct appdata_t
    			{
    				float4 vertex   : POSITION;
    				float4 color    : COLOR;
    				float2 texcoord : TEXCOORD0;
    			};
    
    			struct v2f
    			{
    				float4 vertex   : SV_POSITION;
    				fixed4 color    : COLOR;
    				half2 texcoord  : TEXCOORD0;
    			};
    			
    			fixed4 _Color;
    
    			v2f vert(appdata_t IN)
    			{
    				v2f OUT;
    				OUT.vertex = UnityObjectToClipPos(IN.vertex);
    				OUT.texcoord = IN.texcoord;
    #ifdef UNITY_HALF_TEXEL_OFFSET
    				OUT.vertex.xy += (_ScreenParams.zw-1.0)*float2(-1,1);
    #endif
    				OUT.color = IN.color * _Color;
    				return OUT;
    			}
    
    			sampler2D _MainTex;
    
    			fixed4 frag(v2f IN) : SV_Target
    			{
    				half4 color = tex2D(_MainTex, IN.texcoord) * IN.color;
    				clip (color.a - 0.01);
    				return color;
    			}
    		ENDCG
    		}
    	}
    }
    Ответ написан
    2 комментария
  • Как сделать нейросетку для генетического 2D алгоритма?

    @imageman
    Рекуррентные сети
    https://qudata.com/ml/ru/NN_RNN_Torch.html - довольно сносное описание.
    Объясню "на пальцах":
    а) на вход нейросети подаются N блоков (фиксированной длинны), к примеру для N ботов это будут координаты x,y поэтому у нас будет вектор [N , 2]
    б) у нас есть некое внутреннее состояние нейросети (почти всегда инициализируется нолями) которое задается всегда определенным образом перед каждым запуском. Это массив длинной K (например 10). *** В твоем случае в самом начале в этот массив можно записать свои собственные координаты, какие-то дополнительные параметры (например число ботов).
    в) сеть состоит из двух частей - рекуррентная (перебирает по очереди вход) и финальная часть, которая на основе внутреннего состояния дает окончательный вывод (прогноз, результат).

    Теперь чуть подробнее. Рекуррентная часть это простая нейросеть любой конфигурации, которая на вход принимает массив "внутреннее состояние нейросети" и одну из N строк входного массива (в твоем случае "внутреннее состояние нейросети" + 2 числа). Обрабатывает это и на выходе получается новый массив "внутреннее состояние нейросети". Т.е. (как пример) на входе 12 чисел, на выходе 10 чисел.

    После обработки всех N строк входного массива в дело вступает финальная часть нейросети. Она может быть тоже любой конфигурации (структуры). На вход принимает "внутреннее состояние нейросети" (например 10 чисел), на выходе какой-то уже конечный результат (к примеру "угол" и "скорость").

    Надеюсь понятно изложил.
    Ответ написан
    1 комментарий
  • Как в JSDoc описать тип через результат вызова функции?

    Aetae
    @Aetae Куратор тега JavaScript
    Тлен
    Зависит от того, что вам нужно: "шашечки или ехать".

    Коли первое - то тут уж надо глубоко изучать документацию по jsdoc, без гарантированного результата. Ради (почти) никому не нужных извращений я не возьмусь. :)

    Коли второе - IDE сейчас кушают любой typescript в jsdoc, потому просто смело пихаете:
    /** @type {Array<ReturnType<typeof createElement>>} */
    и оно заработает. Но никаких долговременных гарантий.
    Ответ написан
    1 комментарий
  • Как сделать сложный для распознавания текст капчи (captcha)?

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Каким образом должно быть сформировано изображение, для того, чтобы его распознавание становилось наиболее нетривиальной и сложной задачей?

    Если у вас пользователи из России, пишите на каптче конструкцию в духе
    тысячаче
    тыреставосе
    мьдесятво
    семь

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

    Выводите картинку через JS, а в случае совсем беды, добавьте её показ по клику. А до клика и без включенного JS показывайте "левую" каптчу, через ввод которой ловите ботов.
    Ответ написан
    3 комментария
  • Существуют ли реализации библиотек для генерации keygen (8bit) музыки на c# на.NET?

    @AmikoYuki
    За генерацию не скажу, для воспроизведение навалом BassMOD например, самая популярная.

    P/S/ Не "музыки в стиле keygen (8bit)" , а "Трекерная музыка"

    Ответ написан
    Комментировать
  • Интерфейс для мобильной HTML5 игры

    vikS
    @vikS
    По дизайну различных элементов для игр, многое можно посмотреть здесь
    Ответ написан
    Комментировать