AddComponent는 GetComponent와 다른 녀석이다 Add, 말 그대로 더한다는 뜻인데 첫 번째줄에서 Test라는 게임오브젝트를 새로 만들고 그 Test오브젝트에 라는 스크립트를 집어 넣어주는 것이다
1. Rotation 먼저, transform.LookAt과 Quaternion.LookRotation의 차이점이 궁금했는데 직접 해보니 같은 결과가 나온다. 먼저 LookRotation같은 경우, 지정된 forward와 upwards 방향에 의해 rotation이 결정된다. LookAt은 target의 현재 위치의 vector point을 향해 회전한다. 음, 두개의 문법을 살펴보니 차이점이 존재한다. 일단 LookAt같은 경우 타켓팅 되어야할 대상이 존재해야 한다는 것이다. 예를 들어, 유도 미사일 같은데에 사용하면 좋을 듯 싶다, LookRotation은 타켓 없이 회전될 때 사용되어야할 것 같다. 예를 들어, 캐릭터의 회전 같은 곳에 사용하면 될 듯 하다. Z축을 기준으로 한다. Z축을 중심으로 ..
오브젝트에는 Renderer라는 컴포넌트가 존재한다 그 아래에는 Mateirlas 요소가 있다 메테리얼은 쉐이더 작성할 때 이용한 것들을 사용해 요리조리 주무를 수 있다 예를 들어 코드에서 Thickness를 수정하고 싶으면 레퍼런스를 불러 SetFloat의 값을 수정해주면 된다 이때 material과 sharedmateiral의 차이가 있는데 mateiral은 오브젝트의 sharedmaterial의 사본을 복제해 material에 할당하는 거다 즉 원본 파일이 아니란 뜻임 모든 오브젝트의 메테리얼을 동시에 바꾸고 싶으면 sharedMateiral을 쓰면 되고 단독으로 바꾸고 싶으면 mateiral을 사용하면 되는 것이다 이때 material을 사용하면 Batch Rendering을 사용할 수 없는 것이..
나는 주로 캐릭터 움직임에 사용하곤 했다 이렇게 대각선으로 이동하면 피타고라파덕의 스킬로 인해 루트2가되어 약 1.41만큼 앞서 나가기 때문에 정규화(Normalized)를 통해 대각선으로 갈때도 1로 맞추어 주었다. 이걸 또다른 방식으로 이용할 수 있는데!!! 바로 Direction을 얻고자 할 때 유용하고 사용된다. 이렇게 A에서 B로 갈 때 방향을 구하려면 다들 벡터는 아시죠? B - A = (화살표오른쪽가리키는거)AB 이렇게 되는거 그러면 방향은 구했는데 이렇게하면 AB선분의 길이까지 가져오게 되죠. 그래서 정규화를 통해 값을 딱 1만 가져오면 되죠! Vector dir = (B-A).normalized()를 통해 방향을 가져와요 다같이~
내가 자주 사용하는 PingPong함수이다. t값이 length값이 되면 t값이 다시 -되어서 0이된다 최댓값이 Length가 되는 것이고, 최솟값은 0이다. Movement에만 사용되는 것은 아니고 Alpha값 조정할 때 자주 사용했다, 깜빡깜빡 거리도록 하는거
첫 번째로 Scene Depth와 Camera 노드를 사용했고 Screen Position을 이용하였으며 두개의 노드를 Substract노드를 통해 뺐습니다. 두 번째로 파도의 타일링을 구현했습니다. Time노드와 각각 Tiling and Offset 노드를 통해 output을 Sample Texture 2D에 각각 넣어줬씁니다. 세 번째로 파도의 출렁임을 표현하기 위해 Position(Object)노드를 사용하였고 Split을 통해 R, B채널만 뽑아왔씁니다(파도의 높이를 뽑아오려면 G채널 뽑아와야 하는거 아닌가..?) 최종 Graph 결과물은 이러하다. 노말맵이 약간 이상하다. 파도의 출렁임이 좀더 자연스러웠으면 좋겠다 싶었다.
모델 제공은 우리XREAL팀인 '오연주'님께서 제공해주셨다! 금손이심... 번개가 번쩍번쩍하는 효과를 추가하고 싶으나 실력부족.. VFX로 하면 이쁠 것 같은데.. + 번개 이펙트 추가함 파티클 시스템을 활용함
Rigidbody rb; if (gameObject.TryGetComponent(out rb)) { // Rigidbody 컴포넌트가 존재하므로 이제 'rb'를 사용하여 접근할 수 있습니다 } else { // 이 GameObject에는 Rigidbody 컴포넌트가 없습니다 } TryGetComponent는 GameObject에 존재하는 경우 지정된 유형의 컴포넌트를 검색하려고 시도합니다. 컴포넌트가 발견되면 true를 반환하고 그 컴포넌트에 대한 참조를 제공합니다. 발견되지 않으면 false를 반환합니다. GetComponent와의 차이 Rigidbody rb = gameObject.GetComponent(); if (rb != null) { // Use rb } 지정된 구성 요소 유형이 발견되지 않으..
유니티 Rigidbody에는 AddForce라는 함수가 있습니다. 이 함수는 Rigidbody에 힘을 더해주는 함수인데 여기에는 더해줄 힘(여기에는 방향도 포함되어있다)과 힘을 어떻게 줄지 종류를 정하는 2개의 인자를 받습는다. ForceMode 종류를 살펴보겠습니다. 1. Aceeleration - 질량(X) - 연속적인 힘(continuous) 2. Force - 질량(O) - 연속적인 힘(continuous) 3. VelocityChange - 질량(X) - 즉각적인 힘(instatnt) 4. Impulse - 질량(O) - 즉각적인 힘(instatnt)
유니티에는 총 4가지 형태의 빛(Light)이 있습니다. 1. Spot 2. Directional 3. Point 4. Area Spot Spot의 경우 가로등 같은 형태의 오브젝트에서 타원형의 빛을 발광하기 위해 사용됩니다. 스포트라이트 생각하면 됩니다. Directional Directional같은 경우 태양광이라고 생각하면 됩니다. Directional의 가장 중요한 값은 방향입니다. Point Point의 경우 횃불이나 전구같은 오브젝트에서 사용됩니다. 오브젝트를 중심으로 발광이 필요할 때 사용됩니다., Area Area의 경우 직접 해봐야 알 것 같아서 직접 구현해보았습니다. 먼저 윈도우 -> 렌더링 -> 라이팅을 누르면 됩니다. 가장 먼저 Auto Generate를 해제하고 2번 동그라미가 가..
AddExplosionForce이란 무엇이냐? 폭발이 일어났을 때 주변 오브젝트들을 날려버리는 상호작용이 필요할 때가 있지 않느냐? 그럴때 사용되곤 하는 기능이다. 스크립트의 원형이다 Rigidbody.AddExplosionForce(폭발파워, 폭발범위, 반경, 날려버릴 방향 등)
Apply Root Motion을 체크하면 애니메이션으로 캐릭터의 움직임과 회전을 조절할 수 있다 애니메이션때문에 캐릭터의 포지션이 이동하는 것을 방지를 할 때는 언체크하면 될 것 같다! Culling Mode같은경우 화면에 렌더링될때만 애니메이션이 실행되길 바라면 설정하면 될 듯! 즉, 화면에 보이지 않으면 애니메이션 재생을 하지 않는거지! Update Mode같은 경우 Normal, Physics, Unscaled Time이 있는데 호출 타이밍에 맞게 사용하면 될거같아! 사용안해봐서 모르겠네..
오늘은 움직이는 토네이도를 구현해봤다 먼저 핵심 노드들을 살펴보자 Radial Shear노드를 알아보자 Description Applies a radial shear warping effect similar to a wave to the value of input UV. The center reference point of the warping effect is defined by input Center and the overall strength of the effect is defined by the value of input Strength. Input Offset can be used to offset the individual channels of the result. (출처 - https://..
오늘은 Dissolve Shdaer를 공부해봤다. 이 움짤을 생성하기 위해 프로그램도 설치했다 Vv 일단 Alpha Clip Threshold에 대해 너무 설명을 잘해준 그림이 있어 가져왔다. (출처 - https://www.youtube.com/watch?v=taMp1g1pBeE) 알파클립스레드홀드의 기준값보다 낮은 애들은 invisible처리된다 어쨌든 Dissolve Shdaer 그래프를 살펴보자. 생각보다 별거 없다. Simple Noise를 추가해 사라질 때 이미지를 추가해주는 거다. Step노드를 추가한다 Step 함수란 Edge와 In으로 결정되는데 In이 Edge보다 크거나 같으면 1 아니면 0이다 Step의 Out을 Color와 곱해줘서 emission에 넣어주면 끝이다! 근데 궁금한게 ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.