mieki256's diary



2024/11/15(金) [n年前の日記]

#1 [blender] blenderでアニメ風の木を作る手順について勉強中。その3

_昨日 に続いて、blenderでアニメ風の木を作る手順を勉強中。

_Anime Tree Tutorial | Blender (include Project Files) - YouTube
_Tutorial - Blender - Anime Foliage Pipeline

環境は Windows10 x64 22H2 + blender 4.2.3 x64 LTS。

昨日でステップ3まで再現できたので、ステップ4のシェーダーを用意するところを ―― マテリアル設定をしていくところを勉強。

シェーダーエディター上で、大まかに分けて以下の4つのノード群を作っていく。

ライトを設定 :

事前の準備として、ライトの設定をしておく。
  • 見た目を確認しつつ作業するので、ビューポートシェーディングを「レンダー」に変更。右上のアイコンをクリックして切り替える。
  • blender起動直後から用意されてるライトの設定を変更。「ポイント(点光源)」から、「サン(太陽光)」に変更。
  • ライトの強さを 5.540 ぐらいに変更。
  • ライトの角度を調整する。

04_applyshader_ss01.png

アルファチャンネル用のテクスチャ画像を用意する :

葉っぱ群のアルファチャンネル用テクスチャ画像を用意する。件の動画を参考にして似た感じのテクスチャを作ってみた。黒が透明、白が不透明(マテリアル設定で指定した色が表示される部分)になる予定。

leaf.png
_leaf.png

マテリアルを作成 :

平面ポリゴンのマテリアル設定をしていく。マテリアル設定の「新規」をクリックして、マテリアル設定を作成。

04_applyshader_ss02.png


シェーダーエディターを使えるようにする。ウインドウを分割して、片方をシェーダーエディターにしてもいいし、上のほうで「Shading」レイアウトを選んでもいい。

アルファチャンネル用のノードを作成 :

平面ポリゴンのマテリアル設定に、アルファチャンネル用のノードを追加していく。以下のノードを追加。
  • シェーダーミックス (Mix Shader) : 追加 → シェーダー → シェーダーミックス
  • 透過BSDF (Transparent BSDF) : 追加 → シェーダー → 透過BSDF
  • ディフューズBSDF (Diffuse BSDF) : 追加 → シェーダー → ディフューズBSDF

04_applyshader_ss03.png

04_applyshader_ss04.png

04_applyshader_ss05.png


加えて、用意しておいたアルファチャンネル用テクスチャ画像を、エクスプローラ等からシェーダーエディター上にドラッグアンドドロップ。画像テクスチャノードが自動で追加される。


ノードを以下のように配置して繋げると、平面ポリゴンにテクスチャが反映されて、アルファチャンネルを持っている状態になる。上が日本語表示。下が英語表示。

04_applyshader_ss06.png

04_applyshader_ss07.png


blender 4.2 の場合、マテリアル設定の、「影を透過」にチェック、レンダーメソッドを「ディザー」にしておく必要があるらしい。

04_applyshader_ss08.png


blender 3.x の場合は、アルファクリップ云々を設定しておく、と動画では説明されてた。

色を付ける :

アルファチャンネルを反映させることができたので、色を付けるノードを追加していく。
  • シェーダーのRGB化 (Shader to RGB) : 追加 → コンバーター → シェーダーのRGB化
  • カラーランプ (Color Ramp) : 追加 → コンバーター → カラーランプ

04_applyshader_ss09.png

04_applyshader_ss10.png


ノードを以下のような配置にして繋いでいく。シェーダーミックスとディフューズBSDFの間に挿入する感じ。上が日本語表示。下が英語表示。

04_applyshader_ss11.png

04_applyshader_ss12.png


カラーランプノードに木の葉っぱの色を指定していくことで、それらしく色がつく。

アンビエントオクルージョンを指定する :

アニメ風の木の黒い影部分を表現するために、アンビエントオクルージョンを設定する。以下のノードを追加する。
  • アンビエントオクルージョン (Ambient Occlusion) : 追加 → 入力 → アンビエントオクルージョン
  • カラーミックス : 追加 → カラー → カラーミックス
  • 数式 (Math) x 3 : 追加 → コンバーター → 数式

04_applyshader_ss13.png

04_applyshader_ss14.png

04_applyshader_ss15.png


以下のようにノードを配置して繋いでいく。
  • カラーランプとシェーダーミックスの間に挿入する。
  • 数式ノードについては、3つ作成して、「累乗」と「乗算」x2 にする。

04_applyshader_ss16.png

04_applyshader_ss17.png


ただ、これで反映されたのかどうか、ちょっとよく分からない…。動画では blender 3.x を使っていて、EEVEE のアンビエントオクルージョンの項目にチェックを入れているのだけど、blender 4.2 ではアンビエントオクルージョンの項目が見当たらなくて…。レンダリング結果にはちゃんと違いが出ていたので、特に何もしなくていいのだろうか?

グラデーションを設定する :

茂み全体に、光源の位置? 角度? を反映したグラデーションをつけるように設定していく。以下のノードを追加する。
  • テクスチャ座標 : 追加 → 入力 → テクスチャ座標
  • マッピング : 追加 → ベクトル → マッピング
  • グラデーションテクスチャ : 追加 → テクスチャ → グラデーションテクスチャ

04_applyshader_ss18.png

04_applyshader_ss19.png

04_applyshader_ss20.png


以下のようにノードを配置して繋いでいく。
  • テクスチャ座標ノードのオブジェクト云々のところには、ライトの名前を設定する。
上が日本語表示で、下が英語表示。

04_applyshader_ss21.png

04_applyshader_ss22.png

まとめ :

全部まとめると、以下のようなマテリアルノード配置になる。アルファチャンネル用、色、アンビエントオクルージョン、グラデーションの部分が分かりやすくなるように、水色の点線で囲んである。

04_applyshader_ss23.png

04_applyshader_ss24.png

動画をよく見たら、アルファチャンネルのあたりに範囲制限ノードを追加されていたので、一応手元でも追加してみた。

#2 [nitijyou] 部屋の中に蚊が居る

時期的にそこそこ寒くなってきたと思うのだけど、こんな気温なのに、部屋の中に蚊が居る…。なんだか足が異様に痒いなと思ったら2ヶ所も刺されてた…。

蚊取り線香をつけて対抗するしかないかと思いきや、蚊取り線香(アースノーマット)のビンの中が空になってることに気づいた。買ってこないと…。

近所のサンドラッグに寄ったら、一応蚊取り線香はあったのだけど、60日分 x 2本のセットしかなく。高い…。30日分 x 1本でいいんだけど…。でもまあ、予備があって困るものでもないから仕方ないかと購入。

帰宅後、早速蚊取り線香をONに。これで退治できればいいのだけど、本当に効果はあるのかな…。

余談。ググってみたら、最近はダイソーでも、アースノーマットの蚊取り線香を売っていたりするらしい。でもまあ、どうせ季節商品扱いで、今の時期は置いてなさそうな気もする。ドラッグストアやホームセンターでもこの時期になると置いてなかったりするし。たしか以前、ホーマックやカワチの店頭で探したけれど置いてなくて、店員さんに尋ねたら時期的に置いてないと言われてしまった記憶もあるし。まして100円ショップではな…。

2023/11/15(水) [n年前の日記]

#1 [pc] サブPCが起動しなくなっていた

久々にメンテナンスをしようと思って、サブPC (AMD A6-3500機) の電源を入れたところ、HDMIで接続しているはずの画面が映らなくて困ってしまった。電源LEDは点いているけれど、OS (Linux Mint) が立ち上がっている感じはしない。本来ならOSが起動すると無線LAN子機でLANに接続して、メインPCからサブPCにアクセスできるはずなのだけど…。

たぶん、M/B上の内蔵電池(CR2032)が切れたのかなと、ケースを引っ張り出して、蓋を開けて、電池をチェックしてみたら、完全に電池が切れていた。新品と交換したらすんなり起動してくれた。

ずっと電源を入れてなかったのだから、そりゃ電池も切れるわな…。

PCを整理したい :

考えてみたら、普段滅多に電源を入れないLinux機が部屋の中に5台、いや、ノートPCも含めたら7台、Raspberry Pi機も入れたら9台もある…。

使ってないPCを置きっぱなしにして埃をかぶらせているのもアレなので整理したいところだけど、どれもまだ動くし…。動くと言っても、その手のお店に売れるほど優秀なスペックのPCパーツではないので、整理するとなったら捨てるしかないのだけど。でも、まだ動くし…。動くのに捨てるのもなんだかもったいないと思ってしまって…。

以前はそれらの古いPCを分散レンダリングに使ったりもしたのだけど。レンダラーのバージョンが上がったらIntel製CPUじゃないと計算できない・昔のAMD製CPUは使えない状態になってしまったし。そもそも、古いCPUを総動員してレンダリングするより、真っ当なGPUを使ってレンダリングしたほうがはるかに速いというのが分かってしまって…。こうなると、古いPC群の使い道が…。

2022/11/15(火) [n年前の日記]

#1 [blender][povray] blenderをアップグレード

手元の Windows10 x64 22H2 上で、blender 2.93.9 LTS を 2.93.11 LTS に更新。かつ、blender 3.3.1 LTS を新規導入。

blender 3.3 が、2.93 と比べてどのくらい新機能が追加されているのか把握してないのだけど…。どこかにまとめ記事は無いものか…。blender 関係の記事って、3.0、3.1、3.2 等のバージョンが上がる度に新機能を紹介してるから、LTS版だけ使ってるとそのあたり把握しづらくて…。

POV-Ray対応アドオンがちょっとアレ。 :

blender 3.3.1 の新機能を把握することは全然できてないけれど。ウインドウの左側にやたらとアイコンが増えていることに気づいた。どうやら POV-Ray対応アドオン(POV@Ble)が、追加可能なPOV-Ray専用オブジェクト(プリミティブ?)を、全てアイコンにして並べてしまったようだなと…。

正直、これはかなり鬱陶しい…。
  • レンダーエンジンが Eevee だろうと Cycles だろうと関係なく表示されてる。
  • POV-Ray専用オブジェクトをひっきりなしに追加していく場面なんてそれほど無いはずだけど、利用頻度が少ない機能を常時画面に表示し続けているのはどうなのか。

せめて、オプションか何かで表示の有効無効を切り替えられないものだろうか。あるいは、一つのアイコンをマウスクリックすると、そこから複数の項目が表示される仕様が妥当ではなかろうか。

まあ、blender と POV-Ray を組み合わせて作業してる人がほとんど居ないから、苦情も出てこなくて、こういう仕様になっているのだろう…。

POV@Ble 自体の有効無効を切り替えていたら、今まで設定していたPOV-Ray関係のパス設定が全て消滅してしまった。ガッデム。毎回クリアしちゃうのか…。覚えておいてくれないのか…。

考えてみたら、POV-Ray の勉強をする時はテキストエディタで打ち込んでいくものだよな…。ということで、このアドオンは今後無効にすることにした。

そもそも、このアドオン、POV-Ray専用オブジェクトにはマテリアル設定ができないのだよな…。オブジェクト追加アイコンを並べるよりそっちの実装を…。

余談。blender 3.3.1 LTS では、POV@Ble 0.1.3 というアドオン名になっているけれど、blender 2.93.11 LTS では、Persistence of Vision 0.1.1 というアドオン名だった。

2021/11/15(月) [n年前の日記]

#1 [nitijyou] 金網を探してる

お袋さんから、家の裏の排水溝に金網を設置したいので探してくれないかと要望があった。ゴミが下流に流れていかないように今まで金網を設置してあったけど、錆びてボロボロになってしまったので代わりの品が欲しいとの話で。出かける前に測ってみたら、30x45cmのサイズだった。網の目は比較的細かい感じ。

電動自転車で、近所の100円ショップ Seria まで。代わりになりそうなものを探してみたけど、どうやら元々使ってたのはバーベキュー用の金網っぽいなと…。ただ、ドンピシャのサイズは見つからず。

ホームセンターホーマックに寄って探してみたところ、一応あることはあったけど、1枚3,000円というお値段。下水に晒される金網に対して、そのコストはさすがに…。どうやらバーベキュー用の金網サイズにも、メジャーなサイズとマイナーなサイズがあるようで、メジャーなサイズなら598円とか998円とかそういうお値段で売ってる模様。ただ、今回求めるサイズは、マイナーなサイズ、ということなのだろう…。

Seriaで売ってた金網の中に、30x20cmというサイズがあったので…。2枚繋げればなんとかならないかなと…。まあ、他の100円ショップで探してみてから考えよう…。

#2 [anime] 「映像研には手を出すな!」4話を視聴

Eテレで毎週日曜PM07:00から再放送中。録画してたソレを視聴。

本放送時もそうだった気がするけど、ラストのあたりの台詞を聞いて、なんだかちょっと泣きそうになった。いやまあ、話としては、高校生がアニメ作りました、てな話でしかないのだけど、ストーリーって一体何だろうとつい考え込んでしまう、そんな感じの回でもあるよなと…。何にせよ、このアニメはやはり名作。

全然関係ないけど、ぶらどらぶの映画制作回をなんとなく思い出したりもして。あっちも、高校生が映画作りました、てな話でしかないのだけど、受ける印象が何もかも違う。押井監督が「映像研〜」を手掛けてたらたぶんこうなっただろうなあ、みたいな。そのあたりが、各作家/各監督の、作家性の違いというか…。

#3 [anime] 「ヤマト2199」の設定情報を眺めてた

「ヤマト2199」の総集編についての情報をググっているうちに、TVアニメ版の設定をほとんど忘れてることに気が付いてしまった。ということで、そのあたりの各設定についてググっておさらい、というか復習してた。

総集編では完全にカットされてた古代守関係のアレコレを眺めていたところ、「ヤマト2199」にはハーロックの設定を少し捻って盛り込んであったという解説記事に遭遇して、目から鱗が落ちた。本編を見ていた時は、急にスピリチュアルな設定が出てきて戸惑ってしまった記憶もあるのだけど、実はそういう仕掛けだったのね…。

