전체 글 483

[Unity] 클라이언트 기본구조 작성 순서

사용 예상 폴더 생성 Managers Script생성 전체적인 모든 Manager class관리 싱글톤 구현 Init()에서 자식 Manager들 초기 세팅 Init()에서 Manager 오브젝트 생성 및 Manager 컴포넌트 연결 Clear()에서 모든 자식 Manager들 초기화 Popup UI 오브젝트 생성 및 Script 생성 오브젝트와 Script는 이름을 똑같이 맞춰준다.(Prefab자동화때 Script컨포넌트로 생성하기 위해) Dictionary - Bind하여 오브젝트를 저장할 공간으로 사용 Dictionary _objects = new Dictionary(); Bind - Enum에 등록된 UI오브젝트 자식 명칭과 Type으로 자식 오브젝트를 찾아 Dic으로 관리한다. void Bind..

Unity 2022.11.29

[C#서버] 서버 개발 순서

DNS부터 SEND 블록킹 방식으로 작성 Listener생성 Accept 논블록킹 Session생성 Recv 논블록킹(SetBuffer 초기값 생성) Send 논블록킹 (sendqueue, pandinglist, lock) Disconnected작성 (Interlock) Session클래스 abstract class로 변경 Onsend, OnRecv, OnConnected, OnDisconnected 구현 Listener AcceptComp를 Func로 Session을 생성하게 수정 Connector생성 Connect논블로킹 RecvBuffer생성 SegmentBuffer, writPos, readPos, FreeSize, DataSize, ReadBuffer, WriteBuffer 구현 Session클..

[Unity] 카메라이동(줌인, 줌아웃, 마우스회전, 마우스이동, 방향이동)

특정위치 변환 SetPositionAndRotation Camera.main.transform.SetPositionAndRotation ( new Vector3(-6.6f, 273.3f, 44.1f), Quaternion.Euler(80.823f, 90.16f, -0.062f) ); 조작이동 기능 마우스 휠 카메라 줌인 줌아웃 마우스 오른쪽 드레그로 카메라 회전 마우스 왼쪽 드레그로 앞뒤좌우 카메라 이동 키보드 1, 2, W,A,S,D 카메라 이동 using UnityEngine; public class CameraController : MonoBehaviour { [SerializeField] float _zoomSpeed = 300f; [SerializeField] float _zoomMax = 20..

Unity 2022.11.17

[NetWork] SPA와 MPA

SPA란? SPA 작동방식 SPA(Single Page Application)는 모던 웹의 패러다임이다. SPA는 단일 페이지로 기존의 서버 사이드 렌더링과 비교할 때, 배포가 간단하며 네이티브 앱과 비슷한 사용자 경험을 제공한다는 장점이 있다. SPA는 웹 앱에 필요한 모든 정적 리소스를 처음에 한번 다운로드한다. 페이지 간 이동 시, 페이지 갱신에 필요한 데이터만을 JSON으로 전달받아 페이지를 갱신하므로 전체적인 트래픽을 감소할 수 있고, 전체 페이지를 다시 렌더링하지 않고 변경되는 부분만을 갱신하므로 새로고침이 발생하지 않아 네이티브 앱과 유사한 사용자 경험을 제공할 수 있다. 이런 특징들은 SPA가 모바일 웹에 최적화 된 이유이기도 하다. 속도, 사용성, 반응성의 향상으로 더 나은 사용자 경험을..

Web/NetWork 2022.11.09

[C#] Web 종류 net6.0기준

builder.Services.AddRazorPages(); app.MapBlazorHub(); app.MapFallbackToPage("/_Host"); MVC Model, view, Contoller 방식 고전적이지만 명확함 builder.Services.AddControllersWithViews(); app.MapControllerRoute( name: "default", pattern: "{controller=Home}/{action=Index}/{id?}"); Razor MVVM 방식 Controller와 View가 합처져 있다. builder.Services.AddRazorPages(); app.MapRazorPages(); WebAPI View가 없는 방식 범용적으로 사용 할 수 있다. bu..

VisualStudio/C# 2022.11.07

[Mssql] Index

Clustered - 유일 키, 테이블에 한개만 생성 가능 - 영어사전 처럼 책의내용 자ㅔ가 순서대로 정렬 - SELECT시 유리 함. UPDATE INSERT 느림() Non - Clustered - 테이블에 여러개 생성 가능 - 색인과 같이 그냥 찾아보기 기능 - SELECT시 느림. UPDATE INSERT 유리함 --인덱스 생성 CREATE INDEX 인덱스이름 ON 테이블명(컬럼); CREATE UNIQUE INDEX 인덱스이름 ON 테이블명(컬럼); CREATE CLUSTERED INDEX 인덱스이름 ON 테이블명(컬럼); CREATE INDEX 인덱스이름 ON 테이블명(컬럼1, 컬럼2); --인덱스 삭제 DROP INDEX 테이블명.인덱스이름

DB/Mssql 2022.11.07

[Mssql] 데이터베이스 스키마 구문 DDL : Data Definition Language

-- 데이터베이스 생성 -- 참고) Schema --데이터베이스 생성 CREATE DATABASE GameDB; USE GameDB; --테이블 생성(Create), 삭제(Drop), 변경(ALTER) -- CREATE TABLE 테이블명(열이름 자료형 [DEFAULT 기본값] [NULL | NOT NULL]... --테이블 생성 CREATE TABLE accounts( accountID INTEGER NOT NULL, accountName VARCHAR(10) NOT NULL, coins INTEGER DEFAULT 0, createdTime DATETIME ); --테이블 삭제 USE GameDB; DROP TABLE accounts; --컬럼 추가 ALTER TABLE accounts ADD las..

DB/Mssql 2022.11.04