달력

08

« 2018/08 »

  •  
  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  

'해상도 변경'에 해당되는 글 2

  1. 2014.03.20 Unity에서 폰으로 디버그 하기( Unity Remote )
  2. 2010.05.19 DirectX-전체 화면 하는 방법



 

* 본 글은 Unity 4.x 기준, 안드로이드 4.3 기준으로 작성 되었습니다.

 

 

Unity Remote 를 하기전에 추가로 설치 해야 하는 부분이 있는데,

usb 통합 드라이버를 설치 해야 한다.

 

설치를 안해도 문제가 없는 경우도 있으나,

거의 대부분 Remote가 정상적으로 실행되지 않는 경우가 많다.

 

꼭 설치 하도록 하자.

 

다운로드 링크(클릭)

 

 

통합 USB 드라이버 설치!


설치 방법 자체는 홈페이지에 더 상세히 나와 있으니 패스!

 

정상적으로 설치가 된것을 확인 했으면 다음 작업을 진행하기 전에

 

혹시 개발자 옵션이 보이지 않거나,

디버그 모드를 설정하지 않았을 경우 설정하고 오도록 하자.

 

 

Android에서 개발자 옵션 켜기 & 디버그 모드로 전환 (클릭)

 

 

본격적으로 Unity Remote를 작동해보자.

 

순서는 다음과 같습니다.

 

1. 스마트폰에 Unity Remote 설치

구글 스토어에 "Unity Remote" or "유티니 리모트" 검색 후 설치

 

이렇게 된건 다운 받으시면됩니다.

 

 

2. PC와 스마트폰을 USB로 연결

통합 usb 드라이버가 잘 설치 되었는지 꼭 확인하시길 바랍니다.

 

 

3. Unity Remote 실행

설치 후 실행 화면

 

 

4. Unity3D 실행

가능하면 Remote를 실행 한 이후에 Uniry를 실행할 것은 권장합니다.

 

5. [Play(▶) 실행]

 

 

 

아마 Game Scene 뿌려지고 있는 내용들이 핸드폰에 똑같이 뿌려지는 것을 확인 하실 수 있을겁니다.

 

 

 

바로바로 해상도를 변경 할 수 있으니 참고 하시기 바랍니다.

 

* 실제로 PC에서도 거의 대부분의 디버그는 다 확인을 할 수 있습니다.

굳이 Remote를 사용하는 이유는 터치나, 드래그 같은 부분은 pc로는 디버그 하기가 매우 힘들고 한계가 있기 때문입니다.

매번 테스트 할때 마다 빌드를 새로 하고 파일을 옮기고 다시 설치 하는 부분이 번거롭기 때문입니다.

( 듣기로는 빌드, 파일 이동, 설치를 좀더 편하게 하는 방법이 있다고 하는데 알아 봐야 겠습니다. )

 

 

Posted by 안식의후크





디바이스를 생성할때 InitD3D함수에서.


다음과 같은 부분이 있었습니다.
전 그냥 Windowed 라는 부분을 FALSE로 해주면
전체화면이 되겠거니, 하였으나,
그렇지 않더군요.

단순히 전체화면을 하고 싶을 뿐인데, 생각보다 해야하는 작업이 많았습니다.
(그렇다고 어렵진 않았습니다.)

일단 Windowed 속성을 FALSE로 주어야 하는건 맞지만 저것만 가지고는 부족하다는 겁니다.

요점만 먼저 말하자면,
D3DPRESENT_PARAMETERS 구조체에 몇가지 정도를 더 지정해 주어야 하며,
WinMain 함수에서 CreateWindow 또한 약간 손보아야 합니다.

먼저 예제의 실행 화면입니다.

자 그럼 이제 이 화면을 전체화면으로 바꾸어 봅시다.

먼저 CreateWindow 함수를 다음처럼 변경합니다.

어느 부분이 바뀌었는지는 다들 감을 잡으셨을 겁니다. WS_EX_TOPMOST | WS_POPUP 이부분입니다.
당연히 시작 위치는 0, 0
사이즈는 800 x 600 으로 잡아 주었네요.
이렇게만 하고 실행을 해보면 실행에는 문제가 없습니다.

여전히 파란 화면 뿐이지만, 테두리같은것이 다 사라지고 단순히 퍼런 창만 보입니다.

하지만 아직 전체화면은 되지 않았습니다.

자 일단 윈도우에 테두리를 지우고 어느정도 사이즈를 잡아 주었으니,
다음으로 해야 할 일은, 현재 해상도를 저 크기에 맞게 조절해야 한다는 것인데.
InitD3D 함수로 이동해서
D3DPRESENT_PARAMETERS 구조체의 설정을 할 때 다음처럼 변경해 봅시다.

간략하게 설명을 드리자면, 바뀐 부분은 Windowed 의 값이 TRUE에서 FALSE로 바뀌었습니다.(당연한 이치)

BackBufferFormat 에 값이 D3DFMT_X8R8G8B8로 변경되었습니다.
D3DFMT_UNKNOWN의 속성을 그대로 두면 되지 않는다고 합니다.
저 부분은 현재 윈도우에 대해서 32비트인지 16비트인지 하는 옵션을 조정하는 부분입니다만,
잘 모르시겠으면 그냥 저대로 하셔도 큰 문제는 없을 것 같네요. 그리고 SwapEffect는 변경되지 않았고,
hDeviceWindow, BackBufferWidth, BackBufferHeight에 대해서 추가되었습니다.

hDeviceWindow 에 대해서는 현재 윈도우 핸들을 넘겨주면 되고,


BackBufferWidth, BackBufferHeight는 딱 보면 아시겠지만 모니터의 해상도를 변경하는 부분으로 예상됩니다.

다음 처럼 코드를 변경하신 후 실행하면 해상도가 변경되는 느낌(?)이 들면서 전체화면으로 보여지는 파란 화면이 보이실 겁니다.

혹시 전체화면에 대해서 어떻게 하시는지 궁금해 하실 분이 있을 것 같아 미리 찾아보았습니다.
Posted by 안식의후크