一応ざっくり説明しておくと…。元々のヤマトの企画では、古代守=キャプテンハーロックになる予定で、例えば漫画版その他ではその設定が出てきたりするらしいのだけど、アニメ版は諸般の事情でそのあたりの設定がまるっとカットされてしまったそうで。しかし、「ヤマト2199」では、その設定をそのまま取り込まずにちょっと捻って(ずらして?)、キャプテンハーロックに出てくるトチローとアルカディア号の設定のほうを取り込んだ形になっている、との話で。オリジナル版ヤマトやキャプテンハーロックについて知識のある人なら、「ほう、そう来たか」とニヤリとする設定だった模様。

同じ映像を見ていても、知識の有無で楽しめる部分が増えるのだなと再認識。

2020/11/15() [n年前の日記]

#1 [godot] Godot Engineでアタリ属性を設定

Godot Engine 3.2.3 x64 を使って3D表示の簡単なシューティングゲームっぽいものを作る。

今回は各オブジェクトでアタリ判定をするためにアタリ属性を設定してみる。

レイヤーとマスクの名前を付ける。 :

Godot Engine は各種アタリ判定(衝突判定)をする際に、レイヤー(Layer)とマスク(Mask)というものを利用して、衝突するものとしないものの関係を設定することができる。

まずは分かりやすくするために、各レイヤーにレイヤー名を設定しておく。

レイヤー名の設定はプロジェクト設定で行える。「プロジェクト」 → 「プロジェクト設定」を選択。

3d_tuto09_set_collison_mask_ss01.png


「Layer Names」 → 「3D Physics」を選択。右側に「Layer 1」「Layer 2」と一覧が並んでる。ここでレイヤー名を設定できる。

3d_tuto09_set_collison_mask_ss02.png


Layer 1 から順々に、必要になりそうなレイヤー名を入力していく。今回は以下の4つが必要になる。
  • player (プレイヤー)
  • playerbullets (プレイヤーの弾)
  • enemy (敵)
  • enemybullets (敵弾)

3d_tuto09_set_collison_mask_ss03.png


ついでに、3D Render にもレイヤー名をつけておく。将来的に使うかどうかわからないけど…。

3d_tuto09_set_collison_mask_ss04.png

各シーンのレイヤーとマスクを設定。 :

各シーンのレイヤーとマスクを設定していく。

まずはプレイヤーキャラ。res://assets/Player.tscn を開く。Collision の欄に「Layer」と「Mask」があるので、クリックして有効無効を切り替える。

  • プレイヤーキャラなので、Layer は一番左の player を有効化。
  • Mask でアタリ判定(衝突判定)をする対象を選ぶ。プレイヤーキャラは、「自分には当たらない」「自分の弾にも当たらない」「敵とは当たる」「敵弾にも当たる」ので、左から3番目の enemy と、左から4番目の enemybullets を有効化。

3d_tuto09_set_collison_mask_ss05.png


プレイヤーの弾を設定する。res://assets/PlayerBullet.tscn を開く。

  • プレイヤーの弾なので、Layer は左から2番目の playerbullets を有効化。
  • Mask は、「プレイヤーには当たらない」「自分(達)にも当たらない」「敵には当たる」「敵弾とは当たらない」ので、左から3番目の enemy だけを有効化。

3d_tuto09_set_collison_mask_ss06.png


敵を設定する。res://assets/EnemyZako.tscn を開く。

  • 敵なので、Layer は左から3番目の enemy を有効化。
  • Mask は、「プレイヤーには当たる」「プレイヤーの弾にも当たる」「自分には当たらない」「自分の弾にも当たらない」ので、一番左の player と、左から2番目の playerbullets を有効化。

3d_tuto09_set_collison_mask_ss07.png


敵弾を設定する。res://assets/EnemyBullet.tscn を開く。

  • 敵弾なので、Layer は左から4番目の enemybullets を有効化。
  • Mask は、「プレイヤーには当たる」「プレイヤーの弾には当たらない」「敵には当たらない」「自分(達)にも当たらない」ので、一番左の player だけを有効化。

3d_tuto09_set_collison_mask_ss08.png

グループ名を指定。 :

後々、何かと何かが当たった(衝突した)際に、一体何に当たったのかを調べる必要が出てくるかもしれない。その判別をするために、各シーンに「グループ名」をつけておくことにする。

例えば、プレイヤーと、プレイヤーの弾に異なるグループ名をつけておけば、敵が何かに当たった際にグループ名を調べて、それがプレイヤーなのか、プレイヤーの弾なのかを判別することができたりする。

プレイヤーキャラのシーン、Player.tscn を開いて、ノードタブをクリック → グループをクリック。「player」と入力して「追加」。これで、プレイヤーに「player」というグループ名をつけられる。

3d_tuto09_set_collison_mask_ss09.png


プレイヤーの弾、PlayerBullet.tscn を開いて、「playerbullets」というグループ名を設定。

3d_tuto09_set_collison_mask_ss10.png


敵のシーン、EnemyZako.tscn を開いて、「enemys」というグループ名を設定。

3d_tuto09_set_collison_mask_ss11.png


敵弾シーン、EnemyBullet.tscn を開いて、「enemybullets」というグループ名を設定。

3d_tuto09_set_collison_mask_ss12.png


これで、アタリ属性を設定できた。

次回はアタリ判定処理を作る。

#2 [godot] Godot Engineでアタリ判定処理を書く

Godot Engine 3.2.3 x64 を使って3D表示の簡単なシューティングゲームっぽいものを作る。

今回は各オブジェクトのアタリ判定処理を作っていく。

プレイヤーの弾にアタリ判定処理を追加。 :

プレイヤーの弾にアタリ判定処理を追加する。

プレイヤーの弾は、敵(EnemyZako)とだけ衝突するように Layer と Mask を使って設定してあるけれど、敵は Areaノードをルートノードとして作ってあるので…。

プレイヤーの弾と敵が衝突した際、プレイヤーの弾は「Areaとぶつかったよ」と、area_entered(area:Area) というシグナルを発行してくれる。そのシグナルにメソッドを接続してやれば、プレイヤーの弾と敵が当たった時にそのメソッドが呼ばれるので、そのメソッドの中に敵と当たった時の処理を書いておけばいい。

プレイヤーの弾のシーン、res://assets/PlayerBullet.tscn を開いて、シグナルにメソッドを接続する。ノードタブをクリック → シグナルをクリック。「area_entered(area:Area)」を選択して右クリックして「接続」。

3d_tuto10_collison_ss01.png


PlayerBullet を選択して「接続」。

3d_tuto10_collison_ss02.png


スクリプトファイル PlayerBullet.gd の最後に、_on_PlayerBullet_area_entered(area) というメソッドが追記されたので、敵と当たった時の処理を書く。

3d_tuto10_collison_ss03.png

記述内容は以下になる。

_PlayerBullet.gd
extends Area

var velocity = Vector3()
var speed = 90

func _ready():
    velocity = Vector3(0, 0, -1)

#func _process(delta):
#   pass

func _physics_process(delta):
    translate(velocity * speed * delta)

func _on_Timer_timeout():
    queue_free()

func _on_PlayerBullet_area_entered(area):
    if is_queued_for_deletion():
        return
    print("PlayerBullet Hit!")
    queue_free()

  • とりあえず仮の処理として、print() を呼んで当たったことを示すメッセージを出力してみる。
  • プレイヤーの弾が敵に当たったら、その場でプレイヤーの弾は消滅してほしいので、自分を消去する queue_free() を呼んでおく。
  • is_queued_for_deletion() は、自分に消去処理が要求されているかを調べることができる。もし自分が消去予定になっていたら、何も処理をせずにメソッドを抜けるようにしてある。

動作確認してみる。 :

Mainシーンを開いてF6キーを押して動作確認してみる。

プレイヤーの弾と敵が当たった時に「PlayerBullet Hit!」というメッセージが出力ウインドウに出力された。ちゃんと当たってることが判別できた。

3d_tuto10_collison_ss04.png


画面内でも、プレイヤーの弾が敵に当たった時に、プレイヤーの弾がその場で消滅している様子が見て取れる。

3d_tuto10_collison_ss05.png

動作確認できたので、メッセージを出力する print() は、頭に「# 」を追加してコメントアウトしておく。

    # print("PlayerBullet Hit!")

敵弾にアタリ判定処理を追加。 :

敵弾シーン EnemyBullet.tscn にもアタリ判定処理を追加していく。

敵弾は Layer と Mask を使ってプレイヤーとだけ当たるように設定してある。そしてプレイヤーキャラは KinematicBody をルートノードにして作ってあるので…。

敵弾 EnemyBullet (Area) は、プレイヤー Player (KinematicBody) と当たった際に、body_entered(body: Node) というシグナルを発行する。(area_entered()ではなくて、body_entered()。相手が Area ではなくて KinematicBody なので。)

このシグナルにメソッドを接続してやれば、敵弾がプレイヤーと当たった時にそのメソッドが呼ばれるので、そのメソッドの中にプレイヤーと当たった時の処理を書いておけばいい。

敵弾のシーン、res://assets/EnemyBullet.tscn を開いて、シグナルにメソッドを接続する。ノードタブをクリック → シグナルをクリック。「body_entered(body: Node) を選択して右クリックして「接続」。EnemyBullet を選択して「接続」。

3d_tuto10_collison_ss06.png


スクリプトファイル EnemyBullet.gd の最後に、_on_EnemyBullet_body_entered(body) というメソッドが追加された。このメソッドにプレイヤーと当たった時の処理を書く。

3d_tuto10_collison_ss07.png

内容は以下。

_EnemyBullet.gd
extends Area

var velocity = Vector3()
var direction = 0
var speed = 3

func _ready():
    pass # Replace with function body.

#func _process(delta):
#   pass

func _physics_process(delta):
    translate(velocity * speed * 60 * delta)

func set_dir_and_speed(angle, spd):
    direction = angle
    speed = spd
    var x = cos(deg2rad(angle))
    var z = sin(deg2rad(angle))
    velocity = Vector3(x, 0, z)
    
func _on_KillTimer_timeout():
    queue_free()

func _on_EnemyBullet_body_entered(body):
    if is_queued_for_deletion():
        return
    print("EnemyBullet Hit!")
    queue_free()

PlayerBullet とほとんど同じ処理になっている。

動作確認。Mainシーンを開いてF6キーを押す。敵弾がプレイヤーと当たるたびに、出力ウインドウにメッセージが表示された。ちゃんとアタリ判定ができている。

3d_tuto10_collison_ss08.png

動作確認できたので、print() をコメントアウト。

    # print("EnemyBullet Hit!")

敵にアタリ判定処理を追加。 :

敵にアタリ判定処理を追加していく。

敵は、Layer と Mask を使って、プレイヤー、及び、プレイヤーの弾と当たるように設定されている。そして、プレイヤーは KinematicBody、プレイヤーの弾は Area をルートノードにして作ってあるので…。
  • body_entered(body: Node) シグナルにメソッドを接続すれば、そのメソッドにプレイヤーと当たった時の処理を書ける。
  • area_entered(area: Area) シグナルにメソッドを接続すれば、そのメソッドにプレイヤーの弾と当たった時の処理を書ける。

敵のシーン、res://assets/EnemyZako.tscn を開いて、area_entered() シグナルと、body_entered() シグナルにメソッドを接続してやる。ノードタブをクリック → シグナルをクリック。それぞれのシグナルを右クリックして「接続」。EnemyZako を選択して「接続」。

3d_tuto10_collison_ss09.png

3d_tuto10_collison_ss10.png

3d_tuto10_collison_ss11.png

3d_tuto10_collison_ss12.png

スクリプトファイル EnemyZako.gd に、_on_EnemyZako_area_entered(area) と、_on_EnemyZako_body_entered(body) が追記された。

それぞれのメソッドに処理を書く。

3d_tuto10_collison_ss13.png

内容は以下。

_EnemyZako.gd
extends Area

export (PackedScene) var enemybullet

var base_pos = Vector3()
var angle = 0
export var move_w = 22
export var move_h = 12
var bullets

func _ready():
    base_pos = translation
    angle = 0
    bullets = get_tree().root.get_node("Main/EnemyBullets")

#func _process(delta):
#   pass

func _physics_process(delta):
    move(delta)
    
func move(delta):
    angle += delta
    translation.x = base_pos.x + move_w * cos(deg2rad(angle * 90))
    translation.z = base_pos.z + move_h * sin(deg2rad(angle * 70))
    
func _on_ShotTimer_timeout():
    var angle_add = 12
    var angle = 90 - angle_add * 3
    var spd = 0.2
    for i in range(7):
        _shot(translation, angle, spd)
        _shot(translation, angle, spd * 0.8)
        angle += angle_add
    
func _shot(pos, angle, spd):
    var bullet = enemybullet.instance()
    bullet.translation = pos
    bullet.set_dir_and_speed(angle, spd)
    bullets.add_child(bullet)

func _on_EnemyZako_area_entered(area):
    if is_queued_for_deletion():
        return
    print("playerbullet hit the enemy")

func _on_EnemyZako_body_entered(body):
    if is_queued_for_deletion():
        return
    print("player hit the enemy")


動作確認してみる。Mainシーンを開いてF6キーを押す。

プレイヤーを操作して敵と当ててみたり、プレイヤーの弾を敵に当ててみたりする。出力ウインドウに、当たってる旨を伝えるメッセージが出力された。

3d_tuto10_collison_ss14.png

これで一応、アタリ判定はできた。

さて、プレイヤーに敵弾が当たったらプレイヤーのHP(体力?)を減らしたり、敵にプレイヤーの弾が当たったら敵のHPを減らしたりしたい。次回は各HPを画面に表示するために、HUD(Head-Up Display)シーンを作成する。

2019/11/15(金) [n年前の日記]

#1 [gimp] texturizeプラグインにpatchを当てる

Debian Linux の、gimp-texturize パッケージのソースを入手する方法が分かった。下のページから入手できた。

_Debian -- sid の gimp-texturize パッケージに関する詳細

ページの右のほうに、「gimp-texturize ソースパッケージをダウンロード」という項目があって、そこからDLできる。
ということで、パッチを当てたソースを作ろうとしたわけで。

作業手順をメモ。 :

以下、Windows10 x64 1903 + msys2 上で作業。

