전체 글 354

[스크랩] InputManager 설정

출처 : 유니티 코리아 Axes: 축들. 왜 축(axis)인가? 유니티에서는 버튼을 단순한 0, 1의 디지털 방식의 버튼이 아니라, 입력 자체를 상하좌우(X축, Y축의 +, - 방향)로 움직이는 아날로그 방식의 스틱이나, 압력까지 고려한 아날로그 감압 버튼, 즉 오락실 또는 콘솔게임 컨트롤러와 같은 아날로그식 입력 장치들을 고려해, 모든 입력을 아날로그 입력으로 가정하고 처리한다고 생각하면 좀 더 이해가 쉬울 것 같습니다. 즉, 아날로그식 컨트롤러를 떠올리면서 각 항목들을 보시면 이해가 쉽습니다. Size: 설정 축(Axis)의 개수(축 배열의 크기). 축을 추가하고 싶을 경우에는 항목의 숫자를 증가 시켜줌. delete 키 등으로 해당 축을 제거하면 자동으로 줄어듬 Name: 축의 이름. 스크립트에서 ..

게임/Unity3D 2012.10.29

윈속 확장 라이브러리 AcceptEX, GetAcceptExSockaddrs, TransmitFile

출처 : http://blog.naver.com/PostView.nhn?blogId=spaciall&logNo=50100384032 ----------------------------------------1.1.1. AcceptExAcceptEx는 서버가 클라이언트의 연결을 받아들일 때 비동기 호출(asynchronous call)로 동작하게 하여 다른 클라이언트의 연결을 즉시 받아들일 수 있도록 한다. //////////////////////////////////////////////////////////////////////////BOOLPASCALFARAcceptEx( INSOCKETsListenSocket, INSOCKETsAcceptSocket, INPVOIDlpOutputBuffer, INDW..

Network/Windows 2012.10.23

[스크랩] 멀티스레딩에 대한 간단한 설명

출처 : 위키백과http://ko.wikipedia.org/wiki/%EB%A9%80%ED%8B%B0%EC%8A%A4%EB%A0%88%EB%94%A9-------------------------------------장단점[편집]장점응답성 : 대화형 프로그램을 멀티스레드화하면, 프로그램의 일부분(스레드)이 중단되거나 긴 작업을 수행하더라도 프로그램의 수행이 계속되어, 사용자에 대한 응답성이 증가된다. 예를 들어, 멀티스레드가 적용된 웹 브라우저 프로그램에서 하나의 스레드가 이미지 파일을 로드하고 있는 동안, 다른 스레드에 사용자와의 상호 작용이 가능하다.자원 공유 : 스레드는 자동적으로 그들이 속한 프로세스의 자원들과 메모리를 공유한다. 코드 공유의 이점은, 한 응용 프로그램이 같은 주소 공간 내에 여러 ..

Thread/팁 2012.10.22

[스크랩] 스레드 실행 예

출처 : 위키백과 http://ko.wikipedia.org/wiki/%EC%8A%A4%EB%A0%88%EB%93%9C------------------------프로세스와 스레드의 비교멀티프로세스와 멀티스레드는 양쪽 모두 여러 흐름이 동시에 진행된다는 공통점을 가지고 있다. 하지만 멀티프로세스에서 각 프로세스는 독립적으로 실행되며 각각 별개의 메모리를 차지하고 있는 것과 달리 멀티스레드는 프로세스 내의 메모리를 공유해 사용할 수 있다. 또한 프로세스 간의 전환 속도보다 스레드 간의 전환 속도가 빠르다.멀티스레드의 다른 장점은 CPU가 여러 개일 경우에 각각의 CPU가 스레드 하나씩을 담당하는 방법으로 속도를 높일 수 있다는 것이다. 이러한 시스템에서는 여러 스레드가 실제 시간상으로 동시에 수행될 수 있기..

Thread/팁 2012.10.22

[스크랩] Thread Model

[출처] 스레드 모델(Thread Model)|작성자 표효찬http://blog.naver.com/gouhc46?Redirect=Log&logNo=60144278990-------------------------------------------고전적인 스레드 모델프로세스를 바라보는 관점1. 서로 관련된 자원을 한 군데로 모은다.(address space, code, data, etc...)2. 실행의 흐름(thread)=> 결국 프로세스는 자원을 한 군데로 모으고, 스레드는 CPU에서 실행되는 것 여러개의 스레드가 하나의 프로세스에서 병렬로 수행되는 것은, 여러개의 프로세스가 하나의 컴퓨터에서 병렬로 수행되는 것과 유사하다스레드의 경우는 한 프로세스 안에 들어있는 스레드들이 주소공간과 자원들을 공유한다...

Thread/팁 2012.10.22

[스크랩] C/C++ volatile 키워드

출처 : http://skyul.tistory.com/337--------------------------------------------------------------------2006년 9월 마이크로소프트웨어 기고글입니다. 약 60여개의 C++ 키워드 중에 가장 사용 빈도가 낮은 키워드는 무엇일까? 정답은 volatile이다. 대부분의 C/C++ 참고 서적은 1-2줄 정도로 volatile이 컴파일러의 최적화(optimization) 막아준다고만 설명하고 있다. 또한 Java5 이후로 명확한 메모리 모델이 확립된 자바와는 달리 C/C++의 경우 volatile에 대한 명확한 표준이 없고 컴파일러마다 구현에 차이가 있다는 점도 volatile 키워드의 사용을 어렵게 하고 있다. 하지만 임베디드 시스템..

Thread/Windows 2012.10.22

C에서 malloc 과 C++에서 new 에 대한 고찰

malloc과 new의 차이점은 '생성자를 호출하며 메모리 생성을 하느냐' '호출하지 않고 메모리 생성을 하느냐' 의 차이이다. 즉, 클래스에 디폴트 생성자를 만들어 놓지 않고인자를 여럿 받는 생성자를 만들었는데,이 클래스 메모리를 배열로 할당받기 위해 더블 포인터로 선언하였을 때!!! ...와 같은 상황이 -_-; 있을 수 있다!!!그럴 때, 보통 디폴트 생성자를 따로 만들어서, 다음과 같이 개발해야 할 것이다. CMem** ppMem;ppMem = new CMem*[5]; for(int i=0; i

C, C++ 2012.10.22

[스크랩] Interlocked 함수들..

출처 : http://silita.tistory.com/10 멀티쓰레드상 한쓰레드가 메모리상에 처리 중 다른 쓰레드가 같은 메모리에 접근하지 못하도록 해야하는데 흔히 크리티컬섹션등의 동기화함수를 쓰게 됩니다. 근데 접근못하게 하는 시간을 최대한 짧게 할 수록 멀티쓰레드를 사용하는 서버의 성능이 향상되게 되죠. 그런 의미에서 쓰레드 세이프하면서 코스트 적은 숫자 증가 방법은 여러모로 활용 가능성이 높습니다. 윈도우에서는 이를 위해 Interlocked 라는 접두어를 붙인 함수를 제공하죠. 여러 기능의 함수가 많지만 우선 간단하게 4바이트 메모리에 락을 걸어 작동하는 함수들에 대해 정리를 해봤습니다. LONG InterlockedExchange( LPLONG Target, LONG Value )..

Thread/Windows 2012.10.19
반응형