분류 전체보기25 (C#) Generic Method 에서 null return 하는 방법 public static T FindType() { /* * Find T type in specific container */ return null; } 위와 같은 T type에 대한 Generic Method가 있다고 생각해보자. T type에 대한 find가 성공할 경우 그 인스턴스를 반환, 실패할 경우 null을 반환하고 싶다. 그렇지만 T가 value type인지 reference type인지 알 수 없기 때문에 null return 부분에 에러가 뜨게 된다. 이걸 처리할 수 있는 방법이 3가지가 있다. 1. default(T) public static T FindType() { /* * Find T type in specific container */ return default(T); } def.. 2022. 7. 24. (Unity) 기본적인 Spectator Camera Scene 테스트를 할 때 사용하기 유용한 Spectator Camera 코드이다. Main Camera에 추가해서 사용하면 된다. using UnityEngine; public class SpectatorController : MonoBehaviour { [Header("Sensitivity")] public float sensitivityX; public float sensitivityY; [Header("X Axis Rotation Min, Max")] public float minX; public float maxX; [Header("Move Speed")] public float moveSpeed; private bool bCursorLocked = false; private float rotX.. 2022. 7. 20. (Unity) URP Shader - 텍스처를 그레이스케일로 변환해서 출력 [Shader Graph] 1. Saturation 노드를 사용해서 각 컬러의 채도값을 낮추는 방법 2. 알려진 GrayScale 공식 사용 (R * 0.3 + G * 0.59 + B * 0.11) [HLSL] Shader "ShaderStartUp/HLSL/HLSL_Texture" { Properties { _BaseMap("BaseMap", 2D) = "white"{} } SubShader { Tags { "RenderType" = "Opaque" "RenderPipeline" = "UniversalPipeline" } Pass { HLSLPROGRAM #pragma vertex vert #pragma fragment frag #include "Packages/com.unity.render-pipel.. 2022. 7. 10. (Unity) Occlusion Culling 사용 Occlusion Culling은 씬을 Occluder의 구역들로 나누고, View frustum 안에서 각 Occluder들이 카메라의 원점에서부터 가려지는 영역인지 아닌지를 판별해서 렌더링을 결정하는 기술이다. Window -> Rendering -> Occlusion을 열고 Bake 한다. 파란색 구역 하나하나가 Occluder이다. Camera Component의 Occlusion Culling을 On 카메라를 돌려보면 Scene View 상에서 Occlusion Culling이 적용되는 영역을 볼 수 있다. 2022. 6. 3. (Unreal) UE4 with PhysX Visual Debugger UE4 에서 시각적으로 확인할 수 있는 Collision 들은 UModel 정보를 기반으로 한다. UE4에서는 PhysX를 사용하여 내부적으로 PhysX Scene을 구성하고, UModel의 기하 정보들을 전부 convex화 시켜서 PhysX Scene에 전달한다. UE4 Editor의 Viewport 에서는 PhysX Scene이 어떻게 되어 있는지 시각적으로 볼 수가 없다. nvidia에서 제공하는 PhysX Visual Debugger를 사용하면 PhysX Scene을 시각적으로 디버깅 할 수 있다. PhysX Visual Debugger The PhysX Visual Debugger (PVD) allows you to visualize, debug, and interact with your Phy.. 2022. 6. 3. (Unreal) UE5에서 Jetbrains Rider 설치, 사용하기 Visual Studio의 기본 기능만으로 Unreal 개발을 하면 여러모로 불편함이 많다. Intellisense도 빈약하고, 파일 찾기도 힘들고, usage find나 declaration 이동도 쉽지 않다. 결국 Visual Assist나 Resharper와 같은 보조 프로그램을 쓰게 되는데, 개인적인 생각으로는 Resharper > Visual Assist지만, Visual Studio + Resharper의 조합이 속도가 영 시원찮다. 그러던 중 알게된 Rider Rider는 Jetbrains에서 만든 IDE이고, Resharper 기반으로 만들어졌기 때문에 Resharper의 강력한 기능들을 가지고 있다. Rider for Unreal Engine Smart C++ and Blueprints .. 2022. 6. 1. 이전 1 2 3 4 5 다음