목록Software Projects (14)
펑션과 코딩의 행방불명

영어를 공부하려다가 영어단어가 부족해서 외울 방법을 고민하던 중, 써서 외우긴 귀찮고 안드로이드 앱으로 만들기는 힘들어서 디스코드 봇으로 만들어보자는 발상을 하였다. 4월 16일에 개발을 시작했지만 귀찮아서 오늘까지 미루다가 지금 개발중이다. 그래서 그냥 오늘부터 개발 시작으로 정하였다. 그냥 단어 시험 프로그램은 흔하니까 MySQL을 이용해서 개인형 맞춤 단어 시험을 만들어 볼 생각이다. 틀린 단어 위주로 보는 단어 시험, DB에 저장된 단어중에서 아무 단어로 보는 시험, 사람들이 가장 많이 틀린 단어 위주로 보는 단어 시험, 전체랜덤 단어시험으로 만들것이다. DB는 저번에 만든 배탈의 민족에서 사용한 코드를 수정해서 사용한다. 개발하면서 SQL Injection을 사용할 수 있는 곳이 많았다. 그래서..

2주전에 주말마다 할 만한 프로젝트를 찾다가 배달어플을 찾았다. 그래서 배달의 민족을 클론코딩까지는 아니지만 비스무리하게 만들어 보고 싶었다. 먼저 파이썬으로 서버를 구축하고, C#(WPF)로 클라이언트를 만들것이다. 서버는 socket으로 한명의 유저가 접속할때마다. 리스트에 User 클래스로 추가하는 방식이다. [서버] 클라이언트에서 json형태로 {"Command":"[명령어]","Arg":"[인자]"}가 전달되면 각 User클래스에 있는 Receive Handle에서 그 명령을 수행한다. 그리고 주문현황, 유저의 아이디와 비밀번호는 MySQL로 불러온다. 각 테이블을 한 클래스내에서 받으면 혼잡 할것 같아서 DeliverDB와 UserDB로 모듈형태를 만들어 사용한다. [클라이언트] 클라이언트는 ..

오늘은 내 바탕화면을 담당하는 주기율표를 만들었다. 이 주기율표는 WallPaper이라는 앱에서 웹으로 제작돼었다. 해당 원소를 클릭하면 그 원소의 전자 배치를 보여주고 전자들이 원자핵을 중심으로 회전한다. 먼저 모든 하나의 원소 블록은 이름, 원소 기호, 원소 번호로 구성되어 있다. 하나 하나씩 가져오기 귀찮으니까 파이썬으로 웹 소스에서 값들을 추출해준다. 너무 힘들었다. 이렇게까지 만들었다. 그 다음으로 전자 배치를 만들어야하는데 누르면 나오게하는건 귀찮아서 걍 상단에다가 고정할거다. 이런식으로 말이다. (Na) 이런식으로 원자 번호만큼 전자가 생기고 색깔이 바뀐다. (Al) 발로란트하면서 만들다보니까 한 10시간동안 재밌게 만들었다. Rotate를 값을 변환하는걸 학습하는 좋은 계기가 되었다. ht..

어제 할게 없어서 걍 물리엔진을 만들어봤다. 지금은 5개의 객체가 있지만 처음은 빨강이와 파랑이 두 객체로 테스트를 시작했다. 각 객체에 질량, 속도 값을 넣어주었다. Move함수는 현재 x,y 좌표에 속도값을 더하는 방식으로 하였다. 0.1초마다 다음 프레임 변화를 주기위해 Move함수는 DispatcherTimer로 실행하게 하였다. 사각형의 최소, 최대점으로 충돌을 감지하여 반환하는 함수이다. Crush함수를 통해 충돌이 감지되면 운동에너지 서로 전해지는 방식으로 충돌을 계산하였다. 렉이 좀 걸릴줄 알았는데 생각보다 안 걸려서 신기했다. 앞으로 액체의 파동과 같은 시뮬레이션을 만들어 볼 생각이다.

2021년 6월 21일쯤 나는 유니티를 배우고 있었다. 그러다가 나의 첫번재 프로젝트를 만들게 되었다. 포토샵에서 총을 간단하게 만들었다. 내가 처음으로 만든 총이지만 잘만들어져서 자랑하려고 한번 써본다. 먼저 이 게임은 플레이어(파란 사각형)를 W,A,S,D로 움직이게 하고 마우스 커서가있는곳으로 총구를 향하게 한다. 좌클릭은 일반 총알, 우클릭은 샷건이다. 대부분의 슈팅게임이 그렇듯이 적을 죽이면 점수를 얻고 적에게 맞으면 피가 닳는다. 빨강이는 나를 잡으러 쫓아오고 분홍이는 멈춰서 총만 쏜다. 총알 끼리 만나면 총알이 터진다(?). 생각 보다 쉬워보여도 응근 난이도 있다. 적을 죽이면서 총알을 피하는게 쉽지만은 않다. 학교로 가져가서 친구들한테 보여줬는데 인기가 꽤 높아서 뿌듯했다. 사운드가 없다는..

2021년 4월 18일 코로나19로 학교를 안갔다. 매일 온라인 수업을 들으면서 깜빡하고 수업을 안들은게 일주일에 한두번 있었다. 그래서 그런걸 확인하기 위해 시간표를 만들어봤다. 이런식이다. 세로줄로 첫번째부터 월,화,수,목,금 요일이다. 현재 요일에는 노란색으로 표시되고 매주 월요일 마다 색깔이 리셋되게 만들었다. 좌클릭은 파란색, 우클릭은 빨간색, 마우스 휠은 과목 수정이다. 나는 주로 파란색은 '다 들었.'로 썼고 빨간색은 '듣다 말았다'로 사용했다. 내 컴퓨터가 블루스크린이 자주 떠서 위치 이동, 색깔 변경, 과목 변경, 프로그램 종료 시 자동저장되게 만들었다. 확실히 이걸 만들고 깜빡하는 일이 없어졌다. 내가 만들었지만 실용적이다. https://github.com/Function1790/Ch..