블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2809)
Unity3D (865)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (234)
협업 (61)
3DS Max (3)
Game (12)
Utility (140)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (16)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

ic! berlin 안경

Interest / 2011. 7. 15. 13:03
http://eslife.tistory.com/364#comment8504811

ic! berlin model damien
http://idolra.tistory.com/19

ic! berlin(julie)
http://www.k-eyewear.com/eyeglass/goods_view.asp?page=3&Big=1&idx=919&Middle=115


반응형
Posted by blueasa
, |

strncmp 와 memcmp

Programming/C/C++ / 2011. 7. 14. 14:07

중간에 NULL 이 포함되면, 그 뒤의 내용이 틀려도 strncmp는 같다고 생각합니다.

"strcmp\0abc" , "strcmp\0123" 을 strncmp는 같다고 생각하지만

memcmp 로 위의 10 바이트를 검사하면 틀리다고 나옵니다.

이건 str 계열의 함수가 중간에 NULL을 만나면 종료하기 때문입니다.


출처 :  http://kldp.org/node/29

반응형
Posted by blueasa
, |
반응형
Posted by blueasa
, |

Tortoise SVN 속도 향상 및 자동 업데이트

개발자에게 있어 SVN은 편리함과 안전성을 위해 꼭 필요한 툴이죠...
그런데 이렇게도 좋은 툴이,
컴퓨터에 나름의(?) 부하를 주지요.. ㅋㅋ
이런 부하를 조금이라도 줄이기 위해 여러 곳에서 수집한 방법들을 적어 봅니다.
아래 방법으로 저는 속도향상을 체감했습니다.


Tortose SVN 속도 향상

SVN 속도향상을 위해 아래 2가지 방법을 적용합니다.
1. 로그 캐싱 사용안함
사용자 삽입 이미지



SVN-설정-로그캐싱 탭에서 [로그 캐싱 사용] 체크 해제, [모호한 URL들을 허용합니다] 체크해제, [모호한 UUID를 허용합니다] 체크해제

2. 아이콘 오버레이 사용안함 (권장하지는 않음)
- 아이콘 갱신이 안됩니다.
사용자 삽입 이미지


오버레이 탭에서 [상태캐시]를 [없음]으로 선택
2) [제외경로]에 로컬디스크의 루트 경로들을 적어줌 (예 c:\* d:\*)
3) [포함경로]에 SVN 체크아웃 디렉토리 경로를 적어줌 (예 d:\SVN_Source\*)
- 경로가 여러개면 엔터치시고 경로를 더 적어주세요)

1~2 항목 수행 후에 작업관리자에서 TSVNCache.exe를 Kill 해주세요..



Tortoise SVN 자동 업데이트


1. 아무 디렉토리에다 batch 파일을 만듭니다.
예제로, d:\SVN_AutoUpdate.Bat로 텍스트 파일 형태로 만듭니다.

2. 파일의 내용으로는 아래와 같이 적어주세요
- SVN 설치 경로\bin\TortoiseProc.exe /command:update /path:"SVN 체크아웃폴더" /coseonend:자동으로 창 당기 의 형태입니다.
예) 한줄로 적어야 합니다.(한줄로 적으니 오른쪽 글자들이 짤려서.. 저는 줄을 나눴습니다... "exit"는 도스창을 닫기 위한 명령이므로.. 한줄 띄워주세)

"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:"d:\SVN_Source\"
/closeonend:1

exit



3. 파일 저장 후,
1) 시작-제어판-예약된 작업-[예약작업 추가] 실행
2) 창이 뜨면 [다음] 클릭 - [찾아보기]로 위에서 만든 bat 파일을 선택
3) 작업실행에 업데이트 주기를 선택 (저는 "매일"을 선택했습니다.) - [다음]클릭
4) 업데이트 할 시간을 적고 [다음]
5) 본인 컴퓨터의 암호 및 계정을 입력하고, [다음] 클릭
6) [마침]을 클릭하면 이 작업의 고급 속성 열기 체크 후 [마침] 클릭
7) 속성 창에서, 일정, 설정 등 원하는데로 설정 후 확인
8) 만들어진 예약작업에서 오른쪽 버튼-[실행]을 통해 정상 동작 하는지 확인 해봅니다.
9) 끝.

Written by 투덜이


반응형
Posted by blueasa
, |

Gamebryo Default Coordinate

Gamebryo / 2011. 6. 17. 15:53



게임브리오 좌표계가 OGL이랑 같다는 글을 보고 그러려니..하면서 지냈는데

아무리봐도 이상해서 테스트 해보니 게임브리오 기본 좌표계는 이미지 왼쪽과 같았습니다.

오른손 좌표계는 맞지만 OGL 좌표계와 같다고 하면 사람 헷갈립니다.(저처럼..)

겜버려 샘플들을 보다보면

kRotX.MakeXRotation(-NI_HALF_PI);
kRotZ.MakeZRotation(NI_HALF_PI);
m_kCamera.m_spOrientNode->SetRotate(kRotZ * kRotX);

