'유니티'에 해당되는 글 227건

  1. 2014.02.18 유니티 광고 수익
  2. 2014.02.18 유니티 개발 시작
  3. 2014.02.17 특정위치 아래로 이동하는 함수 - Lerp 사용
  4. 2014.02.17 캐릭터 체력 바 생성하기 (1)
  5. 2014.02.17 Transform.TransformDirection
  6. 2014.02.17 타워에서 가까운 적을 판별 하는 스크립트
  7. 2014.02.16 적이 메인카메라 쪽 바라보게 하기
  8. 2014.02.16 삼각함수 관련
  9. 2014.02.16 벡터
  10. 2014.02.14 메카닉 관련 유니티 제공 에셋

유니티 광고 수익

|

애드몹, 카울리 등 광고를 붙이는 방법을 모색해보자.


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

안드로이드 In-app Billing Version 3 - 구글번역  (0) 2014.03.27
파이어 폭스 유용한 부가기능  (0) 2014.02.24
유니티 광고 수익  (0) 2014.02.18
유니티 개발 시작  (0) 2014.02.18
삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
Trackback 0 And Comment 0

유니티 개발 시작

|

유니티 개발에 있어서 최대한 많은 습작을 만드는게 좋을 것 같음.

책에 있는 내용들은 거의 그대로 따라하는 방식으로 작업을 했었음.

그 이후에는 각종 예제 소스들을 분석해가면서 작업.

그리고 자기만의 게임을 만들어야 될듯.


일단 책에 있는 게임 예제들을 책을 안보고 혼자서 해보는 방식으로 개발하는것도 괜찮을 것 같음.

유니티의 장점은 에셋이 없어도 프로토타입을 쉽게 만들 수 있는 것이기 때문에.





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

파이어 폭스 유용한 부가기능  (0) 2014.02.24
유니티 광고 수익  (0) 2014.02.18
유니티 개발 시작  (0) 2014.02.18
삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
메카닉 관련 유니티 제공 에셋  (0) 2014.02.14
Trackback 0 And Comment 0

특정위치 아래로 이동하는 함수 - Lerp 사용

|





사용법


StartCoroutine( MoveDown(transform, 0.2f, 0.2f));

첫번째 인자 현재 트랜스폼

두번째 인자 이동 거리, 세번째 인자 이동 속도

Trackback 0 And Comment 0

캐릭터 체력 바 생성하기

|



 GUITexture 를 사용하여 체력바를 표시한다.

GUITexture 두장을 사용하여 하나는 체력바 배경으로 만들고 하나는 줄어드는 체력바를 표시함.

그리고 그것을 프리팹으로 만들어준다.


몬스터에 해당 스크립트를 붙이고

체력을 설정해주고 위에서 만든 프리팹을 붙여주면 된다.





Trackback 0 And Comment 1
  1. jar00 2014.03.21 02:14 address edit & del reply

    안녕하세요. 이 글을 참조해서 게임을 제작하고 있는 학생입니다.

    다름이 아니라 "GUITexture 두장을 사용하여 하나는 체력바 배경으로 만들고 하나는 줄어드는 체력바를 표시함. 그리고 그것을 프리팹으로 만들어준다" 가 무슨 의미인지요? GUITexture 프리팹 두개가 있는데 스크립트에는 하나밖에 불러오지 않네요..

Transform.TransformDirection

|







function TransformDirection (direction : Vector3) : Vector3

Description

변환 direction 지역 공간에서 전체 공간.

이 작업은 스케일이나 변환의 위치에 의해 영향을 받지 않는다 반환되는 벡터는 같은 길이를 갖는다 direction.

C#
using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
public Transform cam = Camera.main.transform;
public Vector3 cameraRelativeRight = cam.TransformDirection(Vector3.right);
void Awake() {
rigidbody.AddForce(cameraRelativeRight * 10);
}
}


Trackback 0 And Comment 0

