三大サンダー!

ブログです

ファレホをエアブラシで利用する際のメモ

希釈液

シンナー:プルーバー → 3:2

プライマー

希釈液:プライマー → 1:1

モデルエアー

希釈液:モデルエアー → 1:2

バーニッシュ

シンナー:バーニッシュ → 1:1

Rustの宣言的マクロ

Rustのコードを書いていて、マクロが頻出するものの理解が不足しており少しばかり気味悪さを覚えていた。
内容を調べる気力が湧いたため、少しばかりRustのマクロについて調べることにする。
本稿はRustのマクロの種類のうち宣言的マクロについての内容を調べたことのメモ書きである。


さて、Rustには宣言的マクロ手続き的マクロという大きく2つの分類のマクロが存在している。
宣言的マクロprintln!vec!などといった、suffixに!のつくものがそれである。

宣言的マクロを使うメリット

このマクロを利用することのメリットは関数では扱えない可変長引数を扱うことが可能ということ。
以下でprintln!マクロを例に見てみる。

// 引数1つでも呼び出せる
println!("hello");

// 引数2つでも呼び出せる
let greet = "hello";
println!("{} world", greet);

Rustの関数ではこのような可変長引数を扱うことが出来ないため、可変長の引数をとって何かをするような処理を行いたい場合に宣言的マクロを定義するメリットがある。

宣言的マクロの定義方法

宣言的マクロを定義するにはmacro_rules!というキーワードを利用する。
以下に、与えた引数に対してprintln!マクロを実行するマクロを記す。

macro_rules! multi_println {
    ( $( $x:expr ), * ) => {
        $(
            println!($x);
        )*
    }
}

これを呼び出すと以下のように出力される。

multi_println!("a", "b", "c");
// a
// b
// c

これはどのようにして、動作しているのだろうか?
宣言的マクロでは与えられたパラメタをmatch式のようなパターンマッチで評価し、評価されたブロック内のコードに置き換えるという動きをする。
詳しいmatchパターンはまだドキュメントを流し見しただけであり、理解が追いついていないのだが、先に記したコードでは、
( $($x:expr), * )がmatchパターンになり、
$xにはmatchした値が入り、exprはmatchする種別、*正規表現のように先のmatchパターンに0個以上matchすること、という意味となる。

matchした後のブロック内のコードは実際に展開されるコードであり、$( ... )はマッチした回数呼び出される処理となる。
先に記したコードmulti_println!("a", "b", "c");は以下の実装と同等である。

println!("a");
println!("b");
println!("c");

宣言的マクロは先に記したコードのように定義するだけでは、定義したスコープ内でしか利用することが出来ない。
スコープ外でも利用可能にするには#[macro_export]という注釈をマクロ定義の前に付ける必要がある。

// #[macro_export]を付けておけば、そのクレートの利用を宣言することでマクロも利用可能になる。
#[macro_export]
macro_rules! sample { ... }

宣言的マクロはいつ定義すればよいのか?

ドキュメントによれば、この宣言的マクロの定義方法はアップデートによってduplicateになるとされている。

macro_rules!には、いくつかの奇妙なコーナーケースがあります。 将来、Rustには別種の宣言的マクロが登場する予定です。これは、同じように働くけれども、それらのコーナーケースのうちいくらかを修正します。 そのアップデート以降、macro_rules!は事実上非推奨 (deprecated) となる予定です。

マクロ - The Rust Programming Language 日本語版 - https://doc.rust-jp.rs/book-ja/ch19-06-macros.html

ということで、新たに定義するというよりは既存実装を読む上での理解の助けにするぐらいに理解しておけばよく、自前で何か定義するということはあまり考えなくても良いのだろう。


ということで、宣言的マクロについてざっくりと理解を深めることが出来た。 また余裕が出た機会には手続き的マクロについても理解を深めることができればと思う。

ガンプラ制作 - HGBD ユーラヴェンガンダム + フェイクν

コアガンダムⅡが欲しくて購入したユーラヴェンガンダムだが、フェイクνユニットと合わせてみたら想像以上にプロポーションが良いことに気がついた。
パチ組みで作って適当に遊ぶつもりだったのだが先述した感想から、塗装して仕上げたいという感情に昇華された結果の作品だ。

