예전부터 계속 생각하고 있었던 것인데...

실제로 화면속에 있는 계기를 손으로 조작할 수 있다면 얼마나 좋을까 하는 생각이 자꾸 들었다.
이걸 구현하려면.. 음.. 먼저 USB 로 조작 가능한 하드웨어를 만들어야 하고.. 이 하드웨어가 입력이 있을 때 키보드 입력을 해줘야 하고...

여러가지 생각이 많았는데.. 이번에 제대로 조사를 하면서 조금 알아 낸 것이 있다.

..

일단 DCS:BS와 이번에 나오는 DCS:A-10C에는 Lua라는 프로그래밍 언어 (스크립팅 언어)를 사용한다.
이 Lua는 월드오브 워크래프트 등의 게임에서도 사용할 정도로 강력한 스크립팅 언어라고 한다.

관련 정보는 아래 링크를 통해서 알아보자.
http://www.lua.org

가장 궁금했던 것이.. 계기판 등에 들어오는 불 (engine fire, fail 등등 시스템 정보를 나타내는 등)을 어떻게 구현하느냐 하는 것인데..
바로 이 Lua를 통해서 얻은 정보로 표현하면 되는 것이었다.
자세한 정보는 아래 링크에서...
http://www.digitalcombatsimulator.com/en/dev_journal/lua-export/



위의 정보를 토대로 검색 해 볼 때, 굳이 USB로 키 프로그래밍을 하지 않아도 된다.
그리고 내가 하드웨어 연동 프로그램으로 만든 가장 첫 작품이 바로 시리얼을 통한 프로그램이 아니었던가...
그래서.. 로컬 연결을 한 후에, 별도 프로그램에서 하드웨어 장비와 시리얼로 통신하여 처리하면 된다.

ㅇㅇ 이 얼마나 멋진 일일까...

일단 쓸데없는 감상은 집어치우고.. 필요한 첫 번째 보드를 알아보자.
http://www.icbank.com/shop/default.asp?file=product_detail.asp&prod_code=P000140206&catg_code=102117102118

가격은 둘째치고.. 초보자가 디버깅 하기에.. 구현하기에 가장 적합한 것이라고 추천받았다.
물론, 프로그래밍에 익숙해지면 좀 더 싼 녀석으로 구현해도 상관없다고 한다.


자.. 위에꺼로 뭘 할 수 있느냐고?

BS에서 시동을 걸 때, 각종 키를 마우스를 눌러가며 켜야 했다. (realistic 모드일때다 물론!)
이걸 전부 외부 키 스트록으로 바꿀 수 있다. 모양까지 똑같이 해서 말이다.

그리고 warning signal 등도 모두 설정이 가능하다.
기어를 올리고 내리는 것도 스위치로 가능하고, 기어의 포지션도 라이팅(red/green) 표현이 가능하다는 것.



아직 스위치도 제대로 된 넘을 찾아야 하고 (BS에는 위 아래의 on/off 스위치도 있지만, 중간까지 입력되는 3단스위치.. 좌우도 조절되는 스위치도 있다), 요 스위치들을 올려놓을 판넬 (아마도 아크릴)도 작성해야 하고.. 할 게 많다.
그래도.. 만들고 나면 뭔가 뿌듯할 것 같은 생각이...

이거 다 만들어지면 사실 warthog, 사이텍 시뮬장비 등도 안부러울 것 같다.
cougar MFD도 빠이빠이지 뭐...

어쨌든 지금은 계획만이고.. 곧 어떻게 할 지 하나하나 기회되면 올려보기로 하자.
Posted by hopi
,
요거 아침에 집에 오기 전에 짧은 10분 내로 처리해야 해서.. 엄청 급하게 쳤다.
마음에 쏙 드는건 아니지만.. 그냥 그런대로 들어줄 만 하길래 올려본다. ㅎㅎ


Posted by hopi
,
참 좋아하는 노래다.
드라마도 너무 좋아했었고...

간만에 피아노로 두들겨 봤다.
짤막한 버젼으로.. 길지 않게 연주했으니 즐감 하시길...

요건 사랑하는 내 와이프 은영을 위해 가끔 쳐주는 곡...




