[Unity] 스크립트를 통해서만 UGUI의 Asseet 구축
12571 단어 Unity
개시하다
이제 유니티 게임의 MOD를 개발하기 위해서는 프리셋 허브에 의존하지 않는 UGUI 생성이 필요해 개발했다.
다음 기사에서도 언급되었다
또 다음 글이 NGI로 구축됐을 때도 참고 가치가 있다.
스크립트로만 NGI를 구축하려고 찾아봤는데
ugui-script-creator
가져오기 방법
ugui-script-creator(GiitHub)에서 다운로드하여 가져오십시오.
사용법
기본 사용 예using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UI.Utility;
public class Example : MonoBehaviour
{
#region event
private void Start()
{
// EventSystemが存在しない場合一緒に生成します
Canvas canvas = UICreator.CreateCanvas();
// キャンバスの子としてテキストを生成する
Text text = UICreator.CreateText(canvas.gameObject);
text.rectTransform.localPosition = Vector3.left * 140f;
text.text = "Hello World!!";
text.alignment = TextAnchor.MiddleCenter;
text.color = Color.green;
// オブジェクト名やコンポーネントの初期値を設定する
Dropdown dropdown = UICreator.CreateDropdown(canvas.gameObject, "Gender", "性別");
dropdown.GetComponent<RectTransform>().localPosition = Vector3.right * 140f;
dropdown.options.Clear();
dropdown.options.Add(new Dropdown.OptionData { text = "男性" });
dropdown.options.Add(new Dropdown.OptionData { text = "女性" });
}
#endregion
}
조합 UniRx 사용 예using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UI.Utility;
using UniRx;
public class Example : MonoBehaviour
{
#region event
private void Start()
{
Canvas canvas = UICreator.CreateCanvas();
Button button = UICreator.CreateButton(canvas.gameObject, "Random", "ランダム");
button.GetComponent<RectTransform>().localPosition = Vector3.left * 140f;
button.OnClickAsObservable()
.Subscribe(_ => Camera.main.backgroundColor = new Color(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f)));
Image image = UICreator.CreateImage(canvas.gameObject, "Background");
image.rectTransform.localPosition = Vector3.right * 140f;
image.color = new Color(250f / 255f, 120f / 255f, 255f / 255f);
Toggle toggle = UICreator.CreateToggle(image.gameObject, "Interactable", "Interactable");
toggle.GetComponent<RectTransform>().localPosition = Vector3.right * 30f;
toggle.OnValueChangedAsObservable()
.Subscribe(interactable => button.interactable = interactable);
}
#endregion
}
메소드 목록
메서드 이름
기능
시험을 준비하다
CreateCanvas
Canvas 생성
장면에 EventSystem이 없는 경우 생성
CreateEventSystem
EventSystem 생성
CreatePanel
Panel 생성
CreateButton
Buton 생성
CreateText
Text 생성
CreateImage
Image 생성
CreateRawImage
RawImage 생성
CreateSlider
슬라이더 생성
CreateToggle
Toggle 생성
CreateInputField
InputField 생성
CreateDropdown
Dropdown 생성
CreateScrollView
ScrollView 생성
허가증을 발급하다
MIT
라이센스 사용
Ugui-sscript-creator는 Unity Technologies/UI를 기반으로 제작되었습니다.
Copyright (c) 2014-2015, Unity Technologies
끝말
문장 첫머리에는 미리 조립된 UGUI 생성에 의존하지 않음
UGUI 기본 스플라인을 사용하여 구문을 실행할 때 참조를 위해 프리셋에 종속됩니다.
UGUI의 기본 스프라이트는 Unity > Editor > Data > Resources > unity_builtin_extra
에 포함되며, 참조 없이 구축할 때 스프라이트가 포함되지 않아 프리셋이 준비되었습니다.
Resources.GetBuiltin Resource 및 AsseetDatabaseCopyAsset、Texture2D.EncordeTopNG 등을 이용한 시도는 잘못됐지만 제대로 진행되지 못했다.
해결책을 아는 사람이 있으면 알려주세요.
※ 개별 사이다를 사용하거나 편집기를 실행할 때만 사용하기Resources/ugui-script-creator
폴더를 삭제해도 문제 없음
Reference
이 문제에 관하여([Unity] 스크립트를 통해서만 UGUI의 Asseet 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomori_hikage/items/803a64ca8ce1296f21b5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UI.Utility;
public class Example : MonoBehaviour
{
#region event
private void Start()
{
// EventSystemが存在しない場合一緒に生成します
Canvas canvas = UICreator.CreateCanvas();
// キャンバスの子としてテキストを生成する
Text text = UICreator.CreateText(canvas.gameObject);
text.rectTransform.localPosition = Vector3.left * 140f;
text.text = "Hello World!!";
text.alignment = TextAnchor.MiddleCenter;
text.color = Color.green;
// オブジェクト名やコンポーネントの初期値を設定する
Dropdown dropdown = UICreator.CreateDropdown(canvas.gameObject, "Gender", "性別");
dropdown.GetComponent<RectTransform>().localPosition = Vector3.right * 140f;
dropdown.options.Clear();
dropdown.options.Add(new Dropdown.OptionData { text = "男性" });
dropdown.options.Add(new Dropdown.OptionData { text = "女性" });
}
#endregion
}
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.UI.Utility;
using UniRx;
public class Example : MonoBehaviour
{
#region event
private void Start()
{
Canvas canvas = UICreator.CreateCanvas();
Button button = UICreator.CreateButton(canvas.gameObject, "Random", "ランダム");
button.GetComponent<RectTransform>().localPosition = Vector3.left * 140f;
button.OnClickAsObservable()
.Subscribe(_ => Camera.main.backgroundColor = new Color(Random.Range(0f, 1f), Random.Range(0f, 1f), Random.Range(0f, 1f)));
Image image = UICreator.CreateImage(canvas.gameObject, "Background");
image.rectTransform.localPosition = Vector3.right * 140f;
image.color = new Color(250f / 255f, 120f / 255f, 255f / 255f);
Toggle toggle = UICreator.CreateToggle(image.gameObject, "Interactable", "Interactable");
toggle.GetComponent<RectTransform>().localPosition = Vector3.right * 30f;
toggle.OnValueChangedAsObservable()
.Subscribe(interactable => button.interactable = interactable);
}
#endregion
}
MIT
라이센스 사용
Ugui-sscript-creator는 Unity Technologies/UI를 기반으로 제작되었습니다.
Copyright (c) 2014-2015, Unity Technologies
끝말
문장 첫머리에는 미리 조립된 UGUI 생성에 의존하지 않음
UGUI 기본 스플라인을 사용하여 구문을 실행할 때 참조를 위해 프리셋에 종속됩니다.
UGUI의 기본 스프라이트는 Unity > Editor > Data > Resources > unity_builtin_extra
에 포함되며, 참조 없이 구축할 때 스프라이트가 포함되지 않아 프리셋이 준비되었습니다.
Resources.GetBuiltin Resource 및 AsseetDatabaseCopyAsset、Texture2D.EncordeTopNG 등을 이용한 시도는 잘못됐지만 제대로 진행되지 못했다.
해결책을 아는 사람이 있으면 알려주세요.
※ 개별 사이다를 사용하거나 편집기를 실행할 때만 사용하기Resources/ugui-script-creator
폴더를 삭제해도 문제 없음
Reference
이 문제에 관하여([Unity] 스크립트를 통해서만 UGUI의 Asseet 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tomori_hikage/items/803a64ca8ce1296f21b5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
문장 첫머리에는 미리 조립된 UGUI 생성에 의존하지 않음
UGUI 기본 스플라인을 사용하여 구문을 실행할 때 참조를 위해 프리셋에 종속됩니다.
UGUI의 기본 스프라이트는
Unity > Editor > Data > Resources > unity_builtin_extra
에 포함되며, 참조 없이 구축할 때 스프라이트가 포함되지 않아 프리셋이 준비되었습니다.Resources.GetBuiltin Resource 및 AsseetDatabaseCopyAsset、Texture2D.EncordeTopNG 등을 이용한 시도는 잘못됐지만 제대로 진행되지 못했다.
해결책을 아는 사람이 있으면 알려주세요.
※ 개별 사이다를 사용하거나 편집기를 실행할 때만 사용하기
Resources/ugui-script-creator
폴더를 삭제해도 문제 없음
Reference
이 문제에 관하여([Unity] 스크립트를 통해서만 UGUI의 Asseet 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tomori_hikage/items/803a64ca8ce1296f21b5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)