Slide 1

Slide 1 text

Ξϯνύλʔϯ͔ΒֶͿ UNITYͷ࢖͍ํ Gotanda.unity #14

Slide 2

Slide 2 text

Ξϯνύλʔϯྫ Public ม਺໰୊ Prefab ͷ SerializeField ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ Shader ໰୊

Slide 3

Slide 3 text

Ξϯνύλʔϯྫ Public ม਺໰୊ SerializeField / Prefab ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ Shader ໰୊

Slide 4

Slide 4 text

PUBLICม਺໰୊ ໰୊఺ ▸ MonoBehaviour ܧঝΫϥεͰ͸Serializeର৅ʹͳΔ ▸ Unity Ͱ͸ Serialize ର৅ʹͳΔͨΊInspector͔Βฤू͕Մೳ ▸ উखʹฤूͤͨ͘͞ͳ͍࣌΋͋Δ
 ▸ ֎෦ʹΑΓ؆୯ʹॻ͖׵͑Մೳ ▸ ϓϩύςΟͰpublic ͳSetter Λఏڙ͍ͯ͠Δ৔߹΋ಉ༷ ▸ ΧϓηϧԽ(৘ใӅṭ)తʹඇৗʹϚζΠ
 جຊతʹ֎෦ΫϥεʹΑΔ௚઀ૢ࡞͸ةݥ

Slide 5

Slide 5 text

PUBLICม਺໰୊ ղফ๏ ▸ MonoBehaviour ܧঝΫϥεͰ͸Serializeର৅ʹͳΔ ▸ [SerializeField] private / protected ʹ͠·͠ΐ͏ ▸ Public ม਺ఆٛ͸ۃྗආ͚Δ ▸ SDKͱ͔Ͱ͸ฏؾͰ࢖ͬͯͨΓ͠·͢ΑͶ…(খ੠) 
 ▸ ֎෦ʹΑΓ؆୯ʹॻ͖׵͑Մೳ ▸ Getter ͷެ։͸OK ▸ Setter ͸ϝιουͰදݱ ▸ τϨʔαϏϦςΟͷ؍఺ΑΓ
 ϓϩύςΟΑΓϝιουͷํ͕Φεεϝ

Slide 6

Slide 6 text

PUBLICม਺໰୊ PUBLICม਺ͷར༻έʔε ▸ σʔλߏ଄ (ΤϯςΟςΟ) ͷදݱ ▸ ग़དྷΕ͹Getter/Setter ܦ༝͕๬·͍͕͠
 ৔߹ʹΑͬͯ͸ެ։͠ͳ͚Ε͹͍͚ͳ͍͜ͱ΋͋Δ ▸ ΠϯλʔϑΣʔεܦ༝΋OK ▸ μϛʔίʔυ/αϯϓϧίʔυ࡞੒࣌ʹ༻͍Δ ▸ ग़དྷΕ͹࢖Θͳ͍ํ͕ྑ͍ ▸ αΫοͱઆ໌͢Δ෼ʹ͸࢖͏͜ͱ΋͋Δ

Slide 7

Slide 7 text

Ξϯνύλʔϯྫ Public ม਺໰୊ Prefab ͷ SerializeField ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ Shader ໰୊

Slide 8

Slide 8 text

PUBLICม਺໰୊ ໰୊఺ ͜͜ʹଞऀʹґଘ͍ͯ͠ΔΦϒδΣΫτ͕͋Δ͡ΌΖ

Slide 9

Slide 9 text

PUBLICม਺໰୊ ໰୊఺ ͜ΕΛPrefabԽͯ͠ಈతੜ੒ʹ͠Α͏ͱ͢Δͱ

Slide 10

Slide 10 text

PUBLICม਺໰୊ ໰୊఺ ͜͏͡Όʂ

Slide 11

Slide 11 text

PUBLICม਺໰୊ ໰୊఺ ▸ ԿͰ΋͔ΜͰ΋ࢀরΛInspector Ͱͷઃఆͯ͠͠·͏ ▸ ࣗ਎ͷPrefabҎ֎ͷཁૉ ▸ ґଘؔ܎͕ΊͪΌͪ͘Ό ▸ ॳظԽʹऑ͍
 ▸ PrefabԽͨ͠ͱ͖ʹґଘ͕ണ͕ΕΔ ▸ ϖλϖλషΔཁૉ͕ଟ͍ͱΞλον΋Ұۤ࿑

Slide 12

Slide 12 text

PUBLICม਺໰୊ ղܾ๏ ▸ Inspector Ͱొ࿥͢΂͖΋ͷ ▸ ࣗ਎ҎԼͷཁૉ ▸ ಈతੜ੒͢ΔPrefab ▸ ґଘੑͷղܾ ▸ ͪΌΜͱઃܭ͢Δʂ ▸ Ͳ͏ͯ͠΋ݫ͍͠৔߹͸Zenject ͳͲͷDI ίϯςφΛ༻͍Δ

Slide 13

Slide 13 text

Ξϯνύλʔϯྫ Public ม਺໰୊ Prefab ͷ SerializeField ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ Shader ໰୊

Slide 14

Slide 14 text

