<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blueprint  &#8211;  ConquestArrow.com</title>
	<atom:link href="https://conquestarrow.com/tag/blueprint/feed/" rel="self" type="application/rss+xml" />
	<link>https://conquestarrow.com</link>
	<description></description>
	<lastBuildDate>Wed, 05 Sep 2018 17:25:26 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://conquestarrow.com/wp-content/uploads/2018/05/cropped-logo-32x32.png</url>
	<title>Blueprint  &#8211;  ConquestArrow.com</title>
	<link>https://conquestarrow.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>UE4のBP内で「_(アンダーバー)」を使うべきではない理由</title>
		<link>https://conquestarrow.com/do-not-use-underbar-in-blueprint-graph/</link>
					<comments>https://conquestarrow.com/do-not-use-underbar-in-blueprint-graph/#disqus_thread</comments>
		
		<dc:creator><![CDATA[Conquest Arrow]]></dc:creator>
		<pubDate>Wed, 11 Jul 2018 14:54:48 +0000</pubDate>
				<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[Gamemakin UE4スタイルガイド]]></category>
		<category><![CDATA[UE4]]></category>
		<category><![CDATA[スタイルガイド]]></category>
		<guid isPermaLink="false">https://conquestarrow.com/?p=345</guid>

					<description><![CDATA[BP内のグラフ・関数・変数の名前には「_(アンダーバー)」は使うべきではない。これらを使用すると見た目上の区別がつかなくなり混乱とバグを生むからだ。 目次 間違い探しに挑戦！答え合わせなんでこんなことがおきるのか？問題が [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>BP内のグラフ・関数・変数の名前には「<code>_</code>(アンダーバー)」は使うべきではない。これらを使用すると見た目上の区別がつかなくなり混乱とバグを生むからだ。</p>

  <div id="toc" class="toc tnt-none toc-center tnt-none border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ul class="toc-list open"><li><a href="#toc1" tabindex="0">間違い探しに挑戦！</a><ul><li><a href="#toc2" tabindex="0">答え合わせ</a></li></ul></li><li><a href="#toc3" tabindex="0">なんでこんなことがおきるのか？</a></li><li><a href="#toc4" tabindex="0">問題が起きる条件</a><ul><li><a href="#toc5" tabindex="0">語頭（プレフィックス）に「_」</a></li><li><a href="#toc6" tabindex="0">語尾（ポストフィックス）に「_」</a></li><li><a href="#toc7" tabindex="0">大文字が続かない場合の語中の「_」</a></li><li><a href="#toc8" tabindex="0">余談：単語の区切りに「　(スペース)」</a></li></ul></li><li><a href="#toc9" tabindex="0">まとめ</a></li></ul>
    </div>
  </div>

<h2><span id="toc1">間違い探しに挑戦！</span></h2>
<p>まずは次のグラフを見てほしい。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/07/NoUnderbarNodes.png" alt="間違い探しノード" /></p>
<p>A,B,C,Dの４つのブロック（関数ノード、Get変数ノードの組）がある。A,B,C,Dはすべて異なるノードで構成されている。さて、どの辺が違うのかよく見てほしい。</p>
<p>分かった人は次へ。分からない人も次へ。</p>
<p><span id="more-345"></span></p>
<h3><span id="toc2">答え合わせ</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/07/NoUnderbar_Answer.png" alt="答え合わせ" /></p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/07/NoUnderbar_MyBlueprint.png" alt="MyBlueprintタブでのリスト" /></p>
<div class="scrollable-table"><table>
<thead>
<tr>
<th>ブロック</th>
<th>関数ノード名</th>
<th>Get変数ノード名</th>
</tr>
</thead>
<tbody>
<tr>
<td>A</td>
<td>MyFunction</td>
<td>MyVar</td>
</tr>
<tr>
<td>B</td>
<td>_MyFunction</td>
<td>_MyVar</td>
</tr>
<tr>
<td>C</td>
<td>MyFunction_</td>
<td>MyVar_</td>
</tr>
<tr>
<td>D</td>
<td>My_Function</td>
<td>My_Var</td>
</tr>
</tbody>
</table></div>
<ul>
<li>Aは特に <code>_</code> を使用していない</li>
<li>Bは語頭に <code>_</code> を使用。関数ノード名でスペースが多いことに気が付いた人もいるだろう。</li>
<li>Cは語尾に <code>_</code> を使用</li>
<li>Dは単語の区切りに <code>_</code> を使用</li>
</ul>
<p>おそらく大半の人がBの関数ノード以外の違いを見分けられなかっただろう。</p>
<h2><span id="toc3">なんでこんなことがおきるのか？</span></h2>
<p>グラフエディタ上では<code>_</code>はスペースに変換される、という機能があるため。</p>
<p>元々UE4では名前の命名規則は<a href="https://wa3.i-3-i.info/word13955.html">PascalCase<span class="fa fa-share-square external-icon anchor-icon"></span></a>が採用されている。</p>
<a rel="noopener" href="https://wa3.i-3-i.info/word13955.html" title="https://wa3.i-3-i.info/word13955.html" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://s0.wordpress.com/mshots/v1/https%3A%2F%2Fwa3.i-3-i.info%2Fword13955.html?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">https://wa3.i-3-i.info/word13955.html</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=wa3.i-3-i.info" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">wa3.i-3-i.info</div></div></div></div></a>
<p>このPascalCaseを一般的な英文にして読みやすくするために単語の区切りに自動的にスペースを表示してくれる、というのがBPなどのグラフエディタの便利機能としてある。この時、略字と単語が続く（例：<code>XMLAndHTML</code>）時などにどこからが区切りかわからないために区別がつくように<code>_</code>で単語の区切りを示す書き方があり（例：<code>XML_AndHTML</code>）、この書き方にも対応したために<code>_</code>をスペースに表示する機能になった、と思われる。</p>
<p>なので本来はこれは便利な機能のはずなのだ。</p>
<h2><span id="toc4">問題が起きる条件</span></h2>
<p>見た目でスペースと区別がつかない、という問題が起きる条件は次になる。</p>
<h3><span id="toc5">語頭（プレフィックス）に「_」</span></h3>
<p>テキスト系のスクリプト言語ではグローバルな変数とローカルな変数の名前被りを避け、ローカルであることを明示するために語頭(プレフィックス)に<code>_</code>を付けるルールを設けていることがしばしばある（JavaScriptやPythonなど）。</p>
<p>その感覚でローカルな関数や変数名の頭に<code>_</code>を付けてしまうと、グローバルなものと区別がつかない、という残念なことが起きる。</p>
<div class="comment-box">
本来、グラフ上でグローバル・ローカルの見た目に差がつけばよいと思うのだが、BPのグラフエディタ上ではノードの見た目で区別がつかない残念、、、
</div>
<h3><span id="toc6">語尾（ポストフィックス）に「_」</span></h3>
<p>語頭の場合と異なり意識的につける文化などはないので大きく問題にはなりがちではないが、区別のつかなさでは語頭にあるよりも凶悪でまったく区別がつかない。</p>
<p>語頭にある場合、スペースの幅分でかろうじてわかることもあるが、語尾は無理！<br />
混乱の危険性ではよりこちらのほうが上である。</p>
<h3><span id="toc7">大文字が続かない場合の語中の「_」</span></h3>
<p>前述の通り、 <strong>略字などで単語の区切りなのに大文字が続く場合を除いて</strong> 、語中、特に単語の区切りに<code>_</code>を入れては全く区別がつかなくなる。</p>
<h3><span id="toc8">余談：単語の区切りに「　(スペース)」</span></h3>
<p><code>_</code>ではないが、自動でスペースが入力される位置にスペースを入力するのも危険。<br />
UE4のBPのグラフ・関数・変数名にはスペースが入れられるためにこれも併せて要注意。</p>
<h2><span id="toc9">まとめ</span></h2>
<ul>
<li>BPのグラフ・関数・変数名で次は危険なので避ける
<ul>
<li>語頭（プレフィックス）に「<code>_</code>」</li>
<li>語尾（ポストフィックス）に「<code>_</code>」</li>
<li>大文字が続かない場合の語中の「<code>_</code>」</li>
<li>単語の区切りに「　(スペース)」</li>
</ul>
</li>
</ul>
<p><a href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md#bp-vars">Gamemakin UE4スタイルガイド<span class="fa fa-share-square external-icon anchor-icon"></span></a>にもこの辺は書いていないので要注意。<br />
新しく始めるプロジェクトでは是非このルールを採用してほしい。</p>
<a rel="noopener" href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md#bp-vars" title="akenatsu/ue4-style-guide" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://opengraph.githubassets.com/394c8994094e107d1f0f94bd8af5d29ed466e9a428921d7dfb2f9765567ca760/akenatsu/ue4-style-guide" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">akenatsu/ue4-style-guide</div><div class="blogcard-snippet external-blogcard-snippet">An attempt to make Unreal Engine 4 projects more consistent - akenatsu/ue4-style-guide</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=github.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">github.com</div></div></div></div></a>
]]></content:encoded>
					
					<wfw:commentRss>https://conquestarrow.com/do-not-use-underbar-in-blueprint-graph/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>BlueprintUE.comでブループリントをカンタン共有</title>
		<link>https://conquestarrow.com/how-to-use-blueprintue-com/</link>
					<comments>https://conquestarrow.com/how-to-use-blueprintue-com/#disqus_thread</comments>
		
		<dc:creator><![CDATA[Conquest Arrow]]></dc:creator>
		<pubDate>Wed, 27 Jun 2018 15:45:41 +0000</pubDate>
				<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[BlueprintUE.com]]></category>
		<category><![CDATA[Pastebin]]></category>
		<category><![CDATA[UE4]]></category>
		<category><![CDATA[サービス紹介]]></category>
		<category><![CDATA[初心者向け]]></category>
		<guid isPermaLink="false">https://conquestarrow.com/?p=256</guid>

					<description><![CDATA[BlueprintUE.comの使い方 BlueprintUE.comという、ブループリント（以下、BP）をWEB上で簡単に共有できるサイトの紹介。 PasteBin blueprints For Unreal Engi [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>BlueprintUE.comの使い方</h1>
<p><a href="https://blueprintue.com/">BlueprintUE.com<span class="fa fa-share-square external-icon anchor-icon"></span></a>という、ブループリント（以下、BP）をWEB上で簡単に共有できるサイトの紹介。</p>
<a rel="noopener" href="https://blueprintue.com/" title="PasteBin blueprints For Unreal Engine 4" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://s0.wordpress.com/mshots/v1/https%3A%2F%2Fblueprintue.com%2F?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">PasteBin blueprints For Unreal Engine 4</div><div class="blogcard-snippet external-blogcard-snippet">BlueprintUE.com is a tool for sharing, rendering and rating blueprints for Unreal Engine 4. UE4 is a game engine which use visual scripting called blueprint.</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=blueprintue.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">blueprintue.com</div></div></div></div></a>

  <div id="toc" class="toc tnt-none toc-center tnt-none border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ul class="toc-list open"></li><li><a href="#toc1" tabindex="0">BlueprintUE.comとは</a></li><li><a href="#toc2" tabindex="0">BlueprintUE.comを匿名で使う</a><ul><li><a href="#toc3" tabindex="0">1. サイトに行く</a></li><li><a href="#toc4" tabindex="0">2. 共有したいBPを選択してCtrl+Cする</a></li><li><a href="#toc5" tabindex="0">3. BlueprintUE.comのトップページに張り付ける</a></li><li><a href="#toc6" tabindex="0">4. 名前をつける（半角英数字で）</a></li><li><a href="#toc7" tabindex="0">5. 公開範囲、公開期間、UE4のバージョンを設定</a></li><li><a href="#toc8" tabindex="0">6. 投稿</a></li><li><a href="#toc9" tabindex="0">7. 共有する</a></li></ul></li><li><a href="#toc10" tabindex="0">BlueprintUE.comにユーザー登録して使う</a><ul><li><a href="#toc11" tabindex="0">1. トップページの右上の「Register」をクリック</a></li><li><a href="#toc12" tabindex="0">2. ニックネームとパスワード入力してSign UP</a></li><li><a href="#toc13" tabindex="0">3. 投稿する</a></li><li><a href="#toc14" tabindex="0">4. 個人設定を見る＆投稿一覧を見る</a></li><li><a href="#toc15" tabindex="0">5. 以前の投稿を編集する</a><ul><li><a href="#toc16" tabindex="0">5.1 追加情報を加える</a></li><li><a href="#toc17" tabindex="0">5.2 BPを更新する</a></li><li><a href="#toc18" tabindex="0">5.3 設定変更</a></li></ul></li></ul></li><li><a href="#toc19" tabindex="0">BlueprintUE.comの困ったところ</a></li></ul>
    </div>
  </div>

<h2><span id="toc1">BlueprintUE.comとは</span></h2>
<p>いわゆるPastebinサービスの一種。</p>
<blockquote><p>
  Pastebin（ペーストビン）とは、テキストデータを保存し公開することができる、ウェブアプリケーションサービスである。保存されたテキストデータごとにURLが発行されるため、そのURLを伝えることで他人に閲覧させることができる。
</p></blockquote>
<p><span class="badge badge-blue">出典</span> <a href="https://ja.wikipedia.org/wiki/Pastebin">Wikipedia<span class="fa fa-share-square external-icon anchor-icon"></span></a></p>
<p>テキストベースのスクリプト言語などでは一般的なのだが、BlueprintUE.comはバイナリデータのBPに対応したサービスだ。</p>
<p>通常BPをWEBで共有しようとすると画像が一般的だがこの場合コピペができないため、人力で目コピするしかなく共有が大変になる。一応テキストで共有する方法もあるのだが…。</p>
<a rel="noopener" href="https://qiita.com/ConquestArrow/items/edf4454c86270382a3a3" title="[UE4]BlueprintをQiitaなどのブログで共有する方法 - Qiita" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-1150d8b18a7c15795b701a55ae908f94.png?ixlib=rb-4.0.0&#038;w=1200&#038;mark=https%3A%2F%2Fqiita-user-contents.imgix.net%2F~text%3Fixlib%3Drb-4.0.0%26w%3D840%26h%3D380%26txt%3D%255BUE4%255DBlueprint%25E3%2582%2592Qiita%25E3%2581%25AA%25E3%2581%25A9%25E3%2581%25AE%25E3%2583%2596%25E3%2583%25AD%25E3%2582%25B0%25E3%2581%25A7%25E5%2585%25B1%25E6%259C%2589%25E3%2581%2599%25E3%2582%258B%25E6%2596%25B9%25E6%25B3%2595%26txt-color%3D%2523333%26txt-font%3DHiragino%2520Sans%2520W6%26txt-size%3D54%26txt-clip%3Dellipsis%26txt-align%3Dcenter%252Cmiddle%26s%3Dd25f91fe587619df6b5ed8fdc4769c2b&#038;mark-align=center%2Cmiddle&#038;blend=https%3A%2F%2Fqiita-user-contents.imgix.net%2F~text%3Fixlib%3Drb-4.0.0%26w%3D840%26h%3D500%26txt%3D%2540ConquestArrow%26txt-color%3D%2523333%26txt-font%3DHiragino%2520Sans%2520W6%26txt-size%3D45%26txt-align%3Dright%252Cbottom%26s%3D2330bf2a511b186edc001bb6968d8be9&#038;blend-align=center%2Cmiddle&#038;blend-mode=normal&#038;s=f7e1e413b79891881debbd14c5dd6246" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">[UE4]BlueprintをQiitaなどのブログで共有する方法 - Qiita</div><div class="blogcard-snippet external-blogcard-snippet">UE4の強力なビジュアルスクリプティング言語である Blueprint は、ビジュアルスクリプティングという特徴から、Qiitaやブログで一般的な「コードを張り付けて共有」、といったことがしにくい。そこでいくつか方法をまとめてみた。
...</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=qiita.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">qiita.com</div></div></div></div></a>
<p>BlueprintUE.comはほぼBPエディタ上の見た目をそのまま再現することができ、再現性が高い。またそのままコピペしてBPエディタに張り付けるだけで共有できる。しかもノードを動かして確認することもできる。</p>
<h2><span id="toc2">BlueprintUE.comを匿名で使う</span></h2>
<p>まずは一番カンタンな方法から。</p>
<h3><span id="toc3">1. サイトに行く</span></h3>
<a rel="noopener" href="https://blueprintue.com/" title="PasteBin blueprints For Unreal Engine 4" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://s0.wordpress.com/mshots/v1/https%3A%2F%2Fblueprintue.com%2F?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">PasteBin blueprints For Unreal Engine 4</div><div class="blogcard-snippet external-blogcard-snippet">BlueprintUE.com is a tool for sharing, rendering and rating blueprints for Unreal Engine 4. UE4 is a game engine which use visual scripting called blueprint.</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=blueprintue.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">blueprintue.com</div></div></div></div></a>
<h3><span id="toc4">2. 共有したいBPを選択してCtrl+Cする</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/306d0ec65a438e4cca3f5386e58882a0.png" alt="" /></p>
<h3><span id="toc5">3. BlueprintUE.comのトップページに張り付ける</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/9d701bb706bfbf19804d3e8b6a00e82a.png" alt="" /></p>
<p>黒い文字列入力欄があるのでCtrl+Vして張り付ける。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/0eadd5eeb82371264b98c6dfc93f1ba9.png" alt="" /></p>
<h3><span id="toc6">4. 名前をつける（半角英数字で）</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/95cb5f09b580aa682347abb06e6087ba.png" alt="" /></p>
<p>半角英数字で名前をつける。日本語は入力可能だが、ランダムな半角英数字の文字列に強制的に置き換えられる。</p>
<h3><span id="toc7">5. 公開範囲、公開期間、UE4のバージョンを設定</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/016c9fb82f08485e286261da159e6f24.png" alt="" /></p>
<ul>
<li><strong>A</strong> : 公開範囲
<ul>
<li>どこまで見せるかを決められる</li>
<li><code>public</code> : 全体に共有。トップメニューの下などにリストアップされる</li>
<li><code>unlisted</code> : リストアップされない。URLが知っている人のみ見られる</li>
<li><code>private</code> : 非公開。匿名ユーザーの場合は使用不可。</li>
</ul>
</li>
<li><strong>B</strong> : 公開期間
<ul>
<li>いつまで見せるかを決められる</li>
<li><code>never</code> : いつまでも残す</li>
<li><code>1 hour</code> : 1時間だけ</li>
<li><code>1 day</code> : 1日だけ</li>
<li><code>1 week</code> : 1週間だけ</li>
</ul>
</li>
<li><strong>C</strong> : UE4のバージョン
<ul>
<li>共有したいBPを作ったUE4のバージョン</li>
<li>BPもバージョンごとに少しずつ違う</li>
</ul>
</li>
</ul>
<h3><span id="toc8">6. 投稿</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/82d7593a42353da76f30604f97cf5497.png" alt="" /></p>
<p>左下の「 <strong>Create your pasetebin</strong> 」ボタンを押して投稿する。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/e0766eea4bc835d870f710948c709d73.png" alt="" /></p>
<p>投稿後はグラフをズームイン・アウトしたり、スクロールしたり、ノードを移動したりできる。部分選択も可能。</p>
<p>実際に投稿したのはこちら。</p>
<a rel="noopener" href="https://blueprintue.com/render/xd26ksrr" title="Pastebin Blueprint" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://s0.wordpress.com/mshots/v1/https%3A%2F%2Fblueprintue.com%2Frender%2Fxd26ksrr?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">Pastebin Blueprint</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=blueprintue.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">blueprintue.com</div></div></div></div></a>
<h3><span id="toc9">7. 共有する</span></h3>
<p>投稿してできたページのURLを教えることでそのままコピペ共有が可能になる。</p>
<p>また、<code>iframe</code>が埋め込めるサイトなら下のようなコードをコピーして埋め込むことができる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/7ef472834cc67900b147dbacacb53e72.png" alt="" /></p>
<pre><code class=" line-numbers">&lt;iframe src="https://blueprintue.com/render/xd26ksrr" scrolling="no"&gt;&lt;/iframe&gt;
</code></pre>
<p>実際に張り付けてみると以下のようになる。</p>
<p><iframe src="https://blueprintue.com/render/xd26ksrr" scrolling="no"></iframe></p>
<p>ブログなどでBPの説明をする際に大変便利だ。</p>
<h2><span id="toc10">BlueprintUE.comにユーザー登録して使う</span></h2>
<p>単純に公開するだけならユーザー登録も不要で簡単だ。<br />
しかし、たとえばブログなどで公開する際にあとから中身を修正したり、やっぱり公開を辞めたりといった編集をしたい。この場合はユーザー登録をしておく必要がある。</p>
<p>また、完全非公開で使いたい場合、これもユーザー登録が必要になる。</p>
<h3><span id="toc11">1. トップページの右上の「Register」をクリック</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/55a012088bf1e29f617f934d6d9cc42d.png" alt="" /></p>
<h3><span id="toc12">2. ニックネームとパスワード入力してSign UP</span></h3>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/e0f3c2d439686981a5f480ba50bb1b52.png" alt="" /></p>
<ol>
<li>nickname(ニックネーム、ユーザー名)を入力する
<ul>
<li>このサイト上でのユーザー名表示になる</li>
</ul>
</li>
<li>パスワードを入力 もしくは　SNSアカウントと連携する</li>
<li>Sign Upボタンをおして登録</li>
</ol>
<p>登録が成功しログインすると右上のメニューの「Register」「Login」が「My Profile」「Logout」に変わる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/4e8f9b463ed14a3b94d810f708984b20.png" alt="" /></p>
<h3><span id="toc13">3. 投稿する</span></h3>
<p>投稿は匿名の時と同じ。</p>
<h3><span id="toc14">4. 個人設定を見る＆投稿一覧を見る</span></h3>
<p>画面右上の「My Profile」をクリックすると個人ページに移動する。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/8576048266b77c6d0fd5be6cdff92df2.png" alt="" /></p>
<ol>
<li>個人ページのプロフィール設定
<ul>
<li>TwitterやGithubなどのアカウントへリンクを追加できる</li>
</ul>
</li>
<li>プロフィール編集ボタン
<ul>
<li>編集はこのボタンから設定可能</li>
</ul>
</li>
<li>これまでに投稿したPastebinの一覧
<ul>
<li>タイトルをクリックするとそのBPのページに飛ぶことができる</li>
</ul>
</li>
</ol>
<h3><span id="toc15">5. 以前の投稿を編集する</span></h3>
<p>ログイン状態でBPのPastebinページにアクセスすると右上に「Edit」ボタンができているのでクリックする。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/4c8b631dd43f8ccab8941a55ce3bf591.png" alt="" /></p>
<h4><span id="toc16">5.1 追加情報を加える</span></h4>
<p>編集ページの上部では追加情報を加えることができる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/9ea31982fb0b1978dea1373e908cf004.png" alt="" /></p>
<ol>
<li>タイトル名
<ul>
<li>タイトル名を変更できる。半角英数字のみ。</li>
</ul>
</li>
<li>タグ
<ul>
<li>検索などで使えるようにタグを入力できる。</li>
</ul>
</li>
<li>説明文
<ul>
<li>説明文章を追加できる。</li>
</ul>
</li>
<li>ビデオ
<ul>
<li>説明などの動画がある場合は動画URLを指定できる</li>
<li>指定できるのは　Youtube, Vimeo, Dailymotion　の動画</li>
</ul>
</li>
<li>サムネイル画像
<ul>
<li>サムネイル画像を設定できる</li>
</ul>
</li>
</ol>
<h4><span id="toc17">5.2 BPを更新する</span></h4>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/df7a7420f74b1607cf4251cfb144aecc.png" alt="" /></p>
<ol>
<li>新しいBPをここに張り付ける</li>
<li>更新理由を書き込む
<ul>
<li>必須項目。更新の理由を書き込む。簡単なver.管理の目安になる。</li>
</ul>
</li>
<li>BPを更新する</li>
</ol>
<p>更新するとBPのページの下部に履歴が残る。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/82285a99845bf0ab9dc4dc99fdce17da.png" alt="" /></p>
<h4><span id="toc18">5.3 設定変更</span></h4>
<p>同じページで設定変更もできる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/df7a7420f74b1607cf4251cfb144aecc.png" alt="" /></p>
<ol start="4">
<li>公開範囲の変更</li>
<li>UE4バージョンの変更
<ul>
<li>BPを新しいUE4バージョン用に更新した場合はここも一緒に変更する</li>
</ul>
</li>
<li>コメントの許可・不許可
<ul>
<li>交流しなくない場合はコメント不許可にするとよい</li>
</ul>
</li>
<li>設定変更</li>
</ol>
<h2><span id="toc19">BlueprintUE.comの困ったところ</span></h2>
<p>BlueprintUE.comは便利だが、ちょっとだけ困ったことがある。</p>
<ul>
<li>微妙にサイトが重い</li>
<li>微妙に再現性が低い
<ul>
<li>逆に戻るワイヤーがおかしなことになる</li>
</ul>
</li>
</ul>
<p>EpicGamesが買収してくれれば良くなりそうな…自社サービスにしてくれないかな…？</p>
]]></content:encoded>
					
					<wfw:commentRss>https://conquestarrow.com/how-to-use-blueprintue-com/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>現役GDが考えるUE4ブループリントのきれいな書き方</title>
		<link>https://conquestarrow.com/ue4-beautiful-blueprint-style/</link>
					<comments>https://conquestarrow.com/ue4-beautiful-blueprint-style/#disqus_thread</comments>
		
		<dc:creator><![CDATA[Conquest Arrow]]></dc:creator>
		<pubDate>Mon, 25 Jun 2018 17:56:43 +0000</pubDate>
				<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[Gamemakin UE4スタイルガイド]]></category>
		<category><![CDATA[UE4]]></category>
		<category><![CDATA[スタイルガイド]]></category>
		<guid isPermaLink="false">https://conquestarrow.com/?p=161</guid>

					<description><![CDATA[はじめに UE4のブループリント（以下、BP）はビジュアルスクリプティング言語1と呼ばれるグラフィカルなプログラミング言語である。 ビジュアルスクリプティング言語はテキストベースのスクリプティング言語に比べて歴史が浅く、 [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1>はじめに</h1>
<p>UE4のブループリント（以下、BP）はビジュアルスクリプティング言語<sup id="fnref-161-visualscripting"><a href="#fn-161-visualscripting" class="footnote-ref" role="doc-noteref">1</a></sup>と呼ばれるグラフィカルなプログラミング言語である。</p>
<p>ビジュアルスクリプティング言語はテキストベースのスクリプティング言語に比べて歴史が浅く、言語ごとに特性も大きく変わることなどから「こう書くべき」というノウハウがあまり溜まっていない。また、UE4のBPはゲームデザイナーやアーティストなどのノンプログラマ向けに作られた経緯もあることから、使用者が書き方・スタイルガイドへの意識やノウハウが少ない。</p>
<blockquote class="twitter-tweet" data-lang="ja">
<p lang="ja" dir="ltr"><a href="https://twitter.com/hashtag/UE4?src=hash&amp;ref_src=twsrc%5Etfw">#UE4<span class="fa fa-share-square external-icon anchor-icon"></span></a> のBlueprintはとても良いんだけど、文字通りスパゲッティ化しやすいという欠点も。スタイルフォーマッター的なツールがない ＆ 主に使うノンプログラマはノウハウ持ってない ＆ 見やすいスタイルが固まってない などが理由。</p>
<p>&mdash; K. S. (@ConquestArrow) <a href="https://twitter.com/ConquestArrow/status/856535445429116929?ref_src=twsrc%5Etfw">2017年4月24日<span class="fa fa-share-square external-icon anchor-icon"></span></a></p></blockquote>
<p><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script></p>
<p>結果以下のような問題をBPは抱えている；</p>
<ul>
<li>👎ノードをつなぐワイヤーのスパゲッティ化
<ul>
<li>見て理解するのが困難になり生産性が落ちる</li>
<li>問題のある処理を見逃しがちになる</li>
</ul>
</li>
<li>👎ワイヤー繋げなおしの手間がかかることによる処理の移植のしにくさ</li>
<li>👎一画面に処理が収まりきらず処理を理解するために画面スクロール・ズームを多用せざるを得ない
<ul>
<li>UE4のエディタは一般的にDual Displayだと足りないといわれる一因</li>
</ul>
</li>
</ul>
<p>以下紹介する書き方は上記問題を解決し、不具合を防止し生産性を上げるBPの書き方のノウハウになる。</p>
<div class="information-box">
<p>なお、以下に記載以外は原則 <span class="badge badge-blue">出典</span><br />
<a href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md">Gamemakin UE4スタイルガイド<span class="fa fa-share-square external-icon anchor-icon"></span></a> に従うのが良い。</p>
<a rel="noopener" href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md" title="akenatsu/ue4-style-guide" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://opengraph.githubassets.com/394c8994094e107d1f0f94bd8af5d29ed466e9a428921d7dfb2f9765567ca760/akenatsu/ue4-style-guide" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">akenatsu/ue4-style-guide</div><div class="blogcard-snippet external-blogcard-snippet">An attempt to make Unreal Engine 4 projects more consistent - akenatsu/ue4-style-guide</div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=github.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">github.com</div></div></div></div></a>
</div>
<div class="comment-box">もし、一度もUE4スタイルガイドを見たことがない場合は一度目を通しておくべき。分量がかなりあるのでBPの項目だけでも良い</div>

  <div id="toc" class="toc tnt-none toc-center tnt-none border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ul class="toc-list open"></li><li><a href="#toc1" tabindex="0">基本単位は実行ピンのあるノード単位でまとめ、まっすぐに並べる</a></li><li><a href="#toc2" tabindex="0">実行ピン付ノードの下に実行ピン無しのノードを積み重ねる</a><ul><li><a href="#toc3" tabindex="0">同じ基本単位のノード群は左端でそろえる</a></li><li><a href="#toc4" tabindex="0">実行ピン付ノード引数の順番とノードの積み重ね順を合わせる</a></li><li><a href="#toc5" tabindex="0">ノードの入力ピンが多い場合はノード２つ分の幅を使って並べる</a></li></ul></li><li><a href="#toc6" tabindex="0">入出力ピンから伸びるワイヤーを一本に絞る</a><ul><li><a href="#toc7" tabindex="0">基本単位内で使うものは基本単位内で完結するようにする</a></li><li><a href="#toc8" tabindex="0">複数本の実行ワイヤーは入力ピンにつなぐ前にRerouteノードでまとめる</a></li></ul></li><li><a href="#toc9" tabindex="0">原則、処理の結果は変数に入れ、他の処理単位にワイヤーで繋がない</a></li><li><a href="#toc10" tabindex="0">実行ワイヤーで繋いだ&#8221;行&#8221;はSequenceノードを用いて繋ぐ</a></li><li><a href="#toc11" tabindex="0">&#8220;行&#8221;の途中の折り返しはRerouteノードを使ってノードに被らないよう直線的に引く</a><ul><li><a href="#toc12" tabindex="0">ワイヤーが一つのノードにループして戻ってくる場合は上を通す</a></li></ul></li><li><a href="#toc13" tabindex="0">余談：BP以外での活用方法</a></li><li><a href="#toc14" tabindex="0">まとめ</a><ul><li><a href="#toc15" tabindex="0">ルールと目的まとめリスト</a></li><li><a href="#toc16" tabindex="0">ルールの方針まとめ</a></li></ul></li></ul>
    </div>
  </div>

<h2><span id="toc1">基本単位は実行ピンのあるノード単位でまとめ、まっすぐに並べる</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> 基本単位は実行ピンのあるノード単位でまとめる</div>
<p>まず、<strong>実行ピン</strong><sup id="fnref-161-execpin"><a href="#fn-161-execpin" class="footnote-ref" role="doc-noteref">2</a></sup> が入出力ピンとしてついているノードを基本の単位として考える。</p>
<p>該当するのはフロー制御ノード、イベントノード、普通の関数ノード、変数のSetノード、マクロノード、サブグラフ(折りたたみグラフ)ノード等。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/829ad4739745d44dd727e51e9d72920b.png" alt="「基本単位」の基準になる実行ピン付ノードの例" /></p>
<p>BPの処理は実行ピン同時をつなぐ <strong>実行ワイヤー</strong><sup id="fnref-161-execwire"><a href="#fn-161-execwire" class="footnote-ref" role="doc-noteref">3</a></sup> をたどって処理が行われる。実行ピンの付かないノードはその意味では「脇道」なので基本的な流れを追いかけるのはこの 基本単位<sup id="fnref-161-basicblock"><a href="#fn-161-basicblock" class="footnote-ref" role="doc-noteref">4</a></sup> を追いかければよい。</p>
<div class="primary-box"><span class="badge badge-red">ルール</span> 基本単位同士をまっすぐに並べる</div>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/20973896f11ddf9dc5f2c6e4514529a4.png" alt="実行ワイヤーをまっすぐになるっように実行ピン付ノードを並べる" /></p>
<p>次に、『Gamemakin UE4スタイルガイド』<sup id="fnref-161-styleguide"><a href="#fn-161-styleguide" class="footnote-ref" role="doc-noteref">5</a></sup> を参考に実行ピン付ノード同士を直線状に並べてゆく。</p>
<p>前述のように、BPの処理は実行ピン同時をつなぐ <strong>実行ワイヤー</strong><sup id="fnref2:161-execwire"><a href="#fn-161-execwire" class="footnote-ref" role="doc-noteref">3</a></sup> をたどって処理が行われるので、これらのノードがわかりやすく整列して並んでいないと人間の理解が困難になってゆく。仮に迷路のような並び方をしていた場合、遅かれ早かれバグの温床になってしまう。</p>
<p>実行ピン付ノードをまっすぐに並べる事で、 <strong>どこを目で追いかければよいかが一発で見分けられるようにする</strong> のが目的。<br />
また、以降に記載するルールの恩恵を得るための基本的な前提となる。</p>
<ul>
<li><span class="badge badge-blue">出典</span><span class="badge badge-grey">StyleGuide 3.4.3</span> <a href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md#343-%E7%99%BD%E3%81%84%E5%AE%9F%E8%A1%8C%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%BC%E3%82%92%E6%9C%80%E5%84%AA%E5%85%88%E3%81%AB%E3%81%99%E3%82%8B%E3%81%B9%E3%81%8D-">3.4.3 白い実行ワイヤーを最優先にするべき<span class="fa fa-share-square external-icon anchor-icon"></span></a></li>
</ul>
<h2><span id="toc2">実行ピン付ノードの下に実行ピン無しのノードを積み重ねる</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> 実行ピン付ノードの下に実行ピン無しのノードを積み重ねる</div>
<p>実行ピン付のノードには「実行ピンではない入力ピン」（プログラミング用語でいえば関数の引数に当たる）があることがある。<br />
そのピンへワイヤーを繋ぐ元のノードが実行ピン付でない場合は、実行ピン付ノードから位置を離すのではなくすぐ下に重ねるように隣接して設置する。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/67ea63ae9555281419e5913c2eeafbf0.png" alt="ノードを重ねる" /></p>
<p>実行ピン無しノードからさらに実行ピン無しノードが繋がっている場合（例：コンポーネントの変数をGetするときなど）は、さらにその下に配置して、先がなくなるまで下に重ねてゆく。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/555cf664deea5f9228adebbc5fe1adca.png" alt="実行ピンなしノードはどんどん下に重ねる" /></p>
<p>該当するのは、数値の四則演算ノードや変数のGetノード、<code>pure</code>に指定された関数(純粋関数<sup id="fnref-161-pure"><a href="#fn-161-pure" class="footnote-ref" role="doc-noteref">6</a></sup>)ノードなど。</p>
<p>実行ピン付のノードとそれ同士の繋がりを「木の幹」とすると、実行ピンの付かないノードは「木の枝葉」に当たる。<br />
<strong>木の幹と枝葉（本筋と脇道）が一目で分かるように、並べ方で区別がつくようにする</strong> のが一つ目の目的である。</p>
<p>もしこのルールに従わない場合、ワイヤーの色に差があるとはいえメインの処理の流れにみえるように配置することも可能であり、人間の理解が困難になる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/0349ddf2844f08fb1fd49ed8d416e211.png" alt="幹と枝葉の区別の付きにくい悪い例の図" /></p>
<p>二つ目の目的としては、 <strong>基本単位（実行ピン付きノード＋それから参照される実行ピン無しノード）をブロック状に一定範囲にまとめておくことで矩形選択しやすくする</strong> ことである。矩形選択しやすいということは処理の単位で動かしやすく整理しやすい、コメントノードでくくりやすい<sup id="fnref-161-commentnode"><a href="#fn-161-commentnode" class="footnote-ref" role="doc-noteref">7</a></sup>、あるいはコピーやカットなど移植がしやすいということにつながる。</p>
<p>もしこのルールに従わない場合、グラフを見やすく整理したり、リファクタリングしたり、処理を移動する際に、マウスクリックやコピーペーストなどの作業が何度も発生し、「書くのが大変」という状況になってしまう。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/0f78eaec4535e210356650f24164386e.png" alt="矩形選択しにくい悪い例の図" /></p>
<div class="comment-box">BPに対してテキストベースのほうが書くスピードが速くてマシ、と思っている人は、この方法を試してもらうと大分マシになるだろう。テキストにも書き方のコツがあるように、BPなどのヴィジュアルノードベースにも「書き方」（描き方？）のコツがある。</div>
<h3><span id="toc3">同じ基本単位のノード群は左端でそろえる</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> 同じ基本単位（実行ピン付きノード＋それから参照される実行ピン無しノード群）のノードはその左端でそろえる</div>
<p>そろえることで <strong>基本単位<sup id="fnref2:161-basicblock"><a href="#fn-161-basicblock" class="footnote-ref" role="doc-noteref">4</a></sup>を視覚的に認識しやすくする</strong> のが目的。<br />
ただし、四端どこでもよいわけではなく左端でないといけない。</p>
<p>BPのノードは大きさが可変である。UE4エディタの表示言語を切り替えたり<sup id="fnref-161-changelang"><a href="#fn-161-changelang" class="footnote-ref" role="doc-noteref">8</a></sup>、ノードの入力欄の内容の変化、ノードの対象や属するもの（例：関数ノードの属するBPクラス名）の名称の変更などによって、いくらでも大きさが変わる。</p>
<p>そのため右端でそろえたとしてもいつでもそろわなくなる可能性があり、あまり意味がない（かけた手間が無駄になる可能性が高い）。<br />
左上が原点となるので、下に重ねるノード群も同じ左端でそろえるようにすることで <strong>ノードサイズの可変にも耐えられるようにする</strong> 。</p>
<h3><span id="toc4">実行ピン付ノード引数の順番とノードの積み重ね順を合わせる</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> 引数（入力ピン）が複数あるノードの場合には、そのピンにつながる先のノード群の配置も入力ピンの順番に合わせる</div>
<p><strong>順番を合わせることで理解をしやすく</strong> し、また <strong>矩形選択しやすくする</strong> のが目的。</p>
<p>一つの基本単位に関連するノードを重ねた場合など、縦に大きくなることがしばしばある。この場合、仮に入力ピンの順番と繋がった先のノード群の並びの順番がバラバラであると、どのようにつながっているのかわかりにくい。また矩形選択も関係ないノードが混ざりこむためにしにくくなる。</p>
<h3><span id="toc5">ノードの入力ピンが多い場合はノード２つ分の幅を使って並べる</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> ノードの入力ピンが多い場合はノード２つ分の幅を使って並べる</div>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/013b100e31520f39d6645cf44679fa8c.png" alt="入力ピンが多いノードの並び方のルールの例" /></p>
<p><strong>過剰に縦に長い基本単位ができるのを防ぐ</strong> のが目的。</p>
<div class="comment-box">
<p>なお、入力ピンの先のノードが単純でなく数珠つなぎになる場合はまとめて<code>pure</code>な関数（純粋関数）ノードにまとめることを検討する。</p>
<p><img alt="pureな関数ノードに入力ピンをまとめる" src="https://conquestarrow.com/wp-content/uploads/2018/06/082adca887b0aa86015dafc082cbcc72.png" /></p>
<p>入力ピンが多くない場合でも検討してみるとよい。</p>
</div>
<h2><span id="toc6">入出力ピンから伸びるワイヤーを一本に絞る</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> 入出力ピンから伸びるワイヤーを一本に絞る</div>
<p>１つ目の目的は <strong>スパゲッティ化の防止</strong> 。</p>
<p>特にあるノードの出力ピンから複数のノードでワイヤーが繋がっている場合、まるでタコ足配線のようにあちこちにワイヤーが繋がることになる。このような場合ワイヤーがノードと重なる可能性が高く、ワイヤーを目で追うときに邪魔になって理解がしにくくなる。また、遠く離れたノードからワイヤーを伸ばすことにもなり、画面をスクロールしないと処理が追えないという読みにくさにもつながる。</p>
<div class="alert-box">BPにおいては<strong>出力ピンに複数のワイヤーをつなげることはスパゲッティ化を招く第一歩</strong>であり、避けなければならない。</div>
<p>２つ目の目的は <strong>基本単位の移植時にワイヤーの接続情報を維持する</strong> ことである。</p>
<p>具体的には次のルールに従う。</p>
<h3><span id="toc7">基本単位内で使うものは基本単位内で完結するようにする</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> 基本単位内で繋ぐノードは他から繋ぐのではなく基本単位内で完結するようにそれぞれ配置して繋ぐ</div>
<p>たとえば　基本単位A　と　基本単位B　の２つの基本単位があり、ローカル変数<code>X</code>の値を参照する共通の処理があるとする。</p>
<p>この時何も考えずに思わず、<code>Get X</code>ノードからそれぞれの基本単位内のノードにつなげたくなるが、そうしてしまうとスパゲッティ化の第一歩（２本のワイヤー <strong>だけ</strong> で済むならよいが本当に将来も２本だけなのかは <em>誰にも保障できない</em> 。気が付いたらスパゲッティ化している。）につながるうえに、矩形選択時に一つだけ<code>Get X</code>ノードが漏れるため選択しにくくなってしまう。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/vkoeor2p" scrolling="no" width="640" height="640px"></iframe></p>
<p>この例では<code>Get X</code>ノードを２つ配置し、それぞれ　基本単位A　と　基本単位B　のブロックの中に納まるように配置する。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/3rt2ffac" scrolling="no" width="640" height="640px"></iframe></p>
<p>こうすることで <strong>将来にわたってもスパゲッティ化を起こさず</strong>、<strong>矩形選択しやすさを維持できる</strong>。</p>
<h3><span id="toc8">複数本の実行ワイヤーは入力ピンにつなぐ前にRerouteノードでまとめる</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> 複数本の実行ワイヤーは入力ピンにつなぐ前にRerouteノードでまとめる</div>
<p>ワイヤーを直接一つのピンにつなぐのではなく、一旦 <code>Reroute</code>ノード<sup id="fnref-161-reroute"><a href="#fn-161-reroute" class="footnote-ref" role="doc-noteref">9</a></sup> で束ねたうえで入力ピンには１本だけ繋ぐようにする。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/gwt0my2a" scrolling="no" width="640" height="640px"></iframe></p>
<p>コピー＆ペーストやカットなどで処理を移植する際に、<code>Reroute</code>ノード込みで選択しておくことで、 <strong>ワイヤーのつながりが維持される</strong> のが目的。繋ぎなおす手間、覚えておく手間を減らし、つなぎ間違いによるケアレスミスを防止する。</p>
<p>仮に、いきなりつながったままだと移植後にワイヤーが切れてしまい、繋ぎなおす手間がかかる。また、ちゃんと覚えていられれば良いものの、つなぐ先を間違ってしまい、処理を移植したことでエンバグする恐れがある。</p>
<h2><span id="toc9">原則、処理の結果は変数に入れ、他の処理単位にワイヤーで繋がない</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> 原則、処理の結果は変数に入れ、他の処理単位にワイヤーで繋がない</div>
<p>「<a href="#toc6">基本単位内で使うものは基本単位内で完結するようにする</a>」のメリット、 <strong>スパゲッティ化防止・移植性の維持</strong> を得るために、原則処理結果は変数に確保し、直接ワイヤーで繋がないようにする。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/mob6q-8w" scrolling="no" width="640" height="640px"></iframe></p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/jkuj70kt" scrolling="no" width="640" height="640px"></iframe></p>
<div class="alert-box">以下は例外</div>
<ul>
<li><span class="badge badge-pink">例外</span>：
<ul>
<li>１回しか使用しない場合</li>
<li>実行ノード同士が隣接する</li>
</ul>
</li>
</ul>
<div class="comment-box">１回しか使用しないかどうか分からないからといってむやみやたらに変数に入れておく必要はない。１回しか使用せず、ワイヤーがスパゲッティ化する恐れがほとんどないなら問題ないだろう。</div>
<h2><span id="toc10">実行ワイヤーで繋いだ&#8221;行&#8221;はSequenceノードを用いて繋ぐ</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> 意味のある実行ピン付ノードの繋がりを&#8221;行&#8221;とみなし適宜&#8221;改行&#8221;する</div>
<p>基本単位<sup id="fnref3:161-basicblock"><a href="#fn-161-basicblock" class="footnote-ref" role="doc-noteref">4</a></sup> をつないでいくとき、処理の意味として区切りを作ることができる。これを”行”とみなす。<br />
そうとらえることで、”改行”することができる。</p>
<p>&#8220;改行&#8221;をして&#8221;行&#8221;単位で分離することで、<strong>コメントノードで分かりやすく区別できるようにする</strong> ことが目的。また　<strong>行単位での移植性も確保</strong> できる。</p>
<div class="primary-box"><span class="badge badge-red">ルール</span> &#8220;行&#8221;同士を`Sequence`ノードで繋ぐ</div>
<p>&#8220;改行&#8221;の実現方法としてはZの文字のようにワイヤーをつないでいくことができるが、行内の処理を変更するたびにつなぎなおしたり、斜めにワイヤーが張られることでノードにかぶったりとあまり好ましくならない。</p>
<p>そこで <strong><code>Sequence</code>ノード</strong><sup id="fnref-161-sequence"><a href="#fn-161-sequence" class="footnote-ref" role="doc-noteref">10</a></sup> を使って複数の&#8221;行&#8221;をつなぐことで、行末端のノードからワイヤーを排除できる。例えば変数の初期化処理をまとめた行があった場合、Z字につないでいる場合は変数が増えるたびにつなぎなおしが必要になってしまうが、<code>Sequence</code>ノードを使えば単に後ろに初期化のノードを繋いでいくだけでよくなる。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/vhdd5q-b" scrolling="no" width="640" height="640px"></iframe></p>
<p><code>Sequence</code>ノードを使った&#8221;改行&#8221;は、 <strong>行単位での移植性をより高めておく</strong> のが目的。</p>
<div class="alert-box">
<p>なお、<code>Sequence</code>ノードはいくつか注意点がある。</p>
<p><span class="badge">例</span> : Delayノードは想定の挙動にならない</p>
<a rel="noopener" href="http://monsho.blog63.fc2.com/blog-entry-159.html" title=" [UE4] Sequence&#12392;Delay&#12398;&#38306;&#20418; - &#12418;&#12435;&#12375;&#12423;&#12398;&#24035;&#31348;blog" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img src="https://s0.wordpress.com/mshots/v1/http%3A%2F%2Fmonsho.blog63.fc2.com%2Fblog-entry-159.html?w=160&#038;h=90" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="160" height="90" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title"> [UE4] Sequence&#12392;Delay&#12398;&#38306;&#20418; - &#12418;&#12435;&#12375;&#12423;&#12398;&#24035;&#31348;blog</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img src="https://www.google.com/s2/favicons?domain=monsho.blog63.fc2.com" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">monsho.blog63.fc2.com</div></div></div></div></a>
<p><span class="badge">例</span> : 途中の出力ピンのワイヤー末端で<code>Return</code>ノードが来ると<code>Sequence</code>の処理は中断される。</p>
<p>このような点に注意して使用する。</p>
</div>
<div class="comment-box">
<p>処理が莫大になって大きな画面スペースが必要になってしまった場合の解決方法として、この縦に伸びるようにするルール以外にも関数化・マクロ化・サブグラフ化という手段もある。</p>
<p>同じ処理があった場合はコピペするのではなく、関数化しよう。ほんの少しの差は引数で吸収できる。</p>
<p>同じ処理があり、かつ実行ピンが入力・出力どちらかで複数になる場合はマクロ化する。ただしBPのマクロは遅いので可能な限り使用しないようにする。</p>
<p>上記以外はサブグラフ化してまとめられるが、サブグラフを開いて読む手間というのも存在するのでそのコストは考えたほうが良い。個人的にはよほど大規模でない限り不要、大規模になってしまう場合はそもそも複数人の作業でバッティングする可能性が高いのでファイルを分けることを検討したほうが良いと思う。</p>
</div>
<div class="memo-box">関数化・マクロ化・サブグラフ化のオーバーヘッドに関してはきちんと計測をしたほうが良い。</div>
<h2><span id="toc11">&#8220;行&#8221;の途中の折り返しはRerouteノードを使ってノードに被らないよう直線的に引く</span></h2>
<div class="primary-box"><span class="badge badge-red">ルール</span> &#8220;行&#8221;の途中の折り返しはRerouteノードを使ってノードに被らないよう直線的に引く</div>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/a629c48281925c8bc8c01ce9d70c292c.png" alt="ワイヤーが被らないようにする" /></p>
<p><strong>ワイヤーがノードなどに被ることを防止する</strong> ことが目的。</p>
<p>&#8220;行&#8221;があまりにも横に伸びてしまった場合や、<code>ForEachLoopWithBreak</code>ノード等があった場合、&#8221;行&#8221;の折り返しが必要になる。何も考えずにそのままつなぐと、ノードや基本単位の中にワイヤーがかぶることで処理が追いにくくなってしまう。</p>
<h3><span id="toc12">ワイヤーが一つのノードにループして戻ってくる場合は上を通す</span></h3>
<div class="primary-box"><span class="badge badge-red">ルール</span> ワイヤーが一つのノードにループして戻ってくる場合は上を通す</div>
<p><strong>読みやすさを維持しながら更新のコストを下げる</strong> のが目的。</p>
<p><iframe loading="lazy" src="https://blueprintue.com/render/qegka__x" scrolling="no" width="640" height="640px"></iframe></p>
<p>そのままつなぐと確実にワイヤーとノードが重なって処理が追いにくくなるので<code>Reroute</code>ノードで整理する。</p>
<p>下をぐるっと通すこともできるが、以下の問題がある。</p>
<ul>
<li>これまでのルールでノードを下に重ねるようにしたためかなり大回りになってしまう</li>
<li>処理を追加した場合など繋ぎなおし・<code>Reroute</code>ノードの配置しなおしが発生する</li>
<li><code>ForEachLoopWithBreak</code>ノードの<code>Completed</code>ピンのように下に続きの処理が伸びる時に交差する</li>
</ul>
<p>上を通すことで最小限のメンテコストで見やすさを維持できる。</p>
<p><img src="https://conquestarrow.com/wp-content/uploads/2018/06/595573543d4c77a0dca173b9414a0b60.png" alt="良い例" /><br />
https://blueprintue.com/blueprint/k21kb8k4/</p>
<h2><span id="toc13">余談：BP以外での活用方法</span></h2>
<p>AnimBPのAnimノードグラフやマテリアルのノードグラフの場合、BPのグラフに比べて実行ワイヤーが少ない。その点注意すればこのルールを活用することもできる。</p>
<div class="memo-box">BP以外のUE4のノードのきれいな書き方のルールは別途考えていかないといけないだろう。</div>
<h2><span id="toc14">まとめ</span></h2>
<h3><span id="toc15">ルールと目的まとめリスト</span></h3>
<ul>
<li><span class="badge badge-red">ルール</span> 基本単位は実行ピンのあるノード単位でまとめる</li>
<li><span class="badge badge-red">ルール</span> 基本単位同士をまっすぐに並べる
<ul>
<li>どこを目で追いかければよいかが一発で見分けられるようにする</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> 実行ピン付ノードの下に実行ピン無しのノードを積み重ねる
<ol>
<li>木の幹と枝葉（本筋と脇道）が一目で分かるように、並べ方で区別がつくようにする</li>
<li>基本単位（実行ピン付きノード＋それから参照される実行ピン無しノード）をブロック状に一定範囲にまとめておくことで矩形選択しやすくする</li>
</ol>
<ul>
<li><span class="badge badge-red">ルール</span> 同じ基本単位（実行ピン付きノード＋それから参照される実行ピン無しノード群）のノードはその左端でそろえる
<ul>
<li>基本単位<sup id="fnref4:161-basicblock"><a href="#fn-161-basicblock" class="footnote-ref" role="doc-noteref">4</a></sup>を視覚的に認識しやすくする</li>
<li>ノードサイズの可変にも耐えられるようにする</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> 引数（入力ピン）が複数あるノードの場合には、そのピンにつながる先のノード群の配置も入力ピンの順番に合わせる
<ul>
<li>順番を合わせることで理解をしやすく</li>
<li>矩形選択しやすくする</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> ノードの入力ピンが多い場合はノード２つ分の幅を使って並べる
<ul>
<li>過剰に縦に長い基本単位ができるのを防ぐ</li>
</ul>
</li>
</ul>
</li>
<li>入出力ピンから伸びるワイヤーを一本に絞る
<ul>
<li>スパゲッティ化の防止</li>
<li>基本単位の移植時にワイヤーの接続情報を維持する</li>
<li><span class="badge badge-red">ルール</span> 基本単位内で繋ぐノードは他から繋ぐのではなく基本単位内で完結するようにそれぞれ配置して繋ぐ
<ul>
<li>将来にわたってもスパゲッティ化を起こさず</li>
<li>矩形選択しやすさを維持できる</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> 複数本の実行ワイヤーは入力ピンにつなぐ前にRerouteノードでまとめる
<ul>
<li>ワイヤーのつながりが維持される</li>
</ul>
</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> 原則、処理の結果は変数に入れ、他の処理単位にワイヤーで繋がない
<ul>
<li>スパゲッティ化防止・移植性の維持</li>
</ul>
</li>
<li>実行ワイヤーで繋いだ&#8221;行&#8221;はSequenceノードを用いて繋ぐ
<ul>
<li><span class="badge badge-red">ルール</span> 意味のある実行ピン付ノードの繋がりを&#8221;行&#8221;とみなし適宜&#8221;改行&#8221;する
<ul>
<li>コメントノードで分かりやすく区別できるようにする</li>
<li>行単位での移植性も確保</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> &#8220;行&#8221;同士をSequenceノードで繋ぐ
<ul>
<li>行単位での移植性をより高めておく</li>
</ul>
</li>
</ul>
</li>
<li><span class="badge badge-red">ルール</span> &#8220;行&#8221;の途中の折り返しはRetouteノードを使ってノードに被らないよう直線的に引く
<ul>
<li>ワイヤーがノードなどに被ることを防止する</li>
<li><span class="badge badge-red">ルール</span> ワイヤーが一つのノードにループして戻ってくる場合は上を通す
<ul>
<li>読みやすさを維持しながら更新のコストを下げる</li>
</ul>
</li>
</ul>
</li>
</ul>
<h3><span id="toc16">ルールの方針まとめ</span></h3>
<p>これまでのルールは大きく以下の判断基準に沿ったもの。</p>
<ol>
<li>読みやすさの維持</li>
<li>メンテコストの削減</li>
<li>選択しやすさ・移植性の確保</li>
</ol>
<p>上記に見合うこれら以外に良いルールがあればどんどん採用して「きれいな」BPを書くべし。</p>
<div class="footnotes" role="doc-endnotes">
<hr />
<ol>
<li id="fn-161-visualscripting" role="doc-endnote">
または「<a href="https://ja.wikipedia.org/wiki/%E3%83%93%E3%82%B8%E3%83%A5%E3%82%A2%E3%83%AB%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E">ヴィジュアルプログラミング言語<span class="fa fa-share-square external-icon anchor-icon"></span></a>」とも。&#160;<a href="#fnref-161-visualscripting" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-execpin" role="doc-endnote">
デフォルトで白いピン。<span class="badge badge-purple">公式</span> <a href="http://api.unrealengine.com/JPN/Engine/Blueprints/UserGuide/Nodes/#%E5%AE%9F%E8%A1%8C%E3%83%94%E3%83%B3">実行ピン<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-execpin" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-execwire" role="doc-endnote">
デフォルトで白いワイヤー。パルスが流れる。<span class="badge badge-purple">公式</span> <a href="http://api.unrealengine.com/JPN/Engine/Blueprints/UserGuide/Nodes/#%E5%AE%9F%E8%A1%8C%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%BC">実行ワイヤー<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-execwire" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a> <a href="#fnref2:161-execwire" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-basicblock" role="doc-endnote">
説明の便宜上の名前。実行ピン付ノードとそこに付随するノードをまとめたグラフ上でのノード群・並べるときの単位。&#160;<a href="#fnref-161-basicblock" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a> <a href="#fnref2:161-basicblock" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a> <a href="#fnref3:161-basicblock" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a> <a href="#fnref4:161-basicblock" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-styleguide" role="doc-endnote">
<span class="badge badge-blue">出典</span> <a href="https://github.com/akenatsu/ue4-style-guide/blob/master/README.jp.md">Gamemakin UE4スタイルガイド<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-styleguide" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-pure" role="doc-endnote">
<span class="badge badge-purple">公式</span>  <a href="http://api.unrealengine.com/JPN/Engine/Blueprints/UserGuide/Functions/#%E7%B4%94%E7%B2%8B%E9%96%A2%E6%95%B0%E3%81%A8%E9%9D%9E%E7%B4%94%E7%B2%8B%E9%96%A2%E6%95%B0">純粋関数と非純粋関数<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-pure" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-commentnode" role="doc-endnote">
コメントノードは複数のノードを選択した後に「C」キーを押すことでまとめて括って作ることができる。 <span class="badge badge-purple">公式</span> <a href="http://api.unrealengine.com/latest/JPN/Engine/Blueprints/UserGuide/CheatSheet/index.html#%E3%83%8E%E3%83%BC%E3%83%89%E3%81%AE%E3%82%A2%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3">ノードのアクション<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-commentnode" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-changelang" role="doc-endnote">
ノードの表示言語を日本語化すると検索しにくくなる、という問題もあるため英語で表示をおすすめする。&#160;<a href="#fnref-161-changelang" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-reroute" role="doc-endnote">
<span class="badge badge-purple">公式</span> <a href="http://api.unrealengine.com/JPN/Engine/Blueprints/BP_HowTo/ConnectingNodes/#%E6%8E%A5%E7%B6%9A%E3%81%AE%E5%86%8D%E3%83%AB%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0">接続の再ルーティング<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-reroute" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
<li id="fn-161-sequence" role="doc-endnote">
<span class="badge badge-purple">公式</span> <a href="http://api.unrealengine.com/latest/JPN/Engine/Blueprints/UserGuide/FlowControl/index.html#sequence">Sequence<span class="fa fa-share-square external-icon anchor-icon"></span></a>&#160;<a href="#fnref-161-sequence" class="footnote-backref" role="doc-backlink">&#8617;&#xFE0E;</a>
</li>
</ol>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://conquestarrow.com/ue4-beautiful-blueprint-style/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
