'전체 글'에 해당되는 글 1803건

  1. 2019.05.24 UI RectTransform
  2. 2019.05.23 UI Canvas
  3. 2019.05.22 A* Pathfinding for Beginner By Patrick Lester
  4. 2019.05.20 warning: LF will be replaced by CRLF in
  5. 2019.05.20 photon
  6. 2019.05.20 윈도우의 커맨드 명령어 find , findstr

UI RectTransform

Unity3D/UI 2019. 5. 24. 00:02
반응형

 

 

https://unity3d.com/kr/learn/tutorials/modules/beginner/ui/rect-transform?playlist=17111

 

UI Components - Unity Learn

This tutorial covers User Interface (UI) Components available in Unity, including Canvas, Button, Image, Text, Slider, and more.

learn.unity.com

https://docs.unity3d.com/kr/current/Manual/class-RectTransform.html

 

사각 트랜스폼(Rect Transform) - Unity 매뉴얼

Rect Transform 컴포넌트는 Transform 컴포넌트의 2D 레이아웃 버전입니다. 트랜스폼은 포인트 하나를 나타내지만, Rect Transform은 UI 요소를 안에 넣을 수 있는 사각형을 나타냅니다. 사각 트랜스폼의 상위 컴포넌트도 사각 트랜스폼인 경우, 하위 사각 트랜스폼이 상위 사각형에 대한 상대적인 포지션과 크기도 지정할 수 있습니다.

docs.unity3d.com

https://docs.unity3d.com/ScriptReference/RectTransform.html

 

Unity - Scripting API: RectTransform

RectTransforms are used for GUI but can also be used for other things. It's used to store and manipulate the position, size, and anchoring of a rectangle and supports various forms of scaling based on a parent RectTransform.

docs.unity3d.com

 

반응형

'Unity3D > UI' 카테고리의 다른 글

Unity UI에 관한 최고의 최적화 팁  (0) 2019.05.29
UI Canvas  (0) 2019.05.23
:

UI Canvas

Unity3D/UI 2019. 5. 23. 13:53
반응형

https://unity3d.com/kr/learn/tutorials/topics/user-interface-ui/ui-canvas?playlist=17111

 

UI Canvas - Unity

Unity is the ultimate game development platform. Use Unity to build high-quality 3D and 2D games, deploy them across mobile, desktop, VR/AR, consoles or the Web, and connect with loyal and enthusiastic players and customers.

unity3d.com

https://docs.unity3d.com/kr/current/Manual/UICanvas.html

 

캔버스(Canvas) - Unity 매뉴얼

모든 UI 요소는 Canvas 안에 위치해야 합니다. 캔버스는 Canvas 컴포넌트가 있는 게임 오브젝트이며 모든 UI 요소는 반드시 어떤 캔버스의 자식이어야 합니다.

docs.unity3d.com


[optimization tips for Unity UI]

https://unity3d.com/kr/learn/tutorials/topics/best-practices/guide-optimizing-unity-ui

 

A guide to optimizing Unity UI - Unity

Unity is the ultimate game development platform. Use Unity to build high-quality 3D and 2D games, deploy them across mobile, desktop, VR/AR, consoles or the Web, and connect with loyal and enthusiastic players and customers.

unity3d.com

https://create.unity3d.com/Unity-UI-optimization-tips

 