AWAKE / START ໰୊ ▸ ͱΓ͋͑ͣॳظԽ͸Awake/StartͰߦ͏ ▸ ֤ॴͰݺͼ͗ͯ͢Awake ͷ
 ࣮ߦॱʹґଘੑ͕ੜ͡Δ
 
 
 ▸ ࢖Θͳ͍Awake()/Start()/Update() ▸ ਺͕ଟ͍ͱݺͼग़͠ίετ͕
 അࣛʹͳΒͳ͍(ಛʹUpdate) ໰୊఺

Slide 15

Slide 15 text

AWAKE / START ໰୊ ▸ ґଘੑͷ͋ΔॳظԽ ▸ ॳظԽؔ਺Λ༻ҙ͢Δ
 
 
 
 
 ▸ ॳظԽॲཧΛ؅ཧ͢Δ
 
 
 ໰୊఺ͷղফ๏

Slide 16

Slide 16 text

AWAKE / START ໰୊ ▸ ࢖Θͳ͍Awake()/Start()/Update() ▸ ফ͢!! ໰୊఺ͷղফ๏

Slide 17

Slide 17 text

Ξϯνύλʔϯྫ Public ม਺໰୊ Prefab ͷ SerializeField ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ ໊લۭؒ ໰୊ Shader ໰୊

Slide 18

Slide 18 text

ิؒؔ਺ ໰୊ ▸ Ґஔߋ৽Ͱ͜Μͳίʔυ͕
 
 
 
 ▸ Lerp/Slerp ͸਺ֶతʹ͸ʮ಺෼఺ʯΛܭࢉ͢Δؔ਺ ▸ ͔֬ʹdeltaTime ͷׂ߹Ͱগͣͭ͠໨ඪʹۙͮ͘ ▸ ແݶ͔͚࣌ؒͳ͍ͱ࠷ऴ஋ʹ͸ͳΒͳ͍ ▸ ͦ΋ͦ΋0.033/0.016 ͣͭۙͮ͘ॲཧ͸ద੾͔ʁ ▸ ॲཧམͪͳͲ͢Δͱׂۙͮ͘߹΋ಈతʹมΘͬͯ͠·͏ ໰୊఺

Slide 19

Slide 19 text

ิؒؔ਺ ໰୊ ▸ Lerp ͷ࢖͍ํΛ೺Ѳ͢Δ ▸ ͪΌΜͱυΩϡϝϯτΛಡΈ·͠ΐ͏
 https://docs.unity3d.com/ja/current/ScriptReference/Vector3.Lerp.html
 ▸ ୈࡾҾ਺Λ0.0~1.0 ʹมԽ͢Δίʔυʹ͢Δ
 ex) Coroutine
 Ͱͷ࣮૷ྫ ղܾ๏

Slide 20

Slide 20 text

Ξϯνύλʔϯྫ Public ม਺໰୊ Prefab ͷ SerializeField ໰୊ Awake / Start ໰୊ ิؒؔ਺ ໰୊ Shader ໰୊

Slide 21

Slide 21 text

SHADER ໰୊ ▸ ϐΫηϧγΣʔμʔ಺Ͱॲཧͷॏ͍ؔ਺Λ༻͍Δ ▸ ifจ ▸ ৚݅෼ذ͸ॏ͍ॲཧ ▸ ࡾ֯ؔ਺( Sin,Cos,Tan ) ▸ ܭࢉࣗମ͕ॏ͍ ▸ Log, Sqrt ͳͲ ໰୊఺

Slide 22

Slide 22 text

SHADER ໰୊ ▸ ϐΫηϧγΣʔμʔ಺Ͱͷॲཧͷॏ͍ؔ਺ ▸ ifจ ▸ ܰྔͳ਺ֶؔ਺Ͱ୅ΘΓͷදݱ
 ex) ceil(clamp(_value, 0, 1)) _value ͕ෛ:0, ਖ਼:1
 uvͰv ͕0.5 Ҏ্͔Ͳ͏͔ˠ ceil(clamp(i.uv.y - 0.5, 0, 1)) ▸ ࡾ֯ؔ਺( Sin,Cos,Tan ) ▸ ࡾ֯ؔ਺ςʔϒϧΛ࡞੒/ςΫενϟʹॻ͖ࠐΜͰ͓͘ ▸ r=Sin, g=Cos, b = Tan ▸ Log, Sqrt ͳͲ ▸ ۃྗ࢖Θͳ͍ ▸ Sqrt ͷ୅ΘΓʹೋ৐ͰൺֱͳͲ ղফ๏

Slide 23

Slide 23 text

࠷ޙʹ ▸ υΩϡϝϯτ͸ͪΌΜͱಡΈ·͠ΐ͏ ▸ Θ͔Βͳ͍͚Ͳ࢖ͬͯΈͨ͸NG
 ▸ ઃܭΛͪΌΜͱߟ͑·͠ΐ͏ ▸ ಛʹӡ༻ίϯςϯπͳͲ͸ޙʑͰͬ͠΃ฦ͕͖͠·͢ ▸ ٕज़తෛ࠴ͱ޲͖߹͍·͠ΐ͏ ▸ ύϑΥʔϚϯεΛؾʹ͠·͠ΐ͏ ▸ ৭ʑݕূهࣄͳͲΛ୳ͯ͠Έ·͠ΐ͏ ▸ ͳ͚Ε͹ࣗ෼Ͱܭଌͯ͠Έ·͠ΐ͏ ▸ ग़དྷΕ͹ͦͷ݁ՌΛγΣΞͯ͠΋Β͑Δͱ
 ΈΜͳ͕޾ͤʹͳΓ·͢ ·ͱΊ