타워에서 가까운 적을 판별 하는 스크립트

|



InvokeRepeating 함수는 반복해서 첫번째 인자에 전달된 함수를 호출하는 API입니다.

두번째 인자는 첫 함수를 언제 호출할지 결정되는 인자이며 세번째 인자는 얼마나 자주 반복할지 결정되는 인자입니다. 

위 스크립트에서는 0초만에 함수를 호출하고 1초마다 함수를 반복해주는 스크립트입니다.


Update 문에서는 DrawLine을 그려주어서 잘 판별되는지 파악하고


getClosestEnemy 함수에서는 해당되는 태그를 찾아서( 이 스크립트에서는 enemyAim) taggedEnemys 변수에 집어 넣고 for문을 돌려주어서


타워의 위치에서 적의 위치를 판별하여 sqrMagnitude로 벡터의 길이를 구해줍니다. 그 길이가 3.0 보다 작을때는 해당적의 트랜스폼을 저장하고 거리또한 저장해줍니다.


그리고 마지막으로 타겟에 변수를 저장해줍니다.







Vector3.sqrMagnitude

var sqrMagnitude: float;
Description

Returns the squared length of this vector (Read Only).

The magnitude of a vector v is calculated as Mathf.Sqrt(Vector3.Dot(v, v)). However, the Sqrt calculation is quite complicated and takes longer to execute than the normal arithmetic operations. Calculating the squared magnitude instead of using themagnitude property is much faster - the calculation is basically the same only without the slow Sqrt call. If you are using magnitudes simply to compare distances, then you can just as well compare squared magnitudes against the squares of distances since the comparison will give the same result.

See Also: magnitude.
	// detects when the other transform is closer than closeDistance
	// this is faster than using Vector3.magnitude