コアガンダムⅡの部分には塗装などはせずに、装甲や武器に対して塗装とドライデカールで組み上げてみたがなかなかいい見栄えになったと思う。
装甲部分を外してコアガンダムⅡでも遊ぶつもりだったのだが胸部装甲を外そうとすると塗装が剥がれてしまうことに気が付き、コアガンダムⅡは永久に装甲の中に閉じ込めることになってしまったのは残念だった。

ユーラヴェンガンダム購入時点ではフェイクνウェポンが品切れだったが運良く7月末の再販という制作中の丁度良いタイミングで来てくれたことでフィンファンネルを装備することも出来た。
ユーラヴェンガンダム自体も先月の再販までは品薄の状態が続いていた商品だったようで今回丁度よいタイミングでメーカー希少小売価格で購入出来たことは幸運だっただろう。


ビームシュートライフルを構えて。
余ったクリアパーツでビーム射出エフェクトも加えてみた。 f:id:tanaka-hisasi:20210730235255j:plain

正面から。
フェイクνユニットに付属するフェイスパーツは1つ目用に整形されていたが、ガンダムフェイスにしたかったため1つ目用に盛り上がっていた部分をヤスリで削り落とし、その上に余っていたアイシールを貼ってガンダムフェイスを再現している。 f:id:tanaka-hisasi:20210730235330j:plain

背面から。
フィンファンネルが重くて自立が安定しなくなる。
とはいえ、ユーラヴェンガンダムのキットには台座が付属しているので自立しなくとも台座に乗せればよく、大きな問題は無いだろう。 f:id:tanaka-hisasi:20210730235354j:plain

ビームサーベルを持たせて。
コアガンダムが付属するキットは長い刃と短い刃のビームサーベルが付属しており、リアルに二刀流(守りの刀{短い刀}と攻めの刀{長い刀})を表現出来るのは嬉しい。 f:id:tanaka-hisasi:20210730235217j:plain

ビームシュートライフルとセンサーユニットはくっつけることが出来るがあまり見栄えが良くないのであえて別々に装着している。 f:id:tanaka-hisasi:20210730235428j:plain

アクションベース5があると、機体と射出したフィンファンネルを合わせて飾ることが出来る。 f:id:tanaka-hisasi:20210730235507j:plain


今回の作品は個人的にはよく出来たと思い、ガンプラの投稿サイトにも投稿してみた。
投稿先に上がるような作品と自分の作品を比較するとどうしても拙い部分が目立つのだが、このあたりも向上するためのモチベーションに変えていけたら良いと思う。 gumpla.jp

ガンプラ制作 - HGBD マーズフォーガンダム+マーズフォーウェポンズ

最近、ビルドダイバーズ Re:Riseのプラモデルを集めている。
このシリーズのキットではコアドッキングシステムという、パーツを付け替えて様々な機体を表現することが出来る仕組みがあるのだが、これがなかなかおもしろい。

付け替えるためのパーツは別売りのキットとして様々な種類が販売されており、このシステムで存分に遊ぶためにはこれらのパーツを買う必要があり財布にはなかなかダメージが大きいのだがホビーとして考えると非常に面白い仕組みだ。

今回は、コアドッキングシステムの核となる「コアガンダム」が付属するキットのマーズフォーガンダムを制作した。
また、このマーズフォーガンダムが利用している武器は別売りとなっておりそれも合わせて制作している。


キットはコアガンダムとその装甲パーツが含まれる。 f:id:tanaka-hisasi:20210723011247j:plain

コアガンダムはかなり小柄なサイズ。 f:id:tanaka-hisasi:20210723010648j:plain

装甲パーツはサポートマシンとして組み立てることが可能。 f:id:tanaka-hisasi:20210723010704j:plain

装甲をコアガンダムに装着すると、一般的な1/144サイズの大きさになる。
マーズフォーガンダムのキットのみだと付属する武器がビームサーベルと腕に装着するクローのみと少しさびしい。 f:id:tanaka-hisasi:20210723010618j:plain f:id:tanaka-hisasi:20210723010545j:plain

こちらは別売りの武器セット、素組みだと色はダークグレー一色で寂しいため適当に色を付けた。 f:id:tanaka-hisasi:20210723010630j:plain

武器をマウントするためのパーツは二種類付属している。 f:id:tanaka-hisasi:20210723010607j:plain f:id:tanaka-hisasi:20210723010558j:plain

サポートマシンには武器を取り付けることが可能。 f:id:tanaka-hisasi:20210723010714j:plain

