본문 바로가기

분류 전체보기

(489)

NGUI Button의 이미지를 변경 할때 주의사항 NGUI의 버튼에는 UISprite와 UIButton이 함께 들어있다. UISprite가 있는 오브젝트에 UIButton을 생성할 경우 UIButton의 normalSprite가 자동으로 UISprite의 spriteName으로 초기화 된다. hoverSprite, pressedSprite, disabledSprite는 따로 설정해주지 않으면 비어있으며, normalSprite가 default값이 된다. 다만 스크립트로 버튼의 Sprite를 바꾸려고 할 때, UISprtie의 spriteName을 변경할 경우, spriteName은 바뀌나, UIButton의 normalSprite는 바뀌지 않는다. 때문에, 버튼에 마우스를 올리거나 누르게 되면, 다시 원래의 이미지로 돌아오는 현상이 발생한다. 따라서 U..
[코딩인터뷰 완전정복] 1.7 행렬 회전 Q : 이미지를 표현하는 N*N 행렬이 있다. 이미지의 각 픽셀은 4바이트로 표현된다. 이때, 이미지를 90도 회전시키는 메서드를 작성하라. 행렬을 추가로 사용하지 않고서도 할 수 있겠는가? #include int** RotateMatrix(int* matrix[], int n) { int temp; for (int i = 0; i
[코딩인터뷰 완전정복] 1.6 문자열 압축 Q : 반복되는 문자의 개수를 세는 방식의 기본적인 문자열 압축 메서드를 작성하라. 만약 압축된 문자열의 길이가 기존문자열보다 길다면 기존 문자열을 반환한다. ​ A : 1. 하나의 문자를 읽어와서 저장한다. 카운트를 1로 한다. 2. 다음 문자를 읽어와서 저장된 문자와 같다면 카운트를 1올린다. 3. 다른 문자가 나올때까지 2를 반복. 4. 다른 문자가 나올경우 압축 문자열에 저장된문자와 카운트를 추가한다. 5. 압축문자열이 기존문자열보다 길어지거나 문자열이 끝날때까지 1부터 반복. 6. 압축문자열이 기존문자열보다 길다면 기존문자열을 반환. 아닐경우 압축 문자열을 반환
[코딩인터뷰 완전정복] 1.5 하나 빼기 Q : 문자열 두개가 주어졌을 때, 문자열을 같게 만들기 위한 편집횟수가 1회 이내인지 확인하는 함수를 작성하라. 가능한 편집 = 문자 삽입, 문자 삭제, 문자 교체 #include bool CheckChange(char str1[], char str2[], int len1, int len2) { if (len1 - len2 > 1 || len2 - len1 > 1) return false; int maxLength = len1 > len2 ? len1 : len2; int change = 0; int insert = 0; int remove = 0; if (len1 == len2) { for (int i = 0; i < maxLength; i++) { if (str1[i] == str2[i]) cont..
UIPanel에 Rigidbody가 붙어있는 이유 Unity에서 UI를 다루면서 Panel에 Rigidbody가 붙어 있는 것을 알 수 있다. 이 Rigidbody는 지우더라도 자동으로 생성된다. 이유는 Unity가 Rigidbody가 있는 움직이는 오브젝트에 최적화 되어있기 때문이다. 움직이는 물체에 Rigidbody가 달려있지 않으면 성능이 떨어진다. UI는 Panel단위로 움직이는 경우가 많기 때문에 Rigidbody가 없으면 자동으로 생성시켜 주는 것이다. 때문에 UIPanel에 달려있는 Rigidbody는 no gravity에 IsKinematic옵션이 켜져있는것을 볼 수 있다. Rigidbody는 한 오브젝트가 2개를 가질 수 없기 때문에, 만약 UIRoot에 Rigidbody가 달려있을 경우 UIPanel에는 Rigidbody가 자동으로 생..
[코딩인터뷰 완전정복] 1.4 회문 순열 Q : 주어진 문자열이 회문의 순열인지 아닌지 확인하는 함수를 작성하라. ​ A : 각 문자의 갯수를 카운트하여 홀수인 문자열 갯수가 1개 이하면 true 아니면 false ​ 추가 : 문자를 읽을때마다 홀수인 문자의 개수를 갱신하면 확인작업이 생략된다. 추가2 : 비트마스크를 이용하는 방법도 있다.
[코딩인터뷰 완전정복] 1.3 URLify Q : 문자열에 들어 있는 모든 공백을 '%20'으로 바꾸는 메서드를 작성하라. 인풋 문자열의 길이가 함께 주어진다. 공간복잡도는 고려하지 않는다. #include char* TransString(char input[], int length); int main() { char input[] = {'c','d',' ','a',' ','e','h','\0'}; printf("%s\n", TransString(input, 8)); } char* TransString(char input[], int length){ int transLength = 0; for (int i = 0; i < length; i++) { if (input[i] == ' ') transLength += 3; else transLength..
[무료배포] World Of Goo Epic Games에서 무료로 배포중입니다. (정가 15000원) 1회 등록시 영구 소장 가능합니다. 스팀과 연동은 불가능 합니다. 다운로드 : https://www.epicgames.com/store/ko/product/world-of-goo/home# 최소 사양 추천 운영체제Windows® XP 또는 Vista 운영체제Windows® XP 또는 Vista 프로세서속도 1GHz 이상 프로세서속도 1GHz 이상 메모리RAM 512MB 이상 메모리RAM 512MB 이상 비디오 카드출시 5년 이하의 모든 3D 그래픽 가속기 비디오 카드출시 5년 이하의 모든 3D 그래픽 가속기 DirectX9.0c DirectX9.0c 디스크 공간100MB 디스크 공간100MB