부분을 볼 수 있습니다.

위 로테이션을 거치면 이미지의 우측과 같게 되고,

거기서 3DS Max와 맞추기 위해서 -X / -Y / Z를 사용하면 3DS Max와 같은 좌표계 입니다.

너무 헷갈려서 그려보고 기록을 남기기 위해서 올려 놓습니다.


P.s. 인터넷을 뒤져도 생각과는 다른 좌표계라서 제 생각이 틀렸을수도 있습니다. 
       틀린 부분이 있다면 지적 부탁 드립니다. (_ _)
 

출처 : Mine

[추가] 카메라 좌표계

Max의 카메라와 Gamebryo의 카메라는 방향 벡터가 월드 스페이스 축에 맵핑되는 방식이 서로 다릅니다. 아래 표는 카메라와 관련하여 Max 축에서 Gamebryo 축으로 맵핑되는 걸 보여줍니다. 이 전환은 익스포트 시에 Gamebryo 카메라에서 회전으로써 자동으로 처리됩니다.

지오메트리와 노드들의 좌표계는 Max Gamebryo 모두 같습니다.

카메라 방향

Max 좌표 축

Gamebryo 좌표 축

Up

+ Z

+ Y

Right

+ X

+ Z

Forward

+ Y

+ X



출처 : 게임브리오 문서 중, Coordinate System and 3ds Max 에서 발췌

반응형

'Gamebryo' 카테고리의 다른 글

[펌] 게임브리오 관련..  (0) 2011.07.25
[Link] 게임브리오 강의  (0) 2011.03.28
gamebryotip  (1) 2011.03.21
Posted by blueasa
, |
 
KinsgTool을 쓰면서 자주 쓰는 DoxyGen 주석을 적어논다.
쓰다보면 더 늘어날것도 같지만 우선 아래 몇가지는 종종 쓸거 같다.
필요할경우 적절히 수정해서 사용하면 된다.

Mainpage 설명용

/**

* \mainpage

KingsTool 사용 예제

* \section intro

소개

* : Kingstool을 사용하는 방법

* \section Program

프로그램 설명

* : KingsTool로 문서화 되는 모습을 보이기위한 간단한 프로그램

* \section CREATEINFO

작성정보

* 만든이 : ItsMe \n

* 작성일 : 2008-09-09

* \section MODIFYINFO

수정내역

* 수정자 / 수정일 : 수정내역등 \n

* ItsMe / 08.09.09 : KingsTool 사용방법 테스트 클래스 추가

*/

파일목록을 만들시
(
파일 상단에 위치시킨다.)

/**

* \file Animal.h

* \date 2008/9/9

* \author ItsMe

* \brief 테스트일겁니다.

*/

Class에 사용시
(
클래스 상단에 사용)


/**
* \date 2008-09-09
* \author ItsMe
* \brief
강아지에 대하여 나타내는 Class
*/
class CDog : public CAnimal

함수에 사용시
(
함수 상단에 사용)