var other : Transform; var closeDistance = 5.0; function Update() { if (other) { var offset = other.position - transform.position; var sqrLen = offset.sqrMagnitude; // square the distance we compare with if( sqrLen < closeDistance*closeDistance ) print ("The other transform is close to me!"); } }


Trackback 0 And Comment 0

적이 메인카메라 쪽 바라보게 하기

|
y축으로만 회전할수 있도록 x,z 값은 0으로 만들어주고 Lookat함수를 사용해서 카메라를 바라보게함
Trackback 0 And Comment 0

삼각함수 관련

|

코사인 90도는 0

코사인 0도는 1


사인 90도는 1

사인 0도는 0


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

유니티 광고 수익  (0) 2014.02.18
유니티 개발 시작  (0) 2014.02.18
삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
메카닉 관련 유니티 제공 에셋  (0) 2014.02.14
유니티 2D 배경에 카메라 맞추기  (0) 2014.02.04
Trackback 0 And Comment 0

벡터

|

벡터의 해석


1. 위치

2. 속도와 가속도

3, 방향과 거리




(위치)                                                                 (속도)                                                ( 방향)                                      (거리)











스칼라

- 방향을 가지고 있지 않고 크기만 가지고 있는 물리량(온도,길이,속력)


벡터의 표현 방법


v = (x,y)


벡터의 덧셈


c = a + b = (a.x, a.y) + (b.x, b.y) = (a.x + b.x , a.y + b.y)


예) 벡터를 사용해 계산해보자

위치가 p = (3,2) 이고 여기에 속도 벡터 v = (-2,3)을 더해보면 다음과 같은 위치값을 얻을수 있다.

`p = (3 + -2, 2+3) = (1,5) 이때 p 오른족 위에 있는 어퍼스트로피는 단지 p 벡터를 구했음을 나타내는 표시이므로 신경쓸 필욘 없다.

물론 이 연산은 위치와 방향 벡터 단위가 서로 일치할때만 말이 된다. 여기서는 미터(m)이고 속도가 초당 미터(m/s)라고 가정할때 벡터단위가 일치한다.


벡터의 뺄셈


c = a -b = (a.x, , a.y) - (b.x, b.y) = (a.x - b.x, a.y - b.y)

  

 이때도 두 벡터의 요소를 서로 합치기만 하면 된다. 하지만 벡터의 뺄셈을 뺄때는 빼는 순서가 중요하다. 

예를 들어서 pg=(1,4) 에 있고 pr = (6,1) 에 있으면  pg에서 pr의 거리 벡터를 빼면 다음과 같다.


 d = pg - pr = (1,4) - (6,1) = (-5,3)


그런데 결과가 약간 이상합니다. 이 값은 pr에서 pg를 가리키는 벡터이기 때문입니다. 원하는 값을 구하려면 뺄셈의 순서를 반대로 해야된다.


 d = pr - pg = (6,1) -  (1,4) = (5,-3)


위치 a에서 위치 b로의 방향 벡터를 구하려면 다음과 같은 일반 공식을 사용해야 한다.


c = b - a


다시 말해서 항상 끝 위치에서 시작 위치를 빼야 하는 것이다. 


벡터는 스칼라만큼 곱할 수도있다.

a` = a * scalar = (a.x * scalar, a.y * scalar)

벡터가 d =(0, -1) 로 지정되면 이 벡터에 s= 2스칼라를 곱하면 벡터의 길이를 두배로 만들수있다. d * s = (0, -1 * 2) = (0, -2)
물론 1보다 작은 스칼라를 사용하면 길이를 더 줄일수도 있다 예를 들어 d에 0.5를 곱하면 d` = 0, -0.5) 가 된다.

벡터의 길이

|a| = sqrt(a.x * a.x + a.y * a.y)

이때 |a| 의 표기는 벡터의 길이를 나타낸다. (피타고라스의 정리)

벡터의 길이는 루트의 특성상 항상 양의 값이다.

위의 pr과 pg의 벡터의 길이는 다음 과 같다.
|pr - pg| = sqrt(5 * 5 + -3 * -3) = sqrt(25 +9) = sqrt(34) ~= 5.83m


단위벡터

길이가 1인 벡터를 단위 벡터라고 한다.

d` = (d.x/|d|, d.y/|d|)

|d|는 벡터의 길이입니다.

예를들어 정확히 북동쪽으로 향하는 방향 벡터 d (1,1) 이 필요하다고 가정하자 얼핏 보기에는 두 벡터 요소 모두 1이므로 이 벡터는 이미 단위 벡터 처럼 보인다. 하지만 이는 잘못된 생각이다.
|d| = sqrt(1*1, 1*1) = sqrt(2) ~= 1.44

이 벡터를 단위 벡터로 만들면 문제를 쉽게 해결할수있다.

|d| = (d.x/|d|, d.y|d|) = (1/|d|, 1/|d|) ~= (1/1.44, 1/1.44) = (0.69, 0.69)

이를 벡터 정규화라고 한다 벡터 정규화는 벡터의 길이 값을 1을 갖게 만듦을 뜻한다.





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

유니티 개발 시작  (0) 2014.02.18
삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
메카닉 관련 유니티 제공 에셋  (0) 2014.02.14
유니티 2D 배경에 카메라 맞추기  (0) 2014.02.04
유니티 창 여러개 띄우기  (0) 2014.02.04
Trackback 0 And Comment 0

메카닉 관련 유니티 제공 에셋

|


teddy.z01


teddy.z02


teddy.z03


teddy.z04


teddy.zip


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

삼각함수 관련  (0) 2014.02.16
벡터  (0) 2014.02.16
메카닉 관련 유니티 제공 에셋  (0) 2014.02.14
유니티 2D 배경에 카메라 맞추기  (0) 2014.02.04
유니티 창 여러개 띄우기  (0) 2014.02.04
현재 보고 있는 Scene와 똑같이 Game 뷰를 보는 방법  (0) 2014.02.04
Trackback 0 And Comment 0