キノコの自省録

日々適当クリエイト

ラフから線画までのイラスト制作過程

なんとなくラフ(構図のアタリ)からラフ2、ラフ3まで残して描いたので、線画までの途中経過をちょっと紹介。

今回のイラストはこちら。

f:id:kinokorori:20200505222054j:plain
ストリートスタイル

その1

「唯と智絵里でKMNZっぽいデュオストリート系」というイメージで、わしゃわしゃ構図作成。片方がサブにならないように、どういう感じだとこういい感じになるかな?など考えつつ。ポーズ集とか、写真とかは全然漁ってないです。適当。(漁ってたらこうはならない)

f:id:kinokorori:20200505222209p:plain
構図

その2

線の掘り起こし。智絵里はちょっとイキッた表情にしようとこの時は考えていたり。寄っかかって腰に手を当てるとかそんな感じ。唯の方はこのラフの時からほぼ変わってないです。

f:id:kinokorori:20200505222728p:plain
ラフ1

その3

ザ・ラフ(透明度を落として保存してしまったので、薄いです)。まあこんな感じかな~と。唯はもうほぼ変化なし。智絵里は納得がいかず、線画後もセルフリテイク繰り返してしまい、途中パニックを起こしました。

f:id:kinokorori:20200505222936p:plain
ラフ2

その4

線画。智絵里と唯の重複部分は塗りで消しているため、被ってます。レイヤーは基本的に髪、眼、その他。後は唯のネックレス、智絵里の奥のドリルツインテとリボンも別の線画レイヤーで描いてます。智絵里はかなりラフから修正を入れたため、ちょっと時間がかかってしまいました。ちなみに、逆ピースですが、ラフ2の段階で右手を左手にしてしまっていて、これも修正……。描いててなんか手がおかしい気がするなーと思ったら。

唯は「横顔横目ってこれでいいんだっけ?」と、そこだけやや試行錯誤。

f:id:kinokorori:20200505223503p:plain
線画

塗り

今回は基本塗りした後、「どうやって仕上げたもんか」と悩んで、最終的にパンク感が出るようにコントラスト高めに持っていきました。

ウイルス対策のために殺菌灯(UV-C)はどのくらい照射すれば良いのか

前回に引き続き殺菌灯のお話。少々前回の焼き直し感があります。

kinokorori.hatenablog.com

殺菌灯スゴイです。カビがメリメリ剥げていきます。掃除が楽しい。お風呂がとてもピカピカになって感動しています。ただ、殺菌灯照射後のカビのコロニーから凄まじい臭いがします。。。

防カビ対策にもなるので、これ上手く使えば家事が楽になるのではないかと思います。

まず注意

詳しくは前回書きましたが、肌に照射すると皮膚がんに、眼で見ると失明の危険があります。この点については細心の注意を払ってください。 「気軽にウィルス対策できます」といった感じで売っている商品が見受けられますが、一定の危険を伴うことを忘れずに。

あと、植物にも注意です。植物も火傷を起こします。植物に使うならUV-Aにしましょう。当然ペットにも注意。

殺菌灯の強さ

Amazonなどで売ってる殺菌灯は、2Wとか6Wとか書いていますが、これはどれくらいの威力なのでしょうか。

前回紹介しましたが、GL-20殺菌灯は8Wの強さで、公式の照射強度は1mの距離で77μW/cm2です。2Wだと、単純に4分の1なので19.25μW/cm2となります。

2m1m50cm
8W19.2577308
6W14.3157.25229
4W9.6338.5154
2W4.8119.2577

※単位はμW/cm2

Amazonで売ってる以下の商品は3Wとはっきり書いています。1mの距離だと約30μW/cm2くらいでしょう。


BRIGHTINWD UV-Cランプ 紫外線除菌器 UVライト 殺菌ライト コンパクト 小型便利 99%細菌消滅 梅雨や雪の日や曇り日に適用

下の商品の場合、5cmくらいで照射強度が2500μW/cm2という曖昧な書き方をしています。距離が50cm以内の場合、強度と距離は反比例の関係になるので、この商品を距離50cmで使用した場合は250μW/cm2(距離10倍)くらいではないかと思いますので、6W相当かな、という感じがします。


マクロス 99.9%除菌 広範囲 ロングバー 除菌ライト マルチクリア 長さ45cm MEH-66

それにしてもこれらのハンディタイプは怖いですね。「下向き時だけ照射するので眼に対して安全」ってなってますが、紫外線は反射・散乱するので、注意した方がいいと思います。少なくとも裸眼での使用は避けた方が良いでしょう。

コロナウイルスを不活化させる時間

新型コロナウイルス(SARS-CoV-2)の文献はないのですが、SARSなどのコロナウイルス属に対して、D90(90%不活化)となる時間を計測した文献がありました。

https://www.researchgate.net/publication/339887436_2020_COVID-19_Coronavirus_Ultraviolet_Susceptibility

種類や株によってかなりばらつきがあるのですが、大体7~241J/m2、平均67J/m2で90%不活化するようです。67J/m2=6.7mJ/cm2です。同じエンベロープウイルスのインフルエンザが6.6mJ/cm2で99.9%不活化できることを考えると、コロナウイルスの方がややしぶといようです。

で、この数字はなんのこっちゃというところだと思いますが、例えば100μW/cm2を10秒照射すると、100×10=1000μJ/cm2=1mJ/cm2になります。なので、6.7mJ/cm2の場合、100μW/cm2の強さでは67秒照射する必要があります。

もう少し具体的な例を挙げると、4Wの殺菌灯を使って殺菌箱を作り、台と殺菌灯との距離が25cmだとした場合を考えましょう。4Wの50cmでの照射強度は154μW/cm2なので、25cmの場合は308μW/cm2程度と推測されます。コロナウイルスの中で一番耐性が高いD90の数値24.1mJ/cm2の量を照射する場合、24.1÷0.308≒79秒が照射時間となります。ただし、この24.1mJ/cm2は試験管の規準です。

N95マスクの再利用基準では、1J/cm2を推奨しています。308μW/cm2の場合、1000/0.308=3247秒(54分ちょっと)です。

