일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Stored Procedure
- union find
- DP
- 다익스트라
- 스토어드 프로시저
- SQL
- String
- Hash
- Two Points
- binary search
- Trie
- two pointer
- MYSQL
- Brute Force
- Dijkstra
- 그래프
- 이진탐색
- Today
- Total
목록Unity3d (12)
codingfarm
USING LERP WITH DELTA-TIME https://www.construct.net/en/blogs/ashleys-blog-2/using-lerp-delta-time-924 Recently on the forums came up the question of how to use dt (delta time) correctly with lerp. This turned out to be a surprisingly tricky question, and is a good demonstration of how knowledge of maths comes in handy when designing games. Just to recap, lerp(a, b, x) is a system expression tha..
3D 2가지 방법 사용가능 Ray 사용 카메라에서 마우스를 향하는 ray와 plane을 상호작용하여 얻은 좌표에 오브젝트를 위치시킨다 게임이 플레이 되는 floor에 오브젝트 위치 가능 ScreenToWorldPoint 함수 사용 카메라에 투영되는 평면상에 오브젝트 위치 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 32 33 34 using System.Collections; using System.Collections.Generic; using UnityEngine; public class MouseChaser : MonoBehaviour { public Transform ob1, ob2; Vect..
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 32 33 34 35 36 37 38 39 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; public class UIItem : MonoBehaviour, IPointerDownHandler, IPointerClickHandler, IPointerUpHandler, IPointerExitHandler, IPointerEnterHandler, IBeginDragHandl..
https://docs.unity3d.com/Manual/AnimationSection.html 0. 애니메이션 유니티의 애니메이션 기능에는 여러가지 기능이 제공됨 리타겟팅 런타임 시 애니메이션 가중치 제어 애니메이션 재생 내에서의 이벤트 호출 FSM 구조 및 전환 얼굴 애니메이션을 위한 혼합 모양 등 1. 아바타 모델 파일(FBX, COLLADA 등)을 임포트한 후, Model Importer 옵션의 Rig 탭에서 Rig을 지정할 수 있습니다. 휴머노이드 https://docs.unity3d.com/Manual/AvatarCreationandSetup.html#:~:text=See%20in%20Glossary.,%2C%20arms%2C%20head%20and%20body. 인간형 캐릭터의 관절 애니메이..
https://docs.unity3d.com/ScriptReference/AI.NavMeshAgent.html 유니티에서 자체적으로 제공해주는 경로찾기기능이다. 발판 역할을 할 plane과 장애물이 될 cube들이 놓여 있다. 2개의 오브젝트 모두 Navigation Static을 활성화 하고 Navigation Area를 상자는 "Not Walkable"로, 판자는 Walkable로 설정한다. Bake 탭에서 하단의 "Bake" 버튼을 누르면 navmesh가 설정된다. NavMeshAgent 컴포넌트를 가진 게임 오브젝트는 위의 navmesh 위에서 경로를 찾을 수 있게 된다. 기본적인 활용법은 아래와 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2..
데미지를 입는 오브젝트가 있다고 하자. 이 오브젝트에 총알이 닿으면, 충돌체의 종류에 알맞은 이벤트가 발생할것이다. 생명체의 경우엔 데미지를 입은 후, HP가 바닥너면 죽어서 사라질것이다. 장애물은 파괴되어 산산이 흩어질것이다. 게이트라면 문이 열릴것이다. 그리고 각 오브젝트는 자신들이 총알에 닿았을때 발동시킬 함수를 다 가지고 있다. 총알은 자신과 닿은 오브젝트의 종류를 파악한 후, switch 문으로 분기점을 형성하여 각기 다른 함수를 호출해도 된다. 하지만 총알은 자신이 닿은 오브젝트가 무엇인지 신경 쓰지 않고 그냥 파괴 효과를 주는것이 더 효율 적일것이다. 이런 경우, 상속이 매우 유용히 쓰일 수 있다. 총알의 경우 충돌이 발생했을 때, 상대방에게 IDamageable 컴포넌트가 있는지만 조사하여..
쿨타임 1 2 3 4 5 6 7 8 float msBetweenFire, nextTime; public void Fire() { if(Time.time > nextTime){ nextTime = Time.time + msBetweenFire / 1000; /* functions */ } } Colored by Color Scripter cs
1 2 3 4 5 6 public Unit unit; public Transform spawner; public void Spawn(){ Unit newUnit = Instantiate(unit, spawner.position, spawner.rotation) as Unit; } Colored by Color Scripter cs
트랜스 폼 1 2 3 4 5 6 7 8 9 10 Vector3 velocity; public void Move(Vector3 _velocity) { velocity = _velocity; } public void Update() { transform.Translate(velocity * Time.deltaTime); } Colored by Color Scripter cs 물리엔진 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Vector3 velocity; Rigidbody myRigidbody; void Start() { myRigidbody = GetComponent (); } public void Move(Vector3 _velocity) { velocity = _velocity; } ..
https://docs.unity3d.com/kr/2018.4/Manual/CameraRays.html 화면상에 마우스가 존재하는 위치로 캐릭터를 돌아보게 만들기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 public Crosshairs crosshairs; public void LookAt(Vector3 lookPoint) { Vector3 heightCorrectedPoint = new Vector3 (lookPoint.x, transform.position.y, lookPoint.z); transform.LookAt (heightCorrectedPoint); } void Update () { // Look input Ray ray = viewCamera.S..
https://docs.unity3d.com/kr/530/Manual/Coroutines.html 특정 효과를 점진적으로 주고 싶을경우 주로 사용한다. 주로 점차적인 애니메이션 혹은, 분산 연산(로딩 화면 etc)등에 사용됩니다. 1 StartCoroutine(DeathAnimation()); cs 1 2 3 4 5 6 7 8 9 public IEnumerator DeathAnimation() { int current = 0; for (; current > -90; current = current - 5) { transform.Rotate(new Vector3(-5, 0, 0)); yield return null; } Die(); } Colored by Color Scripter cs yield retu..
이젠 내리막길을 따라 내려가도록 해보자 사실 지금까지의 프로젝트에서도 각도가 낮은 내리막길에 대해서는 길을따라 내려가는듯이 보인다. 하지만 경사가 심해지면 캐릭터가 허공에 뜨는듯한 모습을 볼 수 있다. 이를 해결하기 위한 추가적인 조치를 하겠다 우선 Controller2D의 Move함수 내부를 확인하자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public void Move(Vector3 velocity) { UpdateRaycastOrigins (); collisions.Reset (); collisions.velocityOld = velocity; if (velocity.y