Posts
Rito15
Cancel

OpenGL 공부 - 06 - Shader File

목표 쉐이더를 파일로 분리하여, 파일로부터 읽어와 사용하기 공부 내용 쉐이더 파일 작성하기 솔루션 디렉터리 - [Resources/Shaders] 폴더 생성 Shaders 폴더 내에 [Basic.shader] 파일 생성 속성 - 디버깅 - 작업 디렉터리에 $(ProjectDir)가 포함되어 있으므로 상대경로에서 불러오기...

멀티패스 쉐이더 코드 깔끔하게 작성하기

Shader "A/B" { Properties { _MainTex ("Texture", 2D) = "white" {} } CGINCLUDE #include "UnityCG.cginc" /* Structs */ struct appdata { float...

C++ 스택 메모리 동적 할당

Memo _alloca 스택에 메모리를 동적으로 할당해준다. 함수의 리턴으로 전달하면 안된다. 블록이 종료되면 자동으로 할당 해제된다. 공간 할당 불가능한 경우 Stack Overflow 에러가 발생할 수 있으니 주의 예외가 발생한 경우 구조적 예외처리(SEH)로 받아야 ...

OpenGL 공부 - 05 - Shader

목표 OpenGL의 쉐이더에 대한 이해 간단한 vertex, fragment 쉐이더 작성, 컴파일 및 실행 OpenGL의 쉐이더 Vertex&Fragment Shader OpenGL에서 거의 90%의 비중을 차지 Vertex Shader 하나...

유니티 - UI 헤더 드래그 앤 드롭으로 옮기기

기능 UI의 헤더(윗부분)를 따로 구성했을 때, 헤더를 드래그 했을 때만 옮기기 사용법 헤더 UI는 UI의 자식으로 구성한다. PopupUIHeader 스크립트를 헤더 UI의 컴포넌트로 넣어준다. 이동 대상 UI를 인스펙터에서 Target UI에 넣는다. (지정하지 않는 경우, 부모로 자동 초기화) using U...

유니티 - 팝업 UI 관리 시스템 구현하기

게임의 UI 온라인 PC게임을 예로 들었을 때, 다양한 형태의 UI들이 존재한다. 화면 예시 : Smilegate RPG ‘LostARK’ 1. 전체화면 UI 크기가 화면 전체에 해당하는 UI 예 : 상점, 캐시 샵 2. 고정형 UI 고정된 위치에 항상 존재하는 UI 예 : 하단 바, 퀵슬롯, 미니맵, 채팅창 ...

OpenGL 공부 - 04 - VAO, VBO, Attributes

목표 Vertex Attributes, Layout, VBO, VAO에 대한 이해 Attributes, VAO, VBO 버텍스 버퍼에는 버텍스 좌표, 텍스쳐 좌표, 노멀 벡터 등 여러 데이터가 float 값으로 들어갈 수 있다. 하지만 그 자체로는 그저 메모리에 올라가는 값일 뿐이기 때문에 각각의 데이터가 어떤 역할을 하고...

유니티 - 입력 바인딩 시스템 만들기

목표 에디터 및 인게임에서 언제든 기능에 연결된 사용자 마우스, 키보드 바인딩을 변경할 수 있는 기능 구현 전체 입력 바인딩을 직렬화하여 저장하고 불러올 수 있는 기능 구현 유니티의 입력 시스템 유니티에는 2가지 Input System이 있다. 첫 번째는 Input.Get~ 꼴의 메소드를 이용해 이번 프레임에 해당 입력...

OpenGL 공부 - 03 - Vertex, VBO

목표 버텍스, 버텍스 버퍼에 대한 이해 렌더링 파이프라인 요약 Vertex Shader 입력 : 정점 목록 정점들을 오브젝트 스페이스에서 MVP 변환을 통해 클립 스페이스까지 변환한다. Shape Assembly 정점을 조립하여 렌더링을 ...

유니티 - 스크립트 템플릿(Script Templates)

개념 Project - 우클릭 - Create를 통해 만드는 스크립트 또는 텍스트의 템플릿을 미리 지정하는 기능 스크립트 템플릿의 저장 경로 : C:\Program Files\유니티 버전\Editor\Data\Resources\ScriptTemplates 각각의 유니티 버전마다 따로 저장된다. 한가지 ...