http://jrgoicp.umin.ac.jp/ppewg/n95decon/UVC_N95DECONJVer.1_JP.pdf

前回も書きましたが、紫外線は表面殺菌・空間殺菌は得意ですが、容易に反射・吸収されてしまうので、表面材質に大きく影響されます。けばけばした繊維素材の場合、ウイルスが繊維の中に入り込んでしまうため、思ったほど殺菌効果が得られないでしょう。実力的には79秒の照射で十分なはずなのに、PPEの再利用基準で3247秒まで延びたのは、その辺りが理由と思われます。

また、当然裏側には届きませんので、挟み込んで照射、反射板(アルミホイルとか)の設置やひっくり返すなどの工夫が必要です。

少し気になる文献が

2004年の北大の文献です。SARSに対して、薬剤や高温(56℃), 154μW/cm2の紫外線を照射して、TCID50(ウイルス力価)の数値を観察したようです。

https://eprints.lib.hokudai.ac.jp/dspace/bitstream/2115/10516/1/52%283%29_105-112.pdf

紫外線については、15分で3.8 x 107から180TCID50/mlまでウイルス力価が落ちたようです。オリジナルから0.00047%に減少、つまり99.999%不活化できたと言えると思いますが、そこから60分照射しても、18.8TCID50/mlにしか落ちず、完全に不活化できなかったようです。この18.8TCID50というのは、ウイルスの培養液を18.8倍まで希釈しても、細胞の50%まで感染する力を持っているという意味です。

ちなみに56℃のお湯が結構凄くて、5分で2.6 x 107から40TCID50/ml, 60分で完全に消滅したようです。56℃を60分保つのはなかなか困難ですが、5分でもそれなりに効果があるようなので、お湯で洗濯というのはそれほど悪くない行動だと思います。ちなみに自分はダニ対策と、石鹸洗剤の泡立ちのため、毎回60℃のお湯で洗濯しています。

温度と言えば、もう一つ。これもSARSですが、冷温(4℃以下)の場合、感染価がほとんど落ちないようです。(勝手に増殖する)菌は、冷温下では活動が少なくなり、結果的に増殖が抑えられますが、生き物でないウイルスの場合は、逆に感染力が保存されてしまい、感染防止の側面では悪い方向に働くようです。

http://journal.kansensho.or.jp/Disp?pdf=0780110991.pdf

2020/04/22追記

さらに気になる記事が。60℃ - 60分でもウイルスが生存(?)というニュースです。

新型コロナウイルス、60°Cで 1時間加熱しても生存…夏にも高い感染力が予想(WoW!Korea) - Yahoo!ニュース

元となる論文はBiorxivに掲載されているというので、ちょっと覗いてみました。

Evaluation of heating and chemical protocols for inactivating SARS-CoV-2 | bioRxiv

該当すると思われる部分はここですね。

Only the 92°C-15min protocol was able to inactivate totally the virus (>6 Log10 decrease), whereas the two other protocols resulted in a clear drop of infectivity (5 Log10 reduction) but with remaining infectivity equal or lower than 10 TCID50/ml (Table 4). These results were consistent with previous studies on SARS-CoV and MERS-CoV (11,12). There was no difference between clean or dirty conditions.

かいつまんで説明すると、

  • 92℃ - 15分の場合、ウイルスは完全に不活化できた
  • 60℃ - 60分, 56℃ - 30分の場合、5log10 (たぶん5桁落ちたという意味)以下にはなったが、10TCID50/mlを下回る程度には感染力が残った
  • これらの結果はSARSやMERSでの先行研究と一致した
  • これは綺麗な状態と汚染状態(ウシ血清アルブミン追加)とで差はなかった

ということで、同じβコロナウイルス属のSARSやMERSと同等の熱耐性ですよ、ということです。 なので、Yahooに載った記事はちょっと煽り過ぎです。

PPEの再利用

個人防護具(PPE)の再利用に関する資料では、(1)加湿熱、(2)紫外線(UVーC)、(3)過酸化水素蒸気が推奨されていますが、2つ組み合わせるのが基準として良いのではないかと書かれています。

職業感染制御研究会ホームページ・COVID-19・N95/DS2マスク除染と再利用

https://www.medrxiv.org/content/10.1101/2020.04.02.20051409v1.full.pdf

本当にガチで殺菌するなら、80℃オーブン30分 + 紫外線照射1時間になります。結構大変ですね。。。一般家庭ならそこまでしなくても良いとは思いますが。

PPEではなく、身の回りの物などの場合、アルコール、次亜塩素酸ナトリウム水溶液などの選択肢も増えます。もう一つ、普通の洗剤(界面活性剤)でもエンベロープ持ちのウイルスに効果がありますので、ジョイを薄めたスプレーというのが割と使い勝手とコストパフォーマンスが良かったりします。消毒は適材適所で考えるのが良いと思います。

家庭用洗剤で作る、新型コロナウイルス向け消毒液 - Togetter

国産の紫外線(UV-C)殺菌灯を調達してみた

昨今の新型コロナウィルス騒動も相俟って、ちょっと自宅の環境を見直しています。 元々気にはなっていたんですが、自分の住まいは大部屋以外窓がないんですね。 なので大部屋以外は昼でも暗く、電気が必須。換気はそこそこですが、やっぱり窓には叶わないというレベルです。 本当に換気したい場合は、大部屋の窓とドアを開けるという、なんとも微妙な感じになります。

そもそも住環境の消毒って難しいですよね。次亜塩素酸ナトリウム消毒液(ハイター)を撒いたらむしろ人体への打撃が大きい、アルコールを撒いたら引火の危険があります。 ということで、太陽の力、紫外線殺菌灯の国産品を置いてみることにしました。結果、大体4000円で用意できました。

Amazonで紫外線殺菌灯は売ってるものの……

紫外線で検索すると、まあ結構ヒットはします。ヒットはしますが、大抵は、

  • 高すぎ
  • 小さすぎ
  • 中国

のどれかです。検索すればわかると思います。 怪しげな中国製も普段ならそんなに気にしないんですが、今は荷物がいつ届くのかさっぱりわからない状況のため、しばらく避けたいところ。