gimp-texturize_2.1-8.debian.tar.xz を解凍。

patchディレクトリの中身は以下。
10_move-image-to-heap.patch
20_fix-cast-warnings.patch
30_remove-non-public-gimpimage-pdb-header.patch
40_unescaped-left-brace.patch
50_replace-huge-by-inf.patch
60_avoid-no-translation-with-DH12.patch
series

ほとんどの *.patch は改行コードが LF (Linuxの改行コード)なのだけど、20_fix-cast-warnings.patch だけ、改行コードが CRLF (Windowsの改行コード)になっている。このままだと、patch を当てるときにエラーが出る。

改行コードの確認方法は以下。
od -c 20_fix-cast-warnings.patch

ずらずらと文字が表示されるけど…。
  • 中に \r \n がチラホラ混ざってるなら Windows の改行コード。
  • \n が混ざってるなら Linux の改行コード。
  • \r だけなら Mac の改行コード。

dos2unix というツールで、Windowsの改行コードを Linux の改行コードに変換できる。
pacman -S dos2unix
dos2unix 20_fix-cast-warnings.patch

gimp-texturize_2.1.orig.tar.gz を解凍。

*.patch を、src/ と同階層にコピー。

patch を当ててみる。
patch -u -p1 < 10_move-image-to-heap.patch
patch -u -p1 < 20_fix-cast-warnings.patch
patch -u -p1 < 30_remove-non-public-gimpimage-pdb-header.patch
patch -u -p1 < 40_unescaped-left-brace.patch
patch -u -p1 < 50_replace-huge-by-inf.patch
patch -u -p1 < 60_avoid-no-translation-with-DH12.patch

  • -u オプションは、パッチの形式だかフォーマットだかを指定しているらしい。
  • -p1 は、パッチ内のファイルパスの、1番目を無視する指定、らしい。hoge/fuga/piyo とファイルパスが書いてあった場合、-p1 なら fuga/piyo、-p2 なら piyo しか見ないのだそうで。

これで、Debian パッケージのソースコードになった。はず。

意味は無かった。 :

しかし、patch を当てた後のソースと、github 版のソースを比較してみたら、実処理の記述部分については github のソースにも修正内容が反映されていた。

_lmanul/gimp-texturize: Texturize plugin for the GIMP

処理部分に関しては、Debian版だけが特別なバグ修正をしてある、というわけではない模様…。

#2 [gimp] gimptool-2.0 が msys2 上で動いてくれない

Windows10 x64 1903 + msys2 上で、gimptool-2.0 を使って、GIMPプラグインのビルドができるのかどうかを試したのだけど。

_GIMP Developer Resources - How to write a GIMP plug-in

上記ページから hello.c を入手して、ビルドしてみようとしたけれど、エラーが…。

$  gimptool-2.0 --build hello.c
i686-w64-mingw32-gcc  -mms-bitfields -pthread -mms-bitfields  -ID:/msys32/mingw32/include/gimp-2.0  -ID:/msys32/mingw32/include/gegl-0.4 -ID:/msys32/mingw32/include  -ID:/msys32/mingw32/include/gio-win32-2.0  -ID:/msys32/mingw32/include/json-glib-1.0  -ID:/msys32/mingw32/include/babl-0.1 -ID:/msys32/mingw32/include  -ID:/msys32/mingw32/include/gtk-2.0  -ID:/msys32/mingw32/lib/gtk-2.0/include  -ID:/msys32/mingw32/include/pango-1.0  -ID:/msys32/mingw32/include/fribidi -ID:/msys32/mingw32/include  -ID:/msys32/mingw32/include/cairo  -ID:/msys32/mingw32/include/atk-1.0  -ID:/msys32/mingw32/include/cairo  -ID:/msys32/mingw32/include/pixman-1 -ID:/msys32/mingw32/include  -ID:/msys32/mingw32/include/freetype2  -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/harfbuzz  -ID:/msys32/mingw32/include/libpng16  -ID:/msys32/mingw32/include/gdk-pixbuf-2.0  -ID:/msys32/mingw32/include  -ID:/msys32/mingw32/lib/libffi-3.2.1/include  -ID:/msys32/mingw32/include/glib-2.0  -ID:/msys32/mingw32/lib/glib-2.0/include  -ID:/msys32/mingw32/include -o 'hello' 'hello.c'  -mwindows  -LD:/msys32/mingw32/lib -lgimpui-2.0 -lgimpwidgets-2.0  -lgimpmodule-2.0 -lgimp-2.0 -lgimpmath-2.0 -lgimpconfig-2.0  -lgimpcolor-2.0 -lgimpbase-2.0 -lgegl-0.4 -lgegl-npd-0.4  -lgmodule-2.0 -pthread -ljson-glib-1.0 -lbabl-0.1  -lgtk-win32-2.0 -lgdk-win32-2.0 -lgdi32 -limm32 -lshell32  -lole32 -Wl,-luuid -lpangowin32-1.0 -lpangocairo-1.0 -lpango-1.0  -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0  -lglib-2.0 -lintl
i686-w64-mingw32-gcc: error: 'hello.c': No such file or  directory

hello.c が無い? なんでや。あるやん。

む。もしかして、'hello.c' という感じで、「'」で挟まれてしまっているあたりがいかんのでは。

これ、要するに、i686-w64-mingw32-gcc でコンパイルとリンクをすればいいということだよな…。

仮にそうであるならばと、「'」を外しつつ、あちこちを並べ替えて、gimptool-2.0 を通さずに打ってみた。

i686-w64-mingw32-gcc -o hello hello.c -mms-bitfields -pthread -mms-bitfields -ID:/msys32/mingw32/include/gimp-2.0 -ID:/msys32/mingw32/include/gegl-0.4 -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/gio-win32-2.0 -ID:/msys32/mingw32/include/json-glib-1.0 -ID:/msys32/mingw32/include/babl-0.1 -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/gtk-2.0 -ID:/msys32/mingw32/lib/gtk-2.0/include -ID:/msys32/mingw32/include/pango-1.0 -ID:/msys32/mingw32/include/fribidi -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/cairo -ID:/msys32/mingw32/include/atk-1.0 -ID:/msys32/mingw32/include/cairo -ID:/msys32/mingw32/include/pixman-1 -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/freetype2 -ID:/msys32/mingw32/include -ID:/msys32/mingw32/include/harfbuzz -ID:/msys32/mingw32/include/libpng16 -ID:/msys32/mingw32/include/gdk-pixbuf-2.0 -ID:/msys32/mingw32/include -ID:/msys32/mingw32/lib/libffi-3.2.1/include -ID:/msys32/mingw32/include/glib-2.0 -ID:/msys32/mingw32/lib/glib-2.0/include -ID:/msys32/mingw32/include -mwindows -LD:/msys32/mingw32/lib -lgimpui-2.0 -lgimpwidgets-2.0 -lgimpmodule-2.0 -lgimp-2.0 -lgimpmath-2.0 -lgimpconfig-2.0 -lgimpcolor-2.0 -lgimpbase-2.0 -lgegl-0.4 -lgegl-npd-0.4 -lgmodule-2.0 -pthread -ljson-glib-1.0 -lbabl-0.1 -lgtk-win32-2.0 -lgdk-win32-2.0 -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid -lpangowin32-1.0 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl

通った。hello.exe が出来上がった。

できた hello.exe を、GIMP 2.10.14 32bit Portable samj版から呼んでみた。ダイアログは開かなかったけど、エラーメッセージウインドウに「Hello, world!」と表示された。これで動作は合ってるのかな…?

_GIMP Developer Resources - How to write a GIMP plug-in, part II

上記ページから入手できる、myblur1.c と myblur2.c も、同様にビルドしてみた。これも GIMP から呼び出したら、ちゃんとぼかしフィルタとして動いてくれた。

ただ、件のサンプルは、GIMP 2.10 より古いバージョン向けに書かれたサンプルのようで、コンパイル中に、

「gimp_drawable_get は非推奨になったから、代わりに gimp_drawable_get_buffer を使え」
「gimp_drawable_detach は非推奨になったぞ」
「gimp_pixel_rgn_init の代わりに gimp_drawable_get_buffer を〜」
「gimp_pixel_rgn_get_pixel の代わりに gegl_buffer_sample を〜」

等々、大量の警告が表示された。

GIMP 2.10 から本格導入された GEGLに対応させろや、ということだよな…。それって簡単に修正できるのかな。ググってみたけど、ちょっとそういうわけにはいかない感じ。

2018/11/15(木) [n年前の日記]

#1 [windows][cg_tools] 高速にGIFアニメを再生できるビューアはないのだろうか

TIC-80の動作画面をGIFアニメとしてキャプチャしても、正常に再生・描画できるビューアが見当たらなくて、ちょっと困ったり。1フレームあたり、2/100秒のwaitが入ってるはずだけど…。

Windows10 x64上で、 _IrfanView 4.51_nomacs 3.10_XnView 2.46_MassiGra 0.45 を使って表示してみたけれど、どうにも再生速度が遅い。Webブラウザ(Waterfox 56.2.5, Google Chrome 70.0.3538.102, Internet Explorer 11)上ではそれらしい速度で再生されるのだけど。

GIFアニメ専用を謳う、 _GIF Viewer_7GIF 1.2.2 を使って再生確認してみたけれど、やはり遅い。

色々試してみたけれど、 _Honeyview 5.31 と、Windows10 に標準で入ってる「フォト」の2つだけが、Webブラウザと同等の速度で再生できた。

GIFアニメが誕生してから結構な年数が経ってるはずだけど、まさかローカルで動くビューアの類ですら、ここまで不十分な対応状況だったとは…。

もっとも、GIFアニメは、「ブラウザ上でそれらしく表示できれば後はどうでもいいじゃん」てな扱いを受けている画像フォーマット、ということでもあるのだろうな…。Web上でしか使われていない気もするし。

#2 [zatta] 天井には広大なスクリーンが眠っている

気になる製品ニュースを見かけた。

_セガトイズ、子どもをスムーズに寝かし付けられる「動く絵本プロジェクター」 - 家電 Watch

個人的に、プロジェクターの類がちょっと気になったりする時期がチラホラあったりするのだけど。自分の部屋は散らかってるので、大きなスクリーンを設置・展開する場所も無いし、これじゃ導入できないよなあ、と毎回諦めていたりするわけで。

しかし、前述の製品ニュースを目にして、その手があったかと…。天井って、全然使ってないよなあ…。日本の各御家庭において、天井には広大なスクリーンが眠っている…のかもしれない。

気になってググってみたけど、上に向かって投影可能な製品って意外と少ないのだろうか…。排熱の問題もあるだろうから、製品によっては「そんな使い方は想定してません。壊れます」と設計者から言われそう。下手したら寝落ちしてるうちに製品が燃え出して火事になったりして。

_the360.life - 壁が、天井が、スクリーンになる! 寝室で映画を観るための新アイデア
_天井にも投影可能な『DBPOWER ミニプロジェクター』がコスパ抜群!!
_プロジェクタで天井に映像を投影!寝ながら映画を見るならこのモデル!

2017/11/15(水) [n年前の日記]

#1 [raspberrypi][love2d] piloveを試用

Raspberry Pi上で love2d を動かすことに特化した、pilove というSDカードイメージがあるようで。

_PiLove - LOVE on RaspberryPI

もし、コレを使って音が鳴れば、少なくとも Raspberry Pi Zero W + love2d で音が鳴る状態にすることは不可能ではない、てなことぐらいは分かるかもしれないなと思えてきたので試用してみようかなと。

インストール方法。 :

公式サイト上には、pilove 0.3 のリンクしかないけれど、 _Index of /downloads には 0.4 が置いてあったので、pilove 0.4 (pilove-0.4.img.gz)をDL。変更履歴は、 _pilove/changelog.txt に書いてある。

解凍すると、中には .img ファイルが入ってた。

Windows10 x64 + _Win32 Disk Imager 1.0.0 を使って、.imgファイルを microSDに書き込む。今回は、Team製 8GB の microSDHC に書き込んでみた。

Raspberry Pi Zero W に microSDHC を差して起動。デフォルトユーザ名は sysop。パスワードは posys。

love2dの動作確認。 :

/usr/local/games/love-0.10.2/src/love を実行。

パーミッションが違うと怒られた。覗いてみたら、所有者について sysop と root が混在してる。とりあえず変更してみる。
cd /usr/local/games/love-0.10.2/src
sudo chown sysop:sysop *
sudo chown sysop:sysop ./.*

一々場所を指定して起動するのは面倒臭いので alias に登録。~/.bashrc に追記しておく。
nano ~/.bashrc
alias love='/usr/local/games/love-0.10.2/src/love'

あるいは、該当の場所まで PATH を通すとか。
export PATH=$PATH:/usr/local/games/love-0.10.2/src

一応、何も指定しないで love を実行したら、例の画面は表示された。

問題点。 :

現状では、Raspberry Pi Zero W の WiFi(無線LAN)が使えない。pilove は、raspbian jessie を元にして構築してあるらしいけど…。無線LAN関係は入ってないのか…。

LAN端子を備えた Raspberry Pi1 / Pi2 / Pi3 ならどうにかなるのかもしれないが、無線LANしかついてない Raspberry Pi Zero W では外部からアクセスしようがない。となると、love2d用のソースも、画像ファイルも、サウンドファイルも転送できない。これでは動作確認すら満足にできない…。結局音は鳴るのか、鳴らないのか。これでは分からん…。

#2 [raspberrypi] Raspberry Pi Zero Wにraspbian jessieをインストール

piloveをビルドできないか試したくなってきたので、raspbian jessie を Raspberry Pi Zero W上にインストール。ちなみに、raspbian の現行版は stretch。一つ前の版が jessie。

raspbian jessieを入手。 :

raspbian jessie を入手しようとしたものの、公式サイト上では見つからず。

_Raspberry Pi Downloads - Software for the Raspberry Pi

しかし、JAISTのサーバに raspbian jessie が残ってた。

_Index of /pub/raspberrypi/raspbian_lite/images/raspbian_lite-2017-07-05
_Index of /pub/raspberrypi/raspbian/images/raspbian-2017-07-05

