도리의 Tech to Art

고정 헤더 영역

글 제목

메뉴 레이어

도리의 Tech to Art

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (133) N
    • 개발기록 (111) N
      • 알고리즘 (75)
      • Unity 유니티 (18)
      • CS 기초 (7) N
      • 개발스터디 (11)
    • 디자인스터디 (17)
      • Pixar In a Box (4)
      • 블렌더 (13)
      • 디자인올인원 100일 챌린지 (0)
    • 감상노트 (1)
      • 현장 후기 (1)
    • 일상기록 (4)

검색 레이어

도리의 Tech to Art

검색 영역

컨텐츠 검색

전체 글

  • [Unreal] Actor 클래스

    2024.01.31 by 도리(Dory)

  • 유니티 UnlitShader 코드 분석(렌더링 파이프라인 기반)

    2024.01.31 by 도리(Dory)

  • 행렬식

    2024.01.31 by 도리(Dory)

  • [유니티 그래픽스] Vertex 직접 찍어서 Quad 그리기

    2024.01.26 by 도리(Dory)

  • 벡터의 내적과 외적

    2024.01.26 by 도리(Dory)

  • 벡터공간(Vector Space)과 어파인공간(Affine Space)

    2024.01.19 by 도리(Dory)

  • 유니티 아키텍쳐

    2024.01.18 by 도리(Dory)

  • 쉐이더(Shader) 와 랜더링 파이프라인(Rendering Pipeline)

    2024.01.18 by 도리(Dory)

[Unreal] Actor 클래스

ActorLevel 에 올릴 수 있는 클래스 Header 파일클래스를 선언하고, 클래스에 속하는 변수와 함수의 원형을 선언하는 용도의 파일. Actor 클래스 내 함수들 1) 생성자클래스가 생성될 때 호출.클래스 이름이랑 같음.변수 set 해줌. 2) BeginPlay()Actor 가 배치된 월드에서 게임이 시작되거나, Actor가 월드에 Spawn 되었을 때 한 번 호출됨.게임 플레이 로직을 초기화 시키는데 사용됨. 3) Tick()매 프레임마다 한 번씩 호출.DeltaTime 매개변수로 Tick 함수가 얼마 시간을 두고 다시 호출되었는지 측정이 가능하다.Actor가 살아있는 동안 계속 호출됨.게임 로직을 주로 여기서 처리.게임 퍼포먼스 향상을 위해 필요없다면 제거해주는 것이 좋음. MyActor..

개발기록/개발스터디 2024. 1. 31. 17:19

유니티 UnlitShader 코드 분석(렌더링 파이프라인 기반)

이번 글에서는 유니티 Unlit 쉐이더 코드를 분석해볼 것이다. 직접 짜기는 어려울 수 있지만, 쉐이더 코드를 보면서 이건 이 부분이구나! 를 이해하면 나중에도 그래픽 관련해서 파악하기 쉬울 것 같아 정리한다. 유니티 버전은 2021.3.13f1 을 사용하였다. Unlit 쉐이더를 생성하면, 다음과 같이 스크립트가 생성된다. Shader "Unlit/NewUnlitShader" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 100 Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag // make fog work #pr..

개발기록/Unity 유니티 2024. 1. 31. 13:30

행렬식

행렬식은 행렬에서 굉장히 많이 쓰이기 때문에 알아놓아야할 필요가 있다. 나는 벡터의 외적 공식에서 이를 발견해서 복습 겸 다시 기록하고 있다. 행렬식이 무엇일까? 직접 적어보았다. 행렬식을 가장 많이 쓰는 곳 중 하나가 역행렬을 구할 때이다. 역행렬은 무엇일까? 위의 행렬 A에서 ad - bc = 0 , 즉, 행렬식이 0이 아닐때 역행렬이 존재하며 그 정의는 다음과 같다. 그리고 역행렬은 다음과 같은 성질을 가진다. 3by3 행렬에서의 행렬식 수식이 조금 복잡해보일 수 있는데, a11로 시작하는 항은 나머지 a12 a13 밑의 애들로 행렬식을 구성한 것이고, a12로 시작하는 항은 나머지 a11 a13 밑의 애들로 행렬식을 구성, a13도 나머지 a11 a12 밑의 애들로 행렬식을 구성한 것이다. 이것이..

개발기록/Unity 유니티 2024. 1. 31. 10:45

[유니티 그래픽스] Vertex 직접 찍어서 Quad 그리기

