작업 기록

모바일 웹페이지를 컨트롤러로하여 다중접속 콘솔 형태의 게임 제작 기록2

스튜디오 오버그래픽스 2021. 8. 4. 21:24

이전 글

https://mgtul.tistory.com/29

 

모바일 웹페이지를 컨트롤러로하여 다중접속 콘솔 형태의 게임 제작 기록1

몇년전부터 제작하고자 구상만했던 작업이었는데, 어쩌다보니 기회가 돼서 작업을 시작하게됐다. 간단하게 설명하면 플스,엑스박스 같은 콘솔게임 기기의 형태를 PC와 스마트폰과 웹브라우저

mgtul.tistory.com

*웹분야는 전문가가 아니라 이 방법보다 더 좋은 제작 방법이 있을수 있음.

 

웹쪽에대해서는 HTML만 대강 아는 수준이었다.

확실한거는 HTML만으로는 웹페이지 틀만 만들수있지 앞서 얘기한 컨트롤러와 통신, 임의의 아이디 생성, 데이터 저장, 총 플레이어인원 계산 등 이런 연산과 데이터처리를 할 수가 없다.

 

그래서 찾아보니 PHP가 있었다.

PHP는 동적 웹페이지를 만들기 위한 프로그래밍 언어라고 하는데, 기존에 알던 C언어, 파이썬, JS 등 과는 좀 다르게 생겼다. 근데 하다보니 문법자체는 어렵진 않은듯하다.

PHP는 동적으로 연산하거나 데이터를 참조하는 등 유동적인 값을 웹상에 보여줄수 있다.

ex) 현재시간 표시, 랜덤값 생성해서 보여주기

이걸 활용하면 임의의 아이디 생성을 하고 플레이어의 정보를 처리해서 웹페이지에 보여줄수 있을듯했다.

 

사용중인 무료호스팅서버를 활용해서 만들었고,

그렇게 해서 새로 접속할때마다 임의의 플레이어 이름을 생성해서 서버에 저장하고, 몇번째 접속자인지에 따라 분류해서 실시간으로 컨트롤한 데이터를 갱신하게 했다. 이렇게 하면 동시에 여러 플레이어가 접속해도 플레이어의 이름과 컨트롤 값을 다 분류할 수 있다.

 

그러나 php페이지를 로드하면 url주소가 바뀌면서 웹페이지가 넘어가버려서 계속해서 컨트롤하는 페이지로 쓸수가 없었다. 그래서 주변에 자문을 구해서 AJAX를 사용했다.

AJAX는 'Ajax는 비동기적인 웹 애플리케이션의 제작을 위해 아래와 같은 조합을 이용하는 웹 개발 기법'이라고 하는데 굳이 URL주소를 옮기지않고도 일을 수행할 수 있다.

 

물론 Node.JS나 소켓통신을 하는게 가장 베스트일것 같으나, 데이터양이 많거나 복잡하지 않은 상황이고, 통신 과정을 직접 눈으로 보고 제작할 수 있기 때문에 좀 무식하지만 txt를 활용했다.