반응형
반응형
유니티 C# 그래프 그리기 간단 구현 예시 코드 작성LineRenderer 활용using UnityEngine;[RequireComponent(typeof(LineRenderer))]public class GraphDrawer : MonoBehaviour{ // LineRenderer 변수 private LineRenderer lineRenderer; // 그래프의 X축 최소 및 최대 값 public float xMin = -10f; public float xMax = 10f; // 그래프의 해상도 (즉, 얼마나 세밀하게 그릴지 결정) public int resolution = 100; void Start() { // LineRender..
유니티 C# 벡터의 각도 구하기 예시 코드 작성using UnityEngine;public class VectorAngle : MonoBehaviour{ void Start() { // 두 벡터 정의 Vector3 vectorA = new Vector3(1, 0, 0); // 예시 벡터 A Vector3 vectorB = new Vector3(0, 1, 0); // 예시 벡터 B // 벡터 사이의 각도 구하기 float angle = CalculateAngleBetweenVectors(vectorA, vectorB); // 결과 출력 Debug.Log("두 벡터 사이의 각도: " + angle + "도"..
유니티 C# 두 배열에 교집합 찾는 방법 예시 코드 작성using System.Collections;using System.Collections.Generic;using UnityEngine;using System.Linq;public class ArrayIntersection : MonoBehaviour{ void Start() { int[] array1 = { 1, 2, 3, 4, 5 }; int[] array2 = { 3, 4, 5, 6, 7 }; // 배열의 교집합을 찾기 var intersection = array1.Intersect(array2); // 결과 출력 foreach (int num in inter..
유니티 C# URP 용 Outline 쉐이더 예시 코드 작성Shader "Custom/OutlineShader"{ Properties { _OutlineColor ("Outline Color", Color) = (1, 1, 0, 1) // 아웃라인 색상 _OutlineThickness ("Outline Thickness", Range(0.0, 0.1)) = 0.02 // 아웃라인 두께 } SubShader { Tags { "RenderType" = "Opaque" } Pass { // Vertex Shader HLSLPROGRAM #pragma vertex ..
유니티 C# 배열 생성 및 정의하는 방법 예시 코드 작성using UnityEngine;public class ArrayExample : MonoBehaviour{ // 정수형 배열 정의 및 초기화 private int[] intArray = { 1, 2, 3, 4, 5 }; // 문자열 배열 정의 및 초기화 private string[] stringArray = { "Hello", "World", "Unity" }; // Vector3 배열 정의 및 초기화 private Vector3[] vectorArray = { new Vector3(1f, 2f, 3f), new Vector3(4f, 5f, 6f), new Vector3(..
유니티 C# Vector2 Vector3 정규화 방법 예시 코드 작성정규화의 의미정규화: 벡터의 길이를 1로 조정하여 방향만을 나타내는 벡터로 변환합니다. 이는 벡터의 비율을 유지하므로 다른 벡터와의 비교가 용이해집니다.활용 예: 이동 방향, 힘의 방향, 충돌 반응 등을 계산할 때 자주 사용됩니다. Vector2using UnityEngine;public class Vector2Normalization : MonoBehaviour{ void Start() { Vector2 originalVector = new Vector2(3f, 4f); Vector2 normalizedVector = originalVector.normalized; // 정규화 Debug..
유니티 협업 프로젝트 공유하는 방법 툴 정리툴특징사용 방법Git버전 관리 시스템으로 소스 코드 및 에셋 관리에 사용1. GitHub 또는 GitLab에 리포지토리 생성2. Unity 프로젝트 폴더에서 Git 초기화3. .gitignore 파일 추가하여 불필요한 파일 제외4. 변경 사항을 커밋하고 푸시Unity CollaborateUnity 내장 버전 관리 툴, 간편하게 팀과 협업 가능1. Unity에서 프로젝트를 열고 Services 창을 엽니다.2. Collaborate 활성화3. 변경 사항을 커밋하고 동기화하여 팀원과 공유Plastic SCMUnity에 최적화된 버전 관리 시스템1. Plastic SCM 설치 및 계정 생성2. Unity에서 Plastic SCM 연결3. 변경 사항을 커밋하고 동기화C..
유니티 C# 인스펙터에서 드래그로 값 조절하는 방법 예시 코드 작성using UnityEngine;public class PlayerController : MonoBehaviour{ [Header("Movement Settings")] [SerializeField] private float moveSpeed = 5f; // 이동 속도 [SerializeField] private float jumpForce = 10f; // 점프 힘 private Rigidbody2D rb; void Start() { rb = GetComponent(); } void Update() { Move(); Jump(); } void..
유니티 C# 2d 게임 가속도 제어하는 방법 예시 코드 작성using UnityEngine;public class PlayerController : MonoBehaviour{ public float acceleration = 5f; // 가속도 public float maxSpeed = 10f; // 최대 속도 private Vector2 velocity; // 현재 속도 void Update() { // 입력을 받아 x축 방향으로 가속도 계산 float moveInput = Input.GetAxis("Horizontal"); // -1.0f (왼쪽) 또는 1.0f (오른쪽) // 가속도 적용 if (moveInput != 0)..
유니티 C# 인수와 인자 차이 예시 코드 작성인자(Parameter)와 인수(Argument)인자(Parameter): 함수나 메서드를 정의할 때 사용되는 변수입니다. 메서드의 선언 부분에 위치합니다.인수(Argument): 함수를 호출할 때 전달되는 실제 값입니다. 메서드의 호출 부분에 위치합니다.using UnityEngine;public class Example : MonoBehaviour{ // 인자 (Parameter) void Start() { // 인수를 전달하여 메서드 호출 Greet("Alice"); // 여기서 "Alice"는 인수 (Argument) } // 인자 (Parameter) void Greet(string name) ..
유니티 최적화 방법 총정리 CPU GPU 렌더링 연산 네트워크 오디오항목최적화 방법메모리사용하지 않는 오브젝트와 리소스 정리, 텍스처 압축, 메모리 풀링 사용CPU스크립트 최적화, FixedUpdate 주기 조정, 오브젝트 풀링 사용GPU텍스처 크기 조정, LOD 사용, 쉐이더 최적화, 드로우 콜 최소화, 오클루전 컬링 적용렌더링가벼운 쉐이더 사용, 다이나믹 배칭과 GPU 인스턴싱 활성화, 안티에일리어싱 최소화물리 연산Fixed Timestep 조정, 불필요한 충돌체크 제거, 레이어 마스크를 통한 충돌 최적화네트워크데이터 전송량 최소화, 서버와 클라이언트 간 주기적 데이터 동기화 최적화오디오필요하지 않은 오디오 소스 제거, 압축 오디오 파일 사용
유니티 6 프리뷰 버전 출시 최적화 및 변경점 정리기능 영역주요 변경 사항렌더링(Rendering)- URP(유니버설 렌더 파이프라인)에서 Render Graph 지원, 실시간 리소스 최적화 및 성능 향상.- HDRP에서 AMD FidelityFX Super Resolution 2(FSR2) 지원 추가.- Foveated 렌더링 지원으로 XR(확장 현실) 성능 개선.조명(Lighting)- Adaptive Probe Volumes(APV)에 시간대별 하늘 가림 기능 추가.- 글로벌 조명(Global Illumination) 시스템 성능 향상.VFX & Shader- VFX Graph와 Shader Graph에서 새로운 프로파일링 도구 추가.- Shader Graph에서 UI 셰이더 제작 지원.멀티플레이어..