목록All (101)
noname02
bind() - bind( "이벤트1 이벤트2 이벤트3 ...", function() { } ); 와 같은 형태로 사용한다. - 여러개의 이벤트를 공통 메서드 하나로 연결할 수 있다. - bind({"이벤트1": function() { },"이벤트2": function() { },"이벤트3": function() { }}); 와 같은 JSON으로 묶을 수 있다. unbind() - bind 이벤트를 제거한다. on() - $(document).on( "이벤트", "셀렉터", function() { } ); - 동적으로 추가할 요소에 대한 이벤트를 정의하는 메서드이다. - 핵심적인 기능이다. off() - on 이벤트를 제거한다. one() - 이벤트를 한번만 실행시킨다. bind와 같은 방식으로 사용한다..
.next() - 현재 선택된 요소를 기준으로 다음 요소를 리턴한다. .prev() - 현재 선택된 요소를 기준으로 이전 요소를 리턴한다. .parent() - 현재 선택된 요소의 부모 요소를 리턴한다. .parents("Selector") - 현재 선택된 요소에서 Selector에 해당하는 가장 가까운 요소를 검색한다. - parent와의 차이점은, parent는 노드구조에 의해 바로 윗 단계만 검색되지만 parents는 단계에 상관 없이 검색된다. .children() - 현재 선택된 요소의 자식 요소들을 배열로 리턴한다. .find("Selector") - parents의 children 버젼. .eq(n) - 현재 선택된 요소의 n번째 자식 요소를 리턴한다. A.html(B) - A요소의 시작태그..
.css("CSS 속성이름"); - 해당 요소에 적용되어 있는 css값을 리턴한다. .css("CSS 속성이름", "값"); - 속성에 값을 지정한다. .css({"이름1": "값","이름2": "값","이름3": "값}); - JSON 형태로 값을 지정한다. .hasClass("클래스이름"); - 해당 요소가 클래스이름과 동일하면 true를 리턴한다. .addClass("클래스이름"); - 클래스를 부여한다. .removeClass("클래스이름"); - 클래스를 제거한다. .toggleClass("클래스이름"); - addClass removeClass .show() - 숨겨진 요소를 화면에 표시 .show(1000) - 숨겨진 요소를 1초에 걸쳐서 화면에 표시 .hide() - 요소를 숨김 .hide..
.val() - form태그 내의 요소에 입력된 값들을 리턴받는다. 파라미터를 전달하면 값을 설정할 수 있음. - 값이 없는 경우 null을 리턴한다. (조건문에서 false로 됨) .is() - 파라미터로 조건을 충족하는지 여부를 검사할 수 있다. .each() - 파라미터로 메서드를 전달하여 변수의 배열만큼 실행한다. .index() - 선택된 객체의 위치를 리턴한다. event.preventDefault() - 이 메서드를 선언하면 event의 기본값으로 설정된 액션을 취하지 않는다. $(window) - 브라우저 제어 객체. setTimeout(function, ims) - javascript 내장함수. function에 함수를 설정하고 ms는 1/1000초 단위인데 ms초 뒤에 function을..
navigator 클래스는 브라우저의 정보를 조회할 수 있는 속성값들을 가지고 있다. appName - 브라우저의 이름appCodeName - 브라우저의 코드명platform - 브라우저가 설치된 시스템의 환경userAgent - 브라우저의 종류와 버전(포괄적인 정보)appVersion - 브라우저의 버전 여기서 userAgent에는 OS의 이름이나 모바일 기기의 이름이 들어간다. 따라서 모바일기기임을 확인할 경우String클래스의 indexOf메서드를 이용해서 (만일 문자열을 찾지 못하면 -1을 반환 하는것을 이용하여) navigator.userAgent.indexOf("iPhone") > 0 과 같이 탐색하면 된다. iPhone, iPad, iPod, Android 등이 있다.
window 클래스 - 가장 최상위 클래스이다. 따라서 window는 생략 가능해서 사용한다. open("URL") - URL주소로 새 창(탭)을 연다.close(), self.close() - 창을 닫는다.open("URL","창 이름","옵션") - 새 창(탭)을 여는데, 창 이름을 설정하므로 해당 창 이름에 해당하는 창으로 연결한다. 따라서 여러 창이 열리는게 아니라 해당 창 이름에 해당하는 창 하나에만 열린다. - 창 이름이 공백이면 새 창이 열린다. 창 옵션값toolbar (yes/no) 툴바 아이콘의 표시 여부 설정location (yes/no) 주소표시줄의 표시 여부 결정status (yes/no) 상태 바의 표시 여부 결정menubar (yes/no) 메뉴 표시줄의 표시 여부 설정scrol..
setInterval 메서드는 다른 메서드의 이름과 1/1000초 단위의 시간값을 파라미터로 설정하여정해진 시간에 한번씩 파라미터로 전달된 메서드를 자동 반복 실행한다. printTimer란 메서드를 정의했을 경우setInterval(printTimer, 1000); 은 1초에 한 번씩 printTimer를 반복 실행한다.
멤버 메서드int getFullYear() - 년도 리턴int getMonth() - 월 리턴(0이 1월)int getDate() - 일 리턴int getDay() - 요일 리턴(0이 일요일)int getHours() - 시간 리턴int getMinutes() - 분 리턴int getSeconds() - 초 리턴int getTime() - 1970년 1월 1일 0시 0분 0초 부터 현재까지의 시간을 1/1000초 단위로 리턴(TimeStamp)void setYear(int n) - 1970년 이상의 년도를 설정void setMonth(int n) - 월을 설정(0~11)void setDate(int n) - 일을 설정void setDay(int n) - 요일 설정(0~6)void setHours(int ..
멤버 변수 Math.E - eMath.PI - 파이Math.LN10 - 밑이 10인 로그Math.LN2 - 밑이 2인 로그Math.SQRT1_2 - 0.5의 제곱근Math.SQRT2 - 2의 제곱근 멤버 메서드 int abs(int n) - n의 절대값int exp(int n) - E의 n승int log(int n) - 로그 함수를 구한다(?) int pow(int x, int y) - x의 y승을 구한다int sqrt(int n) - n의 제곱근float random() - 0.0~1.0사이의 실수형 난수를 구한다int round(int n) - 반올림int floor(int n) - 소수점 이하 값을 버림int ceil(int n) - 소수점 이하 값을 올림int max(int x, int y) - ..
멤버 변수.length - 문자열의 길이값. 멤버 메서드.String charAt(int n) - n 위치의 글자를 리턴한다. 맨 처음이 0이므로 원하는 위치의 글자는 n+1로 구해야 한다. int indexOf(String str) - 문자 str이 나타나는 최초의 위치를 반환한다. 역시 맨 처음이 0이므로 해당 글자의 위치는 결과값에 1을 더한만큼으로 표시된다. int lastIndexOf(String str) - 문자 str이 나타나는 마지막 위치를 반환한다. 역시 결과값은 1을 더한만큼 표시된다. String substring(int n) - n 위치부터의 글자를 표시한다. String substring(int n, int m) - n부터 m-1까지 글자를 표시한다. Sting toUpperCas..
C++의 auto와 같은 키워드이다.자료형을 암시적으로 선언하여 컴파일러가 그 자료형을 결정짓게 만든다.
- 유튜브 동영상 강좌를 통해 인벤토리 시스템을 구축해봅시다!
처음으로 만든 게임.비만 피하면 되는 간단한 게임이다.파란비, 연보라비, 진보라비 순으로 데미지가 쌔다. 화면 좌/우로 나뉘어져있어서 터치하면 이동한다.아이템은 3가지가 있는데 우산, 반쪽하트, 하트 이렇게 있고우산을 먹으면 3초동안 비를 막아준다.
모바일 터치 입력을 구현해 보자. 유니티는 멀티터치를 지원한다. 화면을 터치하게 되면, 화면을 터치한 순서대로 해당 터치의 정보는 터치정보를 담는 배열에 들어가는데 0, 1, 2 순서대로 들어간다.그리고 이러한 터치정보는 Input.GetTouch(index) 로 얻어올 수 있다.index는 int형이며 위에서 말했다싶이 터치의 인덱스 값이다. Input.GetTouch(index)는 Touch 클래스로 그 정보를 반환하므로 Touch touch = Input.GetTouch(index); 와 같은 형태로 해당 터치정보를 참조변수 touch로 접근할 수 있게 하면 된다. 만약 화면 3곳을 터치하고 있으면 index값 0,1,2에 각각 그 정보가 들어가는 것이다.그런데 여기서 3곳을 터치하고 있다가 두 번..
Mass : 질량. 힘을 가할 때 이 값에 따라 움직임의 속도가 달라짐.Linear Drag : x,y축에 대한 이동의 저항력. 이게 있어야 힘을 주지 않을 경우 감속이 됨.Angular Drag : 각 속력에 대한 저항력. 이게 0이면 계속 돈다.Is Kinematic : 이 옵션이 켜져있으면 어떠한 힘의 영향도 받지 않는다.
UNITY_STANDALONE - 유니티 내 게임 테스트UNITY_WEBPLAYER - 웹플레이어UNITY_IOS - iOS환경UNITY_IPHONE - 아이폰 환경UNITY_ANDROID - 안드로이드 환경 보통 키조작 스크립트에 사용된다. 123456789#if UNITY_STANDALONE || UNITY_WEBPLAYER...// 게임테스트 혹은 웹플레이어로 빌드할 경우 컴파일됨....#elif UNITY_IOS || UNITY_IPHONE || UNITY_ANDROID...// iOS나 아이폰, 안드로이드 환경으로 빌드할 경우 컴파일됨....#endif cs 이렇게 사용하면 된다.
12345678910111213public static GameManager instance = null; void Awake() { if (instance == null) instance = this; else if (instance != this) Destroy(gameObject); DontDestroyOnLoad(gameObject); } cs 싱글톤 객체는 1개만 존재하는 객체다.보통 게임이 시작부터 끝까지 하나만 존재해야 될 객체에 적용시켜주면 된다. 일단 public static으로 해당 객체를 참조할 수 있는 참조변수를 생성한다.static이므로 class가 많이 생겨도 instance 변수는 하나만 존재한다. 그리고 최초에 해당스크립트를 실행한 GameManager의 주소값을 instan..
산성비 피하기 게임을 만들어 봅시다. 개요 1. 게임 시작 화면 - Game Start, Exit 메뉴 구현. - Best Score가 화면 왼쪽 위에 존재. 2. 게임요소 #주인공 - HP가 존재함. - 이동 애니메이션은 없음. - 사망시 캐릭터가 위로 떴다가 비스듬히 떨어지는 효과 구현 #산성비 - 약, 중, 강 산성이 있고 각각 색으로 구분. - 산성 정도에 따라 데미지가 다름. - 충돌시 물 튀는 애니메이션 구현 #아이템 - 우산 아이템. - 6~10초 사이에 랜덤으로 생성되게 구현 - 바닥에 떨어지면 2초 뒤에 사라짐 - 사라질 때 페이드아웃으로 사라지게 구현 #배경 - 바닥에 흙색 땅 - 배경은 회색 - 윗쪽에 반쯤 가려진 구름 이미지 #키 조작 - 좌우 방향만 구현 - 유니티에서는 키보드를 ..
Log창에 No file found at /cc_2x2_white_image 어쩌구가 뜨는거 해결법 https://github.com/perminovVS/cocos2d-x/commit/0bc0771e0fc35cc9d60621d11bf1faacf7ca8daf
배열 arr이 있을 때 for ( int i : arr ){sum += i;} 와 같이, Rvalue의 값을 Lvalue에 차례대로 하나씩 배열 arr의 끝 요소까지 넘겨준다.
1. 포인터 프로그래밍을 하면 변수를 생성하죠. 변수의 값은 메모리에 저장이 됩니다. 메모리의 최소단위는 1byte입니다. 그리고 각 메모리는 주소값을 가지고 있습니다. int a=10; 을 선언했다고 하면, 10이라는 값을 저장하고 10이 저장된 메모리공간에 a라는 이름을 붙여줍니다. 그리고 이 메모리 공간은 int형입니다. 즉 4byte의 크기를 갖게 되는거죠 0000a(int) 0001 0002 0003 즉 이렇게 되있는겁니다. 왼쪽은 주소값이며(편의상 정의한 주소값입니다) 오른쪽은 변수의 이름입니다. a라는 변수는 int형이기 때문에 4byte크기를 할당받았죠. 주소값을 반환하는 연산자인 &를 아실겁니다. 위와 같은 상황에서 printf("%d",&a)이렇게 a의 주소값을 출력하라고 하면 0000..
함수도 변수라고 생각하면 된다.그러니까 함수의 이름도 사실은 변수인 것이다.마치 int a = 10;으로 하면 어떤 메모리공간에 a라는 이름이 할당되고 거기에 10이라는 값이 들어가서 a를 10처럼 사용할 수 있듯이 void Func(int a) { ... } ;로 함수를 선언하면 어떤 메모리공간에 Func라는 이름이 할당되고 호출하면 { ... } 를 수행하는 것이다.물론 Func만 호출한다고 될 리가 없다. 함수는 매개변수를 갖기 때문에 Func(); 와 같이 소괄호를 같이 넣어줘야 한다. 물론 매개변수도 넣어줘야 하고. 자 그럼 변수에는 포인터라는 개념이 있다.int a = 10;int *b = &a;이렇게 하면 b라는 변수공간에 a의 주소값이 들어가 있게 된다. 그런데 알다시피 b는 포인터변수이기..
++class; 의 형태나 class++; 의 형태나 operator++로 오버로딩을 한다.그럼 어떻게 구분하느냐? operator++(); 와 같이 매개변수가 없는 경우 전위증가고operator++(int); 와 같이 매개변수에 int키워드를 넣어주면 후위증가다.여기서 int는 그냥 단순히 전, 후위증가를 나타내는 키워드일 뿐 매개변수를 받는 것이 아니다.
Coroutine은 결국 메서드의 실행순서를 지연시킬 수 있다는 점에서 사용된다.원래 메서드는 한번 읽히면 해당 메서드가 종료될 때까지 쭈-욱 읽힌다.그런데 Coroutine을 사용하게 되면, 해당 메서드가 진행되다가 잠깐 Stop된다. 그리고 resume 조건에 따라 다시 돌아와서 처음부터가 아닌 중간부터 수행된다.이러한 Coroutine 메서드의 반환형은 무조건 IEnumerator 로 설정해야 한다.나도 정확히는 모른다. 어렴풋이 개념적으로만 이해하고 있어서 설명은 못하고, 해당 설명은 다른 글을 참고하면 될 것이다.여튼 그래서 Coroutine 메서드는 IEnumerator Method() { ... }의 형태로 정의한다. 메서드의 몸체에는 무조건 yield return 문이 와야 하는데, 이 y..
void Invoke(String name, float time)메서드, 호출, 반복 Invoke는 "name"메서드를 time초 뒤에 호출한다. MonoBehaviour 클래스에 정의된 함수이니 보통 Invoke로 그냥 사용하면 된다. void InvokeRepeating(String name, float time, float repeat_rate)메서드, 호출, 반복 InvokeRepeating은 "name"메서드를 time초 뒤에 호출하기 시작해서 repeat_rate 초 만큼 반복해서 호출한다. 이 역시 MonoBehaviour 클래스에 정의되어있다. void CancleInvoke(String name) "name"에 해당하는 함수의 Invoke를 취소시킨다. Repeating과 짝을 이룬다고 ..