2017-07-05-raspbian-jessie.zip をDLして解凍。中に入ってた .img を Win32 Disk Imager を使って microSDHC (Team製 8GB)に書き込み。Raspberry Pi Zero W に差し込んで起動。すんなり起動してくれた。

色々設定。 :

画面解像度、ホスト名、ロケール等を設定。piユーザのパスワードも変更。
sudo raspi-config

rootのパスワード変更 + ユーザを追加。以下を参考に作業。

_RaspberryPiをRaspbianで使う場合の初期設定メモ(ユーザ追加) - Qiita

sudo passwd root
sudo adduser 新規ユーザ名
sudo gpasswd -a 新規ユーザ名 sudo
sudo gpasswd -d pi sudo

sudo nano /etc/sudoers.d/010_pi-nopasswd
or
sudo nano /etc/sudoers
pi ALL=(ALL) NOPASSWD: ALL をコメントアウトして、piユーザが root になれないようにする。

usermod を使って、新規ユーザを各グループに登録
$ groups pi
pi : pi adm dialout cdrom audio video plugdev games users input netdev spi i2c gpio

$ sudo usermod -aG sudo,pi,adm,dialout,cdrom,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio 新規ユーザ名

$ groups 新規ユーザ名
新規ユーザ名 : 新規ユーザ名グループ adm dialout cdrom sudo audio video plugdev games users input netdev pi spi i2c gpio

リポジトリのURLを変更。 :

デフォルト設定だとアクセスが遅かったので、日本のミラーサーバのURLに変更。今回は JAIST を利用させてもらうことに。
sudo nano /etc/apt/sources.list

以下を追加して、元々のURLはコメントアウト。
deb http://ftp.jaist.ac.jp/raspbian/ jessie main contrib non-free rpi

apt-get でパッケージ等を更新。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo rpi-update

フォントのインストール。 :

sudo aptitude install fonts-ipafont fonts-ipaexfont fonts-takao fonts-mplus fonts-migmix fonts-mmcedar fonts-umeplus fonts-motoya-l-maruberi fonts-motoya-l-cedar fonts-horai-umefont

sudo aptitude install xfonts-mplus ttf-kochi-gothic-naga10 ttf-kochi-mincho-naga10 xfonts-naga10 xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable xfonts-shinonome
xfonts-* は、今時は要らないかも。

日本語フォルダ名を英語フォルダ名に変更。 :

/home/pi/ 以下に日本語のフォルダ名がずらずら並んでるけど、CUIで作業する際に指定が面倒臭い。英語名にする。
sudo apt-get install xdg-user-dirs-gtk
LANG=en_GB.utf8 xdg-user-dirs-gtk-update
LANG=C ではなくて LANG=en_GB.utf8 であることに注意。

しかし、上手く行かない。以下ならなんとかなった。ただし、古い日本語フォルダ名が残ってしまって、それらは自分で削除しないといけなかった。
LANG=en_GB.utf8 xdg-user-dirs-update --force

_Ubuntu のデスクトップ環境のフォルダ名を日本語から英語にする - Qiita

自動ログイン設定の変更。 :

piユーザではなく、新規ユーザで自動ログインするようにしたい。
sudo vi /etc/lightdm/lightdm.conf
[SeatDefaults]
autologin-user=ユーザ名
autologin-user-timeout=0

_Debian Jessie Wheezy 自動ログイン lightdm系 ? Linux. リナックス. ヒト ノ タメ ノ.

IPv6無効化。 :

sudo nano /etc/sysctl.conf

以下を追加。
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

sudo sysctl -p を実行して反映。

_[Raspbian] IPv6を無効にする方法(Raspbian Jessie Lite) - Life with IT

sshの接続が切れないように設定。 :

/etc/ssh/sshd_config の ClientAliveInterval を設定。
sudo nano /etc/ssh/sshd_config
ClientAliveInterval 15

vim をインストール。 :

sudo aptitude install vim
sudo aptitude install vim-nox

vimの設定変更。せめてソースコードの色付けぐらいはする。
vi ~/.vimrc
syntax on

サウンド再生や変換用ツールをインストール。 :

sudo aptitude install mpg321 mpg123 vorbis-tools flac sox libsox-fmt-mp3 libsox-fmt-all

wav, mp3, ogg の再生は以下。
aplay hoge.wav
mpg123 hoge.mp3
ogg123 hoge.ogg

でも、sox に入ってる play を使えば大体のフォーマットは再生できる模様。mp3は再生できなかったが、libsox-fmt-mp3 をインストールしたら再生できるようになった。
play hoge.flac
play hoge.wav
play hoge.ogg
play hoge.mp3

_Debian User Forums - View topic - Can't play mp3 files with play (sox)
_SoX(Sound eXchange)でMP3を扱う

microSDHCの速度測定。 :

sudo aptitude install hdparm
sudo hdparm -t /dev/mmcblk0

piloveをビルドしようと試みたが失敗。 :

ここまでやっておいてアレだけど、raspbian jessie 上では、pilove をビルドできなかった。

_skarbat/pilove: Love2D on the Raspberry PI

「Intelベースシステム、QEmu, NBDドライバ、xsysrootツールが必要」と書いてある。Raspberry Pi 実機で作るわけではなかったのか…。しかも pipaOS がどうのこうのと書いてある。なんやねん。そのOS。

retropie-setupを利用してSDL2をインストールしようと試みたが失敗。 :

piloveがダメなら、retropie-setup はどうだろう。

_RetroPie/RetroPie-Setup: Shell script to set up a Raspberry Pi/Odroid/PC with RetroArch emulator and various cores

mkdir retropie-setup
cd retropie-setup
git clone https://github.com/RetroPie/RetroPie-Setup.git
cd /RetroPie-Setup
sudo ./retropie_setup.sh sdl2
なんだかよく分からないメニュー画面が出てきた。SDL2だけをビルドしてくれるわけではナサゲ。

#3 [raspberrypi][love2d] raspbian jessie上でSDL2とlove2dをビルド

pilove も retropie-setup も raspbian jessie 上で動かせなかったので、仕方なく以前と同様の手順でビルド。SDL2は OpenGL を無効にしてビルドすることで、Raspberry Pi の OpenGL ES を使って描画できるようにする。

SDL2のビルド。 :

_Golang と SDL2 でゲームを作る - KaoriYa
_SDL2-2.0.6 on Raspberry Pi - ChoccyHobNob

sudo aptitude install automake build-essential mercurial qt5-default libtool libasound2-dev libaudio-dev libesd0-dev libsndfile1-dev libmodplug-dev libopenal-dev libfontconfig1-dev libpango1.0-dev freeglut3-dev libfreeimage-dev libjpeg-dev libtiff5-dev libwebp-dev libxcursor-dev libxi-dev libxrandr-dev libxss-dev libudev-dev libsmpeg-dev libxinerama-dev
mkdir ~/sdl2
cd ~/sdl2
wget https://www.libsdl.org/release/SDL2-2.0.5.tar.gz
tar xzf SDL2-2.0.5.tar.gz
cd SD2-2.0.5
mkdir build && cd build

configure をする段階で、--host=arm-raspberry-linux-gnueabihf をつけたり外したりしてみた。
../configure --disable-pulseaudio --disable-esd --disable-video-mir --disable-video-wayland --disable-video-x11 --disable-video-opengl

SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   :
Audio drivers   : disk dummy oss alsa(dynamic) nas(dynamic)
Video drivers   : dummy opengl_es2
Input drivers   : linuxev linuxkd
Using libudev   : YES
Using dbus      : YES
Using ime       : YES
Using ibus      : NO
Using fcitx     : NO
../configure --host=arm-raspberry-linux-gnueabihf --disable-pulseaudio --disable-esd --disable-video-mir --disable-video-wayland --disable-video-x11 --disable-video-opengl

SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   :
Audio drivers   : disk dummy oss alsa(dynamic) nas(dynamic)
Video drivers   : rpi dummy opengl_es1 opengl_es2
Input drivers   : linuxev linuxkd
Using libudev   : YES
Using dbus      : YES
Using ime       : YES
Using ibus      : NO
Using fcitx     : NO

どうやら、--host=arm-raspberry-linux-gnueabihf をつけて configure しないと、Video driver に rpi が出てこない模様。このオプションは必須っぽいな…。

ちなみに、「--disable-video-mir --disable-video-wayland --disable-video-x11 --disable-video-opengl」の指定で、OpenGL を無効にしているらしい。

raspbian jessie ではなく、raspbian stretch + SDL2-2.0.5 で configure した場合の結果は以下。
../configure --host=arm-raspberry-linux-gnueabihf --disable-pulseaudio --disable-esd --disable-video-mir --disable-video-wayland --disable-video-x11 --disable-video-opengl

SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   :
Audio drivers   : disk dummy oss alsa(dynamic) nas(dynamic) sndio
Video drivers   : rpi dummy opengl_es1 opengl_es2
Input drivers   : linuxev linuxkd
Using libudev   : YES
Using dbus      : YES
Using ime       : YES
Using ibus      : YES
Using fcitx     : NO

raspbian jessie上で configure した時と違って、Audio に、sndio というのがついてる。libsndio-dev をアンインストールしたほうがいいのかな。
sudo aptitude remove libsndio-dev

libsndio-dev をアンインストールした状態で configure すると以下になった。
SDL2 Configure Summary:
Building Shared Libraries
Building Static Libraries
Enabled modules : atomic audio video render events joystick haptic power filesystem threads timers file loadso cpuinfo assembly
Assembly Math   :
Audio drivers   : disk dummy oss alsa(dynamic) nas(dynamic)
Video drivers   : rpi dummy opengl_es1 opengl_es2
Input drivers   : linuxev linuxkd
Using libudev   : YES
Using dbus      : YES
Using ime       : YES
Using ibus      : YES
Using fcitx     : NO

makeしてインストール。
make
sudo make install

love2dをビルド。 :

各ページを眺めながら、必要になりそうなパッケージを列挙してインストール。

_Building LOVE (日本語) - LOVE
sudo aptitude install build-essential pkg-config libfreetype6-dev libopenal-dev libvorbis-dev libtheora-dev libmpg123-dev libluajit-5.1-dev libphysfs-dev libmodplug-dev

sudo aptitude install autotools-dev automake libtool libdevil-dev libogg-dev libflac-dev libflac++-dev libmng-dev

# raspbian jessie
sudo aptitude install libturbojpeg1-dev

# raspbian stretch
sudo aptitude install libturbojpeg0-dev

_pilove/build-love2d.sh at master - skarbat/pilove
sudo aptitude install build-essential pkg-config libfreetype6-dev libopenal-dev libvorbis-dev libtheora-dev libmpg123-dev libluajit-5.1-dev libphysfs-dev libmodplug-dev

sudo aptitude install devscripts git-core debhelper dh-autoreconf libasound2-dev libudev0 libudev-dev libdbus-1-dev libx11-dev libxcursor-dev libxext-dev libxi-dev libxinerama-dev libxrandr-dev libxss-dev libxt-dev libxxf86vm-dev libgl1-mesa-dev libpulse-dev libibus-1.0-dev pulseaudio libraspberrypi-dev

love2d 0.10.2 の Linux用ソースをDLしてビルドする。
mkdir ~/love2d
cd ~/love2d
wget https://bitbucket.org/rude/love/downloads/love-0.10.2-linux-src.tar.gz
tar zxf love-0.10.2-linux-src.tar.gz
cd love-0.10.2
./configure
make
sudo make install

動作確認の結果。 :

love で実行。例の画面が出た。

サウンドを鳴らすソースを与えて動作確認してみた。以下のような警告が表示されたものの、音が鳴った。…やった! 鳴ったぞ! ようやく音が聞こえたわ…。
AL lib: (WW) alc_initconfig: Failed to initialize backend "pulse"

つまり、raspbian jessie上で SDL2 や love2d をビルドする分には、ちゃんと音が鳴ることが分かった。Raspberry Pi + love2d は音が鳴らない、というわけではないらしい。

しかし、raspbian stretch でやると音が鳴らないわけで…。SDL2、もしくはlove2dは、raspbian stretch に未対応ということだろうか? love2d を使いたいなら、raspbian jessie を使うしかない?

それとも pulseaudio が絡んでたりするのだろうか。例えば pilove の公式サイト上に書いてあるとおりに、
pulseaudio --start
とやってから love2d を動かすと、音が鳴らなくなるし…。
pulseaudio --kill
とやってから再度試したら音が鳴ったし…。

pulseaudio ってそもそも何なのでしょうか。ググって各説明ページを眺めてみてもピンとこない。Linuxのサウンドシステム関係はよく分からんなあ…。いや、Windowsのサウンド関係もちゃんと分かってるわけでもないけれど。

raspbianはバージョンによってpulseaudioの扱いが違う。 :

raspbian関係の記事をググってたら気になる話が。raspbian jessie までは、Bluetooth から音を鳴らすために標準で pulseaudio がインストールされていたけど、raspbian stretch では別の何かを使って Bluetooth から音を鳴らせるようになったので pulseaudio は標準でインストールされていないらしい。

_Raspbian StretchではPulseaudioを使わなくなったのでxrdpのサウンドをどうするか思案中
_Raspbian Stretch has arrived for Raspberry Pi - Raspberry Pi

そのあたりが関係してるのかな…。

#4 [raspberrypi] microSDを抜き差ししやすいaspberry Pi Zero W用のケースが欲しい

今現在、Raspberry Pi Zero W のケースとして、 _公式の白と赤の例のケース を使ってるけど。microSDを差し替えるのが面倒臭い。
  1. 一旦ケースの蓋を外して
  2. ケースから基板を取り出して
  3. microSDを差し替えて
  4. またケースに基板をはめ込んで
  5. 蓋をして…。
面倒臭い。特に、ケースにハメ込んである基板をグリグリ引っ張り出すのが面倒臭い。

基板をケースに入れたまま microSD を差し替えられるケースって無いのかな…。

ググった感じでは、種類は少ないけど一応ありそうな気配も。でも、見た目は差し替え可能なように見えつつも、実際には差し替えが容易ではない、的な罠がありそうな気配も。そもそも入手性もアレだし。

まあ、最悪、スペーサーだけを基板につけて、基板をむき出しにしておけば目的が果たせそうな気もするけど。それもそれでなんだかアレだなと。

