프로그래밍 메모장(안드로이드 프로그래밍) 해당글은 본인이 추후에 잊어버려도 다시 기억할 수 있도록 쓰는 메모장같은 형식의 글입니다. (강의 글이 아님) Uri를 String형의 Path로 변환하기 파일을 다른 어플로 부터 읽어들이게 되면 읽어들이게 된 어플 이름과 파일 경로가 얽혀서 들어오게 된다. 이걸 단순하게 toString으로 하게 되면 그 어플 이름까지 얽혀서 String화 되어버린다. 이럴때 사용하는 방법이다. 더보기 // Uri → String형 path public String getPathFromUri(Uri uri){ Cursor cursor = getContentResolver().query(uri, null, null, null, null ); cursor.moveToNext(); S..
02강) C# 프로그래밍 기초1사실 지난 시간에 "다음 시간에는 ... 씬을 생성하고 비행기까지 생성하여 움직이는 것을 ..." 이라고 말했었습니다. 그런데 생각해보니 "비행기 움직이는 것"은 C#을 이용하여 프로그래밍을 해야하기 때문에 먼저 C# 프로그래밍 기초에 대해서 알아봐야 할 것 같아서 단원을 바꾸었습니다. 왜 C#인가?유니티에서 주로 사용하는 언어는 "자바스크립트"와 "C#" 입니다. 그런데 필자는 왜 C#을 이용하여 하려는 걸까요? 첫번째 이유는 저는 자바스크립트를 잘 모릅니다. 두번째 이유는 저는 C#을 어느정도는 압니다. 세번째 이유는 자바스크립트로 작성을 하게 되면 결국엔 기술적인 측면에서 C#으로 다시 오게 된다고 하더군요. (유니티 게임 개발자들의 말) 네번째 이유는 C#이 조금 더..
프로그래밍 메모장(Qt 프로그래밍) 해당글은 본인이 추후에 잊어버려도 다시 기억할 수 있도록 쓰는 메모장같은 형식의 글입니다.(강의 글이 아님) Qt Creator 4.0 이상에서 한글입력이 안될 때 이번에 Qt를 이용해서 프로그램을 만들면서 보니이때 깔고 깔렸던게 Qt 4.8.7과 Qt Creator 3.0.2였다. 그래서 버전업을 시키려고 다시 지우고 깔아보았다.이렇게 Qt도 정식버전인 5.6.1로 설치하고, Creator도 안정버전인 4.0.3을 설치하고 보니 한글이 안써진다. 그래서 인터넷을 검색하여 찾은 결과!! 우분투 기반의 리눅스에서는 다음과 같이 하면 될것같다.(우분투 기반의 fcitx를 사용하는 리눅스)[내용 출처 : https://zapary.blogspot.kr/2015/05/qt-5..
프로그래밍 메모장(Qt 프로그래밍) 해당글은 본인이 추후에 잊어버려도 다시 기억할 수 있도록 쓰는 메모장같은 형식의 글입니다. (강의 글이 아님) 레이아웃 크기 맞추기 UI를 만들고 이렇게 예를 들어 만들고 화면 크기를 늘이게 되면 이렇게 화면만 커지고 내부 객체들은 그대로 있게 된다. 해결방법은최상위의 공간(대부분 centralWidget)을 선택하고 "Lay Out In A Grid" 라는 버튼을 누르면 Grid Layout으로 바뀌면서 상하좌우에 붙게 됩니다. (빨간 경계선이 가장자리에 margin에 의거하여 따라서 붙음) 늘이면 따라서 같이 늘어나게 된다.
안드로이드 계산기 ver2 이 소스도 역시 "이클립스"로 제작되어 있으며타겟 API는 15(4.0.3)컴파일 API는 19(4.4.2)로 하였습니다.(그러므로 안드로이드 4.0.3 이하의 버전에서는 구동되지 않을수 있습니다.) 이클립스용 소스라서 "안드로이드 스튜디오"에서는 변환과정을 거쳐야합니다. [업데이트 내역]1. 소스 최적화 및 기능 분할2. 괄호 연산 구현3. 우선순위 연산 구현4. 지우기(←)버튼 구현 업데이트 하다보니 소스가 완전히 달라졌습니다.예전에는 위의 소스처럼 메인소스 내부에서 계산을 했다면 지금은이렇게 내부에서는 계산을 하지 않고 입력된 식을 String으로 변환하여 전달해서CalcEngine이라는 자바파일을 따로 생성하여CharListStack과 DoubleListStack에 맞게..
안드로이드 계산기(API 15) 원래 계산기 만드는게 이렇게 힘들었던 것인가.... 최소 API : 15(4.0.3)타겟 API : 15(4.0.3)컴파일 API : 19(4.4.2) API 15 함수로만 이용해서 ICS 이상은 전부 돌아갈거라고 믿습니다.(테스트 : 4.0.3 구동확인, 4.4.2f 구동확인, 5.0.2 구동확인, 6.0.1 구동확인)계산방식은 윈도우 계산기처럼 "입력된 순서대로 처리"하는 방식입니다. 오른쪽 상단에 메뉴가 있는데소스를 변형시키고 먼저 테스트해보는 페이지만 만들었습니다. 일단 업데이트를 소스 테스트페이지에만 적용하고 이것저것 해보고 버그가 없으면기본페이지에 적용하는 방식으로 하고있습니다. 첨부파일 받으셔서 이클립스로 여시면 됩니다. 제가 만든 소스는 어떻게 생각해보면 조..
01강) 유니티5의 프로젝트 생성 및 기본 UI드디어 첫 강의입니다.첫번째인 만큼 프로그램이 어떻게 생겼는지에 대해서 먼저 알아봐야할것만 같습니다.유니티를 실행시키시면 Projects가 아마 비어있을 겁니다.왜냐하면 처음 실행시켰기 때문이죠.고로 프로젝트를 하나 생성하기 위해 오른쪽 상단의 "NEW"를 누릅니다. 원하는 프로젝트 이름과 경로를 설정하고 "2D"를 선택하고 "Create project"를 합니다.왜냐하면 2D 게임을 만들것이기 때문입니다. 첫 레이아웃 화면입니다.먼저 레이아웃에 대하여 간단하게 설명드리겠습니다. (안보이시면 클릭해서 "원본보기"하면 잘보입니다.) 그런데 사실 이 레이아웃으로 게임을 개발하기가 쉽지만은 않습니다.(쉬울수도...) 그래서 예전에 Unity 4시절에 유니티 공식 ..
0강) 유니티5(Unity 5)세상에는 정말 많은 게임엔진들이 존재합니다. 대중에게 공개되어 돈을 지불하거나 혹은 지불하지 않고 사용할 수 있는 게임엔진도 있고, 회사에서 직접 개발하여 회사내에서 개발하는 게임에만 적용이 가능한 게임엔진이 있습니다. 이 중에서 대중에게 공개되어 사용할 수 있는 게임엔진에서 가장 대표적인 게임엔진은 "언리얼엔진", "크라이엔진", "유니티", "게임브리오", "소스엔진" 등이 있습니다. 우리가 이 강의에서 쓸 게임엔진은 바로 여기에 해당되는 "유니티" 입니다. 게임엔진? 게임엔진은 게임개발을 하기 위한 소프트웨어를 뜻합니다. 왜 유니티를 쓰는 것인가?일단 유니티 에디터를 간단히 봅시다. (잘 안보이시면 사진클릭 후 원본보기)첫번째 이유는 프로그래밍을 잘 모르는 사람들도 어..