반응형

 

오브젝트를 만들어봤으니 움직여보고 싶다.

 

1. 화면 아래에 있는 Project의 영역에 오른클릭하고

Create > C# Script를 선택한다.

(C# : 프로그래밍 언어. 게임개발할 때 자주 사용된다.)

 

 

2. 그러면 이렇게 스크립트 파일이 생성되는데,

이 파일을 더블클릭한다.

 

3. 그러면 이렇게 Visual Studio가 자동으로 실행되고

최처에는 저렇게 Class안에 Start와 Update라는 메서드 두개가 있다.

Start는 한 번 실행되고 Update는 60프레임?으로 실행된다고 한다.

 

*클레스와 메서드(함수)의 개념은 프로그래밍의 지식인데,

간단하게 말하자면 클레스는 껍데기고 메서드는 기능이다.

해당 부분에 대한 지식은 C# 프로그래밍 언어를 배우거나

다른 프로그래밍 언어를 배운다면 이해하기 어렵지 않다.

 

 

4. 생성된 스크립트를 드레그해서 원하는 오브젝트에

적용시켜 준다.

만약 inspector에 아무것도 안보인다면 Scene에서 적용시킬 오브젝트를

클릭하면 된다.

 

5. 아래와 같이 작성하면 화면에서 움직인다.

(설명은 캡쳐 화면 아래)

 

Vector3 move;

-> Vector3 : 백터의 형태? 라고 볼 수 있다. Vector2와 3가 있는데 2D냐 3D냐에 따라 갈린다.

-> move : 아무 이름이나 넣어도 상관x. 변수의 이름이다.

(변수 : 변하는 수. Vector3라는 타입의 값이 변할건데 그 변할 얘의 이름이 move라는 의미)

 

if (Input.GetKeyDown(KeyCode.LeftArrow) || Input.GetKeyDown(KeyCode.RightArrow))

-> if : 만약에. 말 그대로 만약에를 뜻하며, 뒤에 나오는 괄호안의 조건이 충족(true)가 된다면 뒤의 코드를 실행하라는 조건문이다.

-> Input : Unity자체가 갖고 있는 클레스라고 알고 있다. 사용자 입력에 대한 것을 감지하는 기능들이 들어가 있음.

-> GetKeyDown : 키를 누르는 것을 인지할 거고 뒤에 괄호 안에 들어가는 것에 대해 감지할 것.

-> KeyCode : 말그대로 키의 코드.

-> LeftArrow : 왼쪽 화살표 키

-> || : OR조건을 나타낸다. 앞에거 이거나 뒤에거 면 true.

 

Debug.Log(Input.GetAxis("Horizontal"));

-> Debug : 디버그. 아마 알음알음 들어봤을 것이다. 프로그래밍 과정에서 문제가 되는 부분을 찾거나 값을 확인하는 등을 뜻한다. 여기서는 디버그관련 기능을 갖고 있는 클레스라고 보여진다.

-> Log : 기록이다. Console이라는 곳에 괄호안의 내용을 표시해주는데, 사용자들은 보통 볼 수 없다.

-> GetAxis : 괄호안에 있는 것의 값을 가지고 와서 반환해준다. 괄호안의 문자열은 Input Manager에서 관리할 수 있다.

*참고/Input Manager보는 방법 및 설정 법

gwer.tistory.com/17

 

[Unity] 유니티에서 Input Manager보는 방법

상, 하, 좌, 우 화살표키를 입력하면 그 방향대로 움직이는 스크립트를 짜볼 것이다. 그 전에 Input을 사용할 때 보고 하면 좋은 InputManager을 세팅해보자. 1. Edit > Project Settings... 클릭 2. Input Manag..

gwer.tistory.com

 

 move = new Vector3(Input.GetAxis("Horizontal"), 0, 0);

-> move = : move란 변수에 뒤에 오는 것을 대입해줄거라는 뜻.

-> new : 프로그래밍언어를 배웠다면 어렵지 않게 이해가능하다. Vector3라는 녀석은 앞서서 move라는 이름의 변수로 활용할거라고 선언(컴퓨터한테 말해뒀음)은 했지만 실제로 값을 넣지는 않았다. 그래서 '실제'값을 넣기위해서는 '실제'의 데이터가 필요한데 new를 사용함으로써 Vector3라는 형태의 데이터를 만들겠다는 뜻이다.

-> Vector3(x좌표, y좌표, z좌표) : 이 Vector3는 기본적으로 값을 3개 갖는데 그 각각의 값이 x, y, z좌표이다. 그래서 Input.GetAxis("Horizontal")을 x좌표가 들어갈 자리에 넣어주고 있다. 이렇게 하면 키보드 입력에 따라 GetAxis를 통해서 값을 받아오고 move에 계속 대입하게 된다.

*아래와 같이 해당 인스턴스(클레스가 실체화 된 것)위에 마우스를 올려놓고 있으면 이렇게 설명이 뜬다.

*인스턴스 개념은 이해못해도 쓰는데 지장은 없으나, 이해하면 편-안

*float는 소수

*오버로드는 여기서 이해 못해도 상관x

 

transform.Translate(move);

-> transform : 유니티에서 제공해주는 기능이라고 볼 수 있는데, 오브젝트 자체를 가르키고 그 오브젝트의 움직임을 관할한다.

-> Translate(move) : 움직이는 기능. 괄호안에는 Vector타입의 데이터를 넣어줘야 하며, move라는 Vector만큼 움직이게 된다.

반응형
반응형

 

유니티에서 첫 프로젝트를 생성하고 난 후

오브젝트를 생성하려 하면 어안이 벙벙하다.

 

하지만 알고보면 매우 간단하다.

 

1. 왼쪽에 붙어있는 Hierarchy 화면에 오른클릭을 한 후

원하는 오브젝트의 형태를 선택해서 생성한다.

 

 

2. 덩그러니 생성

 

3. 위치가 마음에 안들거나 초기 개발에는

보통 위치값을 0, 0, 0으로 줄 수 있다.

오른쪽에 인스펙터(inspector)에서 Transform에 Position값을

수정해준다.

 

 

반응형
반응형

 

상, 하, 좌, 우 화살표키를 입력하면 그 방향대로 움직이는

스크립트를 짜볼 것이다.

그 전에 Input을 사용할 때 보고 하면 좋은

InputManager을 세팅해보자.

 

1. Edit > Project Settings... 클릭

 

2. Input Manager을 발견할 수 있다.

그런데 난 계속 보고 쓰고 싶어서 내 유니티 창에 넣을 것이다.

 

 

3. 탭을 드레그해서 갖다가 붙힌다.

위치는 아무곳이나 상관없지만 개인적으로는 Hierarchy옆에 붙혔다.

 

 

4. 그럼 이렇게 찰싹 붙어있는데 화살표를 눌러서 값들을 봐도

수정할 수 있는 칸이 안나와서 어리둥절 했다.

 

 

5. 간단하게 하이라키 옆에 붙어있는 경계를 잡고 오른쪽으로

드레그해서 넓혀주면 값이 보인다.

 

 

반응형
반응형

 

심심해서 Unity를 다시 끄적이다가

강좌를 보고 따라해보는데 Input이 자동완성이 안된다.

(아마 바로 갖고있는것으로 보아 Unity내부 자원인듯)

상단에 using UnityEngine이 있는데도 못 찾아서 빡쳐서 찾아보았다.

 

우선 실행하고 있는 Unity와 Visual Studio를 종료 한 후 아래의 과정을 따라해보자.

 

1. 윈도우의 검색에서 Visual Studio Installer을 찾아서 클릭

 

2. 수정 버튼 클릭

 

 

3. 워크로드에서 설치 세부 정보에 Unity를 사용한 게임 개발이 없으면

게임에 Unity를 사용한 게임 개발을 체크 한 후 수정버튼을 누르면

다운로드가 시작됨

 

 

4. 다운로드가 완료된 후 다시 Unity를 실행해서 Visual Studio를 사용하면

자동완성이 잘 된다.

반응형
반응형

anko 라이브러리 설치방법

Anko는 안드로이드 개발을 빠르고 쉽게 만들어줄 라이브러리이다. Anko는 코드를 깔끔하고 쉽게 읽을 수 있게 하며, 우리를 힘들게 하던 Java Android SDK를 잊게 만들어 줄것 이라고 설명 되어 있다.

anko git hub : github.com/Kotlin/anko

 

Kotlin/anko

Pleasant Android application development. Contribute to Kotlin/anko development by creating an account on GitHub.

github.com

 

문서가 영어로 되어 있어서 설치하는 방법을 알아먹기 힘들었다.

영어 까막눈은 개발에 있어 지대한 불편함을 겪어야 한다ㅠㅠ

실패한 한국의 공교육 영어만 배워온 나에게 너무 어려운 과정이다............

차라리 스피킹이 나을정도로 문법과 해석에는 쥐약이지만 다른 블로그들 까지 뒤적거려 가며 방법을 찾았다.

생각보다 설정에 대한 문구만 기입해주면 되어서 어렵지 않다.

 

1. app build.gradle에서 

implementation "org.jetbrains.anko:anko:$anko_version"

해당 문구를 dependencies에 기입한다.

구 버전과 달라 해당 파일을 찾기 힘들 때가 있다.

 

2. Project레벨의 build.gradle에

ext.anko_version='0.10.8'

을 기입한다.

=의 뒤에 있는 버젼은 최신버전으로 바꾸어 기입하여도 ok

buildscript 하위에 넣어주면 된다

 

그러면 오른쪽 상단에 'Sync now'가 표시되고, 클릭하면 이내 다운로드가 시작된다.

 

끝!

반응형

'kotlin' 카테고리의 다른 글

[Kotlin] 기본 타입 정리  (0) 2019.08.11
[Kotlin] 기본 문법 정리  (0) 2019.08.08
반응형

임시작성
*어떤 블로그의 내용을 적어둔 것인데 출처는 잊어버림ㅠㅠ Gwer발자 오리지널은 아님.

*모든 명령어 뒤에 --help를 붙이면 자세한 사용방법이 나온다.

- pwd : print working directory. 현재 작업중인 디렉토리 정보를 출력한다.
- cd : change directory. 경로를 이동한다. 절대경로와 상대경로로 이동 가능하다.
- ls : list 디렉토리 목록을 확인한다. 보통 ls뒤에 다양한 옵션을 붙혀서 사용한다.
- cp : copy 파일 혹은 디렉토리를 복사. 디렉토리를 복사할 때는 -r옵션을 주어야 한다.
- mv : move 파일 혹은 디렉토리 이동. 실제로 원하는 위치로 이동할 때도 사용하지만, 이름을 변경하는 용도로도 사용한다. cp와 달리 디렉토리를 이동할때도 다른 옵션이 필요없다.
- mk dir : make directory. 디렉토리 생성. -p 옵션을 주면 하위 디렉토리까지 한 번에 생성가능.
- re : remove 파일이나 디렉토리를 삭제. 디렉토리를 삭제할 때는 -r옵션을 주어야 한다. -f옵션을 주면 사용자에게 삭제 여부를 묻지 않고 바로 삭제한다. 디렉토리를 삭제할 때에는 하위 디렉토리까지 모두 삭제되므로 유의해야한다.
- touch : 파일이나 디렉토리의 최근 업데이트 일자를 현재 시간으로 변경한다. 최근 업데이트 일자는 ls -l명령을 통해 확인할 수 있다. 파일이나 디렉토리가 존재하지 않으면 빈 파일을 만든다.
- cat : concatenate. cat명령어는 활용 방법이 다양하다. 단순히 파일의 내용을 출력할 수도 있고, 파일 여러개를 합쳐서 하나의 파일로 만들 수도 있다. 그리고 기존 한 파일의 내용을 다른 파일에 덧붙일수도 있다. 새로운 파일을 만들 때에도 사용한다.
- head : 파일의 앞부분을 보고 싶은 줄 수 만큼 보여준다. 옵션을 지정하지 않으면 파일 상위 10줄을 보여준다.
- tail : 파일의 뒷 부분을 보고싶은 글 수 만큼 보여준다. 옵션을 지정하지 않으면 하위 10줄을 보여준다. 참고로 -F옵션을 주고 실행하면, 파일 내용을 화면에 계속 띄워주고 파일이 변하게 되면 새로운 업데이트된 내용을 갱신해준다. 주로 실시간으로 내용이 추가되는 로그파일을 모니터링할 때 유용하게 사용한다.
find : 특정 파일이나 디렉토리를 검색한다.
ex) find [검색경로] -name[파일명]
-> find ./ -name "file"
파일명은 직접 풀 네임을 입력해도 되지만, 특정 조건으로도 검색가능하다.
-> find ./ -name "*.jpg"
위와같이 검색하면 jpg확장자를 가진 것을 찾을 수 있다.