아래건 첫째 준형이가 너무나도 좋아하는 애니 '토토로' 주제가다.
준형이가 만화를 좋아하는건 아니고.. 요 주제가를 내가 쳐 주는걸 너무너무 좋아한다 ^^


Posted by hopi
,
요거.. 모르는 사람이 많던데..

콘텐츠 컨트롤 (왜 이렇게 꼭 발음해야 하는지는 알 수 없지만, 워드에서 '컨텐츠 컨트롤' 이라고 하면 검색조차 안된다.. 퐝당...)을 사용하게 되면 서식을 조금 더 깔끔하게 사용할 수가 있는데..

서식이 뭔지 모르는 사람은 살다보면 서식이 뭔지 알 수 있는 기회가 생길지도 모르므로, 한번 쯤 스쳐지나가듯 읽어보도록.

오늘의 서식 최종 목표는 다음과 같다.


요걸 서식으로 만들고자 하는데..
바로 콘텐츠 컨트롤이란 요 항목을 얘기하는 것


즉, 마우스를 갖다대면 전체가 선택되면서 입력 즉시 그 내용이 지워지는 것을 이야기한다.
사실, 위 항목 자체가 콘텐츠 컨트롤은 아니고, 항목 중 텍스트 항목일 뿐이다.



콘텐츠 컨트롤을 사용하기 위해서는 바로 위 처럼 [개발 도구] 항목이 메뉴에 있어야 하는데, 이게 안 보이는 사람이 분명 있을 것으로 안다.
왜냐하면 처음 설치했을 때는 위 항목이 보이지 않도록 설정되어져 있기 때문이다.
요걸 바꾸기 위해서는...


오피스 로고가 있는 동그란 버튼을 눌러 우측 하단에 있는 [Word 옵션(I)] 항목을 선택 해 주자.


Word 옵션에 보이는 항목 중 [리본 메뉴에 개발 도구 탭 표시(D)]를 체크 해 준다.


그렇담 이제 메뉴에서 이 [개발 메뉴]가 보일것이다.
이중에서 '서식있는 텍스트' 나 '텍스트'를 선택 해 주면 화면에 콘텐츠 컨트롤 텍스트 하나가 삽입되게 된다.



처음 추가 할 경우 '텍스트를 입력하려면 여기를 클릭하십시오' 라고 나오는데, 이걸 자신이 원하는 텍스트로 바꾸기 위해서는 디자인 모드를 클릭한 후 변경해야 한다.
기본적으로 있던 내용을 지우고 새로운 텍스트로 대체하면 자신이 정한 항목으로 텍스트가 변경되게 된다.
이후 디자인 모드를 다시 클릭하면 콘텐츠 컨트롤 텍스트가 완성된다.

(TIP:이후 [속성]을 눌러서 '입력 후 콘텐츠 컨트롤 삭제' 를 선택 해 주면 조금 더 완벽한 서식이 될 수 있다)


콘텐츠 컨트롤에는 이 외에도 프로그램에서나 구현이 가능하던 드롭다운 컨트롤, 그리고 다양한 tool에 있는 메뉴들을 이용할 수 있으므로, 서식을 조금 예쁘게 꾸며놓고 싶은 사람이 있다면 이러한 메뉴들도 구경 해 보면 좋을 것 같다.

그럼 이만...



Posted by hopi
,
Your children are not your children:
They are the sons and daughters of life's longing for itself.
They come through you but not from you,
And though they are with you yet they belong not to you. You may give them your love but not your thoughts,
For they have their own thoughts.
You may house their bodies but not their souls,
For their souls dwell in the house of tomorrow, which you cannot visit, not even in your dreams.
You may strive to be like them, but seek not to make them like you.
For life goes not backward nor tarries with yesterday.


사랑하는 준형아, 현진아.
너희를 사랑할 수 있게 해 줘서 고마워.
항상 까먹는 것 같아. 너희가 얼마나 천사같은 아이인지...

같이 있는 시간 시간을 모아보니 내가 얼마나 행복한 사람인지 알 것 같아.
이 순간을 영원히 잊어먹지 않았으면 좋겠다.

너희들을 얽매지 않는 아빠가 되도록 노력할께~~