殺菌ランプも交換が効くのか不明で、寿命が来たら機器ごと捨てるということになりそうなのもマイナス。

国産の殺菌灯

ただ、Amazon見てくと、ちゃんとあるんですよね。国産の殺菌灯が。


東芝 直管蛍光灯 (殺菌ランプ) 20W形 GL20

これは東芝製ですが、PanasonicNEC、それから三共電気も出してます。そして、見ての通り普通の直管蛍光管です。値段は20W式で店頭価格2000円前後(送料込み)。

ちなみにGL20という型番ですが、これはGLが殺菌灯を表し、20が20W型という意味です。10W式のGL10や15W式のGL15辺りも入手しやすいです。蛍光灯の型番についてはこちらのサイトが詳しいです。

www.lamp-catalog.com

GL20のカタログスペックはこちら。

商品詳細:GL-20 | 商品情報検索(商品データベース) | 東芝ライテック(株)

発売日が1977年9月16日です。40年以上前からあるんですね。このGL20はスターター式で、点灯管FG-1E, FG-1Pを必要とします。つまり20W式の点灯管型照明器具を探せばよいわけです。

蛍光灯の照明器具がほとんどない

困ったことに、ここ1, 2年で、昔ながらの蛍光灯器具が軒並み姿を消しています。全然売ってないです。びっくりするくらい。全部LEDに置き換わっています。端子台と接続する形式のものは10Wに限れば多少ありますが、コンセント式は10Wでも全然ありません。

色々探し回った結果、適合する照明器具はあるにはありました。BL-20というブラックライト用照明です。


ヤザワ ブラックライト20W(50Hz) BL20

この照明器具の形は廉価モノでよく見かける気がします。前は単体で売ってたはずですが……。とりあえずグロースターター式の20W、点灯管がFG-1Eなので、動くには動くはず、ということで購入しました。 (実はヨドバシで見かけたので、ヨドバシで買いました。)

買ってから気づいたのですが、これ蛍光灯の取り付け面が紫外線を無駄にしない反射板になっています。グッドです。

なお、50Hz(東日本)用と60Hz用(西日本用)が別売となっています。60Hz用の型番はBL2060です。

設置と点火

ちょうどいい感じにダイソーで買った金網があったので、仮止めして撮影用にセットアップ。点火。使用後に入室すると、どこも熱くないのに焼け焦げたような臭いがします。

f:id:kinokorori:20200328173541j:plain
動作中の殺菌灯

ちなみに直接撮影しているのではなく、iPhoneのタイマー撮影です。

焼け焦げた臭い

おそらくなんですが、雑菌や真菌が焦げた臭いではないかと思います。というのも、雑菌が多そうな環境や対象物で強く臭いが残ります。 お風呂場で使用すると、使用して10秒もしないうちに焦げ臭くなります

玄関で使用したところ、1時間経ってもそれほど臭いは残りませんでした。これはおそらくそういうことではないかと思います。

注意

危険性については、アーク溶接とほぼ同等と捉えるとわかりやすいかと思います。使用中の殺菌灯を絶対見てはいけません。少なくとも裸眼は危険です。失明の危険があります。また、殺菌中の部屋に長時間いてはいけません(短時間でも避けるべき)。

f:id:kinokorori:20200402230703p:plain
こんな防護をしないと危険

JIS Z 8812の規準では、6.0mJ/cm2が皮膚の許容限界時間です。これは、約1mの距離でGL-20殺菌灯を点灯させた場合、約1分少々です(100μW/cm2が60秒)。5mの距離でも30分程度です。つまり、ライトの途中に遮蔽物がない位置は、確実に健康被害の危険があると考えてください。おそらく皮膚の前に眼がやられます。日焼けと同じ要領のため、紫外線ライトを浴びざるを得ない場合、皮膚や目を露出させないことが肝心です。

https://www.iwasaki.co.jp/optics/chishiki/uv/09.html:title:w:200

基本的な使い方としては、就寝中にベッドルームから離れた部屋に使用するとか、外出中に利用するとか工夫して、殺菌中にライトを浴びないように使用するべきです。遮蔽するか、部屋から離れてください。また、タイマーコンセントを用いて、1時間後に止めるなどするともっと良いと思います。自分はそうしています。

詳しい使用上の注意はこれが一番丁寧だと思います。

https://www2.panasonic.biz/ls/lighting/plam/knowledge/pdf/0320.pdf

Amazonで売っている殺菌灯などでは、3m以上近づいた場合に電源Offになるという機能がついているものがありますが、3m以上離れていれば安全という意味ではありません。

無機物

紙や樹脂は紫外線により多少なりとも劣化を招きます。主な変化は表面の変色、強度の低下です。この性質は太陽光でも同じです。また、光ディスクはデータが飛ぶ可能性があるので、十分注意してください。

故障と修理、メンテナンス

照明器具の構造に関しては滅茶苦茶単純です。G13の口金、20W用蛍光灯安定器、点灯管に線が繋がってるだけです。

f:id:kinokorori:20200328170326j:plain
蛍光灯照明器具の中身

蛍光灯器具は売ってなくても、これらの部品はバラで手に入ります。なので、壊れても気合でなんとかなります。

蛍光灯 安定器 20W用器 激安特価販売:アカリセンター

というか、これ見ると照明器具の自作は滅茶苦茶簡単です。殺菌箱とか余裕で作れそうです。

蛍光管と反射板は綺麗に拭いておきましょう。効果が落ちます。殺菌ランプの耐用時間は6000hです。それ以上は出力が80%以下に低下します。青い光が出ていてもダメです(青い光は動作確認用の可視光です。念のため)。ただ、1日4h使用したとすると、1500日持ちます。耐用年数4年。

紫外線の四方山話

ここからは紫外線の小ネタというか豆知識的な。

レジン硬化用の紫外線では殺菌できないのか?

紫外線というのは波長の長さによってABCが付けられています。一口に紫外線といっても全然効果が違いますので、波長は良く見ましょう。

レジン硬化に用いられる紫外線はUV-A(315 - 400nm)で、日焼けなどはするものの、比較的安全と言われている紫外線です。ブラックライトもUV-Aです。 地表に届く紫外線は9割方UV-Aです。