*옵션들
-exec : 확장자가 특정한 파일만 찾아서 삭제할 수 있다.
-> find ./ -name "*.jpg" -exec rm
-type : 디렉토리나 파일만 지정해서 검색가능.
-> find ./ -type d
find ./ -type f
- wc -l : 특정 디렉토리에 find 조건에 맞는 결과 값이 몇개 존재하는지 숫자로 간편히 알아볼 수 있다.
-> find ./ type f | wc -l
(여기서 | 이 것은 엔터의 위에 있는 \의 쉬프트를 누른 후 기입한 특수 문자이다. l이 아니니까 주의)
-exec 와 -i : 특정 조건에 해당하는 파일들의 내용을 전부 찾아서 바꾸는 것.
-> find ./ -name '*text' -exec sed -i 's/hi/hello/g'
*다음 sed명령어는 testfile.txt이라는 파일의 모든 'hi'라는 문자열을 'hello'로 바꾸는 역할을 한다.
-> sed -i 's/hi/hello/g' testfile.txt
이를 find명령과 조합하여 조건에 맞는 모든 파일에 대해 해당 명령을 수행할 수 있도록 응용 한 것.

반응형
반응형

 

1. git clone 파일을 만들고 싶은 local 문서로 이동

표시한 paintJS를 만든다 가정하면, cmd로 htdocs까지 이동한다

 