Posted by hopi
,
외국 제목이 저거여? This man?

여튼.. 다른 포스팅이 워낙에 많으니 다 관두고서.. 나는 이 장면이 정말 압권이었다.

아무튼 사진부터 보자. (한컷만 있으니 영 어색해서.. 두 컷 더 추가했삼)


눈앞에 있는 사물을 바라보지 않는 시선처리...



그래.. 이젠 오늘을 다 살았으니 가야겄지..



근데.. 자세한 건 눈을 봐야 알 수 있다.
원빈의 눈색깔이 원래 저런게 아니라.. 회색빛 아스팔트 빛이 눈에 반사가 되어서 그런것처럼 보이는건데.. 의도적인 연출이긴 하겠지만, 자살 전 공허한 마음의 상태를 너무 잘 표현해 낸 것 같다.

시체를 보여주는 듯한 푸른 배경의색상이나 눈에 비치는 사물의 형태.. 그리고 눈 속의 한점의 빛까지..
이 장면 연출하려고 정말 노력하지 않았을까 싶다.

평점이 극을 달리고 있지만 (그래도 전반적 평점은 엄청 높다) 나로서는 최고의 영화 중 하나.
아이를 살렸다며 죽였어야 얘기가 자연스러웠을 것 같다는 개나리 씨베리아는  KIN

올만에 재밌는거 또 하나 봤네구랴.. ㅋ
Posted by hopi
,
컴파일 하고 빌드하는데 문제가 없었는데.. 실행시키니까 stack overflow란 메시지창을 본 사람은 여길 보기 바란다.


stack overflow란 쉽게 말하자면 stack이 넘쳐났다는 뜻인데.. 달리 얘기하자면 stack 에 제한이 있다는 얘기다.
위와같은 에러 메시지를 보려면 우선 실험을 해 보자.

간단한 다이알로그 프로그램을 만들어 두고 다이알로그 클래스 헤더파일 안에 다음과 같이 선언 해 본다.

UINT a[160000];

일단 빌드하고 실행.. 문제 없지? 그럼 일케 해보자.

UINT a[360000];

엥? 왠 스택 오버플로우?

이유를 말해주까? 기본적으로 정적 stack size는 1 Megabyte로 고정되어 있기 때문이다.
위를 계산해 보믄 UINT는 4바이트.. 즉 160000 * 4 = 640000 = 대략 640k. 360000 * 4 = 1280000 = 대략 1.2메가
이렇게 해서 스택 사이즈를 넘겨버리기 때문이다.

보통 네이년 지식즐에 보면 malloc을 하라는 답변이 많은데.. 다른 해결방법을 하나 알려주도록 한다.


해결법 1
네이년 지식즐의 malloc이든 new이든 동적으로 메모리를 할당해서 쓰면 아무런 문제가 없다. 대신 프로그램 죽을 때 꼭 지워주도록.

해결법 2
VC 6.0 기준으로 여길 보자.


프로젝트 세팅 화면인데.. 이중에 LINK 탭의 Reserve를 유심히 봐주기 바란다.
위의 얘기가 뭐냐면, 정적 스택 사이즈를 10 Megabytes로 늘려주세요.. 라는 곳이다.

근데 A00000 값이 뭐냐고?
1024 * 1024 * 10의 값을 헥사로 바꾸면 저게 된다. 의심가면 본인이 직접 해 보도록 할 것.

이후 OK를 누르고 닫으면 이후 이 프로젝트 스택 사이즈의 제한은 10메가로 상향 조정된다.
너무 크게한다고 좋은건 없으니 대충 이정도로 늘려놓고 필요한 메모리는 그때그때 할당 받아서 쓰는게 깔끔하다.

그럼 다들 수고~
Posted by hopi
,
아으.. 맨날 까먹어서 여기에다라도 적어놔야겠다.
테이블 조인하고자 할 때

select a.항목, b.항목 from 테이블A a join 테이블B b on a.필드1 = b.필드1

아웅.. 자꾸 까먹지 말자.

아래는 protector에서 사용하는 항목 중 쿼리스트링이랑 에러메시지 조인하는 쿼리