UV-Aの殺菌効果ですが、あるにはありますが、そんなに強くはないようです。なので、殺菌効果はあまり期待できません。 そもそもUV-Aの殺菌力に関する文献があまりないです。インフルエンザウィルスには効果があるよ、という徳島大学の文献程度しか見当たりません。植物は良く育つようです。

UV-B(280 - 315nm)はシミ・そばかす、皮膚がんの原因になる一方、ビタミンDの生成に用いられるという、人体にとってはプラスもマイナスもある波長です。植物にとっても、成長を阻害する一方で病気予防やプラスの生理作用があります。 UV-Aよりも殺菌効果が高く、自然太陽光の殺菌効果は、おそらくUV-Bの寄与が大きいのではないかと思います。 ちなみに4月から9月にかけて降り注ぐUV-Bの照射量が増えますので、夏に感染症が少なくなるというのはUV-Bの影響も大きいのではないでしょうか。

UV-C(100 - 280nm)は最も殺菌効果が高く、殺菌灯といえばUV-Cです。GL-xx蛍光管もUV-Cの紫外線が出ています。殺菌効果はUV-Aの1600倍と、かなり強力な紫外線ですが、UV-Cは全てオゾン層に吸収され、地表には届いていません。 (UV-AもUV-Bもオゾン層に吸収されますが、地表にはUV-Aが5%くらい、UV-Bが0.5%くらい届きます。)

フロンガスの使用によるオゾン層の破壊が一時期問題になりましたが、UV-A, UV-Bが増えるだけでなく、UV-Cが地表に届くという怖いことが起こるということです。

なんで殺菌できるの?

UV-Cの波長、大体265nmくらいのところですが、その波長帯がDNAやRNAといった核酸に一番吸収されやすいようです。有体に言えば、火傷を起こして死にます。

便宜的に殺”菌”灯と呼んでますが、DNAやRNAという生命の核を攻撃するので、実際は菌だけでなくウィルスやカビ、ダニなど、基本的に生物系には全てに効果があります。単細胞生物に近いほど効果が高くなります。

カビも菌も殺すということは、臭いの元に効果があると言うことなので、結果的に消臭効果もあると思います。実際、そういった報告例を目にします。

ただの蛍光管の光って、それ気休め程度なのでは?

自分もそう思ってましたが、調べて考えを改めました。

ここに大腸菌チフス菌、赤痢菌などのシャーレ中の菌に殺菌灯を照射した時、時間経過と菌の量についての実験結果が公開されていますが、わずか1分で全部死滅しています。怖い。 太陽光の場合、大腸菌が死滅するのに65分程度、UV-C殺菌灯の場合は1分なので、その威力のほどがわかります。次亜塩素酸水クラスではないかと思います。しかも薬品などの有害物質等が残存しません。

殺菌灯の殺菌効果 | 紫外線による殺菌 | アカデミー・コーナー | アズワン

菌、カビ、ウィルス、酵母、原生生物に、どれくらいの量を照射すると99.99%不活化するかの表が載ってます。時間は異なるものの、全部に効果があります。 これ見ると、インフルエンザウィルスは紫外線に弱そうな感じがします。

紫外線による殺菌・不活化 | 紫外線殺菌 | 岩崎電気

コロナウィルスに関しては上の表にありませんが、少なくともSARSやMERSには効くようです。10分間の照射で99.999%不活化できた(線量不明)というレポートがあったようです。まあ、紫外線の性質上、ウイルスであればほぼ確実に不活性化は可能と思われます。

2019 Novel Coronavirus (COVID-19) Outbreak: A Review of the Current Literature and Built Environment (BE) Considerations to Reduce Transmission[v2] | Preprints

ついでに、ダニにも効果があります。

どれくらいの紫外線照射により、ダニを死滅させうるか?

この記事で若干否定気味に書かれているUV-Cを利用して殺ダニする布団掃除機は以下です。この前ヨドバシカメラでも見かけました。

ダニについては、「ヨロヨロになるので吸いやすくなる」「紫外線照射量の累積で効果がある」と主張しています。1回じゃ厳しいよというのは承知しているようです。

UVランプでダニがヨロヨロに!?—レイコップの最新研究成果とは – RAYCOP

ダニは60℃であっさり死ぬんですが、布団やマットってなかなかその温度で洗えないですからね。

また、薬剤と異なり、耐性がつくこともありません。ゴキブリがいくら薬剤耐性持ってもスリッパには勝てないように、紫外線照射は物理攻撃に近いためです。

ということで、気休めどころか殺戮の天使です。

どれくらいの距離まで効果があるのか

殺菌力があると言っても、「光源から10cmくらいまでしか効果がありません」みたいな代物だと役に立ちませんよね。

GL-20のカタログスペックでは、1mの距離におけるUV強度は、1秒当たり77μW/cm2です。

https://jp.misumi-ec.com/vona2/detail/223012819783/?HissuCode=GL-20

先ほどの岩崎電子の表では、インフルエンザウィルスが99.9%不活化されるまでに必要な紫外線照射量は6.6mJ/cm2でした。 なので、1m離れた位置にインフルエンザウィルスのコロニーがあった場合、これを99.9%不活化させるために必要な時間は、6600/77 = 85秒です。僅か1分半。

UV強度は距離がx倍になると1/x2になります。要するに、GL-20から2m離れた地点では、77/4 = 19.25μW/cm2になります。 それでも、インフルエンザウィルスを99.9%不活化させる時間は340秒程度です。

3mの場合は8.5μW/cm2, 4mの場合でも4.8μW/cm2のUV強度は維持されますので、4m離れた位置に置いてあるから平気、ではありません。人間でも30分以上浴びると皮膚にダメージを受けます。 逆に言うと、インフルエンザウィルスの場合、そこそこの広さの部屋であっても、85秒x16秒=約23分間照射すれば99.9%不活化できてしまうということです。単純計算ですが。

