UNITY/유니티게임스쿨16 오브젝트 풀링 ObjectPoolManager.csusing UnityEngine;using System.Collections.Generic;public enum PooledObjectType{ Bullet, Enemy, Powerup}[System.Serializable]public class PooledObject{ public PooledObjectType type; public GameObject prefab; public int poolSize;}public class ObjectPoolManager : MonoBehaviour{ public static ObjectPoolManager Instance; public List objectsToPool; priva.. 2024. 9. 30. csv Parser using System.Collections;using System.Collections.Generic;using System.IO;using UnityEditor;using UnityEngine;public class CSV_Data_Paser : EditorWindow{ private string csvFilePath = ""; private string outputFolder = "Assets/ScriptableObjects"; [MenuItem("Tools/CSV to ScriptableObject Converter %J")] public static void ShowWindow() { GetWindow("CSV Converter"); } pri.. 2024. 9. 30. Unity 클라이언트와 서버 통신하기 Unity 프로젝트에 InputField 생성하기 유니티에서 InputField 2개 생성. 아래와같이 하이어라키 구조를 만들어준다. +강사님 언급) 네트워크 개념 빅엔디언과 리틀엔디언 (ByteOrder) 알아두세요~BigEndian : 앞에서부터 4바이트를 계산.LittleEndian : 뒤에서부터 4바이트를 계산. 컴퓨터가 계산하기에 더 유리하다. TcpProtobufClien.csstream = 패킷이 오고가는것을 관리.isRunning = 멀티스레드를 돌리고있는지 확인.메인스레드 기준으로 stream.BeginRead : 프로토버퍼의 길이.0에서부터 4바이트가 찰때까지 읽어온다.OnMessageReceive 비동기로 메시지가 도착하면 확인. binary.LittleEndian으로 변환해서 .. 2024. 9. 25. 프로토버퍼 프로토 버퍼 프로토버퍼란? 데이터는 특정한 데이터 형식을 갖춘 패킷 단위로 교환되며, 패킷은 다양한 종류의 데이터를 기계가 쓰고 읽기 편리하게 직렬화(serialize)하여 나타낸다. 데이터를 저장하거나 기기 간에 주고받을 때 일정한 형식으로 직렬화함으로서 데이터의 손실을 방지하고 올바르게 해석할 수 있게 한다.직렬화 Serialize - 프로토버퍼는 데이터를 바이트코드로 변환하기 때문에 효율적인 전송과 저장공간 절약에 도움이 된다. (작은 크기의 직렬화된 데이터 생성)역직렬화 Deserialize - 바이너리 형식으로 저장되므로 빠르게 메모리 객체로 변환할 수 있다. 메시지 패킷에 대한 형식과 암호화에 대해 신경쓸 필요 없이 프로토 문법만을 이용해서 편리하게 데이터를 주고받을 수 있다. 프로토버퍼가 없.. 2024. 9. 23. 쉐이더 Shader "Custom/OutlineShader"{ Properties { _MainTex ("Texture", 2D) = "white" {} _LineColor ("Line Color", Color) = (0,0,0,1) _LineWidth ("Line Width", Range(0, 0.1)) = 0.01 } SubShader { Tags {"Queue"="Transparent" "RenderType"="Transparent"} LOD 100 CGPROGRAM #pragma surface surf Lambert alpha sampler2D _MainTex; .. 2024. 7. 31. 이전 1 2 3 4 다음