/**

* \param 설정할 강아지타입
* \return
성공여부

*/
///
강아지 종류 설정bool SetDogType(int iSetDogType){

enum을 나타낼시
(
위치는 아무데나 상관없으나,
파일목록을 만드는주석 밑에 위치하는게 보기에 편할 듯 싶다.)


/**
* \enum CDog::DogType
* \brief enum
설명
*/

Enum 세부주석


class CDog : public CAnimal{
enum {
DOGTYPE_BEAGLE = 0, ///<
종류 : 비글



반응형

'Utility > Doxygen' 카테고리의 다른 글

[삽질] KingsTools 함수등 정보가 안보일 때..  (0) 2012.06.12
KingsTools VS2008 버전  (0) 2011.01.21
Posted by blueasa
, |

철권6 리리 기술표

Game / 2011. 6. 17. 02:50
반응형
Posted by blueasa
, |

JSON

Etc / 2011. 6. 16. 01:17

JSON(제이썬JavaScript Object Notation)은, 인터넷에서 자료를 주고받을 때 그 자료를 표현하는 방법이다. 자료의 종류에 큰 제한은 없으며, 특히 컴퓨터 프로그램의 변수값을 표현하는 데 적합하다.

그 형식은 자바스크립트의 구문 형식을 따르지만, 프로그래밍 언어나 플랫폼에 독립적이므로 CC++C#자바자바스크립트,파이썬 등 많은 언어에서 이용할 수 있다.

RFC 4627로 규격화되었다.

목차

 [숨기기]

[편집]문법

JSON 문법은 자바스크립트 표준인 ECMA-262 3판의 객체 문법에 바탕을 두며, 인코딩은 유니코드로 한다. 표현할 수 있는 자료형에는 수, 문자열, 참/거짓이 있고, 또 배열과 객체도 표현할 수 있다.

배열은 대괄호로 나타낸다. 배열의 각 요소는 기본자료형이거나 배열, 객체이다.

 [10, {"v": 20}, [30, "마흔"]]

객체는 이름/값 쌍의 집합으로, 중괄호로 싼다. 이름은 문자열이기 때문에 반드시 따옴표를 하며, 값은 기본자료형이거나 배열, 객체이다. 각 쌍이 나오는 순서는 의미가 없다.

 {"name2": 50, "name3": "값3", "name1": true}

아래와 같이 이름에 따옴표를 쓰지 않아도 상관 없지만, 쓰는 편이 문자열과 숫자를 구분하기 좋다.

  {name2: 50, name3: "값3", name1: true}

JSON 메시지 단위는 배열이나 객체이다. 위의 두 예는 JSON 메시지가 될 수 있다.

[편집]예제

다음은 한 사람에 관한 정보를 갖는 JSON 객체이다.

 {
    "이름": "테스트",
    "나이": 25,
    "성별": "여",
    "기혼": true,
    "주소": "서울특별시 양천구 목동",
    "특기": ["농구", "도술"],
    "가족관계": {"#": 2, "아버지": "홍판서", "어머니": "춘섬"}
    "회사": "경기 안양시 만안구 안양7동"
 }

[편집]장점

  • JSON은 텍스트로 이루어져 있으므로, 사람과 기계 모두 읽고 쓰기 쉽다.
  • 프로그래밍 언어와 플랫폼에 독립적이므로, 서로 다른 시스템간에 객체를 교환하기에 좋다.
  • 자바스크립트의 문법을 채용했기 때문에, 자바스크립트에서 eval 명령으로 곧바로 사용할 수 있다. 이런 특성은 자바스크립트를 자주 사용하는 웹 환경에서 유리하다. 그러나 실질적으로 eval 명령을 사용하면 외부에서 악성 코드가 유입될 수 있다.모질라 파이어폭스 3.5, 인터넷 익스플로러 8, 오페라 10.5, 사파리구글 크롬 등 대부분의 최신 웹 브라우저는 JSON 전용 파서 기능을 내장하고 있으므로 이런 기능을 사용하는 것이 더 안전할 뿐만 아니라 빠른 방법이다.

[편집]바깥 고리

반응형
Posted by blueasa
, |

소프트 파티클은 들인 노력과 비용에 비해서 큰 시각적 효과를 볼 수 있는 방법인 것 같다. 최근 엔진을 Deferred 시스템으로 엔진을 바꾸면서 소프트 파티클을 사용 하기가 쉬웠다( 비단 soft particle뿐 아니라 DOF, SSAO등 깊이 버퍼가 필요한 놈들은 죄다 ㅎㅎ).

연기나 불 등 여러개의 파티클을 사용하는 이펙트들이 오브젝트와 겹치면 좌측 이미지처럼 경계가 날카롭게 나타난다. 소프트 파티클은 이 칼같이 나타나는 경계를 우측처럼 스무스하게 바꿔 주는 것이 기본 목표이다.

알고리즘도 간단하다. PS단에서 파티클 깊이(카메라로부터의 거리)와 뒷 오브젝트의 깊이가 근접할 수록 알파를 더 빼주는 것이다.

더 빼주는 알파 값 D = saturate(( Z object - Z particle) * scale)

단, 그림과 같이 단순하게 위의 수식으로만으로는 덜 자연스럽게 페이드 아웃이 되어 엣지가 존재하기 떄문에 pow()를 걸어주어 좀 더 자연스러운 페이드 아웃이 되게 한다.

당연한 소리가 되겠지만 파티클의 깊이 정렬이 되어 있어야 자연스러운 모습이 나올 것이다. Volumetric Particles니 뭐니 해서 좀 더 귀찮게 하던데, 큰 시각적 차이도 없어 보이고 소팅만 제대로 되어 있으면 굳이 그렇게 까지 할 필요는 없어 보인다.

이 글을 당신 역시 언능 해보시라~ 야구동영상 볼 시간 조금만 아끼면 금방 해보거늘!!!
반응형

'Gamebryo > Shader' 카테고리의 다른 글

알파블렌딩 렌더 설정  (0) 2011.07.22
알파 텍스쳐 블렌딩 공식  (0) 2011.07.22
쉐이더  (0) 2011.04.04
HDR  (0) 2011.04.04
겜브리오 쉐이더 제작시 주의사항  (0) 2011.04.04
Posted by blueasa
, |

부산역 앞

Memories / 2011. 6. 11. 13:38



부산에서 KTX로 올라오는데 오랜만에 부산역 갔더니 공개된 분수시설..

애들이 분수속에서 시원하게 잘놀고있고..

무지개도 보이길래 한 컷..
반응형

'Memories' 카테고리의 다른 글

고메~ 빼때기죽~  (1) 2012.01.25
잘피(말잘피)  (1) 2012.01.08
시골갔다가 찍어온 인동  (0) 2011.06.11
으름  (0) 2011.02.12
남해/금남호/창선-삼천포 대교  (0) 2011.02.12
Posted by blueasa
, |