近づけた場合はどうでしょうか?東芝ライテックの以下の資料によると50cm以降は距離の2乗法則、50cmより近い場合は反比例と書いてありますので、 単純に計算すると、50cmの場合は77x4=308μW/cm2, 1cmの場合は15400μW/cm2で、インフルエンザウィルスは1秒足らずで不活化、人間でも0.4秒以上で健康被害の危険性があります。

http://www.mekatoro.net/digianaecatalog/toshir-light/book/toshir-light-P1092.pdf

殺菌灯の弱点は?

蛍光管が割れると危険などは蛍光灯なら当たり前、人体への危険性などはハイターでも同じ(個人的にはハイターを撒きまくる方が危険と思いますが)ですので、殺菌上の弱点を。

紫外線なので、遮蔽されると届きません。パラソルの下では日焼けしないのと同じ要領です。基本的に透過するのは水と空気、一部のガラスのみです。

物陰にいるカビやウィルスなどには効果がありませんし、服などの場合は裏面には効果がないということです。裏面まで行かなくても、繊維の奥に入り込んだ場合、紫外線が届かない可能性があります。つまり、空間殺菌や表面殺菌は得意ですが、遮蔽物が多い場所に設置する場合、効果が思うように発揮されない可能性が高いということです。厚手のタオルや靴などは繊維の奥まで菌が入り込んでしまうので、殺菌灯使うより洗った方が早いでしょう。

スキー場の雪焼けのように、紫外線は照り返しが可能ですので、反射板はそれなりに有効です。また、空気を循環させるというのも良い手ですので、除菌中はサーキュレーターなどと併用すると効果が上がります。吹き上がったウィルスがうっかり殺菌灯に近づくと、焼け焦げてくれます。

また、当然のごとく、死骸やフン、ほこりを取り除くことはできませんので、そこは掃除しましょう。

なんで蛍光灯が殺菌灯に用いられるのか

蛍光灯というのはそもそも紫外線を利用して発光しています。両極のアーク放電で発せられた電子が、蛍光管中の水銀ガスと衝突して紫外線を発光します。紫外線が蛍光剤にぶつかり、可視光に変換されます。 この紫外線の波長は254nmが大半を占めます。普通の蛍光灯は、紫外線を通さないガラス管を使用しています。

なので、GL20などの殺菌灯は、単純に蛍光剤を塗っておらず、紫外線をそのまま外部へ放射しています。GL-xxが透明で綺麗なのはそのためです。蛍光剤が塗布されていないので、「蛍光灯」ではありません。正確には低圧水銀放電管です。

ただ、紫外線を単純に通すのではなく、200nm-300nmの紫外線のみを効率よく通すガラス管を用いています。200nm以下の紫外線をカットする理由は、オゾンが発生するためです。 GL-xxでも微量のオゾンは発生しますが、量が少ない上にオゾン自体が254nmの紫外線を吸収して分解してしまうので、濃度が高くなりません。

逆に、わざとオゾンを発生させるオゾンランプというものがあります。こうしたオゾンランプでは、254nmと185nmが同時に照射されます。

https://www.sankyo-denki.co.jp/blank-6

Amazonで売ってる以下の殺菌中華ライトですが、質問欄で10nm~400nmの紫外線を放射している(本当に!?)と回答してあること、さらにオゾンが発生するとはっきり書いてあることから、185nmは出るんだと思いますが、オゾンランプと呼んでいいのかどうか不明です。オゾンランプの場合は、上述の通り、254nmと185nmの紫外線が出力されます。

オゾンが出るということは、周囲環境、特に金属の腐食に気をつける必要があるのと、オゾン自体に有毒性があるので、使用にはさらに注意が必要です。住環境で安易に使っていいものかどうか、ちょっと気になります。


Besline 6W/8W 除菌UV 紫外線殺菌 オゾンがあるポータブル 99.99%抗菌 殺菌ランプ 紫外線UV 殺菌灯 紫外線UVライト 空気清浄・消臭機能付き

蛍光灯がなくなりそうだが、紫外線LEDはないのか?

UV-AのUV-LEDはたくさんあります。UV-Aは技術的に作りやすいようです。秋月電商などでも1パック150円とかで手に入ります。手に入りますが、前述の通りUV-Aでは殺菌に使えません。

実際、殺菌用UV-LEDの研究開発はなされていて、成功事例も出ています。しかし、一般消費者の手に届くほどにはなっていません。特にお値段が。

例えば、CL7003C2という275nmの紫外線を発光するチップがDigiKeyに売ってますが、2020/03/25現在、1個単価14733円です。殺菌灯付きふとん掃除機が買えてしまいます。 しかもLED一つじゃ光量が足らないと思いますので、これを並べるとなると、激しいお値段になります。そう考えるとこの分野はまだまだ蛍光管には遠く及びません。

こんな状態なのに、蛍光灯を廃止して大丈夫なんでしょうかね。

ゴキブリには効果あるの?

論文が出てます。

CiNii 論文 -  紫外線によるゴキブリ防除実験 : 1. 殺菌灯照射野へのゴキブリの侵入と紫外線の致死効果

殺菌灯の出力がそこそこの場合、忌避効果はなく、殺菌灯の周りを自由にウロウロします。紫外線を一定量浴び続けたところ、幼虫は1週間、成虫2週間くらいで死んだようです。ちなみにゴキブリの寿命は2年くらい(チャバネだけは半年くらい)なので、確実に影響はあります。ただし、出力が強いと殺菌灯を避けるようになるようです。

ハエやゴキブリ、ネズミといった大型の生物については即効性はありませんが、「使ってたらなんとなく減った」という報告はやはりあるようです。

実際使われてるの?

医療関係(病室、診察室、無菌室)、食品加工にはよく使われている、というより必須の装置です。例えば卵は殺菌灯による殺菌が義務付けられています。無菌室は、空気を循環させるとともに、人にライトが当たらない位置で殺菌を行って無菌化して作ります。

紫外線による影響を受けるのはDNA, RNAであり、そのため機械類や設備等にはダメージを与えず(日焼けはしますが)、外部に漏らさないようにするのも簡単なので、そういった意味でも扱いやすいところがあります。

