블로그 이미지
Every unexpected event is a path to learning for you.

카테고리

분류 전체보기 (2762)
Unity3D (831)
Programming (475)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (229)
협업 (10)
3DS Max (3)
Game (12)
Utility (69)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (52)
Android (15)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday
07-05 05:55

[링크] https://toconakis.tech/ios-sign-in-with-apple/

 

【Unity】iOSでSign in with Appleの実装を解説|toconakis.tech

UnityでiOS向けのSing in with Appleを実装し、FirebaseAuthと連携していく方法を解説し

toconakis.tech

 

반응형
Posted by blueasa
, |

[링크] https://toconakis.tech/glassmorphism/

 

【Unity】すりガラス風UIの作り方を解説 -グラスモーフィズム-|toconakis.tech

現在開発中の個人開発ゲーム「EUREKA5」で使っている「すりガラス風UI」の作り方を解説します。   EUR

toconakis.tech

 

Shader "glassShader"
{
    Properties
    {
        _MainTex("Texture", 2D) = "white" {}
        _Blur("Blur", Float) = 10
    }
    SubShader
    {

        Tags{ "Queue" = "Transparent" }

        GrabPass
        {   
        }

        Pass
        {
            CGPROGRAM

            #pragma vertex vert
            #pragma fragment frag
            #include "UnityCG.cginc"

            struct appdata
            {
                float4 vertex : POSITION;
                float2 uv : TEXCOORD0;
                fixed4 color : COLOR;
            };

            struct v2f
            {
                float4 grabPos : TEXCOORD0;
                float4 pos : SV_POSITION;
                float4 vertColor : COLOR;
            };

            v2f vert(appdata v)
            {
                v2f o;
                o.pos = UnityObjectToClipPos(v.vertex);
                o.grabPos = ComputeGrabScreenPos(o.pos);
                o.vertColor = v.color;
                return o;
            }

            sampler2D _GrabTexture;
            fixed4 _GrabTexture_TexelSize;

            float _Blur;

            half4 frag(v2f i) : SV_Target
            {
                float blur = _Blur;
                blur = max(1, blur);

                fixed4 col = (0, 0, 0, 0);
                float weight_total = 0;

                [loop]
                for (float x = -blur; x <= blur; x += 1)
                {
                    float distance_normalized = abs(x / blur);
                    float weight = exp(-0.5 * pow(distance_normalized, 2) * 5.0);
                    weight_total += weight;
                    col += tex2Dproj(_GrabTexture, i.grabPos + float4(x * _GrabTexture_TexelSize.x, 0, 0, 0)) * weight;
                }

                col /= weight_total;
                return col;
            }
            ENDCG
        }
        GrabPass
        {   
        }

        Pass
        {
            CGPROGRAM

            #pragma vertex vert
            #pragma fragment frag
            #include "UnityCG.cginc"

            struct appdata
            {
                float4 vertex : POSITION;
                float2 uv : TEXCOORD0;
                fixed4 color : COLOR;
            };

            struct v2f
            {
                float4 grabPos : TEXCOORD0;
                float4 pos : SV_POSITION;
                float4 vertColor : COLOR;
            };

            v2f vert(appdata v)
            {
                v2f o;
                o.pos = UnityObjectToClipPos(v.vertex);
                o.grabPos = ComputeGrabScreenPos(o.pos);
                o.vertColor = v.color;
                return o;
            }

            sampler2D _GrabTexture;
            fixed4 _GrabTexture_TexelSize;

            float _Blur;

            half4 frag(v2f i) : SV_Target
            {
                float blur = _Blur;
                blur = max(1, blur);

                fixed4 col = (0, 0, 0, 0);
                float weight_total = 0;

                [loop]
                for (float y = -blur; y <= blur; y += 1)
                {
                    float distance_normalized = abs(y / blur);
                    float weight = exp(-0.5 * pow(distance_normalized, 2) * 5.0);
                    weight_total += weight;
                    col += tex2Dproj(_GrabTexture, i.grabPos + float4(0, y * _GrabTexture_TexelSize.y, 0, 0)) * weight;
                }

                col /= weight_total;
                return col;
            }
            ENDCG
        }

    }
}
반응형
Posted by blueasa
, |

[링크] https://toconakis.tech/unity-ios-google-sign-in/

 

【Unity】iOSネイティブ連携でGoogle Sign Inを実装する方法|toconakis.tech

UnityでGoogle Sign Inを実装する場合、Google公式のライブラリを利用するのが一般的です。 [blo

toconakis.tech

 

반응형
Posted by blueasa
, |

[Unity] JDK 11 support

Unity3D/Tips / 2024. 6. 4. 10:50

Unity 2021.3.38f1

----

 

Firebase 12.0.0을 업뎃하려고 보니 Authentication쪽에서 JDK 11을 요구한다.

Unity 2021에서 JDK 11을 사용하려고 별도로 다운받아서 연결해서 빌드해보니, Unity 2021에서는 JDK 1.8만 사용가능하다면서 에러가 뜬다.

 

그래서 찾아보니 JDK 11은 Unity 2022.3 이후 버전부터 지원하는 것 같다.

결국 Firebase 12.0.0(정확히는 Authentication)를 사용하려면. JDK 11을 지원하는 Unity 2022.3 이후 버전으로 올려야 될 것 같다.

 

Unity 2021 버전은 Firebase 11.9.0이 마지막 버전인가.. 싶다.

 

 

[링크] https://forum.unity.com/threads/jdk-11-support.1261301/

 

Question - JDK 11 support

Starting API 31, JDK 11 is a requirement due to addition of new annotations used by some of the dependencies. If I try to target api 31, it fails with...

forum.unity.com

 

[참조]

  • Unity Editor 2022.2 미만 버전은 JDK 8만 지원한다. 해당 버전의 Unity Editor를 쓴다고 해서 Android Studio도 반드시 JDK 8을 써야 하는 건 아니지만, 혹시나 JDK 관련 에러가 다른 방법으로 고쳐지지 않을 경우 스튜디오 버전을 4.1.x로 내리는 것을 시도해보면 좋을 것 같다. 참고 공식문서

[참조링크] https://velog.io/@maratangsoft/Android%EC%99%80-Unity-%EA%B0%84-Gradle-%EB%B2%84%EC%A0%84-%EA%B4%80%EB%A6%AC#unity--jdk

 

Android와 Unity 간 버전 호환성 관리

유니티 에디터로 만든 안드로이드 앱에 안드로이드 라이브러리 통합시

velog.io

 

반응형
Posted by blueasa
, |