전체 글 86

매직 넘버와 매직 스트링

코드 안에서 모든 내용을 숙지해야 알 수 있는 의미불명의 숫자 내지 문자를 나타내는 말이다.아래와 같이 같은 함수를 만들었지만 위에는 heal에 붙어있는 15.5m이 무엇인지 알려면 전체 함수를 봐야한다.하지만 밑의 경우 heal이 무엇을 나타내는 지와 heal에 붙어있는 상수 부분이 무엇을 의미하는 지를 알 수 있다.즉 양측 모두 정답이지만 같은 팀원 등 유지보수 인원이 보기 좋게 만들 것인지, 나만이 이해하기 좋게 만들 것인지목적에 따라 제작을 하도록 하는 것이 좋다.public decimal CalculateResourceCost(string spellType, bool isCritical) { decimal cost = spellType switch { "heal" => 15.5..

C#/ETC 2025.10.07

모달 창, 팝업 창

모달 : 현재 페이지에서 한 계층 위로 그래픽 인터페이스를 띄우는 것팝업 : 현재 페이지와는 다른 페이지를 띄우는 것 무분별한 팝업 또는 모달은 사용감에 좋지 않으므로 정말 필요한 자료에 한 해 모달 또는 팝업으로 처리하는 것이 좋을 것 같다. 또한 게임 UI 상에서의 캔버스를 여러 개 띄우는 것으로 팝업 한 캔버스 내에서 프리펩들을 생성하는 것으로 모달을 구현할 수 있으니 채팅이 필요하다면 이런 방식도 괜찮을 듯 싶다.

C#/UI,UX 관련 2025.10.01

[Required] 사용

데이터베이스와 연결할 때 [Required]를 사용하면 not null을 표기한 것과 동일한 효과를 낼 수 있다.이번에 Required 등 Attribute를 많이 사용하면서 느끼는 것은 미리 설계를 통해 Attribute를 어떻게 줄지가 DB에서 어떤 식으로 데이터를 관리할 건지 설계하는 것과 많이 맞물려 있다는 게 느껴졌다. 아마 다음 번에 진행할 때는 이 부분을 생각하면서 제작을 할 것같다. 확실히 C#을 잘 사용하려면 Attribute랑 Property를 어떻게 이용하냐가 중요하다고 느껴진다. 접근제어자는 결국 여러 프로젝트를 진행하며 저절로 익혀지기 때문에 세부적인 설정의 Attribute와 Property를 어떻게 조절할 건지 설정할 건지 고민을 여러 번 하는 것이 더 재밌으면서 중요하다고 느..

C#/ASP.NET 2025.09.30

컴파일 언어와 인터프리터 언어....

이전 Python을 사용할 때와 지금 C# 을 사용할 때의 느낌으로 보자면간단한 테스트 용도의 짧거나 짧게 모듈화된 코드를 실행하면 C#의 경우 실행까지 꽤 긴 딜레이가 있지만, Python은 없었다.하지만 코드가 길어지면 길어질 수록 물론 다른 최적화 방안들이 있겠지만 동일한 코드를 만들었다고 했을 때 Python은 점점 느려지는 반면 C#의 경우 한번 컴파일 이후에는 딜레이가 별로 없었다.이것은 아마 컴파일 언어와 인터프리터 언어의 차이로 보인다. 이전에 Lua등 플랫버퍼를 이용하는 것과 동일한 내용으로한번에 전체를 컴파일해서 기계어로 바꾸는 가와 한번에 한 줄 씩 기계어로 바꾸는 가의 차이이다.그렇기에 한번에 컴파일을 해서 실행파일을 만드는 컴파일 언어와 다르게 인터프리터 언어는 실행파일을 만들기 ..

C#/CS 2025.09.29

Non-Nullable-Property

위와 같은 변수 속성 설정 시 언더바가 생기는 것은 string이 Null을 가질 수 없기에 생기는 문제이다. 이를 해결하기 위해 해당 스크립트파일이 들어있는 프로젝트의 설정에서 Nullable 허용을 비허용으로 바꿔 아래와 같이 만들어도 된다.또는 예시로 string에 ?를 붙여 string?로 null참조형식으로 명시해주면 해결을 할 수는 있지만 대체로 이름에 Null이 들어오면 안되기에 그것을 방지하는 방법을 따로 만들어, NullReferenceException오류를 나올 수 없게 처리하는 것이 좋은 방법으로 보인다.이전에 왜 NullReferenceException이 나는 근본적인 원인이 뭔지에 대해 고민은 해봤었는데 당장 중요한 문제가 아니어서 미뤘다가 이번에 Non-Nullable한 형식들을..

C#/ASP.NET 2025.08.28

모델링 프로세스 경험 (약식 수정 중)

먼저 저는 모델링이 전문이 아니며 지인의 도움을 통해 프로세스 경험을 하여 시야를 조금 넓힌 것에 불과하므로 혹여 모델링을 전문으로 하시는 분들의 오해가 없었으면 합니다.1. Max나 Blender로 그리고자 하는 레퍼런스 또는 형태를 대략적으로 듬성듬성하게 만들어서 저장을 합니다. 2. ZBrush나 Blender로 원본레이어를 남긴 상태로 복사한 후 복사된 레이어에 폴리곤을 증가시키고 작업을 합니다. 3. ZBrush나 Blender로 최대한 디테일을 살립니다.4. 하이 폴리곤, 로우 폴리곤 모델을 남기며 서로 겹쳤을 때 빈 공간이 없도록 합니다. 5. _Low, _High 등 텍스쳐링 프로그램에서 설정한 확장자로 저장합니다. 6. (아마 멕스에서 한번 더 작업이 있었던 것 같지만 그 당시 영상을 복..

C#/ETC 2025.08.17
반응형