유니티에서 버텍스를 사용하여 직접 Quad를 그려봄으로써, 랜더링의 전반적인 단계들과, 유니티에서는 랜더링 과정을 어떻게 돕고 있는지 알아보았다. 코드는 여기 https://github.com/eunchaeee/unity-snippets/tree/main/Assets/Graphics/DrawVideoPlayer 아래의 유니티 공식 도큐를 참고하여 작성하였다. Unity - Manual: Example: creating a quad Unity - Manual: Example: creating a quad Level of Detail (LOD) for meshes Example: creating a quad To represent flat surfaces, Unity includes the Plane and..

개발기록/Unity 유니티 2024. 1. 26. 14:01

벡터의 내적과 외적

벡터의 곱셈은 내적(Inner Product, Dot Product)과 외적(Outer Product, Cross Product)으로 나뉜다. 벡터의 내적(Inner Product, Dot Product) 두 벡터의 성분별 곱의 합 두 벡터의 크기의 곱 * cos(두벡터사이의각) 벡터의 내적 특징 벡터v를 벡터u 에 사영했을 때의 영향력과 관계 직교하는 벡터의 내적은 0 두 벡터가 이루는 각도가 0일때 내적이 최대 벡터의 내적은 스칼라 벡터의 외적(Outer Product, Cross Product) 벡터의 외적 특징 u = (u1, u2, u3), v = (v1, v2, v3) 의 벡터라고 할 때, 두 벡터의 외적은 (u2v3-u3v1, -u1v3+u3v1, u2v3-u3v2) 이다. 이는 행렬식 부분..

개발기록/Unity 유니티 2024. 1. 26. 11:15

벡터공간(Vector Space)과 어파인공간(Affine Space)

벡터(Vector) 크기와 방향을 갖는 물리량 벡터공간(Vector Space) 주어진 벡터들에 스칼라를 곱하거나 벡터끼리의 합성에 의해 만들어지는 모든 벡터의 집합을 ‘벡터공간’이라고 한다. 어파인공간(Affine Space) 벡터의 위치를 표시하고 싶어서 생김. 점을 마치 벡터의 동족처럼 취급함으로써 벡터공간을 확장한 것. 어파인공간에서는 다음과 같은 연산이 가능하다. 벡터와 벡터의 덧셈/뺄셈 스칼라와 벡터의 곱셈/나눗셈 점과 벡터의 덧셈/뺄셈 1, 2는 벡터공간에서부터 가능한 연산이고, 3은 어파인공간에서 추가된 연산이다. (출처 : OpenGL로 배우는 3차원 컴퓨터 그래픽스, 주우석 저, 한빛아카데미)

개발기록/Unity 유니티 2024. 1. 19. 10:58

유니티 아키텍쳐

유니티가 어떤 방식으로 동작하는지 갑자기 궁금해져서 chatGPT와 장시간의 대화를 통해 정리해보았다. 유니티 독스도 참고했다! 1. Unity 엔진: - Unity 엔진은 내부적으로 네이티브 C/C++로 빌드되었지만, 상호작용하는 데 사용하는 C# 래퍼를 포함하고 있습니다. 2. Unity 프로젝트 빌드: - 빌드 프로세스는 C# 코드를 CIL(Common Intermediate Language)이라는 .NET 바이트코드 포맷으로 컴파일합니다. Unity는 이러한 CIL 바이트코드를 어셈블리라고 부르는 파일로 패키징합니다. 3. 코드 스트리핑 - Unity Linker: - Unity Linker는 프로젝트의 모든 어셈블리를 분석하여 필요 코드를 마킹하고 마킹되지 않은 잔류 코드를 어셈블리에서 삭제하여..

개발기록/Unity 유니티 2024. 1. 18. 18:50

쉐이더(Shader) 와 랜더링 파이프라인(Rendering Pipeline)

쉐이더(Shader) 쉐이더(Shader)는 픽셀의 색을 정하는 함수를 말한다. 그치만 조금 더 아트 관점의 시각을 첨가해서 말하면, 쉐이더(Shader)는 오브젝트의 음영과 색상을 계산하여 다양한 재질을 표현하는 것을 말한다. 렌더링 파이프라인(Rendering Pipeline : 렌더링 순서) 랜더링은 다음과 같은 순서로 이루어진다. 1. 버텍스 쉐이더(Vertex Shader) 버텍스는 그래픽스에서 정보를 가진 점들을 말한다. 버텍스는 위치, 인덱스, UV, Normal, color 등의 정보를 가지고 있다. GPU는 이 버텍스 정보들을 받아, 버텍스 쉐이더를 통해 좌표 변환을 시켜준다. 처음에 버텍스 정보들은 각각의 Object가 중심인 Object 공간에서 Local 위치 좌표를 가지고 있다. ..

개발기록/Unity 유니티 2024. 1. 18. 16:58

추가 정보

인기글

최신글

페이징

이전
1 2 3 4 5 6 7 8 ··· 17
다음
TISTORY
도리의 Tech to Art © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바