NGUI를 공부하다가  간단하게 뭐라도 만들면 좋을것 같다고 생각하다가 예~전에 윈도우에 설치되어있던 카드게임을 만들게 되었다. 솔리테어인데 사실 이 게임 룰도 몰랐다. 생각보다 만들다 보니 룰이 복잡했다. 아직 카드를 놓을 수 있는 룰 제한은 넣지 않았다. 

1.카드 나열

순서대로 1번째는 1장,2번째는 2장 ~~~7번째는 7장의 카드가 놓여지고 그 배열의 맨 마지막 카드만 뒤집어짐

2. 나열되지 않은 카드배열 뒤집기

밑에 나열된 카드를 제외하고 남은 카드배열을 가지고있다가 버튼을 누르면 위에서부터 하나씩 뒤집어준다.

3. 마지막 위치한 카드 뒤집기 (아직 룰 적용 X)

카드를 선택하고 이동할 위치에 클릭하면 카드가 선택한 카드의 위치의 카드정렬은 마지막카드를 뒤집어준다.

미처리 부분 

- A로 적혀있는 빈공간에는 A부터 차례대로 놓을 수 있게 처리

- 밑에 뒤집어져있는 7개의 카드에는 제일 위에있는 카드 숫자보다 1 큰 카드만 올 수있고 다른 색의 카드가 와야한다 ex) 7클로버(검      은색)카드가 있다면 8하트(빨간색)or8다이아(빨간색)..빨간색의 숫자가 8인 카드

- 맨 오른쪽위의 카드는 7개의 깔려있는 카드 외의 카드들이다. 모두 뒤집었을 경우 다시 반대로 뒤집어 지도록 

- 모든 카드들은 클릭될 수가 있으므로, 뒤집어져 있는 카드만 클릭이 되도록 설정 예를들어 5장의 카드가 뒤집어져있는 카드배열을 클릭하면 모두 움직이도록 설정이 필요

- 추가적으로  생각나지 않는것들..

간단하게 연습삼아 만들어봤는데 생각보다 복잡해서 당황했다..

 

반응형

'유니티 > NGUI' 카테고리의 다른 글

NGUI) UI 사용법[버튼 클릭처리,텍스트(Label)]  (0) 2019.04.30
NGUI) Sprite,아틀라스 활용하기  (0) 2019.04.28

Label 은 폰트를 설정하여 글씨를 표시할 수 있는 객체

Texture 는 PNG, JPG 등의 파일을 불러와 이미지를 표시

Sprite 는 PSD 등의 Atlas파일을 불러와 이미지를 표시하는 오브젝트

Widget 은 기본적인 공간 상의 설정만을 가지는 빈 오브젝트

 

일단 작업전에 셋팅해주면 좋은거

원활한 UI작업을 위해 기즈모 사이즈를 줄여서하는 좋을 듯하다.

NGUI를 사용하려면 알아야 할 기본적인 것들

1. 모든 UI들은 UI Root안에 있어야한다. (UGUI의 canvas처럼)

2. 보통 UGUI와 NGUI를 같이 사용하지 않는다.

3. Depth기준을 어느정도 정해놓고 작업 진행하는게 좋다.

3. UI Panel Clipping -> softclip으로 변경 시

 

버튼 기능만들기

UGUI는 Button컴포넌트가 있다면 NGUI는 EventTrigger가 있다

1. 셋팅

UGUI버튼의 OnClickButton이랑 비슷한 기능이다. On Press는 마우스 클릭했을 때 발동된다. 

클릭하면 스프라이트이미지가 변경된다.

BoxCollider 추가하기

마우스처리를 하려면 콜라이더를 추가해야한다. 그리고 Collider auto-adjust to macth를 클릭해준다. 이게 무엇이냐 NGUI장점 스프라이트 크기만큼 콜라이더의 사이즈가 맞춰진다. 굿!

UI Camera 셋팅 

2D UI로 변경해준다.

텍스트 만들기 Label

Label을 처음 만들면 font를 지정해줘야한다. 같은 객체 안에 UI sprite, UI Label을 같이 사용하지 않도록한다.

확실히 다른 컴포넌트를 추가하지 않아도 기본적인 NGUI 기능들이 많다. 다 쓸까? 오히려 복잡해보이기도 하고 빌트인된 UGUI가 아직 더 편한거 같다.

반응형

'유니티 > NGUI' 카테고리의 다른 글

NGUI연습) 솔리테어 카드게임_작업중  (1) 2019.05.03
NGUI) Sprite,아틀라스 활용하기  (0) 2019.04.28
	public UISprite sprite;
    void Start()
    {
		sprite.spriteName = "key4";
	}

UGUI에서 아틀라스 공부했을때 드로우콜을 줄여 성능에 도움이된다고 학습했다. NGUI에서도 아틀라스를 다루기위해 학습 포스팅하게 되었다.

(UGUI아틀라스) : https://funfunhanblog.tistory.com/44

UGUI와 사용 방법이 다르다.

1.아틀라스 생성

Create -> Atlas

이름을 지정하고 생성해준다.

성공적으로 생성이 됐다면 Assets폴더에 생긴다.

 2. sprite추가

Open -> Atlas Maker

Atlas Maker를 누르면 위 그림과 같은 창이 뜨는데, 1번 그림 처럼 Atlas를 누르면 2번 그림 처럼 새로운 창이 뜬다. 그러면 현재 만들어져있는 아틀라스 목록들이 나오는데 여기서 사용할 아틀라스를 클릭해준다.

이미지를 추가할 아틀라스를 선택하고 이미지를 클릭하면 자동으로 sprite목록을 추가된다.  그 다음 Add/Update를 누르면 실제 아틀라스에 묶이게 된다.

삭제
추가

삭제한 다음에 이미지를 클릭하면 Add로 상태 보여준다. 같은 방법으로 Add/Update 버튼을 눌러준다.

3. sprite적용방법

sprite객체를 만들고

UI Sprite스크립트에서 생성한 아틀라스와 스프라이트를 설정해준다.

3. sprite적용방법2_스크립트적용

spritename = coin3

    public UISprite sprite;
    void Start()
    {
		sprite.spriteName = "key4";
	}

sprite.sprtieName = "이미지 이름"; 이러면 끝이다

ugui보다 간편하게 적용이 가능하다.

 

반응형

+ Recent posts