일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- Chart
- c# api호출
- Upbit API
- 즐겨찾기
- Prism
- c# maui
- 업비트
- c# 차트
- C#
- upbit
- 북마크
- XAML
- c# 업비트 api키 목록
- c# websocket
- c# restapi
- c# restapi 호출
- 업비트 c#
- WPF
- 업비트 차트
- 나만의 사이트모음집
- 라이브 차트
- 차트
- maui
- 업비트 API
- c# 업비트
- c# 라이브 차트
- Today
- Total
목록분류 전체보기 (130)
하아찡

언리얼 버전 5.5.3서버언어 C++로 구성했습니다.실행화면 문제점.도착좌표를 저장하고 몬스터 그리드에 넣다보닌깐 클라이언트 상에서는 몬스터가 해당 좌표에없지만 서버에는 해당 좌표에 있다고 처리돼서 몬스터가 맞는 처리가 됨. 해결 : 서버에서 움직임 처리를 해줌. 0.1초마다 몬스터 위치를 갱신해줌. 몬스터 객체에다가 도착지 위치를 따로 저장시켜 위치값을 계속 갱신시킴. SendBufferRef Monster::ServerMove(MonsterRef monster, float deltaTime){ uint64 spawnerID = monster->SpawnerID; Vector3 NowPos(monster->objectInfo->posinfo().x(), monster->objec..

언리얼 버전 5.5.3서버언어 C++로 구성했습니다. 실행화면 일단 기본적으로 캐릭터를 저장하기위해 회원 테이블을 작성했습니다.DB서버는 mysql를 사용중 입니다. 기존에 aws로 작업해둔 웹이 있어서 해당 DB서버를 사용중 입니다. 회원 테이블 구조CREATE TABLE `userinfo` ( `user_id` INT(10) NOT NULL AUTO_INCREMENT, `id` VARCHAR(255) NOT NULL COLLATE 'utf8mb4_0900_ai_ci', `pw` VARCHAR(255) NOT NULL COLLATE 'utf8mb4_0900_ai_ci', `create_at` TIMESTAMP NULL DEFAULT 'CURRENT_TIMESTAMP', PRIMARY KEY (`user..

언리얼 버전 5.5.3서버언어 C++로 구성했습니다.실행화면 몬스터가 주변 플레이어를 스캔해서 몬스터별 정해진 어그로 범위안에 있을경우 제일 처음에 들어온 플레이어를 어그로를 잡게됨.스포너 위치에서 몬스터 어그로 범위를 벗어났을경우 몬스터 어그로가 풀리게됨.해당 어그로 코드를 Room클래스에 작업을 할까 몬스터 클래스에 작업을 할까 고민을 했는데, Room클래스쪽에서 몬스터 어그로 작업을 하게 했습니다.각 맵별 플레이어 정보를 Room클래스에서 다루다보닌깐 해당 방식이 편하기도하고 굳이 몬스터 클래스에다가 기능을 많이 추가하는건 아닌거같았습니다.이렇게 짜는게 맞나 싶긴한데 일단 생각나는대로 작업을 했습니다.(매번 해보지만 이게 맞나... 고민을 참 많이 하게됩니다) 추가된 Room코드입니다void Ro..

언리얼 버전 5.5.3서버언어 C++로 구성했습니다.실행화면현재 몬스터 움직임 로직몬스터 스포너 위치치를 기준으로 -1000 ~ +1000 사이의 값에서 랜덤한 좌표를 받아서 처리합니다. 나중에 몬스터별로 클래스가 생성됐을때 범위를 따로 지정해주면 될듯합니다. 움직이는 주기랑.SendBufferRef Monster::ServerMove(MonsterRef monster, unordered_map _levelMonsterSpawnLocation){ uint64 spawnerID = monster->SpawnerID; Protocol::S_MOVE pkt; Protocol::PosInfo* pos = pkt.mutable_posinfo(); pos->CopyFrom(monster->objectInfo->..

언리얼 버전 5.5.3서버언어 C++로 구성했습니다.서버 프로그램을 공부하는데 기분이 알쏭달쏭 합니다.뭔가 프로그래밍을 처음 문법을 다 배우고나서 뭔가 만들어봐야겠다 싶은 마음으로 프로그램을 만들라고 했지만 벽에 막혀버린 그런느낌을 또 한번 느끼네요... 몬스터 생성을위해 상당한 고민을 했습니다.. 거의 일주일정도 걸린거같습니다... 클라이언트와 서버를 동시에 작업을 하는데 제가 봤던 루키스님 강의에서 "클라이언트를 절대 믿지말라" 라는 말이 있어서 모든 데이터 처리는 서버에서 해야겠구나 라고 생각을 해봤는데 문제는 거기서부터 시작이 됐습니다. 현재 몬스터 생성을 하고싶은데 클라이언트에서 몬스터 스포너를 만들어서 해당 위치에다가 스폰을 하게 하면 되지 않을까? 그러면 서버에서도 굳이 몬스터 생성위치를 ..

언리얼 버전 5.5.3서버언어 C++로 구성했습니다.기존에 맵이동 패킷을 클라에서 보내는 패킷한개와 서버에서 응답해주는 패킷한개를 만들어 총 2개를 만들었는데 문제점이 발생함. 클라이언트에서 맵 이동중에 이동하는 맵 패킷을 받다보니 잘못된 처리가 발생함.그래서 로직을 조금 변경해서 아래와같이 변경했습니다. 기본 로직은1. 클라이언트에서 맵이동 패킷을 보냄.2. 서버에서 맵에대한 데이터를 다보냄. 변경된 로직1. 클라이언트에서 이동할 맵Index값을 넘김2. 서버측에서 클라에서 전달해준 Index값을 가지고 맵 이름을 넘겨줌.3. 서버에서 보낸 맵 이름을 가지고 맵이동을 시킴.4. 클라이언트에서 맵이동이 완료된 이벤트를 활용해서 맵이동 완료됐다고 완료패킷을보냄.5. 서버에서 완료패킷을 받으면 해당 맵에 존..