斧を持たせる、この斧は刀身が赤熱化する仕組みらしいので、そのような色で塗ってみるのもいいかもしれない。 f:id:tanaka-hisasi:20210723010532j:plain

対で付属する剣、この剣は繋げて1つの武器にすることが出来る。
また、片方の剣にはビームサーベル刃を取り付けることも可能。 f:id:tanaka-hisasi:20210723010514j:plain

もう一種類の剣、この剣は斧と合体させて一つの武器として扱うことが出来る。

この剣も斧同様に刀身が赤熱化するという設定らしい。
ガンダムマーカーには蛍光オレンジのような色は無いので、蛍光ピンクで発熱を表現してみた。
ビームが展開しているような雰囲気だが、これはなかなか気に入っている。 f:id:tanaka-hisasi:20210723010439j:plain

それぞれの武器を合体させて両手持ち、かなりボリュームのある雰囲気が味わえる。 f:id:tanaka-hisasi:20210723010449j:plain

ガンプラ制作 - HGUC Ex-8

f:id:tanaka-hisasi:20210709124947j:plain

最近やたらとガンプラを作っているが、細かい作業を継続して続けられる程度に集中力が保てている状況だと考えることもできるので大変好ましいことだ。

さて、今回はHGUCのEz-8を作成した。
この機体は作中、森林地帯の局地戦で運用されており、イメージとして土埃や泥汚れがついているものを持っている。
今回はその汚れを表現するために茶色で機体の装甲全体にウォッシング加工を施した。

このキットは仕様通りなのか装甲の厚さがうまく表現されており、その装甲の上に汚れを上手く乗ったことで雰囲気がとても良く出せたと思う。
自分で言うのもなんだが良い出来だ。


08小隊用のドライデカールが付属しており、シールドに貼ることで雰囲気がさらに良くなる。 f:id:tanaka-hisasi:20210709125034j:plain

本キットにはパラシュートパックが付属しているが、展開ギミックがなく背負うだけではあまり格好いいものではないという感想を持っていたため制作していない。
イデアが浮かんだら展開ギミック含めて作ってみるのも楽しいだろう。 f:id:tanaka-hisasi:20210709125057j:plain

ビームサーベル刃は他のキット等と比べると短くなっているが、このぐらいの長さが個人的には好ましい。 f:id:tanaka-hisasi:20210709125123j:plain

作中、ビームライフルを持つシーンは無かったように記憶しているがビームライフルも付属している。 f:id:tanaka-hisasi:20210709125150j:plain

08小隊といったら膝立ちからの射撃ポーズだろう、難なくポーズを組めるのはよくわかっているキットだと言える。 f:id:tanaka-hisasi:20210709125216j:plain

読書感想 - DX実行戦略 デジタルで稼ぐ組織をつくる

コロナ下の中、多くのビジネスではDXが必要だと叫ばれているものの、DXとは何なのか?という問うと各人抽象的な捉え方をしているようであり、
また、自分もその一人であった。

ビジネスにおいて、抽象的な理解のままDX推進などと口にしても何の説得力もないだろう。
少なくとも自分の口で話すことにはある程度の背景理解を含んだものにしておきたい。

そういった理由から「DX実行戦略 デジタルで稼ぐ組織をつくる」という書籍を選択して読んでみた。

以下はこの書籍を読んだ中での自分の理解を記していく。

DXとはなにか?

DXとはデジタルを利用して、既存の市場を破壊し新しい価値を想像することである。 或いは、そういった価値を破壊しにくる驚異からデジタルを利用した組織を構築し、防衛することである。

なんとも抽象的ではあるが、要点は以下になるだろうか。

  • デジタルを利用すること
  • 既存価値の破壊と新たな価値の想像
  • 或いは既存価値をアップデートすることによる破壊に対する防衛

これらの要素は書籍中では以下のような言葉で表現されている、DXを語る場面ではこのような単語が頻出するので覚えておくと良いだろう。

用語 意味
ディスラプター 既存価値を破壊し、新しい価値を市場に作り出そうとするもの
デジタルネイティブ 生まれながらのデジタル企業、ディスラプターと呼ばれる企業の多くはデジタルネイティブである
サイロ化 縦割りのこと、書籍中では縦割り組織構造のことをサイロ化した組織として表現されている

デジタルを利用するとはどういうことか?