食品には良く用いられますが、なにしろ表面しか殺菌できないので、筋肉や内臓に潜む食中毒菌の殺菌や、紫外線が透過しにくい牛乳相手などでは力を発揮できません。ですので、牛乳は昔から熱殺菌がもっぱら行われています。ちなみに牛乳パックは紫外線で殺菌しているので、その辺りは完全に適材適所というわけです。

太陽光との差は?

以下の記事が話題になっていたので追記。

新型コロナウイルス、太陽光で急速に不活性化 米研究 写真5枚 国際ニュース:AFPBB News

上述した通り、太陽光はUV-A, UV-Bが地表に届いており、UV-Cは地表に届いていません。太陽光に含まれる紫外線は、UV-Aが93%くらい、UV-Bが7%くらいで、すなわちほとんどがUV-Aとなります。

UV-Aの殺菌力はおよそUV-Cの1600分の1で、UV-Bの殺菌力は文献が少ないため、論文[1]からの類推になりますが、UV-Cの1%~1.5%程度ではないかと思います。 それでも太陽光の殺菌力が認められるのは、単純に出力が大きいからと言えます。

真夏の太陽光の照度は約100000ルクス(=1SUN)で、ワット換算すると1000W/m2です。紫外線は約5%含まれてますので、50W/m2=5000μW/cm2です。半端ない出力です。流石太陽。

屋内で太陽光を正確に再現 – セリック株式会社

5000μW/cm2のうち、UV-Aが4650μW/cm2、UV-Bが350μW/cm2と概算されます。UV-C殺菌力換算すると、UV-Aを1600で割って2.9μW/cm2, UV-Bが100で割って3.5μW/cm2となります。UV-Bを1.5%すると5.25μW/cm2となります。 すなわち、理論的には合算値6.4μW/cm2~8.75μW/cm2のUV-C照射と同程度の殺菌力があると推測されます。繰り返しますが、あくまで殺菌力のみを考慮した数値です。

「太陽光の場合、大腸菌が死滅するのに65分程度、UV-C殺菌灯の場合は1分」と上述しましたが、その時に用いられていた殺菌灯が「1000h使用の15W殺菌灯を50cmの位置から照射」ですので、約500μW/cm2と推察されます。太陽光では65倍時間がかかった、とのことなので、500μW/cm2÷65 = 7.69μW/cm2で、実験的にも大体それくらいかな?という感じです。ということで、太陽の殺菌力は、凡そ6~9μW/cm2程度ではないかと結論付けます。ただし、1SUN は真夏の直射日光下での数値ですので、季節や天候等次第で、この数値が低く出ることもあるはずです。

それでも、真夏であれば1時間日が照ってるだけで25.2mJ/cm2(太陽の殺菌力を7μW/cm2で換算した場合)の照射を食らうわけでして、おまけに大気が循環していることもあり、屋外のウイルスにとっては大ダメージでしょう。この25.2mJ/cm2コロナウイルスがほぼ確実に90%不活化される線量です。さらに太陽光の場合、紫外線だけでなく熱による効果も期待できますので、より不活化が速くなると思います。急速に不活化というのも頷ける話です。コロナウイルスの不活化線量と熱の話は次エントリーで書いています。

ウイルス対策のために殺菌灯(UV-C)はどのくらい照射すれば良いのか - キノコの自省録

[1]新しい歯周炎予防・治療法としての310nm UVB-LEDの可能性, https://hsuh.repo.nii.ac.jp/?action=repository_uri&item_id=10791&file_id=20&file_no=2