select a.querystring, b.errmsg from querys_201008091200 a join queryerrors_201008091200 b on a.sequencenumber = b.sequencenumber and a.sessionid = b.sessionid
Posted by hopi
,
준형이가 어느새 훌쩍 커버렸다는 생각이 들긴 하지만..
가끔 나이에 맞지 않는 말을 하여 은영과 나를 포복절도하게 만드는 말들이 있다.


;;;
요즘 준형이가 처가집에서 생활을 한다.
아무래도 유치원을 다니다 보니 집에 왔다갔다 하기가 힘들고, 더군다나 집이 좁아서 처가집에서 뛰어노는걸 더 좋아해서이다.

오랜만에 주말이라 준형이를 집에 데려오기 위해 집을 깨끗이 치웠다.
근 2주만에 집에 온 준형이가 집을 보더니

"와, 정말 깨끗한데~"

라고 얘기한다. 그러더니 이어서

"이거 깜짝 놀랐는걸~"

은영이랑 나랑 떼굴떼굴 구르며 웃었다.


;;;
토욜 밤에 세차를 하고 새벽에 들어오고선, 오락하느라 새벽 5시까지 혼자 놀다가 잤다.
일요일 아침에 준형이가 아빠랑 놀고싶어 하지만, 이른 아침부터 깨워대는 통에 내가 제정신일 리는 없는노릇.
한참 깨우던 준형이가 한 마디 한다.

"아빠 일어나!"

"...."

"정말 잠꾸러기가 되고 싶어~!"

아.. 현장에서 들어야 이 리얼한 목소리를 듣고 내 심정을 이해할텐데..
그렇게 졸린 와중에 한참 웃으며 어쩔 수 없이 일어났다.



;;;
요즘 준형이가 화날 때 마다 쓰는 말이다.
무슨 말을 하면서 꼭 뒤에다가 "~거든!" 라고 붙인다.

예를 들어보자.

"준형아. 치카치카 해야지"

"싫어!"

"준형이 자꾸 그러면 아빠가 화낸다"

"나도 화나거든~!"


또 다른 예도 있다.
이건 나때문인데.. 내가 가끔 얼음을 입에 넣어서 씹어 먹을때가 많다.
은영이랑 준형이가 있을 때 준형이가 얼음을 입에 집어넣는걸 보고 은영이가 말했다.

"준형아, 그거 뱉어. 너무 차갑잖아"

"..."

대꾸도 안하고 갑자기 얼음을 오도독 오도독 씹어서 먹더랜다.

"준형아, 너 얼음 씹어먹다가 이빨 부러져~!"

한참을 씹어서 다 먹은 준형이가 엄마를 눈을 흘겨가며 쳐다보며 얘기한다.

"안부러졌거든~!"



재밌는 이야기는 다음 또 기회될 때 올려야겠다.. 핫핫~
Posted by hopi
,
PowerPoint 2010부터는 플래쉬파일(swf)을 동영상삽입 메뉴에서 바로 넣을 수 있습니다

하지만 2007 버전에서는 아래와 같이 작업을 해야 합니다.
 
PowerPoint 2007에서는 개발도구 리본메뉴에 [기타컨트롤]도구모음이 있습니다.
개발도구 리본메뉴를 표시하기 위해서는
오피스단추 > 파워포인트 옵션 > 기본설정에 보시면
'리본메뉴에 개발도구 표시하기'를 체크하시면 됩니다.

개발도구를 리본메뉴에 추가하셨으면
개발도구 리본 메뉴에 가셔서 [기타컨트롤]을 선택하십시오.

기타컨트롤에 포함되어 있는 항목이 표시되면 항목을 내리셔서 [Shockwave Flash Object]를 선택하신 다음
파워포인트 슬라이드에 원하는 크기만큼 드래그 앤 드롭해주십시오.

X가 표시된 사각형 박스가 슬라이드에 표시되면 마우스 우측버튼 클릭 > [속성]을 선택하십시오.
속성 창이 나타나면 중간부분의 [Movie] 칸에 다운받은 플래쉬의 경로를 입력해주십시오.

경로 입력이 끝났다면, F5 키를 눌러 슬라이드쇼를 진행하면 플래쉬가 동작될 것입니다.


-- 출처 네이년 즐
Posted by hopi
,