2016/11/15(火) [n年前の日記]

#1 [zatta][neta] Webを街にできないものか

ふとなんとなく。Webを3Dで街にできたりしないものかなと馬鹿妄想を。昔、GeoCitiesが、ユーザのWebスペースのURLを、通りの名前と番地で表現してたけど、あんな感じのノリで。まあ、今の GeoCities はフツーにユーザアカウント名でURLを作ってるけど…。

今はWebブラウザもWebGLという3D表示機能を持ってるし。各サイト間のリンク状態から道路を作って、Webサイト内のファイルサイズやファイル数や配色で建物の大きさやデザインを決定して、そうやって生成された街の中をウロウロ、みたいな。

もっとも、実用性は皆無だろうけど。今までは1クリックで目的のページに飛んでいたのに、WASDキーとマウス操作で数分かけて辿り着く、みたいな感じになっちゃうだろうから、情報の閲覧という点では面倒臭くてやってられないはず。ではあるけれど、例えばこれから普及するであろうVRのソレと絡めれば専用のコンテンツやモデルデータを用意しなくても大量の仮想3D空間が得られるだろうから、いつまでも際限なくウロウロできそうでもあり。

と思ったけど、セカンドライフモドキになるだけだろうか。 _BOOMTOWN っぽいソレになってくれないかな。

ていうか既にどこかでそういう実験をやってそう。絶対にやってる予感。と思ってググってみたら、 _インターネット・アドベンチャー なるソレを見かけて、やっぱり既にあったのかと。恥ずかしながら今頃知りました。たぶんコレ、問題点も色々と明らかになったんだろうな。それらの問題点は今の技術で解決できたりしないのだろうか。それとも根本的なところで問題があって上手くいかなかったのだろうか。

_メタバース に近いとされるサービスのアレコレを眺めてみたけど…。専用の空間を作ってたものばかりだな…。「やることがない」とユーザが思って離れてしまうあたりもネック、なのだろうか。分からんけど。

#2 [nitijyou] 某サイトを更新

某所の某サイトを更新。

pdfをキャプチャしてレタッチしてロゴのサムネイル画像を作るのが地味に面倒。たかだか十数ファイルなのに、3時間ぐらいかかった…。なんとか効率化できないものか…。

2015/11/15() [n年前の日記]

#1 [pc] 親父さんPCのOSをWindows10にアップグレードした

なんでも、親父さんの友人が Windows10 にアップグレードしたそうで。その話を聞いた親父さんも、最新のOSを使ってみたい、今なら無料でアップグレードできるんだろ? と言い出して。

幸い、親父さんが持ってる周辺機器 ―― EPSON製スキャナやプリンタ、Canon製プリンタやデジカメについて調べてみたら、一応ドライバ等はWindows10対応版が揃ってるようで。であれば、アップグレードしてもいいかなと。

ちなみに、親父さんが今まで使ってたOSは、Windows7 x64 Home。

まずはバックアップ。 :

さて、万が一アップグレードに失敗したときのために、現状のOSシステムをバックアップしておかないといけない。一応、Windows10にも、以前のOSに書き戻せる機能がついてる、という話をどこかで見かけた記憶もあるけれど。もし Windows10 が起動しなかったら、おそらくどうしようもなくなるわけで。

バックアップの方針としては、どうやら二つの選択肢がある模様。
  • Windows7 に標準で入ってるバックアップ機能を使ってシステム部分だけをバックアップする。
  • HDDのパーティション単位で丸々イメージを残せる、バックアップ用のフリーソフトを導入する。

今回は、後者を選んでみた。EaseUS Todo Backup というフリーソフトを使わせてもらう。

親父さんPCは、システムドライブがSSD。ソレを、USB2.0接続の外付けHDDにバックアップする。システムドライブは200GBほど使ってたけど、時間にして約2時間程度でバックアップが取れた。

アップグレード開始。 :

Windows7 のタスクトレイにずっと鎮座し続けている、Windows10マークのアイコンをクリック。指示通りにボタンを押していった。

ダウンロードも含めて、おそらく2〜3時間程度でアップグレードできた模様。

親父さんが普段使ってるソフト ―― Canon Zoom Browser EX やホームページビルダーも一応動いてるみたいなので、これでしばらく様子を見てほしい、てな話に。

意外とスンナリ、アップグレードできたなあ…。AMD CPUが載ってるハードだから何かトラブルが起きるのではと思ってたけど、ラッキーだった。

2014/11/15() [n年前の日記]

#1 [prog] Visual Studio 2013 Expressをアンインストール

せっかく Visual Studio 2013 Community が配布されたのだから、Express版はアンインストールして Community 版だけ入れてる状態にしようかなと。

しかし、VS2013 Express Web をアンインストールした直後に Express Desktop をアンインストールしようとしたら1時間経っても復元ポイント作成が終わらない。途中でキャンセルを押しても処理が終わるまでまた1時間。

どうやら Visual Studio 系は、何かインストール・アンインストールするたびにOS再起動をしたほうがいいようで。前にも同じようなところでハマった記憶があるような…。

ひとまず、OS再起動 → VS2013 Community をアンインストール → OS再起動 → Desktop をアンインストール → OS再起動 → Community を再インストールしたけれど、1つにつき1時間ほどかかる感じで。半日ほど延々とアンインストール・再インストール作業をする羽目に。

#2 [nitijyou] 歩ける寝袋が届いた

Amazon に注文していた、歩ける寝袋が届いた。DOPPELGANGER 人型寝袋 ver.5.0 DS-01B Andy とやら。最低使用温度 5度と書いてある。5,577円。

早速被ってみたら結構暖かい。が、これだけでホカホカというわけにはいかなくて。Amazonのレビューにあったとおり気温が15度より下がると厳しい感じ。部屋の温度が13度の状態でそのまま眠れそうか横になってみたけれど手足が寒く。もう少し何か工夫しないとこれで寝るのはちょっと無理だなと。それでも単に毛布をひっかけている状態より全然動きやすいので、しばらく使ってみたいなと。Amazonレビューによると、耐久性に難があって、すぐにファスナーが壊れるらしいので、注意しながら使わないと。

2013/11/15(金) [n年前の日記]

#1 [nitijyou] 腹痛で目が覚めたり

トイレに駆け込んだけど、起きたばかりで腹のほうに血が集中したせいなのか、意識が朦朧としてきて…。年に何回か、こういうことがあるなあ…。

#2 [anime] ルパン三世TVSPを視聴

「ルパン三世 princess of the breeze〜隠された空中都市〜」を視聴。

前回は放送されてることすら知らずに見逃したけど、今回はちゃんと見れた。アダルトでハードな方向性は「峰不二子〜」で思いっきりやってくれたので、TVSP版は思う存分ファミリー向けを追求できますなあ、てなことを思いながら見てみたり。

ツイッターを眺めながら視聴してたら、ルパンの目がキラキラしてるのがしっくりこない、てな感想を多数見かけたのだけど。TV版一期の大塚康生さんのキャラデザもこんな感じだった記憶があるので、個人的には全然気にならなかったり。…でもまあ、一般的なイメージではルパンの目はキラキラしていない、大塚版キャラデザなんて相変わらずほとんど誰も知らない、と分かったことは収穫、なのかしらん。と言っても、大塚版も時期によって変わってるからアレですけど。一期を見てない人が多い、ってだけの話なのでしょうな。たぶん。

カリ城やラピュタからの引用というかオマージュというか、そのあたりに反応してた方が多かったように見えたのだけど。自分が気付いた範囲では、ハイジ、未来少年コナン、トトロ、紅の豚からも引用してたように見えたので、おそらくはこの機会に、宮崎アニメ全般を網羅してみたい、てな試みをしてたのかなと思えたり。もしかすると、知識が浅い自分が気づかなかっただけで、パンダコパンダ、空飛ぶゆうれい船、ガリバーの宇宙旅行、赤胴鈴之助、太陽の王子ホルス…あたりまで抑えてた可能性だって…あるのかもしれないなと。

何にせよ、恥も外聞も投げ捨てて(?)、徹底的に宮崎アニメからアレコレ拾ってきて組み立てた作品というのも珍しいと思うわけで。「ナディア」「EVA」を若干連想させるほどに、ブレーキ踏んでなかった印象もあるし。何事も中途半端ではいかん、やるならとことんやっちゃうべし! と自分は思ってしまうほうなので、これはこれでアリじゃないか、と思えました。…にしても、世間一般ではカリ城とラピュタぐらいしか覚えてもらえていない、未来少年コナンすら見てない人がほとんど、と分かったこともまた収穫、なのかしらん。未来少年コナンって再放送とかあまりしてないのかなあ。もったいないなあ。

ツイッター上で、「引退を表明した宮崎駿監督へ向けて、今の作り手世代からの感謝の気持ちも含まれている作りなのでは?」という書き込みを見かけて、なるほどと。「僕達はこれほどまでに、貴方の作ったアニメを見て育ちました。今までありがとう!」みたいなソレなのかなと。もしそうだったら…なんだかええ話や…。スタッフはそういうつもりでやったわけじゃ無いとしても、そういうことにしといたほうが美味しいんじゃね? と思えてきました。そういうことにしておこう!

富野監督出演のCMが挟んであってビックリ。 :

途中で、富野監督が登場するCMが放送されてビックリ。しかも、「アニメばかり見てアニメ作っちゃいかん!」のメッセージまで披露されて。うわあ。よりにもよって、こういう作りの作品を放送しているタイミングで、ソレを言ってくるか…。偶然だろうけど、なんかスゴイ。

宮崎駿監督は、冒険小説や児童文学をアニメに翻訳してきた節があるし、富野監督は、思想書や大衆芸能をアニメに翻訳してきた節があるように自分は思っているのだけど。それと比べると、今の世代の作り方は ―― 既存のアニメ作品をコラージュして作ってしまうその姿は、まるでスーパーで惣菜を買ってきて食卓に並べてるだけ、のように見えるのかもしれないなと思えてきたり。食材買ってきて下ごしらえからやらないと料理をしたとは言えないんだよ、と諭されちゃってる、みたいな話なのかなあ。…でも、宮崎アニメや富野アニメって、ほっぺたが落ちそうなぐらいに旨いから、食卓に並べてみたいと…思っちゃうよなあ。

企画、脚本、演出レベルでは、DJ感覚の作りが主流になってるのかな、てなこともチラリと思ったり。「コレとコレを『与作』で繋ぐとは!」みたいな楽しみ方になってるところもあるのかしら。

喫煙シーンに感心。 :

今回出てきた喫煙シーンって、かなり秀逸な出来だったように思えたり。

