본문 바로가기
반응형

분류 전체보기505

네트워크 프로그래밍 - XML문서에서 패킷 패싱 및 패킷 데이터를 자동화 방식으로 읽고 쓸 수있는 형태의 템플릿 정의 XML문서에서 패킷 패싱하기 public static void ParsePacket(XmlReader r) 01 현재 Xml노드타입이 종료 요소인지 확인 if (r.NodeType == XmlNodeType.EndElement) return; 02 현재 요소의 이름이 packet인지 확인 이름이 packet이 아닌 경우 무효한 패킷 노드로 간주하고 적절한 오류 메시지 출력 if (r.Name.ToLower() != "packet") { Console.WriteLine("Invaild packet node"); return; } 03 name attribute값 확인 name어트리뷰트 값이 없거나 빈 문자열인 경우 오류메시지 출력 string packetName = r["name"]; if(string.I.. 2023. 8. 20.
C# - Xml 및 System.Xml 클래스들 System.Xml Namespace Xml관련 작업을 수행하기 위한 클래스와 기능을 제공하는 네임스페이스 using System.Xml; 1. XmlReaderSettings Xml Reader의 동작을 설정하고 제어하는데 사용된다. public sealed class XmlReaderSettings 01 IgnoreWhitespace Xml 파일 내의 공백 문자를 무시할지 여부 public bool IgnoreWhitespace { get; set; } 02 IgnoreComments Xml 파일 내의 주석을 무시할지 여부 public bool IgnoreComments { get; set; } 2. XmlReader Xml문서를 순차적으로 읽어오는 기능 제공 public abstract class .. 2023. 8. 19.
네트워크프로그래밍 - XML형식으로 패킷 정의 +) XML, 마크업 설명 XML이 뭔가요? eXtensible Markup Language약자로 데이터를 구조화하고 표현하기 위한 마크업 언어이다. 태그를 이용해서 데이터를 기술한다. 태그에 추가 정보를 제공하기 위해 속성(attribute)를 사용할 수 있다. 마크업이 뭔가요? 마크업은 문서나 데이터의 구조와 의미를 표시하기 위해 사용되는 표기법이다. 이는 데이터를 구조화하고 표현하는데 사용되며 컴퓨터나 사람 모두가 이해할 수 있는 방식으로 전달하는데 사용된다. 01 텍스트 마크업 텍스트 문서내에서 특정 요소를 나타내기 위해 사용된다. 대표적인 예로 HTML(HyperText Markup Language)이 있다. 이는 웹페이지의 구조와 내용을 정의하며 태그를 사용하여 텍스트나 이미지등을 배치한다. 02 문서 마크업 문서 전체.. 2023. 8. 19.
네트워크 프로그래밍 - List 자료형 packet에 넣는 법 List안에 기본 int와 같은 자료형이 있는 경우 string, byte넘긴거와 마찬가지 List 몇개 있는지 밀어넣고 데이터를 밀어넣으면 된다. List안에 구조체가 있는 경우 public struct SkillInfo { public int id; public short level; public float duration; } public List skills = new List(); List가 몇개인지 short로 밀어 넣고 data를 밀어넣기 1. Write 01 크기 정보 기록 skills List의 요소 개수를 ushort로 변환하여 기록한다. success &= BitConverter.TryWriteBytes(s.Slice(count, s.Length - count), (ushort)ski.. 2023. 8. 17.
Unity - Tilemap에서 BoundsInt의 Properites , PositionEnumerator 구조체 BoundsInt Tilemap에서의 BoundsInt는 주로 Tilemap내의 유효한 cell영역을 나타내는데 사용된다. 각 cell은 하나의 tile을 나타낸다. Properties 01 position 타일맵 내의 최소 지점 public Vector3Int position { get; set; } 02 size 타일맵 내의 경계의 크기 public Vector3Int size { get; set; } 03 min position과 동일한 값으로 경계의 최소 지점 public Vector3Int min { get; set; } 04 max position + size - 1로 계산되어 경계의 최대 지점 public Vector3Int max { get; set; } 05 allPositionsWith.. 2023. 8. 17.
Unity - Tilemap Properites 및 관련 메서드 Tilemap Properties 01 animationFrameRate 타일맵 내 모든 타일의 애니메이션 프레임 속도이다. 애니메이션의 재생 속도를 조절할때 사용한다. public float animationFrameRate { get; set; } 02 cellBounds 타일맵 내에서 사용 중인 타일의 유효한 cell 경계를 반환한다. 이 영역 내에 있는 타일만 검사하거나 처리할 수 있다. public BoundsInt cellBounds { get; } 03 color 타일맵 레이어의 기본 색상을 나타낸다. 타일맵에 배치된 모든 타일에 적용된다. public Color color { get; set; } 04 editorPreviewOrigin 에디터에서의 미리보기에 사용되는 기준 위치를 나타낸다.. 2023. 8. 17.
반응형