Unode입니다.

플레이메이커를 사용하면서 매번 느끼는것은 도데체 내가 짠 로직이 코드로는 어떻게 되는가 라는것이었습니다.

볼트는 사용하려했지만... 코딩에 가깝다는데...그래도 코드를 볼수 없다는게... 그다지 매력적이지 않았습니다.

그냥 플레이메이커에 비해 코딩에 가깝다는것이지..어차피 코드는 아니니깐..

코드를 모르는 상태로 짠다는게 약간 불안함도 있고.. 그러던중 볼트와 플레이메이커에 대해서 싸우던 해외개발자들중에

한사람이 글이 들어왔습니다. "unode를 사용해라... 그럼 코드에 대해서 알게될것이다."

그래서 다운받았습니다... 디스코드에서 개발자가 질문에 대답도 잘해주고 앞으로 기대되는 스크립트입니다.

(사실 가장 큰 이유는...코딩이 힘들어요..ㅠㅠ 별것도 아닌것에 맨날 오타나고...오류나고..ㅜㅜ)

'Unity > ETC' 카테고리의 다른 글

유니티 빌드옵션 Compression Method  (0) 2020.11.11
Memory Profiler  (0) 2020.11.10
복사 오브젝트와 Attach 오브젝트의 포퍼먼스 차이  (0) 2020.09.29
유니티 패키지에 대한 정보는  (0) 2020.09.08
dynamic bone test  (0) 2020.08.21
Shader "Custom/fake_reflection"
{
	Properties
	{
	_MainTex("Albedo (RGB)", 2D) = "white" {}
	_NormalMap("NormalMap", 2D) = "bump" {}
	_reflect("reflect", Range(-1,1)) = 0.9
	_CubeMap("CubeMap", cube) = "" {}
	}
		SubShader
	{
		Tags{ "RenderType" = "Opaque" }

		CGPROGRAM
#pragma surface surf Lambert 
#pragma target 3.0

		sampler2D _MainTex, _NormalMap;
		samplerCUBE _CubeMap;
		float _reflect;

	struct Input
	{
		float2 uv_MainTex, uv_NormalMap;
		float3 worldRefl;
		INTERNAL_DATA
	};

	void surf(Input IN, inout SurfaceOutput o)
	{
		fixed4 c = tex2D(_MainTex, IN.uv_MainTex);

		o.Normal = UnpackNormal(tex2D(_NormalMap, IN.uv_NormalMap));

		o.Albedo = c.rgb;
		o.Emission = texCUBE(_CubeMap, WorldReflectionVector(IN, o.Normal))*_reflect;

		o.Alpha = c.a;
	}
	ENDCG
	}
		FallBack "Diffuse"
}

큐브맵이 있어야 작동한다.

'Unity > Surface Shader' 카테고리의 다른 글

적을 나타내는 아웃라인  (0) 2020.12.19
가벼운 툰 셰이더  (0) 2020.12.16
기본적인 일반텍스쳐+노멀+아웃라인 적용 쉐이더  (0) 2020.10.06
Alpha  (0) 2020.05.24
RampTexture  (0) 2020.05.21

 

 

 

Clamp와 Saturate는 비슷한 기능이나 숫자를 넣고 안넣고의 차이가 있습니다.

Clamp는 노멀이나 컬러가 곱해지거나 더해질때 특정 값( min, max 주로 0과 1)을 넣어서 넘어가지 않게 설정하는것입니다.

즉, 1+1= 2가 되는것을 1로 제한하는것입니다. 숫자가 낮아지거나 밝아지면 점점 검은색이나 힌색으로 변하는것을 방지한다고 생각하면 됩니다.

 

 

UV좌표를 참조하여 타일링이나 U나 V좌표를 가지고 조작이 가능합니다.

 

 

3D상에 좌표 XYZ를 가져와서 오브젝트의 형태와 관계없이 월드좌표로 조작이 되도록 합니다.

위에서 아래로 오브젝트를 나누거나, 좌우에서 우로 오브젝트를 나누는것이 가능합니다.

 

 

Scale은 텍스쳐를 곱할때 사용된다. 일종에 multiply 기능이라고 생각하면되는데 약간은 다릅니다.

Negate는 Scale를 뒤집을수 있다.(one minus랑 비슷한거 같습니다.)

 

Sign의 기능은 노멀값(컬러?)을 중간값없이 -1,0,1로 끊어주는 기능입니다.

 

 

세기능의 차이점 입니다.(상자 위치는 0,0,0입니다.Abs만 약간 치우쳤군요.)

Sign은 -1,0,1로 나뉘어서 출력되는 것 입니다.( 그이하나 이상이 안된다고 생각하면됩니다.)

Relay는 -1에서 1 사이에서 출력되는 것 입니다.( 그이하나 이상이 안된다고 생각하면됩니다.)

Abs는 0 에서 1 사이가 출력되는 것 입니다.( 그이하나 이상이 안된다고 생각하면됩니다.)

 

'Unity > Shader Graph & Amplify' 카테고리의 다른 글

Shader graph 팁  (0) 2020.12.19
sign값을 이용한 포지션 이동  (0) 2020.11.18
툰 쉐이더 Amplify shader set  (0) 2020.11.02
Shader graph-input03  (0) 2020.07.12
Shader graph-input02  (0) 2020.06.29
public class NPC_Animation : MonoBehaviour
{
    Animator anim;

    // Start is called before the first frame update
    void Start()
    {
        anim = GetComponent<Animator>();
        anim.applyRootMotion = false;//humanoid에서 캐릭터 위치가 바뀌는것을 방지한다.
        
    }

    // Update is called once per frame
    void Update()
    {
        int pickAnumber = Random.Range(1, 6);
        anim.SetInteger("ani", pickAnumber); //ani라는 int를 animator에 추가

    }
}

캐릭터의 모션 파라미터 타입을 int로 설정한후에 랜덤으로 동작하게 만들었습니다.

'Unity > C#' 카테고리의 다른 글

유니티의 Object 이해  (0) 2020.12.06
Scene 재시작  (0) 2020.11.21
EditorWindow  (0) 2020.10.30
간단한 애니메이션 스크립트  (0) 2020.09.08
C# 기초 기억창고  (0) 2020.08.09

애초 surface shader로 제작을 하였으나, 혹시 URP로 넘어갈것을 대비해야될거 같아서

Amplify shader로 만들어놨습니다. 확실히...코드로 짠거보다 복잡한 모양새군요.

'Unity > Shader Graph & Amplify' 카테고리의 다른 글

sign값을 이용한 포지션 이동  (0) 2020.11.18
Amplify Shader 주요 기능  (0) 2020.11.04
Shader graph-input03  (0) 2020.07.12
Shader graph-input02  (0) 2020.06.29
Shader graph -input01  (0) 2020.06.11
using UnityEngine;
using UnityEditor;
using System.Collections;

public class ryo_dir : EditorWindow
{
    [MenuItem("ZCustom/ryo_direct",false, priority:1)]//메뉴생성


    static void ShowWindow()
    {
        // 생성되어있는 윈도우를 가져온다. 없으면 새로 생성한다. 싱글턴 구조인듯하다
        ryo_dir window = (ryo_dir)EditorWindow.GetWindow(typeof(ryo_dir));

    }

    public string ABB;
    int BoxMaker=1;
    Object GoObject = null;
    Object SceneObject3 = null;

    void OnGUI()
    {
        ABB = EditorGUI.TextField(new Rect(10,10,300,17), "글자써봐", ABB);

        
        //버튼으로 오브젝트 실행
        BoxMaker = EditorGUI.IntField(new Rect(10, 30, 300, 17), "게임오브젝트", BoxMaker);

        if (GUI.Button(new Rect(100, 80, 80, 40), "BoxMaker"))
        {
            for (int i = 0; i < BoxMaker; i++)
            {
                GameObject obj = new GameObject();
                obj.name = "GameObject" + i;
            }
 
        }

        //버튼 위치보기
        GUI.Button(new Rect(100, 140, 80, 40), "Button2");  // 가로위치,세로위치,박스세로, 박스가로


        //버튼 띄우기
        GUILayout.Space(200);
        
        
        //오브젝트필드
        GoObject = EditorGUILayout.ObjectField("오브젝트넣기", GoObject, typeof(GameObject));
  
  		//씬넣기
        GUILayout.Space(5);
        SceneObject3 = EditorGUILayout.ObjectField("씬넣기", SceneObject3, typeof(SceneAsset));

    }

    // 또하나의 탭만들기
    [MenuItem("ZCustom/ryo_what2",false,priority:2)]
    static void Twwoo()
    {
        

    }

}

이것저것 모아봤습니다.

'Unity > C#' 카테고리의 다른 글

Scene 재시작  (0) 2020.11.21
캐릭터 랜덤 모션  (0) 2020.11.02
간단한 애니메이션 스크립트  (0) 2020.09.08
C# 기초 기억창고  (0) 2020.08.09
MiniPorfiler  (0) 2020.07.29

뭔가 써먹으려고 만들었지만 써먹지 못한...

rhy_01.shader
0.00MB

 

 

 

뭔가 써먹으려고 만들었지만 써먹지 못한...

rhy_02.shader
0.00MB

 

'Unity > Surface Shader' 카테고리의 다른 글

가벼운 툰 셰이더  (0) 2020.12.16
가짜 리플렉션  (0) 2020.11.10
Alpha  (0) 2020.05.24
RampTexture  (0) 2020.05.21
OUTLINE  (0) 2020.05.17

같은 조건에서 복사된 오브젝트와 attach 한 오브젝트의 stats를 비교 테스트진행하였습니다.

역시나, attach한것이 훠얼~씬 효과적임을 나타냅니다.

 

똑같이 URP에서 테스트 하였고 결과는 비슷했습니다. 다만, URP는  격차가 좀 덜 하네요.

tris가 차이가 나는건 쉐이더가 다르기때문이라 판단됩니다.

'Unity > ETC' 카테고리의 다른 글

Memory Profiler  (0) 2020.11.10
코딩을 도와주는 비쥬얼스크립트  (0) 2020.11.10
유니티 패키지에 대한 정보는  (0) 2020.09.08
dynamic bone test  (0) 2020.08.21
RealToon Tutorials  (0) 2020.07.29

svn을 사용하다보면 유니티 패키지에 대한 정보까지 안올라가는 경우가 있습니다.

그렇다고 라이브러리를 통째로 업데이트할수 없습니다.

하여, pagckages폴더 안에 packages-lock.json을 올리면 패키지가 없는 사람은 자동으로 유니티가 받게 합니다.

 

'Unity > ETC' 카테고리의 다른 글

코딩을 도와주는 비쥬얼스크립트  (0) 2020.11.10
복사 오브젝트와 Attach 오브젝트의 포퍼먼스 차이  (0) 2020.09.29
dynamic bone test  (0) 2020.08.21
RealToon Tutorials  (0) 2020.07.29
유니티짱 쉐이더 설정  (0) 2020.07.29