2. github에서 가지고 올 repsitory의 url을 가져온다.

빨간박스에 있는 url

 

3. cmd에서 git clone 내 github url을 적어준다.

 

 

cloning into '프로젝트 이름' 이 나오면 성공

반응형
반응형

 

GIT은 잘만 사용하면 굉장히 편리하고 유용한것 같다.

내 작업물을 체계적으로 관리할 수 있으니까.

 

하지만, 이 GIT이란거는 따로 배워야할 정도로

복잡하고 어려운 편이다.

 

GIT은 할때마다 에러를 토해내는 것이 정말이지

다 부셔버리고 싶다.

 

최근에는 안하던 PHP를 해보고 있어서 Atom을 쓰고 있다.

그래서 Atom과 GIT을 연결하여 꿀을 좀 빨이보겠다고

연결방법을 구글링해서 하는데, 아니 이런 xx!!!!!1

왜 왜!!! remote해도 무반응 이냐고!

 

분명히 저렇게 적어 넣으면 해당 주소와 연결이 되었다는 식(?)의 메세지가 출력된다 했었는데!

git remote -v를 아무리 부르짖어도 cmd는 응답하지 않았다.

 

분노의 git remote -v 연속 부르짖음

 

일단은 모르겠고 무조건 push를 해보기로 했다.