Krita(G'MIC)で雲模様

木目や岩など、自然物のテクスチャによく使われるPhotoshopの雲模様ですが、KritaでもG’MICを使って描くことが出来るようになりました。

G'MICのダウンロードと設定

雲模様の描画には、G'MICのver2.8.3以降が必要です。

Kritaには元々G'MICが同梱されていますが、この記事を書いている2020年2月8日現在のKrita(ver4.2.8)に同梱されているG'MICはver2.7.1ですので、最新バージョンを別途手に入れる必要があります。 もしお使いのG'MICが2.8.3以降なら、この章は読み飛ばしてください。

ダウンロードはこちらから。

G'MIC - GREYC's Magic for Image Computing: A Full-Featured Open-Source Framework for Image Processing

G'MIC plug-in for Kritaから、zip archiveをダウンロードして解凍してください。

解凍したフォルダのパスを、Kritaに設定します。設定->Kritaの設定を変更を選択してダイアログを表示して、一番下の項目G'MIC Qt統合に、先ほど解凍したG'MICのパスを設定します。

f:id:kinokorori:20200207231443p:plain
Kritaの設定を変更

間違っても、KritaのbinフォルダにG'MICをコピーしてはいけません。Kritaごと起動しなくなります。

※私はやってしまいました。

雲模様を描く

まずはサンプル。256×256の画像を用意して、灰色(0x808080)に塗りつぶしておきます。そのレイヤーに対して、フィルタ -> G'MIC-Qtを開始を実行します。

次に、G'MICが起動したら、Degradationsから、Noise[Perlin]を選択します。

ノイズのパラメータを次のように設定します。

  • Random Seedはなんでもよい
  • 1st AmplitudeとScaleを32に
  • 2nd AmplitudeとScaleを16に
  • 3rd AmplitudeとScaleを8に
  • 4th AmplitudeとScaleを4に
  • ChannelsをYCbCr[Luminance]に

f:id:kinokorori:20200207233350p:plain
Perlin Noise Parameter

これでフィルタを適用すると、こんな感じの雲模様が生成されます。

f:id:kinokorori:20200207234314p:plain
G'MIC製 雲模様

大体Photoshopに近い雲模様が作れたのではないかと思います。

Perlin Noise

要するに、雲模様というのはPerlin Noiseで出来ています。Perlin Noiseはその名の通りノイズなのですが、単純なランダムノイズではなく、複数のノイズ波の合成で出来ています。 今回のように、サイズと周期の大きい波を基準(今回は32)として、その半分(16)、そのまた半分(8)、さらにまた半分(4)のノイズ波を合成すると、Photoshopのような雲模様になります。

フォトショ使いの人は、火や波を作ったりと色々な応用をしたのではないかと思いますが、実際Perlin Noiseは自然物の表現(特に3D)によく用いられます。自分も昔、連続作成したPerlin Noiseを火の画像に対してDisplacement Mapを取ることで、火の揺らぎを表現したことがあります。

G'MICの場合、パラメータを自分で設定しなければならない手間はありますが、逆に色んなことが出来ます。

例えば、木目なんかは無理やり拡縮しなくても、最初からアスペクト比を調整すれば、すぐに作れてしまいます。

f:id:kinokorori:20200208151754p:plain:w256
G'MIC製木目テクスチャ

色も2値ではなく、様々な色の雲模様が生成できます。例えば、ChannelsをYCbCr Luminanceのような輝度ではなく、RGBAに指定すると、マーブルのような雲模様が生成できます。これで生成した雲模様を使って水中の青を表現すると、ちょっとリッチ感が出せます。

f:id:kinokorori:20200208152345p:plain
シンプルなブルーバック

f:id:kinokorori:20200208152505p:plain
マーブル雲模様のリニアライト合成

グラボの換装と支え棒の自作

思うところがあって、グラフィックボードRTX2060SUPERを買いました。Amazonで45000円くらいでした。実はこんな高性能なグラボを買うのは生まれて初めてです。

それにしてもグラボって物理的に重いんですね。接点の板がバキっといきそうなくらい。適当に針金で引っ張ろうかと思ったのですが、針金を通せそうな穴が全く空いてません。

調べると、グラボ支え棒みたいなものが専用品で売ってるとか……。

その辺に売ってそうにないけど届くの待ってる暇はないし、ちょっと高い、ということで、東急ハンズで代替になりそうなものを探しました。

アジャスター

天井の突っ張り棒や、机の脚に使うねじ巻き式の部材がありますが、あれアジャスターと言います。アジャスターを使って、天井の突っ張り棒の要領で、地面からグラボを支える道具を作りました。

まあ正直作りましたというレベルではありません。部品を2個買っただけです。

f:id:kinokorori:20200203012310j:plain
アジャスターとベース

アジャスターは277円、ベースは400円でした。ハンズ価格ということで少々割高なので、別のところで買えばもっと安く手に入るはずです。買ったアジャスターは頭にフェルトがついているので、グラボを傷つけずに済みます。

アジャスターベースは正直適当な木を買ってドリルで穴開けでも良かったのですが、垂直に穴あけが必要なことと、部屋汚れるから嫌ということで、最初からねじ穴の合うベースを買いました。まあそんなに高くないですし。

取り付けた写真はこんな感じになります。

f:id:kinokorori:20200202180545j:plain

このグラボは玄人志向のGALAKUROモデルですが、ファンとファンの間が意外と空いているため、ちょうどフェルトアジャスターが取り付けられます。写真では、グラボがやや傾いているように見えますが、実際は真っ直ぐになっています。

ベースを接着固定するのであれば、ベースの裏に磁石のシートを貼る、両面テープを貼る、マジックテープを貼る、適当なテープで止める辺りが良いかと思います。ちなみに、上の写真は特にベースを接着していないのですが、この状態で横にしてもズレません。(今は養生テープで止めています。)

Amazonで買うなら

アジャスターですが、フェルトアジャスタ―で検索すると良いです。買ったのは下のと同等品です。この商品のねじはM10ですが、M6やM8のものもありますので、お好みで。


フェルトアジャスター 【プラパート】 A400-32M10 M10×Φ32×L31.5 ベージュ

座金はアジャスターベースで検索すると良いです。


LAMP ステンレスアジャスターベースM10用(200-140-502)

198 + 239 = 437円ですね。

と、ここまで紹介しておいてなんですが、実際にホームセンターに行って調べてきた方が早いです。(送料もかかりますし……)

特に、必要な高さがマシンによって異なりますので、必要な部材も当然変わってきます。今回、自分のPCは大体高さ4cmほどでしたので、この組み合わせになりました。 ちなみに耐荷重はスペック表に書いてある通り、140kgです。グラボが重いといっても、家具レベルの部品から見れば屁みたいなものです。

多少グラボのケースが傷ついてもいいなら、ボルトが一番種類があります。ボルトを使うにしても、座金はちゃんとしたものを使用した方が良いと思います。グラボファンが回転振動しているため、不安定だとズレることが想定されます。

※冒頭で紹介した感じの支え棒なら、ジョイント金具とアングルの組み合わせか、マルチブラケット使ったらできそうな気がします。

プレーヤーに向かってくる弾を撃つ、照準に向かって撃つプログラム用数学

中高生向けのゲームプログラミング用数学の内容です。

敵が真っ直ぐ自分の方向に向かって弾を発射したり、自機が照準に向かって弾を発射したりといった実装をしたいことは多々あると思います。 これ自分が中学生だか高校生くらいの時、実装方法がわからなかったんですよね(なんとなーくそれっぽく動く実装していました)。 昔できなかった自分を思い出して、ちょっとTips書いてみました。

図解と物凄く簡単な実装

超シンプルな実装

f:id:kinokorori:20200106232329p:plain
弾発射

自機が(0, 0)の位置に、敵が(15, 15)の位置にいます。敵が自機に向かって弾を発射したいと思います。弾の速度はどう設定すれば良いでしょうか?

f:id:kinokorori:20200106232752p:plain
-15,-15で動く

弾の速度(velocity)を(-15, -15)に設定すればプレーヤーの方向に飛びます。1フレームで(-15, -15)の場合、絶対に直撃します。

超シンプルな実装2

f:id:kinokorori:20200106233305p:plain
場所移動

では、ちょっと移動して、自機が(1, 6)、敵が(12, 15)の位置にいた場合、どうすれば真っ直ぐ飛ぶでしょう?

要するに、x=12から1へ, y= 15から6へ移動させれば良いので、vx=1 - 12=-11, y=6-15=-9となり、弾の速度を(-11, -9)に設定すればプレーヤー方向へ真っ直ぐ飛びます。

弾の速度を調整する

しかしこれだと、弾速がまちまちになります。簡単に言えば、敵が遠く、例えば(50, 100)にいるときは、(-50, -100)の猛スピードで飛んできますが、敵が近く、例えば(1, 2)にいるときは、(-1, -2)のゆったりスピードで飛んできます。これでは困ります。

要するに、距離に応じて速度が変わるのが困るので、距離で割って距離の影響を取り除いてあげれば良いのです。(-50, -100)の場合の距離は、

 \sqrt{(-50)\times(-50)+(-100)\times(-100)} = \sqrt{12500} (≒ 111.8)

なので、弾の速度を (-\frac{50}{\sqrt{12500}}, -\frac{100}{\sqrt{12500}})とすると、距離の影響が排除できます。

(-1, -2)の場合の距離は、

 \sqrt{(-1)\times(-1)+(-2)\times(-2)} = \sqrt{5}

なので、弾の速度を (-\frac{1}{\sqrt{5}}, -\frac{2}{\sqrt{5}})とすると、距離の影響が排除できます。

これで、 (-\frac{50}{\sqrt{12500}}, -\frac{100}{\sqrt{12500}}) (-\frac{1}{\sqrt{5}}, -\frac{2}{\sqrt{5}})は、進行方向は違えど、速度は同じになりました。

ちなみに弾の速度(-50, -100)や(-1, -2)は、純粋な大きさだけでなく向きを持っていますね。これをベクトルと言います。このベクトルの向きをそのままに、大きさだけを1にしたものを単位ベクトルと言います。 (-1, -2)を単位ベクトルに変換したものが (-\frac{1}{\sqrt{5}}, -\frac{2}{\sqrt{5}})ということです。数学の授業で習います。

単位ベクトルに対して所定値を乗算することで、スピードが調整できます。例えば、 (-\frac{1}{\sqrt{5}}, -\frac{2}{\sqrt{5}})が遅すぎるので速度10倍にしたいなーという場合は、

 (-\frac{10}{\sqrt{5}}, -\frac{20}{\sqrt{5}})

とすれば良いということです。

3次元の場合は?

3次元でも4次元でも同じです。例えば、(2, 4, 5)の方向に弾を撃つ場合、(2, 4, 5)の距離は(\sqrt{2^ 2 + 4^ 2 + 5^ 2}) = \sqrt{45} なので、

単位ベクトルは(\frac{2}{\sqrt{45}}, \frac{4}{\sqrt{45}}, \frac{5}{\sqrt{45}})です。この単位ベクトルに任意の数値を掛けると、速度調整ができます。

MoveTowards

ちなみにUnityの場合は、MoveTowards()という便利なメソッドが用意されています。

Fungusのメッセージダイアログを任意のボタンで送る方法

大変便利なFungusのSayDialogですが、ちょっとキー設定で困ってしまいました。

f:id:kinokorori:20190511021103p:plain
FungusのSayDialog

FungusのSayDialogは、デフォルト設定の場合、キーボードだとSpaceやEnterでしか送ることができません。要するに割と良くアクションキーとしてアサインされるZキーなどでは次へ進ませることができませんが、特にその辺りを変更できそうな箇所も見当たりません。

そもそもどこでボタンが定義されているのか

全然情報が見つからなくて、コードから追っかけました。結局こんなところにありました。

f:id:kinokorori:20200106221916p:plain:w300
SayDialogのインスペクタ

これはSayDialogを作成した時にデフォルトで設定されるインスペクタです。この中にあるDialogInputが入力処理を司っています。

DialogInput.csのUpdateメソッドの中に、該当コードがあります。めでたしめでたし。

if (writer != null && writer.IsWriting)
{
    if (Input.GetButtonDown(currentStandaloneInputModule.submitButton) ||
          (cancelEnabled && Input.GetButton(currentStandaloneInputModule.cancelButton)))
    {
           SetNextLineFlag();
    }
}

※上に書いた通り、全然情報なかったんですが、常識なんでしょうか……?

StandaloneInputModule

上記コードは何かというと、currentStandaloneInputModule.submitButtonが押されたときか、currentStandaloneInputModule.cancelButtonが押されたときに、次に進むというコードが書かれています。

このcurrentStandaloneInputModuleなるメンバ変数は、UnityEngine.EventSystems.StandaloneInputModuleインスタンスです。要はUnityの機能です。submitやらcancelやらはどこで設定されているのかというと、ここです。

f:id:kinokorori:20200106223029p:plain
キーアサイン変更

InputManagerですね。ノットユーザーフレンドリーで有名な。

ゲーム中にキーコンフィグを作りたい場合はどうすれば?

起動時にわけのわからないタブで設定を強いるというのは、そもそもUIとして大問題で、ゲームの品質を下げてしまいます。なので、普通はキーコンフィグ画面をゲーム内に設けると思います。

ただ、デフォルトのSayDialogがStandaloneInputModuleのSubmitとCancelを参照している以上、ゲーム内でキーコンフィグを作った場合、FungusのSayDialogに関しては、次のどちらかの対応を取る必要があります。

  1. ゲーム内でInputManagerを再生成する
  2. DialogInputを継承したクラスがUpdate処理をオーバーライドする

1は大変辛いです。2は大変楽です。なので、2でいきましょう。DialogInputを継承したMyDialogInputは、具体的にはこんな感じになります。

public class MyDialogInput : Fungus.DialogInput {
    protected override void Update() {
        base.Update();
        if (EventSystem.current == null) {
            return;
        }

        if (writer != null && writer.IsWriting) {
            if (Input.GetKeyDown("Z")) {  //ここを好きなキーに設定する
                SetNextLineFlag();
            }
        }
    }
}

base.Update()でDialogInputのUpdate()を呼び出してますが、base.Update()が呼び出されると、SubmitやCancelでも送れてしまうので、不都合がある場合はDialogInput.Updateの処理をべた書き(コピペ)して、DialogInput.Update()を呼び出さずに隠ぺいしてしまうと良いでしょう。

実装が終わったら、MyDialogInputをSayDialogのインスペクタに追加します。

f:id:kinokorori:20200106225427p:plain
MyDialogInputを追加

これで、Zキーを押してダイアログを送ることができるようになると思います。

ライセンス

f:id:kinokorori:20190508004005p:plain

この作品はユニティちゃんライセンス条項の元に提供されています。

なお、FungusはMITライセンスです。