まず、ルパンと次元がちゃんと喫煙していたところがグッド。「へ? そんなの当たり前だろ?」と思う人が居るかもしれないけど、全然当たり前じゃないですよ。一時期のルパンTVSPでは、煙草一本すら吸えなかったわけで…。たぶん、ファミリー向けを意識せよ、てのが行き過ぎちゃって、脚本に書いてあってもプロデューサーさんから「これは今の御時勢にマズイですよー(苦笑い」とか言われちゃって没になってたのかなと勝手に邪推してますけど。何にせよ、「煙草を吸わないルパンなんて、ルパンじゃねえよ!」と、その一点だけは譲らなかった・守って見せたスタッフは偉いなと。まあ、プロデューサーさんがちょっと改心(?)してくれた可能性もありそうだけど…。

そして。「吸う吸わないはアンタの自由だ勝手にしな」「だけど、場をわきまえずにスパスパするヤツはカッコ悪いんだよ!」「カッコイイ男ってのはこういう吸い方ができるヤツじゃねえのか?」てなあたりの啓蒙を、美人で強い母ちゃんには頭の上がらない男達という、ちょっと笑いを交えたやり取りを使って自然に誘導していったあたりに、「この脚本…上手いぞ…!」と。しかも、そのやり取りの結構後で出てきた喫煙シーンでは、「犯罪者や荒くれ者だけど、こういう部分では気配りするあたり、基本的には優しいおじさん達なんだろうな…」と印象付けちゃう効果も期待できるわけで。

ファミリー向け作品の中で喫煙シーンを描く手管としては、100点満点中120点の出来じゃないのかと感心させていただきました。いやー、今後、コレを超える喫煙シーンは、ちょっと作れないんじゃないかな…。もちろん、ファミリー向けという檻の中では、という話ですけど。

自分は未見なのだけど。なんとなく、宮崎アニメの「風立ちぬ」の喫煙シーンを ―― 呼吸器系の病気を患ってる奥さんの隣でスパスパ吸っちゃう旦那さん、のソレを思い出したりもして。なんだか世間の一部でそのシーンに食ってかかってた人達が居ると聞くわけで。そのシーンと比べると、今回のソレは、なんだか対照的な描き方だったりしないのかなと。

もちろん、「風立ちぬ」のそのシーンは、そういう時代だったこと、旦那さんがどんだけ身勝手な人間なのか象徴してること、しかし奥さんを気づかう気持ちがゼロではないあたりがますます性質が悪いこと、などなど、1つのシーンに多重の意味を含めていることが話を聞いてるだけでも容易に推測できるので、「宮崎アニメって、やっぱりとんでもねえ」と思えてくる恐ろしいシーンなわけですけど。それにしても、煙草=悪、という認識を持って描かないとそういうシーンは成立しないわけで…。悪いものを悪いものとしてしっかり描いてるのに、なんでこの人達は文句を言うんだろ? と世間様の一部に対して疑問が湧かないでもないですが。

それはともかく。次元がフツーに 敵を射殺していたり、最後のあたりで 「正義の味方の時間はここまでだ」とルパンに言わせたあたり、「ルパンという作品は、本当は、こんなのどかな作品じゃないんだよなあ」とスタッフが思ってそうな部分がチラチラ見えた気もして、そのあたりも興味深かったりして。

#3 [anime] ヴァルヴレイヴ二期、1〜5話を視聴

HDDレコーダに溜めてた分をようやく視聴。今頃気付いたけど、「ヴァルブレイブ」じゃなくて「ヴァルヴレイヴ」だったのね…。自分、間違えて書いてた…。

感想。お、お、面白い…! あまりに面白くて、録画していた分を一気に通して見てしまったり。先が読めねえ…どうなるんスかコレ…。

1話目。最初のあたりを見て、やっぱりこのアニメ、戦闘シーンがとにかくカッコイイなと再認識。そして、最後のあたりの 「半分こだ!」に、なんだかニヤニヤ。やっぱり、少年二人という図は、イイ…。って何が「イイ…」なんだか分かんないけど。そしてラストにOP曲。クーッ。この配置、カッコエエ…。ていうかこのOP曲カッコエエ! うっかり自分も歌いたくなるぐらいカッコイイ。夜中に絶叫したらパトカーやってくるから歌わないけど。

2話目。盛り上げるなあ…。やっぱり 大気圏突入は燃えますな! いや、画面の中で実際燃えちゃってるけど! 個人的には、熊谷脚本だった点も気になったり。こういう話が得意な脚本家さんなのかしら。今後もますます戦力として頼りになりそうな…。

3、4話目。そういう設定だったのか…。これは…なんだか切ない…。 過去の映像がパキーンパキーンと割れていくあたりに、イイ歳して「うわあ…うわああ…」と思ってしまったり。主役機がカッコよく大活躍してるのに、 その操縦者は…。 強いプラス方向と強いマイナス方向が同居しちゃってる展開に、これはクルわあ…と。

5話目。敵側の陰謀?を説明していく回、だったのかしら。個人的にちょっと気になったのは、コレも熊谷脚本だった点。アレ? 一期の担当回や、二期の二話目等、自分の中では評価が高かったのだけど…。変だな…。でも、もしかすると、この後、複数話担当していて、コレは溜めてる回なのかもしれないか…。

もしかして、本編の謎を開示していく回って、結構難しいものなのかなと思えてきたり。そういう回って、必ず詰め込まないといけない情報・説明部分が一定量あるから、人間ドラマの部分に割ける量は少なくなっちゃうのだろうなと。例えば、登場人物の過去のエピソードなどは、視聴者が感情移入できるところがあるだろうけど、舞台設定・世界設定って、これといって感情移入できる部分があるとも思えんし。…でもまあ、主に設定開示しかしてなくても、盛り上げてる作品・回も見かけるし。そのあたりも見せ方次第というか、何か手管があるのかもしれないか…。

ていうか、別に毎回無理矢理盛り上げる必要はそもそもないなと気付いたり。TVアニメなのだから、緩急・コントラストをつけていったほうが…。いや、映画もそうか。等速より、加速減速が感じられるほうが楽しいはず、みたいな。

何にせよ、今後が楽しみです。いやー、先が読めねえ…。

「モルモットにしろ!」になんだか感心。 :

そういえば、一話で「僕をモルモットにしろ!」と叫ぶ(も同然の)シーンがあって、「おお…スゲエ…」と思ってしまったり。

というのも、数日前に、「これじゃ私達はモルモットじゃないか!(プンスカ」の台詞ってなんだか浅いよな、「俺をモルモットにしろ!」の台詞があってもおかしくないんじゃないか、と思ったからで。ただ、その時は、「そんな台詞を吐くアニメなんて作るわけないか」と浅はかに結論付けてしまって。ところが自分がそんなことを思っていたちょっと前に、「モルモットにしろ!」と叫ぶ(も同然の)アニメが既に放送されてたとは…。浅かったのは自分だった!というオチに。

やっぱりそっちもアリだよな…。ちょっと問題発言かもしれないけど、例えば、太平洋戦争中の特攻志願兵の方なども、そういう心理があったんじゃないか、と思うわけで。「自分が犠牲になることで家族が守れるなら」みたいな気持ちが ―― 自身が所属する集団を守るために自分が犠牲になるなら、それは無意味な選択ではないはずだ、と考えた人も多かったのではと自分は想像していて。そういう境地に達した人なら、「お前がコレをすることでお前の親しい人が救われるぞ」てな状況を前にした時、「分かった。なら、俺をモルモットにしてくれ」という台詞もあり得るし、不自然ではないよなと。「モルモットにする気か!(プンスカ」だけで終わらないはずだよなー、と。

ということで、「この脚本、そこらへんを一歩踏み込んだ状態で書かれてる気がする…」と思ったのでした。まあ、「モルモットにするな!」も「モルモットにしろ!」も、どっちもあり得るので、浅いとか深いとかそういう話でもなさそうですけど。…もしかすると、キャラの性格を提示するための定番のやり取り、でもあるのかなと思えたりもしますけど。

これがもし、「モルモットにしてくれ!」じゃなくて「ムチで叩いてくれ!」だと似たような感じの台詞なのに全然違う印象になるなー、と一瞬思ったけどちょっと待て何考えてんだ俺。

2012/11/15(木) [n年前の日記]

#1 [zatta] マイクロ風力発電が気になる

NHK教育のサイエンスZEROを見ていたら、 _バイオミメティクス ―― 生物を模倣することで効率を高めたり機能を実現したりするアプローチ ―― が紹介されていたのだけど。その中の、トンボの羽の形を利用したミニ風車・マイクロ風力発電の話が気になったわけで。個人でもその手の実験ができないかな、と。

個人レベルで風力発電の実験をしている事例を検索してみたところ、今時は自転車のハブダイナモ ―― 前輪の軸の部分に入っているダイナモ ―― を利用している場合が多いようで。3,000〜5,000円前後で購入できるらしい。ただ、出力が交流だったり、発電した分を何のバッテリーに溜めるか等が難しそうで。ちょっと試しに、というわけにはいかない感じ。

この手の実験に使える、安いセット等があれば良さそうだけど…。

風力発電について検索しているうちに、マイクロ水力発電の動画等もいくつか見かけたり。個人レベルでの実験の場合、小さな水車を作って発電するわけだけど、そこでもハブダイナモが使われてるようで。水の流れで回す場合は、ある程度力をかけられるから、ギア比で回転数を高めることも可能らしく。…こういうのを河川にずらりと並べられないものか。もっとも、電池を充電できるかどうかのレベルでしか発電できないように見えるわけで、商用発電レベルまで持っていくには難しいのだろうな…。

2011/11/15(火) [n年前の日記]

#1 [pc] Amazonからマウスが届いた


X-718BK は、今まで使っていた品と比べ、形状その他が多少変更されていた。 微妙に、改善、かつ、コストダウンされてる印象。

予備として、iBUFFALO BSMLU06WH を購入。新製品が出たせいか、それとも初期不良が多いのか、理由は分からんけど。680円で売ってたので。

使ってみて、唸ってしまった。X-718BK と同レベルで使いやすそうな…。 初期不良なのか個体差なのか分からないけど、サイドボタンと右クリックの反応が微妙におかしいあたりが気になった。このせいで投げ売りされてたのかしら。しかし、X-718BK の数分の一の値段で、似たような使い勝手なら、こっちのほうがいいよな…。まあ、耐久性が不安だけど…。

2010/11/15(月) [n年前の日記]

#1 [flash] 別クラスに分割中

元のクラスにあったメソッドを呼び出すのはどうすればいいんだろう。未だにクラスってよく分からない…。

2009/11/15() [n年前の日記]

#1 [pc] キーボードスタンドを自作した

親父さんが、100円ショップでブックエンドをいくつか買って余らせていたので、お願いして1つ譲ってもらった。で、微妙に折り曲げて、これまた100円ショップで以前購入していたケーブル留め具を貼ってみたり、滑り止めのシールを貼ってみたり。キーボードを乗せてみたら、ピタリと安定。これで十分だな…。

#2 [pc] Amazonからキーボードの交換品が届いた

先日、初期不良のELECOM TK-UP84CPSV を掴んでしまったわけだけど、Amazonから交換品の品が届いた。メインPCにUSB接続してみたけど、一応動いてるように見える。…オートリピートがちょっと怪しい感じもするけど。時々間隔がゆっくりになる。まあ、キーボードを2つ繋いだ状態で動作確認しているせいかもしれず。

今、この文章をそのキーボードで打っているけど。幅が20cmちょっとしかないので、当然キーピッチも狭いわけで、誤入力しまくり。もっとも、自宅サーバのメンテナンス時しか使わない予定なので、これで十分。とにかく場所を取らないキーボードが必要なわけで。

それはともかく。このキーボード、スタンド部分を起こすと、直立させることもできてしまうわけで。さきほど作ったキーボードスタンドが無駄になってしまった…。

#3 [pc] Logicool K340がどうも使いづらい

左Altを押そうとして、Windowsキーを押してしまう。調べてみたら、一般的なキーボードは「x」の左下に左Altがあるのだけど、K340は、「x」の右下に左Altがある。キーボードの左下にFnキーを追加したものの、左Ctrlの横幅は今までどおりにしたため、単純にキーが一つずつ右にずれたものと思われる。ずれた分をどこで吸収しているかと言えば、右下にあるはずのコンテキストメニューキーが無くなって、テンキー上部でFnキーを押しながら呼び出すようになっている模様。

まあ、上記の点は、めちゃくちゃ問題のあるレイアウトというわけではないけれど。理由は以下の通り。 であるから、左CtrlとFnキーを優先させて、左Altキーを軽視するのは正解。

と思ったりもしたが。ノートPCのキーボードなどと違って、K340は、そもそもFnキーが使われる場面はかなり少ないような気もする。アプリ起動キーや、音量調整キー等が割り当てられているわけで…。その利用頻度を考えた場合、左下に配置するより、上部に小さい補助ボタン的な扱いで配置するほうが正解のような気もしたり。

まあ、カーソルキーの押し難さを考えると、他のアレコレは些細な問題のようにも思えるのだけど。キー2.5個分のスペースに、実質的にキー6つ分を詰め込んでるようなもんだしなあ…。そりゃ打ちづらい・手探りで指を置くのが難しいわな。

K340をじっと見てみると、左右の枠を少し削れば、縦一列ぐらいはキーを並べることができそうな気もしたり。まあ強度的な問題があったりしそうだけど。

それと、地味にファンクションキーが使いづらい。メインのキーと違って、ファンクションキーというのは、これといった配置が決まってないために、ブラインドタッチ?習得のためのアレコレの中に含まれていない。なもんだから、えてして、4個ずつ区切ってあることを頼りにして手探りで指を置くのだけど。K340はファンクションキーをずらりと隙間なく並べてあるから、手元を見ずにキーを押すことが不可能。

省スペースを模索するのであれば。 :

テンキーは分離してしまうのが一番いいような気がする。フルキーボードのテンキー部分だけをばっさり無くして、テンキーはまた別に用意してしまうのが良いのではないだろうか。いや、そういったタイプもあることはあるけど、何故かBluetoothばかりなんだよなあ…。Bluetoothを使うと、設計する上で利点があるのだろうか。独自ワイヤレスより多数のデバイスを認識しやすい、とかあるのかもしれないか。

カーソルキーを小さくするぐらいなら、まだテンキーを小さくしたほうが使えるのではないかと思わないでもない。例えば、TVやビデオのリモコンには、あるいは携帯電話には、えてしてテンキー部分がついてるけど。PCのキーボードよりはるかに小さいではないかと。しかし小さいからといって入力ができないかと言うと、そういうことはまったくない。むしろ、リモコンをいちいち見なくても、テンキー部分は押せるぐらいに使えてしまうわけで。ということで、小さくするならまずテンキー部分を、というのはそんなに外してないのでは。…私達の日常生活の中で、豆粒のようなテンキーがあちらこちらに既に存在していて、私達はソレを当たり前のように使っているのだから。と思うのだけど、どうだろう。

2008/11/15() [n年前の日記]

#1 [web] 「w」の連打表現についてなんとなく考察

「wwwwwww」の表現をネット上で見かけるたびに「これ、もはや日本語じゃないよなあ」「日本人が使うべき言葉ではないのでは」などと思ってしまったりもするのだけど。考えてみれば、日本で生まれて、日本で育った、生粋の日本人だからこそ、日本語を破壊していくことに躊躇しないのかな、という感もあったりするわけで。となると、不用意に肯定否定はできないのかもしれないなと。

よくよく注意してみると、面白い表現だと思う。ある種、感情の数値化、あるいは文字による感情のグラフ化だと思うわけで。ほんのちょっと笑った時は「w」。めちゃくちゃ笑った時は「www〜www」。数が多ければ多いほど激しく笑えたことを示している。

まあ、「へえ」ボタンと似た何かを感じなくもない。たとえば、TVゲームの中では、体力だの魔力だの親密度を数値で表現するけど。なんとなくソレに似ている気もする。そのあたりを考えていくと、今までの日本語表現は、感情の強さを示すことにアバウトすぎたのではないか、とすら思えてきたり。いや、そうではないな。今までの日本語表現は、感情の「強さ」ではなく「種類」を示すことに注力してきた、と言えるのかもしれない。

「w」連打表現が感情の数値化であるならば、「w」=「笑い」以外の表現が生まれてきてもおかしくないように思える。たとえば、「どれだけ嬉しいか」「どれだけ怒っているか」「どれだか哀しいか」といった連打表現があっても不自然ではないのではないか。

しかし今のところ、そういった他感情の別表現を目にしたことがなかったりする。「w」は「warai」の省略から生まれてきた、という説をどこかで読んだ記憶があるけど。他感情にはそういった経緯がないから、それらの数値化表現に使える記号文字が未だに生まれてきていない、ということなんだろうか。…誰か試しに作って流行らせてみませんか。嘘。

などと若干肯定的な考えになりつつも。「w」だけがずらずらと書かれていると、見ていてちとうっとおしい。目がチカチカする。wx24とかwx256とかwx65536とかそういった表現ではダメなのだろうか。…あ、それだと「グラフ」にならないのか。うーむ。

2007/11/15(木) [n年前の日記]

#1 [iappli] equirectangularとやらを検索

terragen で遠景画像らしきものを仮作成したり、先日撮影してきた写真を再度huginで合成していたものの。やはり各素材を合成後、レタッチしないとダメだなと。が、equirectangularなる画像にしないといけないわけで…。どのように作業していけばいいのやら…。

Photoshop Elements のフィルタで、極座標やら直交座標やらに変形してみたけれど。なんだか違う。equirectangularってどういう投影法なんだ…? うーん。

_投影法について :

_正距円筒図法 - Wikipedia
_地図投影法 / 投影法カタログ / 正距円筒図法

なんとなくわかってきた、かもしれず。緯度経度の幅が一定になってる=equirectangular…てことは、画像上にそのまま雲等を張り付ければ、球に対してグルリと回るような見え方になってくれる、のであらうか。

レタッチ開始。 :

huginで、先日撮影してきた写真の地平線部分だけを合成。それをGIMPで開いて、w:h=2:1の画像上の真中に配置して、スタンプツールで修正。川とか道とかグラウンド等を塗りつぶし。

雲の切り抜きが判らん…。

#2 [cg_tools][iappli] _床井研究室 - 第12回 キューブマッピング

_床井研究室 - 第10回 スフィアマッピング
_床井研究室 - 第22回 放物面マッピング

電球への映り込みを撮影する手法が気になるわけで。メモ。

2006/11/15(水) [n年前の日記]

#1 [windows] AVG7→7.5にアップグレード

念のためにAVG7をアンインストール → AVG7.5をインストール。今のところ特に不具合はなく。

#2 [comic] 「タッジー・マッジー」文庫版3巻 山口美由紀著を読んだ

妹が買ってきたので読ませてもらった。

巻末に書き下ろしで プロローグ エピローグ漫画が載っていたのだけど。当時描いたものだろうかと思うぐらいに、絵柄の違い・変遷には気づかなかった。いや、妹は「線の太さとかが違う」と言ってたけど。自分にはわからんです。それよりは、トーンの印刷の出具合がちょっと荒れてることのほうが気になる。原稿と、最終的に印刷されたソレの間に、どんな段階(?)があるのだろうか。

_プロローグ [prologue] :

プロローグ [prologue]

(1)演劇で、本筋に入る前の幕で、その劇の主題を暗示するために演じられる短い場面や、主題・内容などの説明をする詩や台詞(せりふ)。前口上。
(2)詩歌・小説・歌劇・音楽などで、その主題を暗示するための前置きの部分。序詩・序詞・序言・序章・序曲・序奏など。
(3)物事の始まり。発端。

プロローグ 3 [prologue] - goo 辞書 より


_エピローグ [epilogue]
エピローグ [epilogue]

(1)劇・小説・詩歌などで、全体をしめくくる言葉・終わりの部分。終章。 ⇔プロローグ
(2)〔音〕
(ア)劇音楽などの終わりの部分。
(イ)コーダ(終結部)あるいはコデッタ(小終結部)のこと。

エピローグ 3 [epilogue] - goo 辞書 より


うっかり間違えた。

#3 [nitijyou] 某G氏の祝賀会に出席したいと思う旨を某o氏にメールで連絡

開催時刻によってはホテルを予約等しないといけないかも等々、事前の準備量がどのくらい増えるかといったあたりで悩んでたのだけど。受け取ったメールをよくよく読んでみたら昼頃の開催だった。次の日は平日だからそれもそうか。であれば日帰りで行けるかも。ということで出席したいと思う旨、メールで連絡。したことをメモしとく。

む。でも、返信メールは相手先に届いてるだろうか。昨今は各社のメールサーバが迷惑メール対策でアレコレやってるし。

自分持ってる Webメールアカウントにテスト送信。一応、届いてるな。なら、大丈夫だろう。たぶん…。

2005/11/15(火) [n年前の日記]

#1 [pc] メインPC、かなり不調

IRQがどうしても共有されてしまう。COM1、2や、プリンタポートを無効にしても変化なし。どうにか変わってくれないかと色々試したり。 等々試してみても、やっぱり、時々ハングアップ。

もう泣きそう。

_Windows 2000/XP で、標準 PC(APM) と ACPI PC を切りかえるには? :

Windows 2000/XP が ACPI で稼動するかどうかは、使用している HAL で決定されます。

Windows 2000、XP セットアップ時に F5 キーを押すことで、(稼動するかどうかは別として) 任意の HAL を指定できますが、セットアップ後に HAL を変更したい場合、以下の手順を実行します。

1. 「マイコンピュータ」を右クリックして [管理] をクリックします。(2000) (XP は [スタート] をクリックしてから [マイコンピュータ] を右クリックして [管理] をクリックします。)
2. ツリーから [デバイスマネージャ] をクリックします。
3. [コンピュータ] を展開します。
4. [標準 PC] もしくは [Advanced Configuration and Power Interface (ACPI) PC] などと書いてある部分をダブルクリックします。
5. [ドライバ] タブをクリックし、「ドライバの更新」ボタンをクリックします。
6. デバイスドライバのアップグレードウィザードが起動するので、次の手順を実行します。
 * Windows XP の場合
 1. ウィザード初期画面で、「一覧または...」を選択して「次へ」をクリックします。
 2. 「検索しないで、インストールするドライバを選択する」を選択して「次へ」をクリックします。
 3. 変更したい HAL を選択して「次へ」をクリックします。

wxp:セットアップ より

ACPI PC から標準PCには変えられたのだけど。一度、標準PCにしてしまうと、ACPI PC には戻せず。トホホ。

IRQがどうとか青画面でエラーが出る :

デジカメで撮ってみたり。
エラー画面
英語わかんない。が、たぶん、IRQ 関係っぽい。とりあえずテキストにしてみるか…。
A problem has been detected and windows has been shut down to prevent damage to your computer.

IRQL_NOT_LESS_OR_EQUAL

If this is the first time you've seen this stop error screen, restart your computer. If this screen appears again, follow these steps:

Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware ore software manufacturer for any windows updates you might need.

If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing. If you need to use safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.

Techinical information:

*** STOP: 0x0000000A (0xBE3F6298,0x00000002,0x00000001,0x80517E7B)

Beginning dump of physical memory
Physical memory dump complete.
Contact your system administrator or technical support group for further assistance.
要するにセーフモードで起動しろとか、最後にインストールしたハード・ソフトを疑えとか、そういう話かしら。

USB2.0ボードを外した :

USB2.0ボード関係が、あらゆる他のボードとIRQを共有してるわけで。もう、諦めた。

この環境に、USB2.0ボードをつけるときは、
  • キャプチャボードを外して、USB接続キャプチャユニットを購入・導入する。
  • サウンドカードを外して、USBオーディオを購入・導入する。
…ことにしよう。

もしかして、VIAのチップを使ったUSB2.0ボードだから、不具合が起きてるのかしら。いや、不具合が起きたのは、USB2.0ボードをつける前からだから、VIAチップのせいではないのだろうな。

なんか知らんが動作が遅い :

FSB 75MHz → 66.6MHz になったことで、Celeron 1GHz → 900MHz になってるけど。FSB が低くなったことで、他も軒並み遅くなってるのかしら。

この記事へのツッコミ

Re: メインPC、かなり不調 by けいと    2005/11/16 19:53
PCIバス配下のデバイスはIRQがダブってもいいはずだったような…

と、いうか、無理に散らそうとしてかえって失敗した経験があります。

私もこの手は何度か経験していますが、
チップセットや音源、キャプチャボードがらみのドライバを
WHQL認定で固めてある程度落ち着かせて切り分けたような。

ACPI周りもいろいろいじると元に戻せなくなったりで
結局OS再インストールするまで安定しなかったなぁ…
WHQL認定ドライバの選択は厳しか… by mieki256    2005/11/17 14:12
> WHQL認定で固めてある程度落ち着かせて

うわー。自分の使ってるキャプチャボード、
WHQL認定ドライバとか存在しなかったりするであります。
ビデオカード(G400)と、サウンドカード(YAMAHA YMF724チップモノ)も、
WHQL認定ドライバでは、機能自体激減するしなぁ…。
でも、最悪、そういった選択をしないといかん、ということでせうな。トホ。

> PCIバス配下のデバイスはIRQがダブってもいいはず

共有してもOKなものと、共有すると不安定になるものがある、
と思うのですが、各ボードがどっちなのかがわかってないのが
問題でありますな。>自分。

G400だけはIRQが別に割り当てられてないと不安定になるという話は
見かけたのですが…。うーむ。
Re: WHQL認定ドライバの選択は厳しか… by けいと    2005/11/17 19:14
> ビデオカード(G400)と、サウンドカード(YAMAHA YMF724チップモノ)

あははぁ^^;;
私が当時はまった環境と同じだ…

あの時は結局面倒くさくなって、
サウンドブラスター互換の音源買ったら
喧嘩しなくなったのか、スムーズに動いたような…

つーか、WindowsならG400にこだわらなくてもいいのでは?
とも思ってみたり。

#matroxって色味が地味だよね。
#nVidiaみたいにケバいのもどうかと思うけど。
Re: WHQL認定ドライバの選択は厳しか… by mieki256    2005/11/18 21:07
> 私が当時はまった環境と同じだ…

ぎゃわーん。
もしかして、G400 と YMF724チップモノの組み合わせは鬼門なのか…。
いや、しかし、今までは一応動いてたしなぁ…。

> G400にこだわらなくてもいいのでは?

たしか購入当時、
・ 2DCG作成作業がメインになると予想。
・ 不具合に遭遇しないことを期待。
という理由で、高解像度でも画面クッキリ、
かつ、あまりトラブル話は聞かなかった Matrox 製品を選んだ、
…ような記憶がありますな。

G400導入前には、ATI RAGE128 を使ってたんですが、
ドライバが未成熟だったのか、画面がおかしくなる場面が続出で泣かされ。
かといって当時のNVIDIA製品は、高解像度にすると画面がボケるという。

今ではそういった不具合もないでしょうし、
Matrox製品を選ぶ必要もないですな…。

#2 [nitijyou] 朝方に、地震

後になって気づいたけど、もしかして _サーヤ砲 だったのだろうか。

さておき。新郎の上司とは言え、石原都知事がそこに居るのはなにかヤバそうな状況のようにも思えたけど、特にヤバイ発言をしたわけでもなさそうなので、一安心。

この記事へのツッコミ

Re: 朝方に、地震 by けいと    2005/11/16 23:40
> サーヤ砲

ぐらっときた瞬間に「サーヤ砲」が頭をよぎりました。

恐るべし秋葉原宮様。
サーヤ砲 by mieki256    2005/11/17 14:21
今朝も地震があったのですが、
「あれ? サーヤ関係でまた何かあったっけ…?
 挨拶回りは昨日だったはずだし…」
と一瞬思ってしまいました。失礼極まりないなぁ… >自分。

昔だったら、「この縁談は神が祝福してしないのだ」とか
言い出す人が出てきそうですな。
…アレ? 昔なら、天皇自身が神扱いだから、「神が〜」ってのは変か。

#3 [nitijyou] 某H氏から電話

お久しぶりなのであります。声を聞くのは何年ぶりだろう…。

そういえば東京に行ったのって、学生時代の友人の、K長さんの結婚式に行ったのが最後だったかもしれん。これまた何年前やら。

#4 [pc] この日記をアップロードしたら落ちた

また英文でメッセージが。ビデオカードを取り替えろ、と言ってるのかしら。英語、わからんねん。

ひょっとしたら、1280x960なんて画面解像度を使ってるのがマズイのだろうか。Matrox G400 は、デフォルト状態ではそんな解像度を持っていないし。今まで無茶をしていたのだらうか。>ウチの環境。

2004/11/15(月) [n年前の日記]

#1 [nitijyou] Wordファイルをメールで送ったら

イラストを入れたいとの返事が。むぅ。どんなイラストを所望なのであらうか。

ちなみに、Wordファイルをメールに添付して送ると「取り出せない」と言われるので、 *1 .doc をサーバにアップして、URLだけ書いて送った。メールに書かれた .doc のURLをクリックすると、IEが起動してその中にMS-Officeの画面が表示されるので、内容確認はできる模様。
*1: .doc のままでも、.zip してもダメだった。添付ファイルの保存作業ができないらしい。

この記事へのツッコミ

Re: Wordファイルをメールで送ったら by けいと    2004/11/17 00:05
アウトルックのセキュリティ設定が有効になってる
ってやつなのかな?
Re: Wordファイルをメールで送ったら by mieki256    2004/11/17 23:46
> セキュリティ設定が有効になってる

かもしれませんです。
(プラス、ウイルス対策ソフト側の設定も関係していそうな予感…
 とはいえ、相手が使ってるウイルス対策ソフトについて、
 自分は情報を持ってないので、指示の出しようもなく…)
まあ、無効にしたままより、有効なままのほうがマシな気もするので、
現状放置(?)ですなぁ…
(でも、IEで.docが開ける時点で、意味がない気もするけど(爆))

#2 [pc] RubyとRuby

_Ruby_Ruby 。…うーん。 *1 _Firebird と Mozilla Firebird を思い出したり。
*1: 既出のような気もするけど、どこで触れられていたのか思い出せず。同名だから検索して確認することも難しいし。

#3 [zatta] 宣伝方法

自分の作成した○○の存在をなりふり構わず他者に知らしめたい場合はメジャーな○○の名前にしておく、という手もありかもなぁ。そこそこ話題になったところで改名すれば宣伝としては美味しいかも。でも、改名のタイミングが難しそう。早いと効果が薄いし、遅いと反感ばかり持たれてシカトされたり訴えられたり。それを考えると、 _こういう命名 はなかなか上手いのかもしれない。脱力気味の笑いを生じさせつつも実は記憶に残りやすい。下手にカッコつけた命名より、こういう路線で当てるほうが効果が高そうな気もする。でもないか。

ウチのサイトも改名しようかしら :

検索した限りではそれほど問題はなさそうな気もするけど、voidナントカなる表記自体がよろしくないという話も見かけたし。 *1 …そのへん言い始めたら、HNも変えなきゃいかんだろうなぁ。少なくとも、似たようなHNのスゴイ絵描きさんが居たりするわけで…。 *2 うーん。

いいや。面倒臭い。大体にして、「志村」といえば「けん」が出てくるし、「宮崎」といえば「駿」が出てくるし、「ぶるま」といえば「ほげろー」になるわけで。「志村健太郎」さんや「宮崎孝雄」さんは改名しなくちゃいけないのか。そういうわけでもないだろう。全く同じHNならともかく、検索しても自分のHNしか出てこないんだから、いいじゃん。

ちなみに「ぶるま○○○○」なんて名前の人は検索しても見つかりませんでした。秀逸なPNだなぁ。…秀逸なのか? (;´Д`)?

*1: でも、「void」だけで検索してみると、そういう命名をしたサイトがウンザリするほど出てくるから、今更という気もするなぁ…。
*2: もちろん、自分がこのHNにしたときは、そんなHNの絵描きさんが居るとは知らなかったわけで。

#4 [cg_tools] _ワコム、A6タブレットの廉価版「FAVO コミックパック」 〜6種類のソフトウェアをバンドル

Pixiaが同梱とはなぁ。さておき、8000円程度でCGツールが6本ついてくるって、なかなか。と思いきや _そのうち2つは体験版か。 しかもファイル保存できない体験版。ヒドイ。でも、「パソコンでお絵かきってどうやるの?」というレベルのユーザさんにとっては、値段もちょっとだけ安いし、一通りソフトも入ってるし、有効な商品かもしれないなぁ、と思ったりもして。

#5 [prog] _【PHPウォッチ】第12回 PHPでWindowsのGUIアプリを作る「WinBinder」

#6 [web] _スパイウエアにご用心〜駆除作業体験記〜

不安になったので、 _窓の杜の記事 から辿って Ad-Aware SE Personal版(個人は無償で利用可)をインストールしてみたり。 _日本語化パッチ もあるのでそちらも入れた。

スキャンしてみたら、cookie しかリストアップされなかった。

_AD-AWAREの使い方 :

#7 [anime] 学園アリス、学級崩壊かつ学園設定解説の回

どこかで「テンションのひくいこどちゃ」と称してたけど、そんな感じ。

作画はともかく、小さいネタの披露が始まってバラエティ色豊かになりつつあるような気がしないでもないのでこの調子でもう少し元気が出てくれればと思いつつもさてどうだろうなぁ。

#8 [anime] _「ひとつだけ約束しよう。あなたにもらった、このディズニーロゴ入りのスタジャン。これを着てぼくはドリーム・ワークスへ行く」

小泉さんみたい。

_元ディズニー幹部対ディズニーの裁判(1) :


2003/11/15() [n年前の日記]

#1 [anime] ヘビーな展開ですな

鋼の錬金術師。予告を見て予想した展開とは違ってた。正面から書かれるとは思ってもみなかった。原因を少し増やしてみたほうが良かったような、と思ったけど、それを追加してしまうと本筋とズレるか。

この記事へのツッコミ

Re: ヘビーな展開ですな by 火柱脱力太郎    2003/11/17 12:30
先週(受験の話)見逃したので、今週分観てからアニマックスで(PM6:30から
でしたので)先週分観ればいいや。と思ってたら大変な事に…。
先が解ってて、先週分観ると紹介の所なんて可哀想で可哀想で。

教訓 順番通り観るべし…だか、これはこれで。
Re: ヘビーな展開ですな by mieki256    2003/11/19 17:49
>先が解ってて、先週分観ると
キツイ…それはキツイですわ…その状況を想像しただけで…うわー。

それにしても、あの手のキャラの声をあてさせたら
こおろぎさとみ様にかなう声優さんは居ないよなと。
仮にアレが、赤ずきんチャチャの声の人や、やっこちゃんの声だったら、
もう何から何まで全てが台無しですよ。ビバ、こおろぎさとみ様であります。
…もしくは大谷育江様あたりか。

#2 [pc][linux] G400のドライバー

Matroxのサイトの、 _Latest Matrox drivers に Linux 版も列挙されてたのだな。試しにDL。

Linux版PowerDesk のバイナリは rpm しかない模様。Debian ではソースからコンパイルしたほうがヨサゲだろうか。

2002/11/15(金) [n年前の日記]

#1 空き容量確保

コツコツと空き容量確保の為の作業。
HDDの交換をしたいなぁ。IDE全部埋まってるから増設出来ないし。


せっかく発売されたというのに、HDD買うお金もないぐらいの財政状況故、
魂斗羅新作、買えないのです。申し訳無いです。ショボン
ていうかPS2本体すら買ってないし (;´Д`)
どこかの店頭でデモってないだろうか。動いてる画面だけでも見たいな…

公式サイトの about game が未だに coming soon なのがちょっと心配。
ScreenShotを何枚か置いとくだけで充分ではないかと思うのだけど。
それすら出来ないほどにアレなんだろうか…
もっとも、買うヤツは買うソフトですし。どうでもいい事なのかも。

2001/11/15(木) [n年前の日記]

#1 エロゲ塗り

Photoshopでシコシコと作業。
線画の等身の高さは、「自由変形」で誤魔化しました <なんとアバウトな…(爆)
線画さえ出来てしまえば、後は「作業」として集中できる気がする。男だから。

エロゲ塗りを習得しようとしてるんですが、どうも只のアニメ塗りになっちゃってるような…
別にアニメ塗りでもいいんですけどね。みっちりギチギチに塗り分けてあれば。
でも、二段影、三段影やってないから、仕上がりが薄っぺらい。
色分け線をどう引けばいいのか、そこからしてよくわかってないから苦労してます。男だから。


_某窓の杜のひぐちさんのコラムについてだらだらと長文を書いてみる。 男だから。


どうしてバルディオスに思い入れがあるのかというと、逆説的ですが、本編見てないからなんです。
たしかこっちでも放映はされてて、何度か目にした事はあるはず。
でも、当時は何とも思ってなかった。だから全く見てなかった。

後に劇場版?に関連して特集本が出たんです。
そこに書いてあったラストのオチを見て衝撃を受けまして。こんなオチがつく作品だったのかと。
でも、本放映も、劇場版公開も終わってる。
目にしたくても、もう出来ない。

それからずっと、自分の中で「スゴイ作品」としてのイメージが培養されてしまったのですね。

たぶんこのまま、本編を見ないほうが、自分にとっては幸せでしょう。
OP、EDを見て、まだ見ぬ本編を勝手にイメージしてるのが、一番幸せな状態。
当時の作画・演出からして、本編のクオリティが高いはずないですから…
自ら、自分の夢を壊さなくてもいいでしょう。男だから。

#2 [digital] 無責任なオンラインソフト作者…ですか?

親父さんが、ここのところHP作りに挑戦してたりします。
(写真が趣味なので、写真を公開しようとしてる。)

あまりに大量の画像ファイルがあるので、
_縮小画像を自動生成する、フリーの画像アルバムHTML出力ソフトをいくつか試してみて、
最終的に、 _あるソフトを導入してみた のです。

ところが…
細かい修正の為、ホームページビルダーでそれら出力されたHTMLを開くと、表示がメチャクチャになり、タグがグチャグチャに変更される。

最初は、単にホームページビルダーがバカなのかと思ったんですが…
どうもそのHTML出力ソフト自体が、そもそも最初から不整合性溢れるHTMLを出力してる模様。
疑ってすまなかった>ビルダー
君のHTML整合性チェック機能のほうが正しかったよ…


と、この件で、なんだか、 _某窓の杜のひぐちさんのコラム を思い出しちゃいました。
こういうのが、無責任なオンラインソフト作者ってヤツなんだろうか…

というかこの場合、無責任うんぬんではなく、
知識が足りてない(HTMLに詳しくない、誤った知識を持ってる)だけなんですけどね (^^;


ひぐちさんの言うような、「無責任なソフト作者」ってのは、そうそう居ないと思うんです。
その制作物・制作されたソフトから、ユーザが何らかの無責任さを感じたとしたら…
それは単に、技術力が無い、関連知識を持ってない…
「プログラム・プラグラマーがタコ」なだけの場合がほとんどじゃないかと。

でも、プログラミングをしたことの無い人間には、
(それこそひぐちさんのような、「ただひたすら使うだけの側」には)
「無責任」としか見えないのだろうなぁ、と思ったりします。

「使うだけの側」「周りにプログラマーがいない人間」は、
プログラミングの具体的行為がイメージが出来ないから、
プログラムにバグが入る様子、不適切な仕様決定をしてしまう様子が容易には想像できない。
結果的に、「作者が無責任だから」と誤った結論を下してしまうことに繋がってるのかな、と。

ただ、自分も…
バグを出す、変な仕様決定をしてることは、ソフト制作者にとって、やはり「恥」だと思うんです。
自ら、プログラミング能力の無さ、考えの無さを、わざわざ世間に露呈してることはないだろうと。
どうせ人様に見せるなら、少しでもカッコイイ自分を見せたいじゃないですか。

ですから、バグが多い、変な仕様になってる状態を、肯定するつもりは毛頭無いのですが。
たとえ趣味でやってるにしても、技術者にとっての「恥」ぐらいは知って欲しい…
自分は技術者なんだという自覚ぐらいは、せめて持ってくれないかな、なんて思うんですけど。
って自分の事をすっかり棚に上げて随分偉そうなこと言ってますね…(爆)


それにしても。
真に恐ろしいのは、不整合性溢れるHTMLを平気で表示してしまうIEです。
こんなのすら表示しちゃうから、変なHTML書いてることに気付かない人が増えるのでは。
誤った記述を平気で解釈してしまうことは、何のメリットも生み出しません。
これは「ユーザへの親切」にはならないと思う。むしろ悪影響しかない。

オンラインソフト作者に苦言を呈するより、
MS・その他メーカーに苦言を呈するほうが、
世の中よっぽど良くなると思いますよ >ひぐちさん

2000/11/15(水) [n年前の日記]

#1 インターレスその後

完全に昼夜逆転した生活を送っております。
結果、未だに車の運転してません。トホホ
チッ。明日こそは運転してみせる! <ホントか?


先日、インターレスについて、ココに書いたのですが。
BBSで真実を教えていただけました。サンクス!>どろ氏

「インターレスはinter-lessにあらず。
 interlace、インターレースが正しい」
そして、
・インターレス(インターレース、インタレース)=飛び越し走査
・ノンインターレス(ノンインターレース、ノンインタレース)=順次走査
これが正解なのでありました。

もののついでに、ネットでも検索してみました。
_ココ でもたしかに、「interlace」と表記されてます。

それにしても…
オイラ、どこで、「interless」なる怪しい思い込みをしてしまったのでせう… (´Д`;)
たしか、高校あたりからそう思いこんでた気がします。

ちなみに、「interless」をネットで検索してみたら…これもチラホラあるようで。
もちろん「interlace」という表記のほうが圧倒的に多いのですが。

例えば、SEGAのVF2のオプション表記にも、「inter-less」があるらしく。
オイラVF2は持ってないんでホントかどうかは知りませんが。
でも仮にホントだとすれば、オイラ以外にも勘違いしてる人がいるらしい、ってことかな…?

ただ気になるのは、何も無いところから「interless」なる表記は出てこないんじゃないかと。
もしかすると、別の意味を持つ技術系専門用語として「interless」が存在し、それがメジャーな用語の「interlace」と混同されてる…
そんな可能性はなかろうか、などと思ったり <勝手な推測ですが

そうなると、「interlessってナニを表してる用語なんだ?」という疑念が。
でも、この単語について解説してる例が見つからず。
ってことは、やはり単なる勘違い、かな。
都市伝説みたいなもん? <ソレはまた違うような…

何にせよ、どんな英語表記であっても、「インターレス=飛び越し走査」として扱ってる事に変わりはなく。
「interがless」などという、全く逆のトンチンカンな勘違いをしてたのはオイラだけなのであります (T▽T)

ふと。
英和辞書になんか載ってないかな、と調べたら。
「less = いっそう少ない」…
ってことは、「inter-less = 走査線がいっそう少ない方式」…
もしかして…実はこれでも意味は合ってたのか?
えーでもコレってこじつけっぽい…
せっかく「interlace」って単語がついてるわけで。
既にある専門用語に、勝手に造語(?)をつけるのはおかしいよねぇ…

とりあえず、誰かにツッコまれる前に自分でツッコんでおこう。
こんな基本的なトコロが怪しいなんて、オイラ、ゲームプログラマー辞めて正解だわ… (´Д`;)


ここんとこ、この手のネタばかりですが。
夜に起き出す→外に出ない→日記のネタが無い、ってことですな。トホ

1999/11/15(月) [n年前の日記]

#1 (NoTitle) VF-X2をプレイ。難し...

VF-X2をプレイ。難しいです。最初NORMALで始めたら歯が立たなくて、EASYでとりあえずクリアしました。いやー燃えますねー。シチュエーション的にグー。最後の作戦名、上手すぎて( ̄ー ̄)ニヤリッとしてしまいましたよ。ネタ的にはオイラのようなオジサン世代しかついてこれないのでしょうけどね。でもコレ途中で分岐らしきものがあったような。ってことはエンディングとかもいくつかあるのかな。その手の雑誌で情報集めてないんでわからない…ちと不安です。難しいんであんまり何回もプレイしたくないなぁ (^_^;)
それにしても当時マクロス映画版で感動して「MZ-700でバルキリーのゲームが作れないかなー」なんてオバカな事を考えていたりしたものだけど、はるかに想像を超えるレベルで実現されていて技術の進歩はスゴイなと思った次第であります。そういやファミコン版のマクロスってあったよなぁ(遠い目)
技術は凄いんだけど。そういやなんか曲だけは今一つだったような気が。てっきり最後で「おぼえていーますーかー♪」とまではいかないまでも、なんか歌ってくれるかと思ったんだけど。全編、音楽に関しては、個人的にカプコンのゲーム音楽聞いてるみたいな妙な感じがして感覚的に合いませんでしたです。 え? なぜにカプコン? うーん、昔からカプコンのゲーム音楽だけはゲーム画面と合わない印象があって。コナミ、ナムコ、セガ、タイトーなんかの音楽は大体がしっくり画面に合ってる気がするんですけど、カプコンのだけはどうにも、ってなんか話がずれてるな。でもなんでなんだろ。

ふと思ったんだけど。バルキリーがゼントラーディ軍をジャンプして踏みつけながら倒す、なんてゲームにならなくて良かったかな、とか。アイテム「ミンメイ」を取ると、巨大化したり口から火の玉を吐いたりするとか。ってソレ…
いや、アニメ原作のゲームって時々とんでもないゲームになるから (^◇^;)

以上、26 日分です。

過去ログ表示

Prev - 2024/12 -
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project