ð°ãã«ãŒããªã³ãå ¥é(2)ãã¥ãŒããå転ãããŠã¿ãã [UE5å ¥éãã¥ãŒããªã¢ã« #3-2]

ã³ã¡ã³ãð€
ã§ã¯ååã«åŒãç¶ããã«ãŒããªã³ãããŸãã¯äœã£ãŠã¿ãããšããäºã§ãä»åã¯ãã«ãŒããªã³ãã§å転ãããã¥ãŒããäœã£ãŠãããŸããä»åäœæããã®ã¯ãã¡ãâ
â ãã¥ãŒããå転ããã|å®è·µ
ã§ã¯ãŸãã¯ãã¥ãŒããå転ãããæ©èœããã«ãŒããªã³ãã§äœæããŠããã®åŸã¢ã¯ã·ã§ã³ã²ãŒã ã®å転ããã¹ããŒãžã£ãœãäœæãããã®ãèšçœ®ããŠã¿ãããšæããŸãã
- ãŸãã¯ãµãŒãããŒãœã³ã®ãããžã§ã¯ããéããŸããååã®ãŸãŸã§ãæ§ããŸããã
- ãšãã£ã¿å·Šäžã®ã³ã³ãã³ãããã¯ãŒããã³ã³ãã³ããã©ãŠã¶ãéããŸããã³ã³ãã³ããã©ã«ããéããå³ã¯ãªãã¯ã§æ°èŠãã©ã«ããéžæããŸãããã®åŸãã©ã«ãã®ååãBlueprintsã«ããŸãã
ã³ã¡ã³ãð€
ã³ã³ãã³ããã©ãŠã¶ã¯äœ¿çšé »åºŠãé«ãã®ã§ãã¬ã€ã¢ãŠãã«ãããã³ã°ããåºå®ããŠããäºãããããããŸãã
åºæ¬çã«åºå®ããç¶æ ããæ»ãå¿ èŠæ§ãäœãã®ã§ããããåºå®ããç¶æ ã§äœ¿çšããŸããããäžããã¯ã¬ã€ã¢ãŠãã«ãããã³ã°ããç¶æ ã§è§£èª¬ããŠãããŸãã
- Blueprintsãã©ã«ããéããŠãå³ã¯ãªã㯠> ãã«ãŒããªã³ãã¯ã©ã¹ãéžæããŸãã
ãã«ãŒããªã³ãã¯ã©ã¹ãšã¯ïŒ
ãã«ãŒããªã³ãã¯ã©ã¹ãšã¯ããã«ãŒããªã³ããä»å±ããã¢ã»ãããã®äºã§ãäœããã®æ©èœãæã£ãã¢ã¯ã¿ãäœæãããå Žåã«äœæãããã®ã«ãªããŸãããã«ãŒããªã³ããäœãå Žåã¯ãã®ãã«ãŒããªã³ãã¯ã©ã¹ãŸãã¯åå䜿çšããã¬ãã«ãã«ãŒããªã³ãã®ã©ã¡ããã§äœã£ãŠãããŸãã詳现ã¯åŸã»ã©è§£èª¬ããŸãã
-
次ã«ãã«ãŒããªã³ãã¯ã©ã¹ã®çš®é¡ãéžæãããŠã£ã³ããŠã衚瀺ãããŸããããã§ã¯ã©ããªãã«ãŒããªã³ãã¯ã©ã¹ãäœããã«ãã£ãŠéžæãããã®ã決å®ããŸããäŸãã°ãã£ã©ã¯ã¿ãŒãªã©ãäœæããå Žåã¯ãCharcterããã²ãŒã äžã®æ©èœãæã€ã¢ã€ãã ,(äŸãã°åãã¹ããŒãžãå埩ã¢ã€ãã )ãªã©ãäœæããå Žåã¯ãActorããéžæããŸããããã¯å®éã«äœ¿ã£ãŠèŠããŠããã®ãè¯ããšæããŸãã®ã§èª¬æã¯ãã®èŸºãã«ããŠãä»åã¯ã¬ãã«ã«é 眮ããå転ãããã¥ãŒããªã®ã§ActorãéžæããŸãã
-
ãã«ãŒããªã³ãã¯ã©ã¹ãäœæãããå転ãããã¥ãŒããäœãã®ã§ååãRotationCubeã«ããŸããããã«ã¯ãªãã¯ã§éããŸãã
-
ãã«ãŒããªã³ããšãã£ã¿ãéãããŸããããã«ãŒããªã³ãã¯ã©ã¹ã¯ãã«ãŒããªã³ããä»å±ããã¢ã»ãããªã®ã§ããã«ãŒããªã³ããäœæããå Žæãšã¢ã»ããã®æ§æã決å®ããå ŽæããããŸãããŸãã¯ãã¥ãŒãã远å ããŠã¿ãŸãããã
-
å·Šã®ã³ã³ããŒãã³ãã¿ããã远å ãã¯ãªãã¯ããŠStaticMeshãéžæããŸãã
-
StaticMeshãéžæããç¶æ ã§è©³çްããã¹ã¿ãã£ãã¯ã¡ãã·ã¥ããSM_ChamferCubeãéžæããŸãã
ã³ã¡ã³ãð€
ãŸãã¯ãã¥ãŒããããã§è¿œå ã§ããŸããããã«ãŒããªã³ãã¯ã©ã¹ã¯ä»è¿œå ããStaticMeshã®ããã«ããã€ãã®ã³ã³ããŒãã³ããšåŒã°ããæ§æèŠçŽ ãã圢æãããŸããStaticMeshã³ã³ããŒãã³ãã¯ã¡ãã·ã¥ã远å ããã³ã³ããŒãã³ãã§ããã®ã³ã³ããŒãã³ãã«ãã£ãŠãã¥ãŒãã远å ããããšããäºã«ãªããŸãã
- ã³ã³ãã€ã«ãã¯ãªãã¯ããŸããã³ã³ãã€ã«ã«ãã£ãŠå€æŽããå
容ãé©çšããã確å®ããäºãã§ããŸãã
ã³ã¡ã³ãð€
ãã«ãŒããªã³ããšãã£ã¿ã¯æ¯åéããŠãæ§ããŸããããããããã¯ã¬ãã«ãšãã£ã¿ã«ã¿ããšããŠçµåããŠããäºã§ãããã¡ãã ãšããã«åãæ¿ããäºãã§ããã®ã§ãã®ç¶æ ãããããããŸãâ
-
ã§ã¯äžæŠã¬ãã«ã«äœæãããã«ãŒããªã³ãã¯ã©ã¹(ãã¥ãŒã)ã远å ããŠã¿ãŸãããããã©ãã°ã§è¿œå ããŸãã
-
ãã¬ã€ããŠã¿ããšãã¥ãŒãã®ãã«ãŒããªã³ãã¯ã©ã¹ã远å ãããŸããããã¡ãããã«ãŒããªã³ãã¯ãŸã äœã£ãŠããªãã®ã§äœã®æ©èœãæã£ãŠããŸããã
ã§ã¯ããã¥ãŒãã«å転ããæ©èœã远å ããŠã¿ãŸãããã -
ããäžåºŠãã«ãŒããªã³ããšãã£ã¿ãéããŸããã¿ããèšçœ®ããå Žåã¯ã¿ãããåãæ¿ããŸããã³ã³ãã³ããã©ãŠã¶ã®å ã¢ã»ãããããã«ã¯ãªãã¯ã§ãéããŸãã
-
ãã«ãŒããªã³ããç·šéããå Žæãã€ãã³ãã°ã©ãããéããŸãã
-
ã€ãã³ãã°ã©ããéããŸããããã§ãã«ãŒããªã³ããäœæããŠãããŸããæ¢ã«çšæãããŠããããŒãããããŸããæåã¯ç¡å¹ã«ãªã£ãŠããããã«ããŒããã€ãªããäºã§æå¹ã«ãªããŸãã
-
ã§ã¯ä»åã¯ã²ãŒã ãã¬ã€äžã«åžžã«å転ãããã¥ãŒããäœæãããã®ã§ããããªæã«ã¯TickããŒãã䜿çšããŸããããã©ã«ãã§çšæãããŠããŸãâ
ã€ãã³ãTickããŒããšã¯ïŒ
ã€ãã³ãTickããŒãã¯ç°¡åã«èª¬æãããšTickããŒãã«ç¹ããããŒããåžžã«å®è¡ããããã®ããŒãã§ããæ£ç¢ºã«è§£èª¬ãããšãæ¯ãã¬ãŒã åŠçãå®è¡ããããŒããã«ãªããŸãã
ãã¬ãŒã ãfpsãšã¯ïŒ
ãã¬ãŒã ã«ã€ããŠè§£èª¬ãããšãæ åã¯äžç§éã«äœæãã®ç»åãæ ãåºããŠããŸãããã®ç»åäžæäžæã®äºããã¬ãŒã ãšåŒã³ãäžç§éã«ãã¬ãŒã ãäœæãããã®åäœãfps(flame per second)ãŸãã¯ãã¬ãŒã ã¬ãŒããšèšããŸãããªã®ã§60fpsã®å Žåã¯äžç§éã«60æã®ãã¬ãŒã (ç»å)ããããšããäºã«ãªããŸããTickããŒãã®ãæ¯ãã¬ãŒã ããšããæå³ã¯ãäŸãã°ã²ãŒã ã60fps(ãã¬ãŒã ã¬ãŒã)ã®å Žåãäžç§éã«60åTickããŒããåŒã°ããŠãTickããŒãã«ç¹ãããããŒããå®è¡ããŸãããšèšãããŠãã€ã¡ãŒãžãã€ããªããšæãã®ã§å®éã«äœ¿ã£ãåŸã«ã解説èŽããŸãã
- ã€ãã³ãTickã®ãã³ãããã©ãã°ããŠé¢ãããadd local rotaionããšæ€çŽ¢ãAddActorLocalRotationããŒããéžæããŸãã
ã€ãã³ãTickã«AddActorLocalRotationããŒããã€ãªãããŸããã
AddActorLocalRotationããŒããšã¯ïŒ
AddActorLocalRotationããŒããšã¯ã¢ã¯ã¿ã®å転ã®X,Y,Z軞ã«å€§ããŠå ¥åå€ãå ããããŒãã§ãã
ã¬ãã«ã§ãã¥ãŒããéžæããç¶æ ã§è©³çްãããã©ã³ã¹ãã©ãŒã > å転ããã¢ã¯ã¿ã®è§åºŠã調æŽã§ããŸãããããã調æŽããããŒãã§ããèŠããã«ãã®AddActorLocalRotationããŒãã䜿çšãããšã¢ã¯ã¿ãå転ãããäºãã§ãããšããäºã§ããã
-
AddActorLocalRotationããŒãã®X軞ã«1ãšå ¥åããŸãã
-
ããã§äžæŠå®æããã®ã§ãã¬ã€ããŠã¿ããš..ãã¥ãŒããå転ããããã«ãªããŸããïŒ
äœæããããŒããç°¡åã«è§£èª¬
ãªããã¥ãŒããå転ããããã«ãªã£ãã®ããŸãšãããšãã€ãã³ãTickããŒãã¯ãåžžã«ãã®ããŒãã«ã€ãªããåŠçãå®è¡ããããšããæ©èœãæã£ããã®ã§ãAddActorLocalRotatationããŒãã¯ãã¢ã€ãã ãå転ãããããšããæ©èœãæã£ããã®ã«ãªã£ãŠããŸãããã®äºã€ã®ããŒããç¹ãäºã§ãåžžã«ã¢ã€ãã ãå転ãããããšããæ©èœã«ãªããã²ãŒã ããã¬ã€ãããšã¢ã€ãã ãå転ããããã«ãªããšãã£ãä»çµã¿ã«ãªã£ãŠããŸããæ£ç¢ºã«ããŒãã®ä»æ§ã説æãããš..
æœè±¡çã§ã¯ãªãæ£ç¢ºã«ããŒãã解説ãããšã€ãã³ãTickã¯ãæ¯ãã¬ãŒã å®è¡ãã§ãAddActorLocalRotatationã¯ãå ¥åå€ã®å(xã«1床)å転ããããšããæå³ãªã®ã§ãæ¯ãã¬ãŒã x軞ã«1床å転ããããšããããŒãã«ãªããŸããã€ãŸãäžç§éã«60ãã¬ãŒã (60fps)ã®å Žåã¯äœæããããŒãã¯äžç§éã«60åx軞ã«1床å転ãããšããåŠçã«ãªããŸãã
æ¯ãã¬ãŒã x軞ã«1床å転ãããäºã«ãã£ãŠå転ãããšããåŠçãäœã£ãŠãããšããäºã§ããã
-
ã§ã¯ä»åºŠã¯Z軞ãå転ãããŠã¿ãŸããããX軞ã0ã«ããŠãZ軞ã«5ãšå ¥åããŸãã
-
ãã¬ã€ãããšZ軞ãäžå¿ã«å転ããããã«ãªããŸããã
ã³ã¡ã³ãð€
XYZ軞ã¯å床確èªããŠãããšä»¥äžã§ããã¯ãŒã«ãã«å¯ŸããŠæ°Žå¹³è»žãXãšY軞ã§åçŽè»žãZ軞ã§ãã
ããã§ã¢ã¯ã¿ã«å転ãããæ©èœããã«ãŒããªã³ãã«ãã£ãŠã€ããäºãã§ããŸãããã§ã¯ããããå®éã®ã²ãŒã ã£ãœããã®å転ãããã¥ãŒãã䜿çšããŠã¿ãŸãããã
â¡ ã¢ã¯ã·ã§ã³ã²ãŒã ã®å転ããã¹ããŒãžã£ãœãèšçœ®ãã
ãããªæãâã«å転ãããã¥ãŒããæŽ»çšããŠã¿ãŠã²ãŒã ã£ãœãããŠãããããšæããŸãã
-
ãã«ãŒããªã³ãã¯ã©ã¹ããã©ãã°ã§ã¬ãã«ã«è¿œå ããŸããããäœçœ®ã¯èšçœ®ãããŠããã¹ããŒãžã®çãäžèŸºãã«ããŸããäœçœ®ã調æŽããŸãããã
-
次ã«ãã¬ã€ã€ãŒã®ã¹ã¿ãŒãããå Žæã倿ŽããŠãããŸãããããµãŒãããŒãœã³ã ãšæ¢åã§çšæãããŠãããPlayerStart(ãã¬ã€ã€ãŒã¹ã¿ãŒã)ããšããã¢ã¯ã¿ããã¬ã€ã€ãŒã®ã¹ã¿ãŒãäœçœ®ã決å®ãããã®ã«ãªããŸãã
-
ãã¬ã€ã€ãŒã¹ã¿ãŒãã®äœçœ®ãå転ãããã¥ãŒãã®ç®ã®åã«ç§»åãããŸãããã©ã³ã¹ãã©ãŒã ã®äœçœ®ã1540,2740,302ã«ããŠãå転ã0,0,-180ã«å ¥åããŸããæåã§ç§»åãããŠãæ§ããŸããã
-
ãã¥ãŒãã®å€§ãããå°ãå€ããŸããããRããŒãæŒãã°æ¡å€§ã¢ãŒãã«åãæ¿ããã倿Žãã§ããŸãã(ã·ã§ãŒãã«ããã¯WããŒã§ç§»å,EããŒã§å転,RããŒã§æ¡å€§åãæ¿ããã§ããŸã)
æçµçã«ãããªæãã®ãã©ã³ã¹ãã©ãŒã å€ã«ãªããŸããâ倧äœã§æ§ããŸããã
-
ãã¬ã€ããŠã¿ããšã¢ã¯ã·ã§ã³ã²ãŒã ã®å転ããã¹ããŒãžã£ãœããªã£ãŠããäºã確èªã§ããŸããå®éã«ãžã£ã³ãã§åãããŸã§æž¡ãããææŠããŠã¿ãŸãããïŒ
ããã§å転ãããã¥ãŒãã¯ä»¥äžã«ãªããŸãã
ã³ã¡ã³ãð€
ãªããšãªããã«ãŒããªã³ãã§ã²ãŒã ã®æ©èœã远å ãããšããæå³ãããã£ãŠããã§ããããïŒãã®ããã«ããŒããçµã¿åãããŠæ§ã ãªæ©èœã®ã²ãŒã ãäœæããŠããäºã«ãªããŸãããããŠä»åã®ããã«äœããã®æ©èœãã¢ã¯ã¿ã«ã€ããå Žåã¯ããã«ãŒããªã³ãã¯ã©ã¹ãäœæããŠããã§ãã«ãŒããªã³ããç·šéããããšããäºãèŠããŠãããŸãããããç²ãæ§ã§ããã