목록분류 전체보기 (327)
cyphen156

비주얼 스튜디오에서는 미리 컴파일된 헤더라는 옵션을 제공한다. 이 옵션은 프로젝트 속성 - c/c++ - 미리컴파일된 헤더 옵션에서 설정이 가능하다.예전에는 stdafx라는 이름으로 제공하던 사용자 정의 헤더였지만 최근에는 그냥 축약어로 Pre-Compiled-Header(pch)라는 이름으로 사용된다고 한다.미리 컴파일된 헤더에서는 자주 사용되는 iostream, windows.h, ctypes.h와 같은 STL라이브러리 등을 포함시켜 다른 파일들에 일일이 헤더를 추가하지 않을 수 있도록 연결된 헤더를 미리포함시켜 생산성을 높이고, 디버깅시 미리 컴파일된 헤더 파일은 빌드 과정에서 새로 연산하지 않고, 이전 연산결과를 그대로 사용해 디버깅 시간을 줄여준다. pch.h#pragma once#include..

현재 윈도우 기본 메세지 루프를 사용하고 있다. 이 방식의 최대 단점은 사용자 입력이 윈도우에서 발생해야만 프로그램이 동작하고, 그 외에는 무한정 대기하고 있다는 것이다. 잠깐 생각해보면 백그라운드 작업시 돌아가지 않는 게임을 생각할 수 있다. 윈도우가 최상단에서 실행되고 있어 무효화 영역이 발생하지 않을때만 프로그램이 동작하고, 조금이라도 무효화 영역이 발생하거나, 백그라운드로 넘어가면 일시정지되어 프로그램이 멈추는 것들을 생각하면 될 것같다.최종 완성된 결과물은 다음과 같이 동작한다. 이러한 원인이 발생되는 함수가 다음 반복문에 존재하는 조건 GetMessage()함수의 사용때문이다.// 기본 메시지 루프입니다:while (GetMessage(&msg, nullptr, 0, 0)){ if (!..

맨 처음에는 png를 그대로 쓰고싶어서 gdi+를 통해 작업하려고 했는데 왜인지 모르게 이미지가 로드되지 않더라. 그래서 그냥 개별적으로 파이썬 스크립트를 통해 ktech룰 통해.png로 변환된 latex파일을 다시 bmp파일로 변환해주는 스크립트를 통해 자동화해서 리소스를 죄다 추출했더니 용량이 1.5기가쯤 되더라. 아마 애니메이션을 표현하기 위한 scml파일도 포함되어 있어서 그럴거다. 어쨋든 주말동안 했던 내용을 정리하자면 WM_KEYDOWN 케이스문을 작성하여 개별적으로 키입력 동작 메세지 발생시 hBitMap 객체가 좌표이동을 하도록 하고, invalidateRect() 함수를 통해 무효화 영역을 강제로 발생시켜 다시 그리도록 지시했다.우선 화면에 표시될 오브젝트 한개의 좌표를 저장할 정적 변수..

진짜 돈스타브 Ktools에 있는 ktech랑 krane 작동안되서 뒤지게 삽질했다. 거의 한 3일동안 이것만 본거같은데유니티 에셋 스타일로 되잇는것도아니라서 추출도 안되가지고 시작도못하고 모작프로젝트 타이틀 바꿀뻔햇다.추출안됬던 근본적인 원인은 imagemagick 버전이 7로 올라가면서 api 사용법이 바뀌엇기 때문이었다.우선 ktech는 Latex파일 확장자인 .tex파일을 png로 바꿔주는 프로그램으로 텍스쳐 뽑으려면 필요했고, 이 뽑아진 텍스쳐를 가지고 krane을 통해 애니메이션 처리를 도와주는 스프라이트 애니메이션 포맷인 .scml로 변환해준다. 아무튼 WINDOWS 11운영체제를 기준으로 설명하자면 imagemagick을 6.9.13-17-q16-x64-dll을 설치한다.ImageMagic..

Unity로 2D 게임을 하나 만들 생각인데 리소스를 어떻게할지 고민이다. 아마 만들어질 장르는 템플런류 또는 로그라이크, 1942 같은 게임이 될것 같은데...그냥 에셋스토어에서 살까...?아니면 모작으로 만들기 위해 다른 게임 리소스를 뜯어올까...? 뜯어오는건 저작권이 문제가 안되려나? 싶기도 하고...?좀 더 생각해봐야겟다

5622번: 다이얼 (acmicpc.net) 위 그림과 같은 다이얼 전화기가 있다. 전화를 걸려면 해당 숫자가 맨 오른쪽 하단에 위치해야 한다. 한 칸을 이동하는데 걸리는 시간은 1초가 걸린다 숫자 1-> 2초, 숫자 0 -> 11초알파벳입력을 숫자로 대체해야 한다.제약사항str is always upperCase1 ength 주의 사항그림을 주의해서 보자1과 0은 문자에 대응하지 않음26개문자를 8개의 숫자로 처리해야함문자 갯수가 일정하지 않음C 풀이다이얼_5622.c/*** 백준 다이얼_5622* 위 그림과 같은 다이얼 전화기가 있다. 전화를 걸려면 해당 숫자가 맨 오른쪽 하단에 위치해야 한다.* 한 칸을 이동하는데 걸리는 시간은 1초가 걸린다 숫자 1-> 2초, 숫자 0 -> 11초* 알파벳입력을..

나는 하루 2백준 문제를 주 5회 푸는것을 목표로 할 예정이다. 다른게 아니라 간단한 문제풀이로 머리좀 굴리는거 연습하려고근데 파일만들때마다 주석문 복사하고, 파일이름바꾸고, 이전코드 지우는게 별거아닌거같은데 엄청 귀찮아서 단축키 만든다. 사용할 기능은 snippets을 통한 자동화다음과 같이 snippets을 정의 할 수 있다. 파일-기본설정-코드조각구성-c.json{ "cboj": { "prefix": "cboj", "body": [ "/**", "* 백준 ${TM_FILENAME_BASE}", "* ", "* ", "* 제한사항", "*****************************************", "* ", "****************************..

제발 문제 이름좀 이런식으로 안내줬으면 좋겟다. 보통 프로그래머한테 상수라 함은 Constant를 생각하지 사람 이름을 생각하진 않으니까 2908번: 상수 (acmicpc.net) 두 수를 입력받고 입력받은 자릿수를 역순으로 바꾼 후 비교하여 큰 수를 출력하면 된다.이 문제의 핵심은 입력 데이터의 강제 형변환 또는 자릿수 파싱, 그리고 비교 연산이다.C 풀이에서는 정수형으로 입력받아 자릿수 파싱을 통해 해결하겠다.제약사항0 주의 사항없다.C 풀이상수_2908.c자릿수 파싱법/*** 백준 2908 상수* 두 수를 입력받고 입력받은 자릿수를 역순으로 바꾼 후 비교하여 큰 수를 출력하면 된다.* 이 문제의 핵심은 입력 데이터의 강제 형변환 또는 자릿수 파싱, 그리고 비교 연산이다.* * * 제한사항****..