본문 바로가기

모바일 어플리케이션

Three20 Joe Hewitt 이라는 사람이 만든 iPhone UI 라이브러리로, 요새 iPhone용 화보 어플을 하나 만들일이 있어서(외주) 쓸만한 샘플 찾다가 발견한 주옥같은 라이브러리다. http://groups.google.com/group/three20/ http://github.com/joehewitt/three20 원래 Facebook용 어플을 만들기 위한 것이었다는데... 배포되는 소스에 포함된 샘플만으로 이미지/뷰 제어에 대한 거의 완벽한(UI things나 최적화 등을 제외하고) 솔루션에 가깝다. thumbnail이나 table 등은 기본, flickrs에서 url 받아서 이미지 로딩해서 그려줄수도 있고. appStore에서 비키니 란제리 섹시 등의 키워드(물론 영어로ㅡ,.ㅡ)로 검색하면 핫한 사.. 더보기
KTF clet 어플 구현시 메모리 컴팩션 방지 wipi 규약상, wipi-c (clet)는 메모리 컴팩션을 하도록 되어 있습니다. 따라서 포인터를 직접 사용할 수 없고-컴팩션이 일어날때 마다 메모리 내용이 싹 바뀌니까요-동적으로 할당한 메모리 블럭에 각각 memID를 부여해 그것을 통하여 간접 참조를 하도록 하고 있습니다. 따라서 기존의 c/c++ 개발방식 그대로 만들 수 없다는 문제가 뒤따릅니다. 이는 코드의 이식성과 유연성에 매우 치명적인 결함이며, 솔까말 다 const array로 박아버리고 싶을만큼 할당할 때 마다 귀찮아 죽겠습니다. (그런데 여기서 재미있는 것은 SKT clet은 메모리 컴팩션이 일어나지 않습니다. wipi 규약을 제대로 지켜지 않았지만 그것이 오히려 개발 사이드에서는 장점이군요.) 인터넷 검색을 해보면 많은 wipi 개발자.. 더보기
날로 먹는 iPhone dev 일기 #5 궁금하신 분은 없겠지만, 오랜만에 올리는 소리소문없이 제작중인ㅡ,.ㅡ 제 첫번째 app, 코드명 AHR 소식입니다. 이거 뭐 개발한다고 끄적거린지 4개월이 넘었는데... 아직도 런칭을 못시켜서 낯이 뜨겁네요.ㅎㅎ 슬로우스타터라는 말처럼 처음엔 좀 더뎌도 후에 꾸준히 app이 나오면 좋겠습니다.ㅎㅎ ADC개발자 등록을 마치고, 개발중인 버전을 실기 테스트 해보았습니다. (보안유지한다고 블러처리한 것은 아니고..ㅡ,.ㅡ 5~6년전 개발했던 게임 이미지를 임시로 차용중이라 창피해서 블러를 먹였습니다.) 컨셉이 한손으로 원활히 플레이하도록 하는 것이라, 요새 유행하는 아날로그 스틱형태의 가상 컨트롤러 대신 좌우 버튼을 심었는데... 이것을 좌우 방향 동시에 눌렀을 때 뿌라스 마이너스 되어서 가만히 있는 것보다,.. 더보기
날로 먹는 iPhone dev 일기 #4 게임이건 어플이건 오토바이건 자동차건 아가씨건 총각이건 역시 중요한 것은 look. 디자이너 없이 허접한 이미지 가져다 붙여 쓰다보니 개발하는 입장에서 흥도 안나고, 중간중간 스샷 찍어 포스팅할 수준도 아니고 해서... (자질구레한 update에 대해서는 별도로 트위팅을 하고 있습니다만) 포스트는 참으로 오랜만입니다. windows + vc로 개발 환경을 옮겼습니다. (opengles -> opengl) 이제, 소스 구현을 어느 정도 끝내고 실기 테스트를 할 때 맥을 켜도 될 것 같습니다. =) 어제 국내 모 개발사를 방문해서 이야기를 할 기회가 있었는데 여러가지 생각을 하게 되었습니다. 무료어플의 성공적인 다운로드가, 물론 고무적인 결과이긴하지만, 유료 버전 제품의 마케팅 데이타로 사용될 수 있을까 0.. 더보기
SKT 앱스토어 오픈 http://www.mysmart.co.kr/app/index.jsp url이름처럼, wm 어플들뿐이군요. featured-phone용은 다른 url로 팔려는 것인가? 어쨌거나 페이지 전체를 플래쉬로 만들어주는 센스!-,.- (tworld가 이런식이어서 몇년 전에 skt와 다툼이 좀 있었습죠..-,.-) 아직 유료 어플은 두 개뿐이고 나머지는 다 무료 어플입니다. 개인이 만든 것 같은 (아마추어 냄새짙은) 어플 들도 있지만 전체적으로 오픈마켓이라기보다는 기존에 있던 wm 어플을 파는 듯한 느낌인데… 게임 카테고리는 없습니다. 등급심사 문제 때문에 당장 열리긴 쉽지 않을 듯… 근데 국내 스마트폰 사용자가 몇이죠…?-_- 취미로 블랙잭 중고로 하나 사서 개발이나 해볼까 생각이 듭니다. 더보기
SKT 앱스토어 어플 공모전 2009/04/14 - [DEV/DEV.mobile] - SKT의 앱스토어, 성공할까? ★http://developer.itopping.co.kr/contest 더보기
날로 먹는 iPhone dev 일기 #3 근황: 현재 기본적인 어플리케이션 프레임과 각종 필요 API등은 어느 정도 작업이 끝난 상태입니다. (오래 걸렸죠...-_-;;) 이제 보다 근본적인 문제에 부딪혔는데, 그것은 바로 리소스를 가공할 툴을 만드는 것과, 어떻게 프로젝트를 매니징/프로듀스할 것이냐 하는 것들입니다. 필요인력을 수급하고 프로젝트를 관리하는 것은 사실 여기서 다루긴 어려운 문제고, 리소스를 가공할 툴..같은 경우는 cocoa 개발에 대한 소양이 깊지 못한 관계로 천상 wintel 플랫폼에서 작업을 하기로 결정했습니다. 결국 맥을 메인으로 쓰는 것은 또 다시 철회, 한동안 치워두었던 wintel 머신을 다시 들여놨습니다. (cpu가 amdx2 쿠마인데, 한밤중에 작업하고 있으면 지금 내가 시카고행 대한항공 보잉747기 이코노미석에.. 더보기
2D 프레임버퍼의 제어 주위에서 관련 질문을 해주신 분이 계셔서... 이전에 포스팅했던 내용을 보여드릴랬더니만, 일전에 포스트가 단체로 안드로메다 사생대회 가는 바람에 다 지워진 모양입니다. 이왕 포스트 하는 김에, 추가로 몇개 더 턱턱 붙여서 올립니다. 이전처럼 자세한 설명은 시간관계상 생략하겠습니다.-_-;; 코드의 세련미, 효율성이나 가독성은 여기서는 고려치 않았습니다. ##화면의 확대 : 화면을 주어진 배율로 확대합니다. 이 때 배율은 1, 2, ..., n 등 정수 뿐만 아니라, x1.2, x1.8, x2.7 등 실수배도 가능토록 합니다. 입력될 배율의 표현은 두개의 정수[int zoom_mul, int zoom_div]로 받겠습니다. rate = mul / div; void *frameBuffer; //#### po.. 더보기
날로 먹는 iPhone dev 일기 #2 Touch 어떤 형태로건 사용자의 입력이 없다면 그것을 '게임'이라고 부를 수 있을 까요? 사용자의 입력이라는 것이, 일반적인 게임의 조작성에서 조금 멀리 떨어져 있을 수는 있어도-비쥬얼 노블 류 처럼 OK 버튼이나 푹푹 눌러대거나, NDS의 닌텐독스나 대합주에서 처럼 마이크에 소리를 지른다거나 등등등-어찌 되었건 '게임'이라는 어플리케이션을 구성하는데 외부의 조작을 처리하는 것은 반드시 필요한 것이 되겠습니다. iPhone은, 설명할 필요도 없이, 메인 입력으로 터치 인터페이스를 사용하죠. 이것을 처리하기 위해서 필요한 것은, 프로젝트에 UIKit framework가 포함되어 있을 것입니다. touch를 제어하는 방법을 잘 다룬 예제로는 Apple Sample Codes의 Touches가 있습니다. 코.. 더보기
날로 먹는 iPhone dev 일기 #1 Drawing@2D 애플은 iPhone의 3D API로 openGL | es를 사용합니다. 익히 아시다시피 openGL은 'os비종속적인' 표준 3D 라이브러리죠. 물론 3D뿐만 아니라 2D 이미지를 표시할 때도 Quartz보다 openGL | es 사용이 권장됩니다. openGL(es)로 2D 이미지를 그리는 것은 개발자 입장에서 썩 효율적인 일은 아닙니다. openGL의 3D 좌표계에서 2D 좌표를 직관적으로 사용할 수 없는 것은 물론이고, 애초에 2D 이미지 = z뎁스 고정된 rect위의 텍스쳐이기 때문에 이미지 크기에 대한 제한(텍스쳐 이미지의 크기는 power of 2이어야 합니다. 32*32, 64*64, 128*128, ...) 등으로 이것 저것 신경써야 할 것이 많습니다. 물론, 어느 개발.. 더보기