Unity

 More resources Squeezing Unity: Tips for raising performance (section on Unity UI starts at 23:38). Best practices: Optimizing Unity UI Unity UI Docs UI Profiler Tutorials(tutorials in section “Live Training: Shop UI with Runtime Scroll Lists” are interme

create.unity3d.com

 

 

 

캔버스는 UI 엘리먼트 그룹의 랜더링을 관리하는 컴포넌트 
모든 UI 엘리먼트는 캔버스의 자식 
한 씬에서 캔버스를 2개 이상 가질수 있다.
하지만 UI엘리먼트를 사용하려면 사용할수 있는 캔버스가 최소 1개여야 한다.

UI엘리먼트가 새로 생성되었는데 캔버스가 없다면 캔버스가 새로 생성되며 
새로운 UI엘리먼트가 해당 캔버스에 자식으로 첨부 된다.

각 캔버스에는 다양한 랜더 모드가 있다.
랜더모드는 [Render Mode] 팝업 메뉴로 설정할수 있다.
[Scene Space]-[Overlay]는 가장 흔한 랜더모드 이다.
캔버스의 기본 랜더 모드다.

[Scene Space]-[Overlay]를 선택하면 UI는 씬을 오버레이 한다.
또한 모든 UI엘리먼트는 해당 씬에서 랜더링 되는 다른 모든것 위에 오게 된다.
이모드에서 캔버스는 자동으로 스크린을 채우고 스크린 설정이 변하면 자동으로 크기를 조정한다.

캔버스는 UI 엘리먼트 그룹의 랜더링을 관리하는 컴포넌트  
모든 UI 엘리먼트는 캔버스의 자식  
한 씬에서 캔버스를 2개 이상 가질수 있다. 
하지만 UI엘리먼트를 사용하려면 사용할수 있는 캔버스가 최소 1개여야 한다. 

UI엘리먼트가 새로 생성되었는데 캔버스가 없다면 캔버스가 새로 생성되며  
새로운 UI엘리먼트가 해당 캔버스에 자식으로 첨부 된다. 

각 캔버스에는 다양한 랜더 모드가 있다. 
랜더모드는 [Render Mode] 팝업 메뉴로 설정할수 있다. 
[Scene Space]-[Overlay]는 가장 흔한 랜더모드 이다. 
캔버스의 기본 랜더 모드다. 

[Scene Space]-[Overlay]를 선택하면 UI는 씬을 오버레이 한다. 
또한 모든 UI엘리먼트는 해당 씬에서 랜더링 되는 다른 모든것 위에 오게 된다. 
이모드에서 캔버스는 자동으로 스크린을 채우고 스크린 설정이 변하면 자동으로 크기를 조정한다.
[Screen Space]-[Overlay]모드에서 캔버스는 [Rect Transform]를 드라이브 한다는 점에 유의 하자
그리고 전체 [Rect Transform]컴포넌트를 편집할수 없다.
캔버스는 [Rect Transform]의 모든 값을 설정해 자동으로 스크린을 채우기 때문이다.
이 랜더 모드에는 [Pixel Perfect]옵션이 있다.
랜더링 될때 가장 가까운 픽셀로 조정된다.
그러면 UI엘리먼트의 모양이 선명해지는 경우도 있다.

Rect Transform의 더많은 정보 : https://unity3d.com/kr/learn/tutorials/modules/beginner/ui/rect-transform

[Screen Space]-[Camera]는 [Screen Space]-[Overlay]와 매우 유사 하다
하지만 씬의 특정 카메라가 랜더링 한다는 점이 다르다
이를 통해 카메라 지정 설정을 스크린 공간 UI에 적용할수 있다.
가장 흔한 예는 원근 카메라를 이용해 UI에 깊이의 느낌을 부여 하는것이다.
이 모드에서 캔버스는 카메라의 뷰포인트를 자동으로 채우며 카메라의 뷰포인트 설정이 변하면 자동으로 크기를 조정한다.
이 랜더링 모드에서는 [Rect Transform]도 캔버스에 의해 전체적으로 드라이브 되고 있다.
이 랜더모드에는 [Screen Space]-[Overlay]와 똑같이 작동하는 [Pixel Perfect]를 비롯한 여러 옵션들이 있다.
[Render Camera]는 랜더링 하는 카메라를 설정한다.
이것이 없다면 캔버스 컴포넌트는 [Screen Space]-[Overlay]를 이용해 이 캔버스를 랜더링 한다.
[Screen Space]-[Camera]를 선택하고 카메라를 캔버스 컴포넌트에 할당하면 UI 엘리먼트는 카메라 프러스텀으로 이동해 크기가 재조정된다.
이를 통해 UI를 씬뷰의 게임오브젝트에 맞추어 랜더링 할수 있다.
씬속UI엘리먼트의 랜더링 위치를 제어 하려면 [Plane Distance]를 이용해 캔버스와 카메라의 거리를 조절한다.
캔버스와 UI엘리먼트는 카메라 앞의 위치에 따라 프러스텀에 맞게 자동으로 크기가 조정된다.
[Plane Distance]는 랜더링 카메라의 랜더링 되는 클리핑 플레인의 범위내에 있어야 한다.
[Screen Space]-[Camera]를 사용할때는 씬의 어떤 카메라로도 캔버스를 랜더링 할수 있다.
씬을 랜더링 하는 다른 카메라로부터 캔버스와 컨텐츠를 고립 시키려면 카메라의 클리어 플래그, 컬링마스크와 depth속성을 이용한다.

카메라에 대한 더 많은 정보 : https://unity3d.com/kr/learn/tutorials/topics/graphics/cameras

[Render Mode World Space]는 씬 볼륨의 앨리먼트를 랜더링 한다.
이 UI엘리먼트는 씬 속의 정적인 오브젝트 말풍선 같은 이동 오브젝트 또는 씬속 게임 오브젝트를 따르는 플레이어 태그일수도 있다.
우선 [World Space]모드의 캔버스는 더는 [Rect Transform]을 드라이브 하지 않으며 월드 스페이스의 어디에서도 캔버스를 설정할수 있다느 점에 유의 해야 한다.씬 
씬 속에 캔버스가 2개이상 존재 할수 있다는 점을 이해 하면, 월드 스페이스 UI엘리먼트에 필요한 만큼 새로운 월드 스페이스 캔버스를 생성하는 것도 이상하지 않다.

[Event Camera]는 이벤트 수신과 어떤 카메라를 이용해 UI 엘리먼트 클릭같은 이벤트를 감지 할것인지 결정하는데 필요하다.
대부분의 경우 스크린 스페이스 월드의 선택으로 이 이벤트 카메라가 신을 랜더링 하는 카메라가 된다.

[Receives Events]는 (2019버전에는 없음) 이캔버스의 UI앨리먼트가 클릭, 호버등의 이벤트를 수신할것인지를 표시 한다.
이 캔버스의 자식인 모든 UI앨리먼트에서 이벤트를 무시하려면 이 속성을 비활성화 해야 한다.
[Sorting Order]와 [Order in Layer]는 씬의 다른 랜더러와 비교해 캔버스의 랜더 순서를 관리 한다.
[Sorting Order]와 [Order in Layer]는 캔버스 컴포넌트에서 노출되며 캔버스의 [Screen Space-Camera]나 [World Space]설정에 이용할수 있다.

Sorting Order와 Order in Layer의 더 많은 정보 : https://unity3d.com/kr/learn/tutorials/topics/2d-game-creation/sorting-layers

캔버스의 UI 앨리먼트는 톱다운 방식으로 랜더링되어 첫 아이템들이 뒤에서 랜더링 되고 아래 아이템들은 나중에 랜더링 되어 상단에 나타난다.
UI 엘리먼트의 랜더링 순서를 변경하려면 계층에서 순서를 바꾸면 된다.

 

 

[View Frustum]

https://www.youtube.com/watch?v=GqEP79loyQE

 

반응형

'Unity3D > UI' 카테고리의 다른 글

Unity UI에 관한 최고의 최적화 팁  (0) 2019.05.29
UI RectTransform  (0) 2019.05.24
:

A* Pathfinding for Beginner By Patrick Lester

Algorithm 2019. 5. 22. 22:37
반응형

A* Pathfinding for Beginner By Patrick Lester

2004. 4. 22

Translated By Generosus.

(원문)

https://www.gamedev.net/articles/programming/artificial-intelligence/a-pathfinding-for-beginners-r2003/

 

A* Pathfinding for Beginners

The purpose of this article is to describe the basic concepts of A* at a beginner's level and then give you a taste of some of the more advanced concepts.

www.gamedev.net

 

번역: http://egloos.zum.com/cozycoz/v/9748811

 

초보자를 위한 A* 알고리즘 (기초개념 설명 및 소스)

egloos.zum.com

 

 

https://github.com/smilejsu82/unity-astar-test.git

 

smilejsu82/unity-astar-test

Contribute to smilejsu82/unity-astar-test development by creating an account on GitHub.

github.com

 

 

반응형

'Algorithm' 카테고리의 다른 글

[백준] 11047 동전 0 (진행중)  (0) 2019.08.13
[백준] ATM 11399  (0) 2019.08.12
설탕 배달  (0) 2019.06.11
그래프  (0) 2019.06.11
Hash Tables and Hash Functions  (0) 2019.04.02
:

warning: LF will be replaced by CRLF in

Git 2019. 5. 20. 09:53
반응형

https://reiphiel.tistory.com/entry/git-handle-newline

 

Git를 이용한 개행문자 핸들링

개발을 진행하다 보면 크게 의식하지는 않지만 신경써야 하는 것이 바로 개행문자입니다. 본 아티클에서는 버전관리시스템(VCS : Version Control System)중 하나인 Git를 이용해서 개행문자를 핸들링하고 관리하..

reiphiel.tistory.com

https://gmlwjd9405.github.io/2018/05/25/git-add-cancle.html

 

[Git] git add 취소하기, git commit 취소하기, git push 취소하기 - Heee's Development Blog

Step by step goes a long way.

gmlwjd9405.github.io

https://blog.jaeyoon.io/2018/01/git-crlf.html

 

Git 에러 CRLF will be replaced by LF (혹은 반대) 핸들링하는 방법

맥/리눅스 이용 개발자와 윈도우 개발자가 협업할 때 왜 발생할까? 터미널에 git 명령어를 입력했는데 다음과 같은 에러가 뜨는 경우가 있다: ```bash warning: CRLF will be replaced by LF in some/file

blog.jaeyoon.io

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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git add .
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.
 
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)
 
        modified:   Logs/Packages-Update.log
        modified:   Packages/manifest.json
        modified:   ProjectSettings/ProjectVersion.txt
 
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git reset HEAD *
Unstaged changes after reset:
M       Logs/Packages-Update.log
M       Packages/manifest.json
M       ProjectSettings/ProjectVersion.txt
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.
 
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
 
        modified:   Logs/Packages-Update.log
        modified:   Packages/manifest.json
        modified:   ProjectSettings/ProjectVersion.txt
 
no changes added to commit (use "git add" and/or "git commit -a")
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git log
commit 6f4f0e8e95a7d1a6aa8bdd47b655e2f7d0c0ac15 (HEAD -> master, origin/master, origin/HEAD)
Author: smilejsu82 <50188795+smilejsu82@users.noreply.github.com>
Date:   Fri May 17 18:18:51 2019 +0900
 
    display f=g+h
 
commit 919214c454b6f31f80ce7b2415e7a9d9aa433534
Author: smilejsu82 <50188795+smilejsu82@users.noreply.github.com>
Date:   Fri May 17 17:47:37 2019 +0900
 
    search node
 
commit edafd16e656f2d377ae8176b164994a84f4cba36
Author: smilejsu82 <50188795+smilejsu82@users.noreply.github.com>
Date:   Fri May 17 16:27:37 2019 +0900
 
    create map
 
commit 8cd00165090fb07e4f1bcf006dbbeda6358fba9d
Author: smilejsu82 <50188795+smilejsu82@users.noreply.github.com>
Date:   Fri May 17 12:00:54 2019 +0900
 
    init project
 
commit 2d6883e8abd66b94fc43c59e0a5e05bbcbcb4dad
Author: smilejsu82 <50188795+smilejsu82@users.noreply.github.com>
Date:   Fri May 17 11:01:48 2019 +0900
 
    Initial commit
(END)
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
^C
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git add *
warning: LF will be replaced by CRLF in Packages/manifest.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in ProjectSettings/ProjectVersion.txt.
The file will have its original line endings in your working directory
The following paths are ignored by one of your .gitignore files:
Assembly-CSharp.csproj
Library
Temp
obj
unity-astar-test.sln
Use -if you really want to add them.
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git reset head *
Unstaged changes after reset:
M       Logs/Packages-Update.log
M       Packages/manifest.json
M       ProjectSettings/ProjectVersion.txt
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git status
On branch master
Your branch is up to date with 'origin/master'.
 
Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)
 
        modified:   Logs/Packages-Update.log
        modified:   Packages/manifest.json
        modified:   ProjectSettings/ProjectVersion.txt
 
no changes added to commit (use "git add" and/or "git commit -a")
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git add .
warning: LF will be replaced by CRLF in Packages/manifest.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in ProjectSettings/ProjectVersion.txt.
The file will have its original line endings in your working directory
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git reset head *
Unstaged changes after reset:
M       Logs/Packages-Update.log
M       Packages/manifest.json
M       ProjectSettings/ProjectVersion.txt
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git config --global core.autocrlf true
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git add .
warning: LF will be replaced by CRLF in Packages/manifest.json.
The file will have its original line endings in your working directory
warning: LF will be replaced by CRLF in ProjectSettings/ProjectVersion.txt.
The file will have its original line endings in your working directory
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git reset head *
Unstaged changes after reset:
M       Logs/Packages-Update.log
M       Packages/manifest.json
M       ProjectSettings/ProjectVersion.txt
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git config --global core.safecrlf false
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$ git add .
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$
 
smilejsu@DESKTOP-T44LUPV MINGW64 /d/workspace/unity/git/unity-astar-test (master)
$
 
 

 

반응형

'Git' 카테고리의 다른 글

Git과 Sourcetree 사용하기  (0) 2022.01.12
Git 에러 CRLF will be replaced by LF (혹은 반대) 핸들링하는 방법  (0) 2020.06.05
eclipse target runtime is not defined  (0) 2019.05.03
Permission denied  (0) 2019.05.02
git 알아보기  (0) 2019.05.02
:

photon

Purchases 2019. 5. 20. 09:32
반응형

smilejsu82@gmail.com

thsk**

반응형
:

윈도우의 커맨드 명령어 find , findstr

ShortCuts 2019. 5. 20. 00:52
반응형

Linux나 Unix를 쓰다가 Windows를 사용하다 보면 커맨드 명령이 호환되지 않고,
비슷한 명령이 없는지 몰라서 헤멜 때가 있다.

Linux의 find 명령어와 비슷한 윈도우 명령어를 보자

c:\> dir /s /b | find "xlsx"
-> 현재 폴더의 하위 폴더까지 xlsx 를 포함하는 파일을 찾아서 보기


C:\> dir /s /a:d \windows*
-> windows 라는 이름으로 시작하는 디렉토리만 찾기


C:\> netstat -na | findstr "ESTABLISHED" | find "80"
-> netstat 결과를 파이프로 받아서 EST 인 녀석들만 보여주되 | 80 을 포함하는 것만 보기


여기서 중요한 findstr 과 find 도스 명령어에 대해 알고 넘어가야 한다.



find 명령의 경우 옵션이 그리 많진 않아 현재의 findstr 로 대체가 된 상황이다.




아래와 같은 형태로도 가능하다. 


c:\> netstat -na | findstr "LISTEN" | find /c "8080"


-> 8080 이라는 숫자를 포함하고 LISTEN 을 포함하는 netstat 결과의 라인 수를 세기

반응형

'ShortCuts' 카테고리의 다른 글

포토샵 단축키  (2) 2018.11.13
: