전체 글118 1.4 도형 - 타일링 타일링을 해봅시다타일링이라고 함은 특정 모양의 여러개의 타일들이 일정한 간격으로 배치가 되는 것을 의미 합니다.우리는 사각형을 만드는 것을 배웠으니, 사각형 모양으로 여러개를 반복해서 렌더링 할 것입니다. 아래 타일링을 적용하는 코드는 아래 한 줄 입니다.float2 pos = frac(i.position.xy * _TileCount);원리는 다음과 같습니다.frac 함수는 분위수 부분을 반환합니다.frac(x) + floor(x) = x 로 정의 됩니다.frac(x)는 분수 부분을 리턴합니다. 예를 들어1) 11.43경우, floor는 11, frac은 0.43 입니다.2) -1.4 음수 경우 = floor는 -2, frac은 0.6 입니다. UnityObjectToClipPos 함수로 인하여, i... 2023. 7. 13. OnInspectorGUI 사용해서 효과적으로 입력 받기 Unity Component에 입력을 정리된 형태로 받기 위한 방법은 다음과 같다.아래와 같은 형태로 작성을 하게되면 입력폼을 변경할때 용이하다. 1) AClass.cs 파일의 Items class 항목을 늘려준다.2) AEditor.cs의 OnEnalbe() 함수에서 FindProperty 함수로 Items class 내부 변수를 찾아준다.3) OnInspectorGUI() 함수에서 propertyField() 함수로 입력을 받는다. 추가로 input params가 많은 경우,EditorGUILayout.Foldout() 함수를 사용하면 더 깔끔한 입력폼을 만들 수 있다. AClass.cspublic class Items { public string itmesA; public string .. 2023. 7. 13. 1.3 도형 - Rotation & Scailing Rect opengles를 공부했을때 rotation, scale matrix를 사용해본적이 있으실 겁니다.position에 matrix 행렬을 곱해서 회전을 시켜봅시다. 회전행렬 공식은 다음과 같습니다.float2x2 getRotationMatrix(float theta) { float s = sin(theta); float c = cos(theta); return float2x2(c, -s, s, c);}float2x2 타입은 라는 것은 2 by 2 행렬 입니다.계산 유도 과정 입니다. 회전 매트릭스를 position에 곱하면 됩니다.곱하기만 하면 원점 중심으로 회전합니다.float2 pt = mul(mat, pos); 회전축을 설정하려면 어떻게 하냐면회전 축 값을 빼주었다가 다시 더해 줍니.. 2023. 7. 11. 1.2 도형 - Draw Rectangle - 2 이전에 Rectangle 그리는 방법을 배웠습니다. 다른 방식의 사각형 렌더링 예제를 구현 해보도록 하겠습니다.그리고 두개의 사각형을 그려보도록 하겠습니다. 전 예제에서는 사각형을 그리기 위해서는좌측하단, 우측상단 두개의 좌표를 구하면서 시작을 했었습니다. 이번에는 소스를 보면서 시작 하도록 하겠습니다.float rect(float2 pt, float2 size, float2 center) { float2 p = pt - center; float2 halfSize = size * 0.5; float2 result = step(-halfSize, p) - step(halfSize, p); return result.x * result.y;}pt에서 cente.. 2023. 7. 9. 이전 1 ··· 25 26 27 28 29 30 다음