안되면 걍 쑤셔넣어 보는것이다.

 

무식하게 한다고 되는게 아니라니

 

응 안되

ㅋㅋㅋㅋㅋㅋㅋ

아악~!~!

안된다.

git add 파일명

-> 이 명령어로 stage에 대상이되는 파일을 올리는 듯하고

git commit -m

-> commit을 할건데, -m으로 메세지 넣어 준다.

git push -u origin master

-> git에는 파일의 복원과 관리를 쉽게 해주려고 브랜치라는게 존재하는데,

일단 여기서는 그딴거 없고 무조건 master로 올리는 것이다.

(첫 업로드니까)

fatal: 'origin' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights

-> 'origi' 은 존재하지 않는다 git repository에

못 읽겠다 remote repository에서

제발 확인 좀 해줄래? 정확한 접근인지?

 

ㅋㅋ 걍 한마디로 너의 repository 접근자체가 의심시럽고,

확인 좀 해라는 뜻이다.

 

그래.. remote가 안됬으니까 당연하겠지.

하지만, 난 니가 remote 안되어도 나의 repository를 찾아서

파일을 좀 올려줬으면 해.

왜냐면 왜 안되는지 모르겠거든..

 

왜 안되냐고 컴퓨터에게 윽박을 잠시 질러봤다가,

다시 시도를 해보기로 했다.

xx

안된다.

이번에는

error: key does not contain a section: origin

이라는 에러 메세지가 출력됬다.

무지렁이 그 자체인 나는 전혀 무슨 말인지 감이 오지 않았다.

근데 대충 때려맞춰봤을때 git config ~ 뒤의 내용을 보면,

대충 프로그래밍 좀 해봤다 하면 config 어쩌고 파일이 설정 관련 파일이라고 눈치로 안다.

 

암턴, 그걸 보니까 git 파일에 config란 파일에 뭐가 들어가는데,

그 들어가는 key와 vluse가 세트인디 origin이란 항목은 없다는 것

아닐까 하는 결론에 도달 했다.

config 파일 까봤다

 

응 origin 있어

그럼 도대체 뭐가 문제일까 싶었다.

 

격분하였던 과거

 

난 키보드를 마구 두들기며 생각에 잠겼고,

그냥 한 번더 시도해보기로 했다.

 

되, 된다!!1

 

헤엨 된다

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

차이점이 보.이.십.니.까?

명령어 틀림

 

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

명령어 틀렸다.

 

20분간 머리 쥐어뜯고 컴퓨터에게 윽박지르며,

키보드 총 까진 아니지만 타악기정도로

두들긴 결과는 명령어가 틀려서였다.

잊지말자.. 컴퓨터는 잘 못이 없다.

 

잘 못은 항상 내가 한다는것..을..

 

git config user.name 닉네임

git config user.email 깃에서 쓰는email

git remote add origin 깃헙 유알엘

 

이걸로 진행하면 클린하게 해결된다..^-T

 

전체 과정은 정리 잘된 T스토리 링크를 달아드린다..

https://ndb796.tistory.com/51

반응형

+ Recent posts