さて、DXではデジタル技術を利用するということは誰もが何となく感じ取れていることだろうと思う。
しかし具体的にデジタルを利用すると、なぜDXなのか?という点を理解するのは難しいだろう。

書籍の中では「デジタル技術を利用するだけでは、それはDXとは言わずただのデジタル化だ」と書かれている。

では何をすればDXになるのだろうか?

書籍にかかれていることを要約すると以下のような理解になる。

サイロ化した組織の壁をデジタル技術を利用して取り払い、組織ないの情報を横断的に活用可能にし、また、各組織内部署の結びつきを縦割り構造から蜘蛛の巣のようなネットワーク構造にすること。

こう書いてみるとデジタル技術というのは、組織構造を変えるための要素の1つでしかないことになる。
これは書籍のスタンスでもあるのだが、DXを行うためにはまずは組織構造を見直そうという主張であるため、ディスラプターになる(或いはそれから市場を守る)ためには、組織構造を見直すことから始めるのがDXだということとなろうか。

※書籍内ではDXのことをDBX(Digital Business Transformation)と表現している


書籍では上記を踏まえた上で、組織内の仕事を細分化しながらどういったことをすればいいのか?という点が記されている。
具体的な内容は参考程度なのだろうが、重要なのは書籍内で何度も書かれる「組織のオーケストレーション」ということであり、組織構造をネットワーク側にして動かしていくことなのだろう。

これがDXであるなら、トップダウンのもとにDXを推進するのが好ましい。
実際のビジネスではボトムアップ或いは、全くの孤立したチームからDX推進が始まるケースも多くあるだろうし、
そういった観点で見た場合にどういう戦略を取るべきか?という点についてはヒントの1つとして捉えると良いのかと思う。

なお、この書籍はシリコンバレー流DXをベースに書かれていると思われるが、日本国内で言われるDXはまた背景が異なっているためこの書籍でDXの全てが分かるものではない。
あくまでも、DXを理解するための一助として書籍で得た知識を利用していけると良い。

ガンプラ制作 - EGガンダム

先月、待望のEGガンダムが一般店舗でも販売が開始された。
昨今のガンプラ価格と比較してEG版は安価に購入可能であるため、制作の幅を広げる練習にはもってこいだろう。

普段は墨入れ+部分塗装程度で制作しているのだが、今回は全塗装しつつG3カラーで制作することにした。

塗装にはガンダムマーカー+ガンダムマーカーエアブラシシステムを利用している。
(正直、全塗装には力不足感がいなめないのだが後片付けが不要であるというのは大きなメリットなので今の所はこれ以外の選択は考えていない)

塗装にガンダムマーカーを利用すると調色が出来ないため、G3ガンダムの淡いグレーを表現することが出来ない。
これを補うため、白で塗装後に装甲の輪郭にグレーのウォッシング加工を加えることで何処と無く淡いグレーに見えるようにしてみた。
(実際に淡いグレーになっているかというと…、そうは見えないのだが)

今回、初めて全塗装を試みたのだが、以下の点で失敗してしまった。

  • グレーで塗装する箇所に「ガンダムグレー」を利用したのだが、これは色のまとまりが悪く別のグレー色を検討したほうが良かったかもしれない。
  • 首まわりの塗装を厚く塗りすぎると、胸部装甲にはめ込む際に塗装面が干渉してしまいせっかく塗った塗装が剥げてしまった。

また、アンテナ処理をする際に誤って先端を折ってしまったのも失敗の1つだ。
EGでなければパーツを注文したところだが、安いしいいかと思えるのはEGの魅力と言ってもいいのかもしれない。

幾つか失敗してしまったものの、出来栄えは気に入っており全塗装に挑戦してみた甲斐があったと思っている。
今回はG3カラーで制作したが、あと2つプロトタイプカラーとノーマルカラーも揃えて並べてみたいものだ、時間が許すなら挑戦してみたい。


武器付き版は箱に入っていた。 f:id:tanaka-hisasi:20210609204031j:plain

シールドはバックパックにセット出来る。 f:id:tanaka-hisasi:20210609204111j:plain

シールドを構えて… f:id:tanaka-hisasi:20210609204135j:plain

HGUCガンダムに付属しているビームサーベル刃がセット出来る。 f:id:tanaka-hisasi:20210609204200j:plain

シールドを背中に背負ってライフルを構える、ハンドグリップ?は可動しないため両手構えは出来ない。 f:id:tanaka-hisasi:20210609204223j:plain