mieki256's diary



2023/12/23() [n年前の日記]

#1 [cg_tools] Bing Image Creatorを試用

画像生成AI、Stable Diffusion web UI で画像生成をしていたけれど、どうも欲しい感じの画像が出てこなくて、DALL-E 3 を使っているらしい Bing Image Creator を試しに使ってみているところ。この Bing Image Creator、こちらが期待した画像をかなり的確に汲み取って生成してくれるのが凄いなと…。同じプロンプトを Stable Diffusion web UI に入れても「違う。そうじゃない」的画像しか生成されないわけで…。

2022/12/23(金) [n年前の日記]

#1 [nitijyou] コロナワクチンの副反応が出てる

昨日、新型コロナウイルスのワクチンの3回目の接種をしてきたけれど、2回目と同様に、やはり熱が出てきた。いつもの体温は36.0〜36.2度ぐらいだけど、朝の時点で37.6度。夕方には37.2度。朦朧とした状態で一日中寝てた。まあ、2回目の接種時は38度まで行ったとメモしてあるので、それと比べたら少しは楽なほうかもしれんけど…。

熱のせいなのか分からんけど、手足全体に常時じんわりとした痛みもあるなと…。

2021/12/23(木) [n年前の日記]

#1 [nitijyou] 電動自転車を自転車屋さんに持って行ってみた

昨日、利用している電動アシスト自転車、SANYO エネループバイク CY-SPA226A の前輪の軸から妙な音が鳴り始めたのだけど。今朝方、状態を再確認していたところ、更に症状が悪化。常に「ガガッガッガッ」と音が鳴る上に、前輪全体がブルブルと細かく振動する状態になってしまった。もはや自転車と呼べる状態ではない…。

電源を切って電動アシストをOFFにしても、走らせると「ゴッゴッゴッ」と音が鳴るし、下り坂でペダルを踏まずに走らせても「ガッガッガッ」と鳴るので、ペダルやチェーン周りがおかしいわけではないなと。

一応近所の自転車屋さんに ―― 国道4号線沿いのイオンバイク須賀川店に持って行ってみたのだけど。「この部分から『ガガガガッ』と音が鳴る」と症状を言っただけで「あ、モーターです。モーターが壊れてます」「この店ではモーターの交換はやってないんですよ」「メーカに送って修理してもらう形になりますが、部品が残ってなかったら修理できないですね」とのことで。実際にどんな症状か確認するまでもなく、症状を聞いただけで間髪入れず断言していたので、どうやら典型的な壊れ方のようだなと…。

いやまあ、新しい自転車を買わせたくて嘘を言っているのではと失礼ながらチラリと疑ってしまったりもしたけれど…。自分もモータだろうなと思っていたので「やっぱりか」ではあったし。更に帰宅後ググってみたら、SANYO製のこのタイプの自転車は「ガガガッ」で壊れていく事例が実際に多いようで。

一応事前に、ネットでググって、モータ交換の場合最悪6万円以上かかると聞いていたので、それはもう新しい自転車を購入するのが妥当だわなと…。修理は諦める方向で考えることにした。

ちなみに、この自転車はバッテリーが切れるとペダルが異様に重くなるので、さすがに次回そういうタイプは買いたくないよなと、一応店員さんにそのあたりを尋ねてみたところ、パナソニック、ヤマハ、ブリジストンのどれかを選んでおけばバッテリーが切れてもフツーの自転車並みに走れるはずですよ、との話で。どうやらSANYO製だけがアレな仕様だったのだな…。

メーカに修理部品が残ってる可能性を尋ねてたみたところ、10年経ったら残ってないと思っておいたほうがいいでしょう、とのこと。なるほど、そういう感じなのですな…。まあ、この場合、SANYO自体が残ってないあたりが…ね…。

その後分かったことをメモ。 :

SANYOは潰れて、Panasonicに吸収されたわけだけど。今現在、Panasonicは、SANYO製電動アシスト自転車の部品の供給を終了しているらしい。

_SANYOサンヨー電動ハイブリッド自転車の修理店をさがしている - 電動アシスト自転車 - Panasonic
SANYO(三洋,サンヨー)自転車の補修部品の供給は全て終了しております。
電気的な修理以外(パンク修理など)であれば、パナソニック の自転車を扱っている店舗様にご相談いただけますようお願いします。

SANYOサンヨー電動ハイブリッド自転車の修理店をさがしている - 電動アシスト自転車 - Panasonic より


発表時期が書いてないのが気になるけど…。まあ、「修理したい? 部品は無いですから! 残念!」という状況なのは間違いなさそう。


ユーザさんによっては、複数の個体を合体させて復活させた事例はあるらしい。

_サンヨー・エネループ・バイクの前輪交換 | たかのブログ

でもまあ、今となっては部品取り用の個体なんて入手できないだろうな…。2012年の話だし…。また、記事内で、部品は6年間はストックされてる、という一文もあって、前述の店員さんの話と一致するなと。


モータ部分の分解記事にも遭遇できた。

_SANYO エネループバイク トルクセンサー部分の構造 | FICTION CYCLES
_SANYO エネループバイク モーターユニット部分の構造 | FICTION CYCLES

タイヤの軸にモーターが入ってるタイプは、バッテリーが切れるとペダルが重くなる構造らしい。更に、一度分解するとアシスト比が変わってしまう可能性が高い、とも書いてある。また、記事についたコメントで、遊星歯車が破損して「ガガガッ」が起きている可能性も示唆されている。何にせよ、自力で分解修理は無理っぽいな…。修理可能な設計では無さそう。


2012年頃の記事ではあるけれど、パナソニック、ヤマハ、ブリジストンの電動自転車の比較記事も参考になった。

_電動アシスト自転車メーカーの比較 【前半】 | FICTION CYCLES
_電動アシスト自転車メーカーの比較 【後半】 | FICTION CYCLES

  • バッテリーを自前で用意できるからバッテリーの大容量化ができるパナソニック。
  • ヤマハのユニットを使って作るブリジストン。
  • ブリジストンの車体とパナソニックのバッテリーを使って作るヤマハ。
そういう関係なのか…。勉強になった…。


2013年には、ヤマハとブリジストンはサムスンのバッテリーを使うようになった、という話も気になった。

_電動アシスト自転車業界に忍び寄る「韓国メーカー」の影 | FICTION CYCLES

今現在はどういう状況になっているんだろう…。


昔のヤマハ製電動自転車のバッテリーは、一定期間が過ぎると問答無用で使用不能になるプログラムが入っていたようで。

_【無償修理】 2008年〜2012年製造 リチウムイオンバッテリープログラム書き換えについて - 電動自転車 | ヤマハ発動機

そこまでしなくても大丈夫っぽいと分かってきたので、プログラムを書き換えて制限を外せる模様。

2020/12/23(水) [n年前の日記]

#1 [windows] BDEって何だろう

昨日、某所で業務用システムの動作確認をした際に、「Borland Database Engine の初期化中にエラーが発生しました (エラー $2108)」というエラーメッセージに遭遇したわけで。Borland Database Engine とは何だろう…。

ググってみたけれど、Borland製のデータベース関連の何か、としか分からなかった。BDEと略して呼ばれていたらしい。何にせよ、件のエラーコードはBDEがインストールされてない場合に出てくるエラーコードだそうで。となると某所のPCにインストールしないとシステムが動かない、ということになるのだろうけど、単体でインストールできるものでもないようで…。一般的にはアプリをインストールする際に一緒にインストールされるものらしい…。しかし有償ソフトなのでライセンスが絡んでくるとの話で…。

某所で動作している他のPC内には、Firebird というソフトもインストールされていた。これはオープンソースのデータベースだそうで、BDEからFirebirdに接続して云々、という話も見かけたので、つまりはどうしてもBDEが必要になるのだろうな…。

#2 [windows] 筆王24を起動しようとしたけれど起動させてくれない

筆王24を起動しようとしたけれど、アップデータが公開されてる旨が表示されて、アップデートをしないと先に進めないようで。しかし、アップデータ実行中、ファイルのダウンロードに失敗して先に進まない…。7回ほど試してみたけど、どこかしらのファイルでダウンロードに失敗してアップデートが強制終了する…。年賀状のシーズンだからアクセスが増えてサーバが悲鳴を上げてるのだろうか。


ダウンロードに失敗して、再度試すたびに、最初から全ファイルのダウンロードを試みているあたり、頭痛がしてくる…。これではサーバに無駄な負荷を延々かけまくってしまうではないか…。何故こんな作りに…。

でもまあ、ソースネクストだから…。

2020/12/24追記。 :

アップデータ公開を示すウインドウの、右上の閉じるボタンをクリックしたら、とりあえず筆王が起動することに気づいた。アップデートするまで一切作業ができないということではなさそうだと分かったけれど、これはなんだか分かりづらい…。「スキップして筆王を起動」とデカデカと書かれたボタンが欲しいところ…。もっとも、そういうボタンを用意してしまうと、お爺さんがよく分からずにずっとスキップして起動しちゃうだろうから「アップデートしないと先に進めないぞ」感を醸し出せと指示があってこうなったのかなと邪推もするけど。そもそもアップデート処理がすんなり進まないのではなあ…。

2019/12/23(月) [n年前の日記]

#1 [love2d] love2dで多関節というか蛇モドキを書いてみたり

せっかく love2d をまた触り始めたので、ちょっと何か書いてみようかと。多関節、というか蛇モドキのソレを書いてみたり。

動作確認環境は、Windows10 x64 1909 + love2d 11.3。

こんな感じになった。

ソース。 :

ソースは以下。

_conf.lua
function love.conf(t)
  t.version = "11.3" -- love2d version
  t.window.title = "Snake - love2d"
  t.window.vsync = 1
  t.window.width = 1280
  t.window.height = 720

  -- t.window.fullscreen = true
  -- t.window.fullscreentype = "exclusive"
end

_main.lua
-- Snake on love2d

function love.load()
  love.graphics.setDefaultFilter("nearest", "nearest")

  img = love.graphics.newImage("circle01_96x96_32col.png")

  x = love.graphics.getWidth() / 2
  y = love.graphics.getHeight() / 2

  pos_buf = {}
  for i = 1, 128 do
    pos_buf[i] = {x, y}
  end
  idx = #pos_buf
end

function love.update(dt)
  -- move head
  mx, my = love.mouse.getPosition()
  local dx = (mx - x) * 0.1
  local dy = (my - y) * 0.1
  x = x + dx
  y = y + dy

  -- Updated index to record head position
  idx = idx - 1
  if idx <= 0 then
    idx = #pos_buf
  end

  -- record head position
  pos_buf[idx] = {x, y}
end

function love.draw()
  -- fill window background
  love.graphics.clear(0.4, 0.7, 0.8, 1.0)

  -- draw snake
  local ox, oy = img:getWidth() / 2, img:getHeight() / 2
  love.graphics.setColor(1.0, 1.0, 1.0, 1.0)

  for i = 16, 0, -1 do
    local n = ((idx + i * 4) % #pos_buf) + 1
    local px = pos_buf[n][1]
    local py = pos_buf[n][2]
    love.graphics.draw(img, px, py, 0, 1.0, 1.0, ox, oy)
  end

  -- draw FPS txet
  love.graphics.print("FPS: " .. tostring(love.timer.getFPS()), 2, 2)
end

function love.keypressed(key, isrepeat)
  if key == "escape" then
    -- ESC key to exit
    love.event.quit()
  end
end

動作に必要な画像は以下。自作した画像なので、CC0 / Public Domain ってことで。

_circle01_96x96_32col.png

上記の3つのファイル、conf.lua、main.lua、circle01_96x96_32col.png を、任意のフォルダに置いて、「love フォルダ名」で実行できる。

解説。 :

やってることは簡単。頭の座標を毎フレーム、バッファに記録し続けて、体の部分は、バッファから座標値を取り出して描画してるだけ。

頭の座標を記録するバッファ
┌─────┐
│  x, y    │
├─────┤
│  x, y    │ ← 頭の座標を記録
├─────┤
│  x, y    │
├─────┤
│  x, y    │ ← 体1の座標
├─────┤
│  x, y    │
├─────┤
│  x, y    │ ← 体2の座標
├─────┤
     ...
├─────┤
│  x, y    │ ← 体nの座標
├─────┤
│  x, y    │
├─────┤
│  x, y    │
└─────┘

後は、頭だけをイイ感じに動かしてやれば、その動きに体が追従してくれるわけで。

上記のソースでは、頭はマウスカーソルを追いかけるようにしてみたり。love2d でマウスカーソルの座標を取得したい場合、以下のように書けばいい。
  mx, my = love.mouse.getPosition()
mx, my に、マウスカーソル座標 x, y が入る。

余談。大昔に関わった某ゲームに出てくる、蛇みたいな敵(2種類)は、この処理で動かしていました。頭は、sin,cos で動かした記憶が…。たしかそのはず…。

課題。 :

この処理はフレームレートが安定していることを前提にして書いてるし、手元の Windows環境では約60FPSで動いちゃってるので、それらしく見えてはいるけれど。

love2d で更新処理を担当する love.update(dt) が、dt に前フレームからの経過時間が入る仕様であることを考えると、場合によっては可変フレームレートで動く場面もありそうだなと。そうなると、おそらくおかしな見た目になりそうな予感。

さて、可変フレームレートにも対応させようとした場合、どう書けばいいのだろう…。

#2 [pc][tv] 液晶ディスプレイにしみができていた

自分が使っている液晶ディスプレイ、MITSUBISHI RDT233WX-3D の画面右上に、しみができていることに気づいてしまった。いつからできていたんだろう…。困った…。まあ、画面端の、滅多に凝視しない部分で発生したのが救いではあるけれど。

ググってみたら、長期に渡って使っていると経年劣化でしみができてしまう時があるようで。できてしまう原因までは分からなかった。

買い替えが必要なのかな…。しかし、この製品はもう売ってないわけで…。そもそも MITSUBISHI は、2013年頃に、液晶ディスプレイ市場から撤退しているし。

_三菱電機が液晶ディスプレイ事業から撤退 | スラド ハードウェア

3D対応液晶ディスプレイが入手不可なのが悲しい。 :

この RDT233WX-3D は、偏光フィルタ方式で3D表示に対応しているのが売りで。かつ、PIP表示にも対応してる製品なのだけど。同等スペックの製品を探してみても、今では選択肢が無く…。

PIP表示が可能な液晶ディスプレイは今でも存在しているようだけど、3D表示に対応してる製品は、もはや市場では皆無。あったとしても、TNパネル + NVIDIA 3D Vision のタイプで、これまた NVIDIA 3D Vison 自体がサポート終了状態で。

液晶ディスプレイ市場には無くても、TV市場なら3D対応製品があるのではないかとググってみたけれど、そちらも既に壊滅状態。

_3Dテレビ時代の終焉。'17年テレビから3D対応機種が無くなった理由 - AV Watch

つまり、今から3D表示・立体視を楽しもうと思っても対応機器が存在しない。3Dコンテンツを各御家庭でも比較的安価で視聴できていたのは、ほんの少し前の一時期に過ぎなかった、ということになりそうだなと…。 *1

偏光フィルタ方式が復権しないかな。 :

せっかく4K/8Kのパネル、かつ、HDRが市場に出てきたのだから、今こそ偏光フィルタ方式が活きる時ではないのか、という気もするのだけどなあ。

偏光フィルタ方式は、縦解像度が半分になる + 映像が暗くなりがち、というデメリットがあるけれど。
  • 4K/8Kパネルなら、解像度が半分になっても、フルHDの縦解像度は得られるはず。
  • HDRなら、より明るい画面も出せるはず。
既存のソレより、はるかに鮮明なフルHDの3D表示が可能だったりしないか、あの方式が再評価されないかと夢想したりするわけで。 *2

とは言っても、世間様は「3Dで見えても別に嬉しくはないなあ」てな空気になってそうだし…。SF映画でたまに出てくる、立体映像が当たり前、てなシーンは、この調子だと実現しないのかもしれないなあ…。浪漫が無い…。

2019/12/25追記。 :

上記リンク先の記事を読んでいたら、「4Kパネルに偏光フィルタを貼ると光量が減るからHDRが実現できなくなる」との話が書いてあった。そういう理由で偏光フィルタ方式は復権できないのか…。でも、そのあたり改良できる見込みは無いのかな…。

*1: いやまあ、VRとか、スマホ+ダンボールとか、そのへんが残ってはいるのだろうけど。PC画面を、というスタイルでは無いのだよな…。
*2: もっとも、偏光フィルタ方式は、画面と眼鏡の角度によって、右目用と左目用の映像が分離できずに重なって見える等の問題もあるのだけど…。

2018/12/23() [n年前の日記]

#1 [anime] 「ブラッククローバー」63話を視聴

作画がスゴイ…。これはちょっとメモしておかないといかん気がする。ブラッククローバー、#63。これはスゴイ。

もっとも、あまりに凄過ぎてもはや何をやってるのか分からん映像になってたあたりはアレなんだけど、逆に言えばそのくらい大暴れだったわけで…。それでいてCGも組み合わせて面白い映像になってたカットもあったりして…。何にせよ、映像を見ているだけで圧倒されてしまった。この回はスゴイ。

それはともかく、こんな回に限ってED映像が小さくされて、L字テロップ。スタッフ名もますます読みづらく。これは酷い。誰だよ…こんな画面にしろと指示を出したのは…。

#2 [anime][neta] 実は口パクって要らないのでは

思考メモ。

TV映像をBGVにしながら作業をしていると、何かの拍子にNHKの幼児向け番組が映ることがあるのだけれど。画面を見ていて、ふと気づいた。

着ぐるみキャラって、えてして口が動いてないよな…。でも、体全体でアクションしながら、そこに声優さんがそれらしい声をあててるだけで、ちゃんとそのキャラが喋ってるように感じてしまうよな…。口が動いてないのに喋ってる、その光景に対して、文句を言う幼児の姿も、ちょっとイメージしづらいな…。

それを考えると…。もしかしてアニメキャラも、実は口パクが要らなかったりするのでは…。もちろん人間に見えるキャラが口を動かさずに喋っていたら「いっこく堂かよ」とツッコまれるだろうけど、マスコットキャラの類っぽく見えるキャラデザだったら、口パクが無い状態で喋っていても結構イケるんじゃないのか…。

などと書いているうちに、実際それに近いことを試してるアニメがあったことを思い出した。「CONCEPTION 俺の子供を産んでくれ!」というゲーム原作アニメには、狸っぽいマスコットキャラが登場するのだけれど、そのキャラはほとんど口を動かさずに、しかしベラベラ喋ってた気がする。最初のうちは若干違和感があったけど、何話か眺めていたら「これはそういうキャラだから」で気にならなくなったわけで。

考えてみたら、「宇宙戦艦ヤマト」に登場するアナライザーもソレに近いのではないか。彼も口パク無しで喋ってる…。もっとも、アレはロボットだから、口を動かさずに喋っていても不自然さを感じないのだろうけど。 *1

つまり、スケジュールの厳しさが予見される企画においては、着ぐるみだのロボットだのに見えるキャラの割合を増やして、口パクも節約するという手が…。いや、まあ、たいした節約にはならない気もするけど。

とは言え、「キャラが出てきて喋っていたら、必ず口パクを入れないといけないのだ」と思い込む必要は無さそうだなと。そのあたりはキャラデザによるのだろう。

外国ではまた違うのかも。 :

日本国内では口パクが無くても気にならない可能性がありそうだけど。外国ではまたちょっと事情が違うかもしれないなと。あちらは、台詞と口パクのタイミングが合ってないと、観客・視聴者がかなり違和感を覚えるそうで。そのせいもあって…。
  • サンダーバードの人形達は音声を元に口を動かす機構をわざわざ発明したらしいし。
  • あちらの何かのアニメにおいては、リップシンクを意識し過ぎたあまり、口だけ実写のソレを合成したものすらあるらしいし。
  • あちら向けのアニメ制作ツールにおいても、リップシンクの自動化機能の有無は売りの一つになっているし。というか無かったら「何考えてんの?」扱いだし。
  • そういえば、セサミストリートに登場するキャラのほとんどは、口を動かす系のデザイン・機構だったよな…。
海外向けを意識した場合は、日本国内と同じノリでは作れないかもしれないなと。

もっとも、日本語の台詞を喋ってる状態でみっちりとリップシンクをしてみても、英語で吹き替え等をしてみたらタイミングがずれまくるので、そのあたり気にしても意味がない、ような気もする。まあ、わざわざ英語で吹き替えをしてもらえる日本製のアニメがどのくらいあるのか分からんけど…。

*1: アナライザーはひょっとすると、喋るタイミングで松本メーターを光らせてる可能性が…。実際に映像を見てみないと分からないな…。

2017/12/23() [n年前の日記]

#1 [love2d] love2d + stiライブラリでTiledで作ったタイルマップのオブジェクトレイヤー情報を取得

レトロ風の2Dゲームを作る際、えてして背景(BG、Background)は、タイル状の画像を並べたマップ(タイルマップ)で表現したりするわけだけど。

そういったタイルマップの作成ツールとして、 _Tiledマップエディタ があり。例えば love2d も、 _sti (Simple Tiled Implementation) というライブラリを使わせてもらうことで、Tiled で作ったタイルマップを簡単に表示できたりするわけで。

で。単に表示するだけなら話はこれで終わりなのだけど。せっかくだから、Tiled で作ったタイルマップに敵発生用の情報も含めておいて、それを読み取って使いたいものだよなと。でも、どうすればそんなことができるのだろう。

Tiled は、色々な種類のレイヤーを作ることができるけど…。「この位置に、この種類の敵を置きたい」なんて時は、オブジェクトレイヤー(Object Layer)を使えば目的を果たすことができるかもしれないなと。love2d + sti で、オブジェクトレイヤーの情報を読み取ることができれば…。

てなわけで、そのあたりを調べて実験したり。

こんな感じになった。「a」「b」と表示されてる白い四角があるけれど、これがオブジェクトレイヤーの情報を読み取って、その位置に表示してみたソレ。

tilemap_test04_getobject_ss01.png

Tiledで作業する際の前提条件。 :

  • 敵発生位置は、オブジェクトレイヤー(Object layer)を作って指定する。
  • オブジェクトレイヤーには、複数のオブジェクトを置くことができる。
  • 今回は、32x32ドットの四角形(rectangle)を置いて、位置を指定した。
  • 敵種類の判別は、各オブジェクトの名前を利用する。「a」「b」等を指定した。
Tiled の操作方法については、別記事でまとめるつもり。

画像とソース。 :

使った画像・タイルマップデータは以下。

_enemy_mark.png
_tile01_b.png
_mecha_bg2_map_with_enemy.lua
_mecha_bg2_map_with_enemy.tmx

ソースは以下。 _conf.lua
function love.conf(t)
  t.window.title = "Tilemap Test 04 get object"
  t.window.width = 1280
  t.window.height = 720
  t.window.vsync = true
  t.console = true
  -- t.window.fullscreen = true
  -- t.window.fullscreentype = "exclusive"
end

_main.lua
-- tilemap test 04 get object
--
-- use sti library
-- https://github.com/karai17/Simple-Tiled-Implementation

local sti = require "sti"

function love.load()
  love.graphics.setDefaultFilter("nearest", "nearest")
  scr_w, scr_h = 640, 480
  canvas = love.graphics.newCanvas(scr_w, scr_h)

  -- load image
  mark_img = love.graphics.newImage("enemy_mark.png")
  mark_quads = {}
  for i, k in ipairs({"a", "b", "c", "d"}) do
    local x, y = (i - 1) * 32, 0
    local w, h = 32, 32
    mark_quads[k] = love.graphics.newQuad(x, y, w, h, mark_img:getDimensions())
  end

  -- load tilemap
  map = sti("mecha_bg2_map_with_enemy.lua")

  map.getGidByPixel = function(self, x, y, layer_name)
    local tilex, tiley = self:convertPixelToTile(math.floor(x), math.floor(y))
    tilex = math.floor(tilex)
    tiley = math.floor(tiley)
    local layer = map.layers[layer_name]
    local tilew, tileh = layer.width, layer.height
    if tilex < 0 or tilex >= tilew or tiley < 0 or tiley >= tileh then return -2 end
    local tile = layer.data[tiley + 1][tilex + 1]
    if tile == nil then return -1 end
    return tile.gid
  end

  -- get map objects
  enemy_objs = {}
  for k, obj in pairs(map.objects) do
    local x, y, w, h = obj.x, obj.y, obj.width, obj.height
    x = x + w / 2
    y = y + h / 2
    table.insert(enemy_objs, {kind=obj.name, x=x, y=y})
  end

  -- sort objects by y
  table.sort(enemy_objs, function(a, b) return (a.y > b.y) end)

  map.layers["enemy_tbl"].visible = false

  tx_start = 32
  ty_start = 480 * 7
  tx = tx_start
  ty = ty_start
  gid = 0

  -- framerate steady
  min_dt = 1 / 60
  next_time = love.timer.getTime()
end

function love.update(dt)
  next_time = next_time + min_dt
  wdw_w, wdw_h = love.graphics.getDimensions()
  scr_scale = math.min((wdw_w / scr_w), (wdw_h / scr_h))
  scr_ofsx = (wdw_w - (scr_w * scr_scale)) / 2
  scr_ofsy = (wdw_h - (scr_h * scr_scale)) / 2

  map:update(dt)

  -- keyboard check
  local speed = 160 * dt
  local kd = love.keyboard.isDown
  if kd("left") or kd("a") then tx = tx - speed end
  if kd("right") or kd("d") then tx = tx + speed end
  if kd("up") or kd("w") then ty = ty - speed end
  if kd("down") or kd("s") then ty = ty + speed end

  map.layers["enemy_tbl"].x = -tx
  map.layers["enemy_tbl"].y = -ty
  map.layers["bg_a"].x = -tx
  map.layers["bg_a"].y = -ty
  map.layers["bg_b"].x = -tx / 2
  map.layers["bg_b"].y = -ty / 2
  map.layers["bg_c"].x = -tx / 4
  map.layers["bg_c"].y = -ty / 4

  -- get mouse position
  local mx, my = love.mouse.getPosition()
  mx = (mx - scr_ofsx) / scr_scale
  my = (my - scr_ofsy) / scr_scale

  -- get tile gid
  mx = mx + tx
  my = my + ty
  gid = map:getGidByPixel(mx, my, "bg_a")
end

function love.draw()
  love.graphics.setCanvas(canvas)
  love.graphics.clear(0, 0, 0, 255)

  -- draw tilemap BG
  love.graphics.setColor(255, 255, 255, 255)
  map:draw()

  -- draw objects
  love.graphics.setColor(255, 255, 255, 255)
  for i, obj in ipairs(enemy_objs) do
    local x = obj.x - tx
    local y = obj.y - ty
    love.graphics.draw(mark_img, mark_quads[obj.kind], x, y, 0, 1, 1, 16, 16)
  end

  love.graphics.setCanvas()

  -- draw canvas to window
  love.graphics.setColor(255, 255, 255)
  love.graphics.draw(canvas, scr_ofsx, scr_ofsy, 0, scr_scale, scr_scale)

  love.graphics.print("FPS: "..tostring(love.timer.getFPS()), 10, 10)
  love.graphics.print("tx = "..tostring(tx), 10, 40)
  love.graphics.print("ty = "..tostring(ty), 10, 60)
  love.graphics.print("R : reset", 10, 100)
  love.graphics.print("ESC : exit", 10, 120)
  love.graphics.print("objs = "..tostring(#enemy_objs), 10, 140)
  love.graphics.print("gid = "..tostring(gid), 10, 160)

  if love.system.getOS() == "Windows" then
    -- wait
    local cur_time = love.timer.getTime()
    if next_time <= cur_time then
      next_time = cur_time
    else
      love.timer.sleep(next_time - cur_time)
    end
  end
end

function love.keypressed(key, isrepeat)
  if key == "escape" then
    -- ESC to exit
    love.event.quit()
  elseif key == "r" then
    -- reset scroll position
    tx = tx_start
    ty = ty_start
  end
end

動作には、 _stiライブラリ が必要。 _karai17/Simple-Tiled-Implementation: Tiled library for LOVE の右上の「Clone or download」から、zip をダウンロードして解凍してもいいし、git がインストールしてある環境なら、
git clone https://github.com/karai17/Simple-Tiled-Implementation.git
と打って入手してもいい。main.lua と同じ階層に、stiフォルダが置いてあるようなファイル・フォルダ配置にして使う。

画像、タイルマップデータ(.tmx)、main.lua は License: CC0 / Public Domain ってことで。

stiライブラリは MIT/X11 Open Source License なので注意。

少し解説。 :

stiライブラリは、最低限の使い方であれば、以下で済む。
local sti = require "sti"

function love.load()
  map = sti("hoge_tilemap.lua")
end

function love.update(dt)
  map:update(dt)
end

function love.draw()
  love.graphics.clear(0, 0, 0, 255)

  love.graphics.setColor(255, 255, 255, 255)
  map:draw()
end
  • 最初に、local sti = require "sti" と書くことで「stiライブラリを使うよ」と指定して。
  • 初期化処理を行う love.load() の中で、Tiled からエクスポートした .lua を読み込んで。
  • 更新処理を行う love.update(dt) の中で、map:update(dt) を呼んで。
  • 描画処理を行う love.draw() の中で、map:draw() を呼んで描画する。

オブジェクトレイヤーに乗ってるオブジェクトの情報を取得するなら、map.objects にアクセスすればいい。
  enemy_objs = {}
  for k, obj in pairs(map.objects) do
    local x, y, w, h = obj.x, obj.y, obj.width, obj.height
    x = x + w / 2
    y = y + h / 2
    table.insert(enemy_objs, {kind=obj.name, x=x, y=y})
  end
各オブジェクトは、以下の情報を持ってる。
{
  id = 16,              -- ID
  name = "a",           -- 名前
  type = "",            -- 種類
  shape = "rectangle",  -- 形状
  x = 96,               -- x
  y = 3360,             -- y
  width = 32,           -- 幅
  height = 32,          -- 高さ
  rotation = 0,         -- 角度
  visible = true,       -- 表示/非表示
  properties = {}       -- カスタムプロパティ
},

#2 [love2d][cg_tools] Tiledマップエディタでオブジェクトレイヤーを使う際の操作手順をメモ

Tiledマップエディタでオブジェクトレイヤーを使う際の操作手順を一応メモ。

文章で説明すると分かりづらいだろうから、一応動画でキャプチャしてみたり。



  1. レイヤーウインドウの左下のボタンを押すとレイヤーが追加できる。その中から「Object Layer」を選んで追加する。
  2. オブジェクトウインドウを表示すれば、オブジェクトレイヤーに登録されてるオブジェクトの一覧が確認できる。
  3. 上のツールバーから、「四角形を追加」を選ぶ。
  4. メインウインドウ内で四角を描くようにドラッグすると、四角形(rectangle)が追加できる。
  5. プロパティウインドウを表示して、幅、高さ、名前を変更。
  6. 上のツールバーから、「オブジェクトを選択」を選ぶ。
  7. オブジェクトをクリックして選択。ドラッグ操作でオブジェクトを移動できる。
  8. Ctrlキーを押しながらドラッグすると、タイル単位でオブジェクトを移動できる。
  9. Ctrl + C、Cirl + V で、オブジェクトのコピーと貼り付けができる。

キャプチャし忘れた操作についてもメモ。 Ctrl + ドラッグを使って、タイル単位でざっくりと移動してから、カーソルキーを使って1ドット単位で位置を調整すれば、比較的きっちりと位置指定ができるはず。もちろん、プロパティウインドウで直接座標値を打ち込んでもOK。

タイルマップデータを love2d で使う方法。 :

タイルマップデータを love2d で使いたいなら、Lua形式でエクスポートすればいい。ファイル → 名前を付けてエクスポート → Lua形式を選んでエクスポート。中身は Lua のテーブルになってるので使い易いはず。

2016/12/23(金) [n年前の日記]

#1 [anime] 「終末のイゼッタ」最終回を視聴

BS11で放送されてたオリジナルTVアニメ、「終末のイゼッタ」最終回を視聴。

面白かった…。実に面白かった。このアニメは、良い。素晴らしい。

内容というか基本設定としては…。第二次世界大戦当時の欧州、“っぽい感じ”の世界を舞台にしてる作品で。ドイツに相当する軍事大国が近隣諸国を次々に侵略していく中、侵略される側になった小国のお姫様が、伝説・おとぎ話の存在とされていたとある人物と出会い…みたいな話で。

監督は、 _藤森雅也 氏。Wikipediaの情報では、アクションが得意なアニメーター・監督さんのようで。

自分、恥ずかしながら「忍たま乱太郎」「ドラえもん劇場版」はほとんど見てないので、それら作品内での活躍は知らないのですが。この監督さんが作った「おまえうまそうだな」という映画は見たことがあって。「このキャラデザで、よくまあこんな動きをさせられるな…とんでもねえなあ…」とめちゃくちゃ感動したことを覚えていたり。なので、この「イゼッタ」のアクションシーンを目にして「ああ、この監督ならここまでやれるわなあ…」と納得してしまいました。

今になって考えると「おまえうまそうだな」のアクションシーンは、「カリ城」のアクションシーンを見た時と似たような感覚があった気もするなと。大塚ルパン・宮崎ルパンって見た目はちょっと可愛らしく見えるけど、動き始めると「スゲー」「カッケー」と思えてくるわけで。あの感じに近いというか。

で、「おまえ〜」が「カリ城」ポジションなら、もしかすると「イゼッタ」は、これは「ナウシカ」に相当する作品になるのかもなと。

プロペラ軍用機と並んで○○する、赤髪の白い○○。そのビジュアルイメージからしてグッとくるわけですけど。第二次世界大戦当時の暗い雰囲気が全編通して漂っていて、未来だの希望だのがあるのかないのかよー分からん状況の中で、もがいていく登場人物達。なんだけど、アクションシーンになると見ていて「うおおお…」「おいおいおいおい…」って気分になってくる。…雰囲気として「ナウシカ」に近いよなと。何より、オリジナルアニメだし。

平成の時代に、しかもTVアニメという形で、「ナウシカ」相当の作品が誕生する瞬間に立ち会えた・目撃できたというのは、これは一視聴者として幸運なことだよなと思えてきたりもして。 *1 スタッフさん、ありがとう。面白かったです。素晴らしい。

ということで、コレは見れるなら見ておいたほうがいいアニメじゃないか、と思えました。特にアクションシーン。 _外人4コマ のテンション上がっちゃってるコマみたいな気分になれます。
*1: いやまあ、「ナウシカ」級の作品というわけではなくて、この監督の作品の中でコレは「ナウシカ」ポジションになるかもなあ、ぐらいの話なのでアレですけど。

#2 [anime] 「ベイマックス」を視聴

TVで放映されてたので見てみたり。初見。内容は…説明しなくてもいいよな…。

なんというか…これもう何もかもが完璧やん。参っちゃうな…。

リターンが大きいと、ここまで作り込み・練り直しができるんだなと。それはつまりあらゆる手法が凝縮されてるわけで、この映画を分析していくだけでも色んな手管が学べそうな気もしてきたり。

2015/12/23(水) [n年前の日記]

#1 [dxruby] キャラグラエディタに機能追加中

矩形の描画、矩形の塗り潰し、線の描画は追加できた。

線の描画は、ブレゼンハムアルゴリズムを使ってみたり。

_ブレゼンハムのアルゴリズム - Wikipedia
_ブレゼンハムアルゴリズム - 人工知能に関する断創録
_Ruby-Processing ブレゼンハムのアルゴリズム - Qiita

調子に乗って、バケツツールを ―― スキャンラインシードフィルを追加しようとしたら、コレが動いてくれない。画像を対象にして実験してる分には動くのだけど、なんでや。

2014/12/23(火) [n年前の日記]

#1 [web] WordPress.com だか Gravatar だか

_DXRuby Advent Calendar 2014 - Adventar の、自分のアイコンだけがデフォルトアイコンだったあたりがなんだかとても寂しかったので、どうにか変えたいなと。

しかし、アイコンを変えるためには、Gravatar なるサービスのアカウントが必要らしく。更にググってみたら、Gravatar のアカウントを取るには WordPress.com とやらのアカウントを取ったほうが楽とのことで、結局そちらも取ることに。アイコン一つを設定したいだけなのに、どうしてこんな面倒なことに…。いやまあ、変な欲を出さずにデフォルトアイコンで我慢すればいいんだろうけど。

それとも Twitter アカウントでログインすればよかったのだろうか。しかし自分の Twitter アカウントは全く使ってないので、そっちでログインするのもなんだかなと。何でもだらだらと長文でこの日記ページに書いてしまうから、Twitter の使い道が分からんのだよなあ…。

#2 [nitijyou] 救急車を呼んだとメモ

夜中の2:15頃、親父さんの体調が悪くなって、救急車を呼んだ。詳細はGRPでメモ。とりあえず、入院が必要な状況ではないらしいので少し安心。

電話で症状を話して、救急車を呼ぶか呼ばないか決められる窓口でもあれば、という気もしたけれど。既にあるけど自分達が知らないだけなのか、それともそういう窓口は無いのか…。どうなんだろう。

_休日夜間急病診療所:須賀川市公式ウェブサイト を眺めると、子供さん用の窓口はあるらしい。これからお年寄りが増えていくのだから、そういう事例も扱える窓口も、と思わないでもないけれど、対応するための人材確保等が難しいのかもしれないし、お年寄りの場合、えてして急を要する事例のほうが多いから、運んでしまったほうが間違いないという判断があるのかもしれないし。何か事情がありそうだなと。

2013/12/23(月) [n年前の日記]

#1 [cg_tools] ディザでグラデーションを作りたい

タイリングというか、市松模様というか、ディザというか、そういう模様でグラデーションを作りたいなと。

そもそも、現代において、少ない色数でグラデーションを作ってみてどうするんだ、という気もしますが。ただ、いかにもな昔風の2Dゲーム画面を、なんてことを考えてると、こういうこともやりたくなるわけで。1タイル16色で描けば、たぶんそれっぽくなる予感。ソレって一体どんなプレイなんですか。

EDGE2には該当機能無し。 :

日頃、ドットエディタとして、EDGE2 を愛用しているのだけど。EDGE2 には、そういったグラデーションを自動で作る機能は無くて。

一応、ディザの段階を選べる機能はあるのもの、ディザを選択 → 塗る → ディザを選択 → 塗る、なんてやってられないよなと。他のツールを探さねば…。

ちなみに、この認識は完全に間違いだったのですが。このまま話を進めます。

GIMPのインデックスカラー化ではビミョー。 :

GIMP でフルカラー画像のグラデーションを作成してから、インデックスカラー化することで実現できないかと思ったけれど。試してみたら、なんだか妙な感じのディザになってしまって。

GIMPでインデックスカラーにした画像

4倍に拡大してありますが。なんだかあちこちに、変な点が入ってしまう…。

D-Pixedをインストール。 :

ググってみたら、D-Pixed という256色のみ対応のCGツールに、グラデーション作成機能があると知ったので、試しにインストールしてみたり。

_D-Pixed : Vector
_D-Pixed Add-In tool

単体ではできなくて、アドインが必要らしい。おそらく、ペンアドインセット dppenadd.lzh の中にある、「グラデーション」、gradat.dll がソレ。コレを、D-Pixed のインストールフォルダにコピーする。

使い方を、画像で説明してみたりして。

D-Pixed + グラデーションの使い方


少し使ってみたけど、D-Pixed 自体がガンガンフリーズするな…。Windows7 上で動かしてるから、だろうか。ちょっと常用はできない感じ。

D-Pixed 上で画像を作ったらコピーして、EDGE2 で、編集 → 新しいウインドウに貼り付け、をして、後の作業は EDGE2 を使ったほうがヨサゲ。

ImageMagcikで作れないかな。 :

ImageMagick でグラデーション画像を作って減色すれば同じことができそうな気がしてきたり。以下を参考にして作業すれば、おそらくは…。

_Canvas Creation -- IM v6 Examples
_Quantization -- IM v6 Examples

convert -size 16x160 gradient:black _tmp1.png
convert _tmp1.png -ordered-dither o4x4 _tmp2.png

ImageMagickで作ったグラデーション画像

うむ。これでもイケそう。

と思ったけど、単なる白黒画像ならともかく、フルカラー画像を減色させると、奇妙な結果が出てくるなあ。
convert test_grad1.png -ordered-dither o4x4 test_grad1_dither.png
ImageMagickでグラデショーン画像を減色

ImageMagick のバージョンは 6.8.5-7 2013-05-19 Q8 だけど。 _ある時期の ImageMagick は減色関係でバグ持ち 、という話もあるし、最新版にしてみたほうがいいのかも。

ImageMagickを最新版に更新。 :

前のバージョンをアンインストール後、ImageMagick-6.8.7-10-Q16-x86-dll.exe をDLしてきてインストールしてみたり。ImageMagick には、Q8 と Q16、static版とdll版があるけど。今回は Q16、dll版をインストール。

結果は微妙に違ってきた、が、やはり前述のソレと同様、ちょっと奇妙な結果に。

オプションの与え方で、結果が違ってきた。「o4x4」→「o4x4,4」にしてみたら、イイ感じに。
convert test_grad1.png -ordered-dither o4x4,4 test_grad1_dither.png
ImageMagickでグラデーション画像を減色(オプション変更)

そもそもEDGE2にグラデーション塗り潰し機能があった。 :

作成画像をEDGE2で眺めたり弄ったりしてるうちに、「…アレ?」と。塗りつぶしツール利用時、オプションに「グラデーション」という項目が…。

なんてこったー。グラデ塗り機能が、ちゃんとあったのか…。

この機能、かなり充実していて。
  • ディザで塗ることができる。(「トーンを使う」にチェックが入ってれば使える。)
  • 利用する色を、パレットから複数選んで、順番を並び替えることができる。
  • グラデの角度はもちろん、位置を変えることもできる。
EDG2のグラデーション塗り機能

自分にとっては完璧。これは素晴らしい。

それにしても、この機能の存在に気付いてたら…。自分は今まで何をしてたのか…。アホ過ぎる…。でもまあ、EDGE2 さえあれば大体のことはできると分かったので、これはこれでOK、ということにしておきたいです…。

#2 [dxruby][game] DXRubyで地形アタリを取りながらプレイヤーキャラの移動

昨日アップロードしたクラスを使って、プレイヤーキャラの移動をやってみようかなと。

とりあえず、横移動と、足元に床が無かったら落下する、だけの処理を書いてみました。

playermove1.rb
# プレイヤーキャラを動かしてみるサンプルその1
# 横移動、床補正、落下処理だけの版

require 'dxruby'
require 'tmx'
require_relative 'dxrbtmx'
require_relative 'bgatari'

# 画像読み込み
pimg = Image.loadTiles("player.png", 640/80, 640/80)
bgimg = Image.loadTiles("bg_attari.png", 256/16, 256/16)

# tmx読み込み
scrw, scrh = Window.width, Window.height
tmx = DxrbTmx.new("./bg_atari_test.tmx", scrw, scrh)

# Bgレイヤーマップデータ取得
atari_layer = tmx.get_layer("bg_atari")
bg_layer0 = tmx.get_layer("layer0")
bg_layer1 = tmx.get_layer("layer1")
bg_layer2 = tmx.get_layer("layer2")
bg_layer3 = tmx.get_layer("layer3")

bgtw, bgth = tmx.screenwidth, tmx.screenheight

# BGアタリテーブル作成
bgatari = BgAtari.new(bgimg, atari_layer, scrw, scrh, 0, 22, 30)

# カーソル描画用メソッド
def draw_cursor(x, y, col)
  w = 2
  Window.drawLine(x - w, y, x + w, y, col)
  Window.drawLine(x, y - w, x, y + (w + 1), col)
end

bx, by = 0, 0
px, py = scrw / 2, scrh / 2
dx, dy = 0, 0
gravity = 0.45
pimgnum = 16

# メインループ
Window.loop do
  break if Input.keyPush?(K_ESCAPE)

  # プレイヤー移動処理

  # 左右キーで横移動
  # x速度に、キー入力に応じて加速度を加算
  dx += Input.x * 0.2

  # 横方向の最大速度を超えないようにする
  spdmax = 6.0
  dx = spdmax if dx >= spdmax
  dx = -spdmax if dx < -spdmax

  # 左右キーを押してなければ、速度を減らしていく
  dx *= 0.95 if Input.x == 0

  # 速度を加算
  px += dx
  py += dy

  # 床アタリで補正する
  if pimgnum == 16
    # 落下中
    yadd = 0
  else
    # 床の上に居る
    # 足元よりちょっと下の座標でアタリを取る
    yadd = 16
  end
  nx, ny = bgatari.adjust_bg_hit(px, py + yadd, BgAtari::ADJUST_UP)

  if nx == nil
    # 足元に床が無い
    dy += gravity # 重力加速度を、速度に加算
    pimgnum = 16 # 落下ポーズに変更
  else
    # 足元に床がある
    py = ny
    dy = 0 # y速度を0にする
    pimgnum = 0 # 床の上に居るポーズに変更
  end

  # プレイヤー移動処理ここまで

  # プレイヤーの位置から、BGスクロール座標を決定
  bx += ((px.to_i - (scrw / 2) - bx) * 0.2).to_i
  by += ((py.to_i - (scrh / 2) - by) * 0.2).to_i

  # BG描画
  Window.drawTile(0, 0, bg_layer3, bgimg, bx / 8, by / 8, bgtw, bgth)
  Window.drawTile(0, 0, bg_layer2, bgimg, bx / 4, by / 4, bgtw, bgth)
  Window.drawTile(0, 0, bg_layer1, bgimg, bx / 2, by / 2, bgtw, bgth)
  Window.drawTile(0, 0, bg_layer0, bgimg, bx, by, bgtw, bgth)

  # プレイヤー描画
  x = px - bx
  y = py - by
  img = pimg[pimgnum]
  Window.draw(x - 40, y - 68, img)

  # プレイヤー座標にカーソルを描画
  draw_cursor(x, y, C_RED)
end
_playermove1.rb.txt

プレイヤーキャラの移動の様子その1

BGアタリ(地形アタリ)で座標補正してるから、ちゃんと床の上をするすると動いているように見えますな。

しかし…。GIFアニメの後半、どんどん怪しい動作に…。

結局、床で座標補正しかしてない状態だと、一度壁の中にめり込んだが最後、こんなことになるわけですね。市販ゲームでもこういうバグを、(稀だろうとは思いますが) 目撃してしまった人も居るのではないかと。

ということで、こんなヒドイことにならないように、明日は、壁で補正する処理も入れてみたいと思います。

実験用に、プレイヤーキャラ用画像も置いときますね。Public Domain ってことで。

プレイヤーキャラ画像
画像サイズは640x640ドット、1パターン80x80ドット、8x8個のパターン入り、です。ってパターン入ってない隙間がたくさんあるけど。

GPU側の都合としては、256x256、512x512、1024x1024といった、キリのいい画像サイズ(テクスチャサイズ)のほうが良いのでしょうな…。

2013/12/24追記。 :

実験用のプレイヤーキャラ画像を、画像サイズ512x256ドット、1パターン64x64ドットに描き直してみたので置いときます。Public Domain ってことで。
プレイヤーキャラ画像、64x64ドット版

2012/12/23() [n年前の日記]

#1 [cg_tools][neta] MicrosoftとCGソフト

_Microsoft Expressionが終了へ、「Expression Web」「Expression Design」は無償化 - 窓の杜 という記事を読んで、「ありゃ。またか」と思ってしまったり。

元々 Expression という名前で販売されてたドローソフト ―― ベクターデータとラスターデータの融合が当時としては画期的だったソフト ――をMicrosoftが買収して…こういう結果に。

_コミスタとExpression3の連携 - Expression3の柔軟なブラシ
_Expression3の作例

なんだか、trueSpace を思い出すわけで。

_窓の杜 - 【NEWS】Microsoft、本格3Dグラフィック作成ソフト「trueSpace」を無償化
_TrueSpace死亡のお知らせ | YATA BLOG

これは3DCGソフトだけど、やはり Microsoft が買収したことで息の根が止まった事例のような。

Microsoftが買収、てのは、CGソフトにとって死亡フラグのような気がしてきた。あの企業が買収して、今も生き残っていて評価を得ているCGソフトって、一体どのくらいあるんだろうか…。Visio ぐらいしか思い出せないけど。

全然関係ないけど。/.Jの関連記事を眺めてたら、「Photoshop があれば FREEHAND は要らない(キリッ」なんて語っちゃってる人を見かけてガクッとなった。ドローソフトとビットマップ編集ソフトの区別すらついてないなんて泣けてきたわ。いや、考えてみれば、それが一般人のレベルなのかも。そんな知識状態の人がゴロゴロしてる中で各CGソフトを魅力的な商品に仕立て上げるのは難しい気も。何が新しいのか、何が差別化のポイントなのか、分かってもらえないだろうし。だから、画期的なことをやっていても、社内でも市場でも価値を見出されずにこういう展開になったりするのかなと。わかんないけど。

とりあえず Expression Design を試用してみたり。 :

Expression Design 4 Free をDLして、 Windows7 x64 上でインストール。少しだけ試用してみたり。

なんというか…パッと見は、フツーのドローツールに見えた。ただ、ストロークの種類を色々選べるあたりは一風変わった感じ。そのあたりは昔の Expression の雰囲気が少し残ってるのかなと想像。

Creature House Expression 3.3 という版も昔公開されてたそうで、それも試用してみたり。バイナリエディタで書き換えないと日本語環境では起動しないらしいのでそのあたり少し作業を。起動したところ、現行版?とは結構見た目が違っていた。昔の版のほうが機能が多そう。その分、何をどうしたらいいのか悩みそうだけど。

Express Web も試用してみた。 :

CGソフトではなくて、HTML編集ソフトだけど。せっかくだから Expression Web 4 も試用してみたり。

FrontPage の後継アプリと言われてるっぽいのだけど。少し文字を打ってみた感じではイイ感じだった。WYSIWYGで編集できるし、htmlソースもそれほど汚くならないように見えた。昔、FrontPage Express を試用した時は、IE独自のタグがガンガン埋め込まれて反吐が出そうだったけど、さすがに今時そういうことはしないっぽい。

一応、日本語ページも作れるみたい。html lang="ja" と書かれてるっぽいし。

ただ、英語版しかないのがちょっと厳しい。まあ、 _Nvu 系( _KompoZer_BlueGriffon )を使うという手もありそうだけど…。選択肢が増えるのはありがたい。 *1

_Microsoft SharePoint Designer なるソフトもあったらしい。知らなかった。試しに 2007 をインストールしようと思ったら、IME2007がインストールされそうな雰囲気で。怖いので中止。そもそも、Expression Webのほうが一般向けとのことらしいので、SharePoint Designer をあえてインストールする必要はないのかもしれない。まあ、メニュー等日本語で使えるというメリットはあるのかもしれないけど。

*1: ただ、どれも開発停止状態なあたりがなんというか…。

2011/12/23(金) [n年前の日記]

#1 [nitijyou] 右肩が痛い

起きた時からずっと右肩が痛い。肩甲骨?のあたり? 寝違えたのだろうか…?

座ってるだけでも痛みがあるので困った。

2010/12/23(木) [n年前の日記]

#1 [prog][windows] Microsoft Visual C# 2010 Expressをインストールしようとしたのだけど

ISOをDLして仮想DVDとしてマウントしてインストールしようとしたら、途中で再起動を要求された。で、再起動したら仮想DVD上のファイルが見つからないとエラーが。うーん。一々DVDなんか焼きたくないんだけどなあ…。

仕方ないのでWebインストーラ版でインストールし直し。

チュートリアルを見ながら操作に慣れる。自動補完機能が素晴らしい。この手の機能がない環境で、もう、ソースは打ちたくないな…。それはさておき、一日中操作して、チュートリアル4つ分はひとまず終えた。

実行形式を作る方法が分からない。検索してみたところ、どうやら「リリースビルド」なる操作をすればいいらしい。やってみたが、.pdb という拡張子のファイルが .exe と一緒に作られる。デバッグ用の情報が入ったファイルらしいが…。プロジェクトのプロパティの詳細設定で、そのあたりを変更…できたような気がするがメモを残すのを忘れてしまった。後で復習しておかないと。

出力した .exe は 11kByte程度だった。.NET とやらがあらかじめ入ってる環境じゃないと動かない、とは言え、このファイルサイズの小ささは素晴らしい。さすが Windows に特化した開発環境。…しかし、他の環境で動くのかな。後で試してみないと。

#2 [windows] chkdskcをかけたらWindows XPが起動しなくなった

MS Visual C# 2010 Express で作業中、どうもファイル保存が遅いような感じがして。試しに chkdsk をかけたら、Stage 2 でエラーが出て途中で終了してしまう。どうせ何かのアプリがHDDにアクセスしてエラーが出てるんだろう、と思って常駐ソフトをあらかた終了させて何度か試すが、毎回エラーが出て途中で終了してしまう。

仕方ないので chkdsk /f c: を実行。再起動。chkdsk がかかる。終了して、自動的に再起動。

マウスカーソルは表示されるが、Windows XP のログイン画面が表示されない。…マズイ。非常にマズイ。HDDが壊れたのだろうか。

セーフモードでも起動しない。セーフモード+コマンドプロンプトもダメ。リセットボタンを押すと、また最初から chkdsk がかかる。起動に必要なファイルを破壊・消滅させてしまったのだろうか。ううーん。4〜5時間ほど事態は進展せず。

knoppix DVD版で起動してみた。HDDのNTFSパーティションを覗いてみたが、chkdsk が吐き出すであろう破損ファイルの残骸は見当たらない。フォルダ群も、これと言って消滅していないように見える。どういうことだろう…。

2009/12/23(水) [n年前の日記]

#1 [windows] MyJVN セキュリティ設定チェッカを動かしてみたが色々試してもOKが出なくて悩む

_MyJVN セキュリティ設定チェッカ

USBメモリの自動実行(Autorun設定)が無効かどうかをチェックするツールらしいのだけど。Windows XP Home SP3 環境下で、パッチを当てて、レジストリエディタでレジストリ値を設定しても、参考値とやらに一致しない。 _Windows の自動実行機能を無効にする方法 に従って作業しているのだけどなあ。

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer\NoDriveTypeAutorun
を0xffにすればいいのだろうと思ったのだけど。一体どこをチェックしてOKか否かを判断しているのだろうか。>MyJVNなんとか。

2008/12/23(火) [n年前の日記]

#1 [anime] 「デジモンアドベンチャー ぼくらのウォーゲーム!」を鑑賞

NHK-BS2で流れてたみたいなので録画かつ鑑賞。細田守監督作品。

デジモン関連作品のアレコレはまったく知らなかったのだけど。こりゃ凝ってる作品だなと。Windowsの画面がバンバン出てきて、よくまあここまでアレコレそれらしく画面を作ったものだなと。スタッフロールが流れて映画が終わるときのシーンまで洒落ていて、これは参りました、みたいな。個人用PCその他を作品中で出してリアリティを出した作品と言うとパトレイバーあたりが思い出されるけど、あのへんと並べても遜色ないぐらいに凝っている、ように思えたり。

#2 [anime] 「ラブ・ローラーコースター」を鑑賞

NHK-BS2で流れてたみたいなので以下略。日本製の3DCGアニメ。後で検索してみたところ、監督さんはSCEで仕事をしてた人、らしい?

レンダリングするソフトの性能と言うか種類によって得られた画面なんだろうけど、クレイアニメ的な質感がイイ感じで、これは凄いなと。いや、最近はそういう情報にまったく触れていないので、その手の業界の人からすると「こんなの別に珍しくもなんともない」「たいした映像じゃないだろ」とか言われちゃうのかもしれないのだけど。自分は素人なので感心してしまいました。

キャラデザ、というかモデリングは、見ていてかなりキツイものが。正直に言ってしまうと、キモイ。が、おそらくこういうデザインを良しとする文化圏がその手の業界にはあるのだろう、もしかするとキモカワ云々を狙ったソレなんだろうか等想像しながら眺めたり。ただ、後になって、手描きのキャラデザラフ画らしきものをネットで見かけて、そちらのほうはシンプルかつ味わいがあってイイ感じだったのでなんだか考え込んでしまった。手描きのキャラデザを3DCGモデルにしていく際のノウハウの発見が、まだまだ必要とされている、ということなんだろうか。そういやそのへん、シルクロード少年ユートもそうだったけ。ユートも、手描きのキャラデザはイイ感じなのに、3DCGモデルになるとキモくなっていた。元のデザイン画の雰囲気を残したモデルを作る上手い方法はないのだろうか。このへん3DCG業界の課題としてずっと残っていくのか、それとも視聴者が慣れてしまうのが先なんだろうか。てなことをもやもやと。

脚本とコンテは、ちょっと、いや、かなり今後の課題を残してるように思えたり。先日、トイストーリーやMr.インクレディブルを見てしまったので、尚のこと痛感(?)というか。

スカスカの脚本で、どんなに映像を作り込んでみても、どうにもならないところがありそうだなと。徹底的にキャラをドタバタさせたり、とにかく綺麗な画像を作っても、ただそれだけで商品になるかと言うと、ちと厳しいものがありそう。と思ったけど実際はどうなんだろう。

コンテ…というかカメラワークにもちと疑問が。例えば、絶えずカメラがジリジリと動いてるあたり、演出意図が判らなくて気になってしまったり。3DCGはカメラを積極的に動かせる=どんどん動かさなきゃ3DCGで作る意味がないだろ、とでも思ってしまったのだろうか。だとすればツールに使われちゃってる気配が。いや、それとも、カメラが定まらないことで何か不安感を観客に与えようとしていたのだろうか。と思って見返してみたけどそういうルールがあるわけでもないっぽい。手持ちカメラ風に動かしてるわけでもないので、実写映像のソレを再現しようとしてるわけでもナサゲ。む。カメラを動かすことでモーションの拙さ?を誤魔化せる効果があるとか?

部分部分で見ると、ダイナミックなレイアウト、ズームの多用+効果音など、インパクトのあるカットが多数なのだけど。それらのレイアウト・カメラワークをどうしてそこに持ち込んだのかがちょっと類推できない場面が多く。勝手な想像だけど、なんとなくでコンテを切ってそうな予感。各カットを作る能力ではなく、シーンなり全体なりを見渡してカットの繋がりや配置を構成していくための何か、つまりは先人達が白黒フィルム時代から発見してきた映像制作の基礎知識・基礎テクニック、あるいは演出家としての視点がそこには必要だったのかもしれない。と想像したりもしたけど実はものすごく考えられたコンテにはなっていてそれを自分が読み取れてないだけかもしれないのでそのへん自信なし。

それにしても、よくまあこんな映像を作ったもんだなあ…。

#3 [anime] 「冬のレオン Leon in Wintertime」を鑑賞

NHK-BS2で以下略。人形アニメ。人語を話す熊少年がお姫様と、てな話。

面白い表現が多々。 個人的にこういう表現は好きなので面白かった。

が。脚本、というか話にオチがないというか、風呂敷を広げたと思ったら閉じるでもなく千切るでもなくそのままにして帰っちゃったみたいなソレでビックリ。これまた「ラブ〜」と同様、脚本って大事だなと痛感。せっかくかなりの手間暇かけて作ってるのに、脚本が弱くて出来あがったソレがムニャムニャなのは、とてももったいない気がする。

_フランスアニメーション「冬のレオン」の裏話 - オフィスH(あっしゅ)−短編配給業太脚奮闘記 - Yahoo!ブログ :

”中世の物語”と紹介しましたが、実はフランスのこどもたちが今日置かれた事情を織り込んでいます。今回は”養子”が複線です。レオンは赤ん坊の時に、今の両親に引き取られて、人間として育てられます。それでも、顔形が人と違うのでいじめられることがあります。レオンも、実の親である”クマ”に会いたくなり、家出するのです・・・ひねくれ者のハリネズミのハリソンが良い味だして、レオンを励まします。

ルノートルさんによると、この企画が出た時に、養子をもらったスタッフが「この子が成長したときのこと」を話題にして、”レオン”という主人公が誕生したのだそうです。次回の「春のメリー」(仮題)では”離婚”が扱われるそうです。複雑な家族構成が多いフランス社会では、こどもはこどもなりに苦労して大きくなっているのですね。

フランスアニメーション「冬のレオン」の裏話 - オフィスH(あっしゅ)−短編配給業太脚奮闘記 - Yahoo!ブログ より

なるほど…。

2007/12/23() [n年前の日記]

#1 [iappli] BG当たり判定部分を作成

BGと障害物OBJの当たり判定部分を作成できた。と思う。たぶん。

範囲外の当たりを判定しようとしてる・エラーが出るのでおかしいなと思ってたら、処理ステップによっては初期化されてない座標値を元にして判定処理をしていた。当たり判定処理のバグかと思って散々悩んでしまった…。

点数表示位置がおかしい。 :

ソースを見たら、描画処理部分の中に、直接、描画座標値を埋め込んであるようで。とにかく修正が一苦労。

こういうのって、基準位置を指定したら、後はその基準位置から相対的に座標を決めていくような作りにしたほうがいいと思うんだけどな…。まあ、その分、計算やプログラム容量は増えるんだけど。最初の頃の、処理がとにかく遅かった・容量がめちゃくちゃ厳しかった時代の、iアプリ作成のノリを引きずってるのかしらん。>プロトタイプ版の作者様。

ゲームがプレイできない。 :

BG上の各種記号(?)の配置・初期時のスクロール位置が、プロトタイプ版と本番用では大きくずれたので、各種判定がおかしくなっている模様。ソースを見たら、これも全部、座標値を直接埋め込んで判定してる模様。修正が…。

せめて、元々のBG画像上のどのへんの位置を参照しているか、作業用の画像が残っていれば楽なのだけど。とにかく作業用・開発時の各種座標値取得用の画像は残しておいたほうがいいなと思ったり。

当初予定されていたスケジュール通りにはいかない予感がしてきた。 :

人様のソースを修正していく作業なので、どこを修正すれば追加仕様を実装できるか、非常に把握しづらい。移植モノなら、ソースのコンパイルさえ通れば、それでほとんど作業は終了したも同然なのだけど。どうも、そういう感じには程遠い。 *1

プロトタイプ版を作った人が、そのまま本番用を作るべきだよな。そのほうが効率がいい。けど、 _アインシュタインと秘書の喩え(比較優位) もあるわけで。「〜が〜を作るべき」とは言い切れないのかもしれない。

*1: そういえば、初めて移植作業を担当したときは、コンパイルが通るか否かが一番重要、ということすら判らずに、約半年(!)も元ソースをただただ眺めて「動作を事細かに把握せねば」と思い込んでたわけで…。別チームのベテランプログラマーの方が、たった2週間で、画面上で色々動いてる状態にしてしまったのを見て、目から鱗がボトボトッと落ちた、みたいな。…つーか、アセンブラからCに移行した状況ってのを、もっとよく考えてから作業すべきだったよなぁ。>自分。何のためにわざわざ高級言語でソースが書かれているんですかと。そのメリットの一つとして、移植が容易になるってのがあるだろうと。そういったことにピンとくるかどうかが、ダメプログラマーと天才プログラマーの境界線、なのかなと思わないでもない。

#2 [cg_tools] 座標値を指定して画像に描画するCGツールはないものだろうか

手元に、座標値が書かれてるメモがあるとする。そのメモを元にして、既存画像上に上書きで描画していきたい。といったことを容易に実現できるツールはないものだろうか。

巷にCGツールは数多あれど、えてして、マウスなりタブレットなり、ポインティングデバイスで「アバウト」に描いていくツールばかりのような気がする。そういうのではなくて、きっちり座標値を指定して、かつ、出来上がりを目で確認しながら描きたいのだけど。

8bitPC時代の、LINE文で画面に線が引けるだけで感動してた感覚に近いのかな、このへん。

プログラムを書くとか、Photoshopのフィルタを書くとか、そういうのじゃないんだよな…。

GIMPでガイドを使う方法、もあるのか。 :

メニューから、画像→ガイド→新規ガイド、で座標指定ができるようではある。ガイドができれば、ガイドに吸着させることでそれなりに描ける、のかな。

作業してみたけど、やっぱりアバウトになるような。…面倒くせえ! 結局、使い捨てのPythonスクリプトを書いてどうにか。

つーか今思いついたけど、PythonのIDLE?とやらで対話的に作業すれば良かったのかしらん。

2006/12/23() [n年前の日記]

#1 [game] _PLAYSTATION3におけるPlayStation2ゲーム画像の比較(1)

_PLAYSTATION3におけるPlayStation2ゲーム画像の比較(2)
_PS3でPS2のソフトを起動すると画質が悪くなる?
_PS3におけるPS2のソフトの再現性を実験

メモ。

#2 [iappli] ディザで画面の切替をしてみたけれど

エミュレータ上ではそこそこの速度で動く・100msecぐらいで処理できるのだけど。実機 = N506iS で動かしてみたら遅い遅い。1100msecぐらいかかってる。エミュレータの10倍。時間なら1秒。4x4のディザだから、16回それを繰り返すわけで。つまりは画面が切り替わるまで16秒かかる。CM1本分ですよ。これじゃとても使い物にならない。

切り替えようとする画像から1dot拾ってきて、キャンバスに1dot描いて、といった処理をしてるけど。もしかすると、単に drawImage(image, x, y, sx, sy, sw, sh) で1dotだけ描いたほうが速かったりするだろうか…。後で試してみよう。

他に改善できるとしたら、キャンバスの内容をメモリにコピー → コピーしたメモリに対して1dot書き込み → 再度キャンバスに描き戻し、かな。メモリの使用量が怖いけど。

拡大処理。 :

エミュレータ上での処理時間と、N506iSでの処理時間は結構違ってた。
アルゴリズムエミュレータ (単位 msec)実機(N506iS) (単位 msec)
Nearest Neighbor1721290
Bilinear3282650
大体10倍だな…。

2005/12/23(金) [n年前の日記]

#1 [nitijyou][pc] NICをつけた状態で memtest86 を走らせてみたけどエラーは出ない

LANケーブルを繋いだ状態で28時間動かしてエラーが出ないんだから、NICじゃなさそう…。

さて、どうしよう。XWAVE 5000 は、もしかすると自分が壊してしまったかもしれんという不安があるし。やっぱり 別のサウンドカードをつけるか…。

ということで、SoundBlaster PCI 128 (MODEL CT4700) をつけてチェック開始。

#2 [emacs] emacs で yahtml と css-mode を設定

xyzzy の該当編集モードと比べると、どうも使いづらい。いや、単に慣れの問題かもしれんのだけど。

xyzzy の場合、
  1. 開始タグを打つ。
  2. テキストを打つ。
  3. 「</」と入力すると勝手にタグを閉じてくれる。
という流れだけど。

yahtml の場合、
  1. ショートカットキーで開始タグと終了タグを同時に挿入。
  2. テキストを打つ。
  3. 終了タグの次の位置にカーソル移動。
のようで。…うーん。やはり勝手にタグを閉じる機能が欲しい気も。

もしかすると、テキストだけガーッと打ってから、リージョンでタグをつけていく方法かとも思ったけど。そういうわけでもないらしい。

テキスト量がどの程度になるか予測がつかないうちから終了タグが見えてるのは、なんだか妙な感じではあったり。閉店間際に流れてくる蛍の光、みたいな。ちと落ち着かない。まあ、yahtml に限ったことではなく、各種統合環境上でのプログラムソース記述時の自動補完 ―― 例えば、if ( ) { } 等の挿入時も同様に「終わり」が先に出る場面が多々あるわけで。なんだか、「終わり」を先に出力しておきたい文化、てのがあるみたいだなと、そんなことをなんとなく。

M-RET でそこそこいい感じのタグを挿入するらしい、のだけど、タグを閉じなきゃいけない場面でタグを閉じないような? どうも昔の html 仕様を前提に作ってありそうな予感も。例えば、<center>タグのショートカットキーがあるあたりとかもそうだろうし。css使ってたら、<center>タグは使わないよな。つまり、css をあまり意識できなかった時代の仕様、だろうと想像。

css-mode の補完が M-TAB に割り当てられていて閉口 :

M-TAB は、ウインドウマネージャがウインドウの切替えに使ってしまう場合が多いので、X 上の emacs からは使えなくなるのだけど。何故にそういう割り当てにしてる elisp が多いんだろう。不思議。「ESC-TAB」「M-C-i」で使えという意見も見かけたけど、わざわざ遠く離れたESCを押して「トト」が「トンっ・トン」になるのもアレだし。キーの数が 2 → 3 に増えるのもアレだし。 *1

直接 css-mode.el を書き換え。M-TAB を指定してるところを、C-. にした。xyzzy で C-. に慣れてるので。

余談。奴隷であるコンピュータを動かすための経文を、主人である人間様が覚えることについての疑問 :

yahtml にも見られる、「タグと対になったショートカットキーをずらずらと用意していく・増やしていく方法」ってのは、アプローチとしてどうなんだろうと。

エディタで html を書いてる人間の頭の中には、打ち込むべきタグの綴りが既に存在するけれど。それらの綴りとはまた別に、新たにショートカットキーを脳内に記録させるというのは、二度手間になってるのではなかろうか。IBMホームページビルダー等、WYSIWYG のツールにありがちな、「文書の中身の作成に必要な知識とはまた別に、ソフトの使い方に関する膨大な知識も必要になってしまって、結局てんやわんや」的、奇妙な状況に近付いてる気がする。

てなことを、「yahtml を使うとショートカットキーでタグを打ち込めて便利」などと紹介してるページを目にして思ったり。emacs って、M-/ を押すだけで既存の単語を補完してくれるわけだけど。そういう機能を持つエディタを使ってる人間が、ショートカットキーの多さを褒めるあたりに違和感が。もう、「コンピュータ様にお仕事をしていただくための経文を、奴隷である人間がひたすら覚えるべし」てな時代は終わりつつあるのかも、と思ってたのだけど。そうじゃない世界が現存してる空気をどことなく感じてしまったような気もして、なんだかもやもやと。

例えば、css-mode.el は、補完を利用して「シンプルな手順」のみ提示してるのだけど。個人的にはそちらのほうが「emacs的」「UNIX的」解決のように思える。いや、yahtml も補完はできるのだけど、標準のキー割り当てだと、3段階ぐらいキーを押して補完するようになってるようで。あまりそのへん重要視されてない・もしかすると冷遇されてる予感も。自分が見かけた yahtml の紹介ページも、えてして「ショートカットキーをこれだけ打つだけで、ほら、こんなに」「ショートカットキーはこんなにあるんですよ。スゴイでしょ」的内容が多いあたり、「経文」の更なる増加を有難がってる感じがして。そこは有難がる場面じゃなくてゲンナリする場面じゃないのかと。ていうか自分はキーの一覧を見てかなりゲンナリしちゃったんですけど、もしかして少数派なのかしらん。 *2 *3

てなことを考えつつも。blog や wiki が存在するこの御時世に html 直書きのことを考えてみてもあまり意味はなさそうだなとも思ったりもして。まあ、便利さを追求していくことにも方向性ってのがありそうだなと。単にそれだけの話。たぶん。

余談の余談。htmlタグ・ソースを打つときの流れと処理の軽さについて :

  1. 「<」が打たれれば、そこからタグが始まるであろうことは間違いない。
  2. その直後に、例えば「h」を打てば、そこに入るタグは、<html>,<head>,<h1>,<h2>…といったあたりで決まってくる。つまり、補完が使える。補完のキーはショートカットキーを1つだけ覚えてればいい。
  3. 「>」が打たれたら開始タグの記述が終了したことは間違いない。後はテキストを書くだけ。
  4. 開始タグは必ず終了タグと対になるので…。「</」が打たれたら、その後ろに、開始タグと同じ単語が『絶対に書かれる』はず。コンピュータが人間の代りに打ってくれる。
…といった流れが、xyzzy での html編集。たしか css 編集も似たような感じ。「終わり」を事前に出しておきたい文化・ショートカットキーを押しまくる文化より、こちらのほうが個人的にはしっくりくるのでした。

でも、xyzzy のやり方は処理が重いのかもしれないなと気がついたり。
  • いつ、「<」「>」「</」が打たれるか、絶えずチェックしてなきゃいけない。
  • 「<」が来たら、その後に続く単語やパラメータを推測しないといけない。
  • 「</」が来たら、どの単語が自分と対になるのか、遡って調べなきゃいけない。
それを考えると、開始・終了タグを同時に出してしまう方が処理は軽そう。

複数のユーザが同時に使用する可能性があるために、処理はあまり重くできない UNIX系と、個人が利用する場面がほとんどであろうから、多少重い処理も実装できる Windows系、てな文化の違いがあったりするのかな。わからんですが。

*1: といいつつ、IME ON を 「半角/全角」という『遠いキー』にしてるあたり、自分も矛盾してるのだけど。
*2: いや、htmlタグも経文なんだけど。そっちの経文は覚えちゃったんだから仕方ない。
*3: <h1>〜<h6>なんて html 中で利用頻度少ない上に文字数少ないのに、なんでそんなとこまで割り当ててるのか。とかそんな疑問もチラリと。

#3 [anime] ケロロ軍曹、動物の擬人化の回

猫がグー。ただし変身前。さておき、赤ガエル妄想時の「ムフゥ…ムホ…グフッ」なる笑いが素晴らしい。感情を表面に出すことを絶えず自制せずには居られない戦士ぶりを見せつつもしかし脳内に広がる薔薇色のシミュレーション映像に心を奪われるその様がまさしくムッツリの本随を表現して以下略。

象は北斗の拳からのインスパイアだろうか。原作にもあるのだとしたら、やはりローディストの血が以下略。虎は格ゲーっぽいような。

#4 [anime] ウルトラマンMAX、友好的宇宙人の回

太田愛脚本。平成ウルトラシリーズでこういう話を書かせるなら、この脚本家さんでキマリ、だよなぁ。

#5 [anime] セイザーX、3日間の回

素晴らしい脚本。冒頭のカットからして非凡。笑えるシーンも多々。シリーズ序盤でこんな密室劇(?)を出してくるとは予想外だった。状況というか、設定自体は、STAR WARSの1シーンとまったく同じなのだけど。アレをここまで拡大して、主人公と敵の交流を描いてしまうあたり、素晴らしい。

#6 [anime] BLOOD+、地下室でパーティの回

主人公のお付きの人、いいなぁ。無表情でやりあうあたりとか。

#7 [anime] エウレカセブン、首都に突入の回をビデオで見返し

あら! OPが変わってる! リアルタイムで視聴してたときはOPを見損ねてたので、気づかなかった。

なるほど、アップの表情を中心に描き直してる、ような。それでもまだ無理してる感じも受けるけど。もしかすると画面の明るさ・背景もいじってある…ように思えたけどそれはちと自信無し。

冒頭の動画追加と、主人公メカに戻ってくるあたり、どうして追加・修正したのか疑問に思ったりもして。以前の映像を見ていて、特に変える必要は感じなかったのだけど。何か意味付けがあるのかしら。冒頭は、設定上それまで孤独だった少女の境遇を表現してるとか。

OPの最後のカットで、少年と少女が手を繋いでるかのように若干修正されてた点が気になったり。考えてみればこの作品、最初のOPでも、本編でも、手を繋ぐことの重要性を意識しているような気がする。種族の違う者同士が手を繋ぐ ―― それは、誰の目にも明らかな『象徴』になり得るし。また、手を繋ぐことがイデの発動のスイッチになってるあたり、ストレートというか、判りやすいな、とも。

_エウレカセブンの第3期OPは30年前に原案があった :

おお。たしかに! <オイ…。

#8 [anime] ライダーヒビキ、ザンキさん全裸回をビデオで見返し

全裸師弟コンビ。どっちも役者魂が垣間見える。肌は寒いが心の中は熱いぜ! とか。

走りながら変身しつつ攻撃しちゃう映像は、もしかするとライダー剣の功績なのかもしれないなと。 :

前にも書いたかな。コレ。…いいや、書いちゃえ。

平成ライダーシリーズの変身シーンに関しては ―― もしかすると昭和ライダーも含めて、かもしれんけど ―― ライダー剣でブレイクスルーが起きたのではないかと思えてきたり。静的 → 動的になったというか。

アギトの変身シーンは、アギト、G3、ギルスの3種類があるけれど。それぞれ、変身シーンの作り方からして違う。
  • アギトは、旧来のライダーシリーズの踏襲。
  • G3は、ヘルメットを被る等、リアルな方向に追求。
  • ギルスはG3の真逆で、観念的・イメージ映像で表現。
しかし3つとも、基本的には立ち止まった状態での変身。 *1

龍騎の変身は、2D的なエフェクトのみで表現。おそらく、ミラーワールドという異次元世界への導入も兼ねたシーンになるから、次元の違いを意識して2D表現を用いたのかな、という気もするのだけど。何にせよ龍騎のソレも、役者さんがピタッと静止した状態で変身する。

555の変身は、人物の周囲を光の線が回り込むという、立体・奥行きを意識した表現。メカを使って変身するあたり、アギトのG3と共通するところもあるわけで、どちらかというとリアルな方向を意識した画作りだろうと。が、コレもまた静止した状態での変身。

ライダー剣は、ガラリと変わる。実は、エフェクトそのものは旧来の作品と比べて地味なのだけど。(<たしかあちこちで、エフェクトのことを「畳」と揶揄されてた記憶も) その代わり、なのだろうか、役者が動いてるのに変身できてしまうカットが多々見られるようになった。
  • バイクで疾走しながらの変身。
  • 公園の柵を飛び越えながらの変身。
  • 敵に殴られて地面を転がりながらの変身。
  • 階段を降りながらの変身。
これまでのライダーの変身とは雲泥の差。更に、それらを、昭和ライダーの映像のようにモンタージュ技法で逃げつつ実現するのではなく、1カットの中で連続した動きとしてしっかり見せてしまう。かつ、ビデオでコマ送りでもしないと、いつ役者さんが入れ替わっているのかわからない。…何かと評価の低い作品ではあるけれど、変身シーンのバリエーションに関しては、旧来のシリーズから圧倒的な進化を遂げている。と思える。

で、ライダーヒビキは、走りながらの変身に加え、同時に敵への攻撃も行ってしまうというパワーアップぶり。ライダー剣で確立した技術を下地にしつつ、更なる発展を遂げてみせた、と思うわけで。

考えてみれば、ライダー1号はバイクで走りながら変身してたわけで。ある意味ではライダー剣で原点回帰を成し遂げたと言えるのかもしれない。それでいて昭和ライダーとは違い、1カットで表現できるところまで技術向上を果たしたわけで。「やろう」と言い出したであろう、監督さん・上の人達もスゴイけど。実際にやってみせた特撮スタッフもスゴイ、と思うのでした。

ここまで書いて思ったけど、コレ、前にも書いたことあるよなぁ。まあ、いいか。

*1: ギルスだけはイメージ映像の強みで、バイクで疾走しながら変身できたような記憶もあるけど、ちと記憶が怪しい。

#9 [tv] ここ数日、「チャングムの誓い」なる韓国ドラマを見てるのだけど

感心するところが多々。サザエさんみたいなカメラワークで、よくまあここまで。脚本の力、なのだろうな。上手い。

気にしながら見ている点が、数点。
「恨み」「復讐」のリピート頻度。あるいは、念の強さ。
やはり韓国の民族性が若干滲みでている、と見るのはちょっとフィルタがかかってるだろうか。…まあ、例えばハリウッド映画でもそういう設定はよく使うから、韓国作品特有というわけではないんだけど。ハリウッドなら、銃を撃ったり、日本刀を振り回して直接的に復讐しちゃうところ、だろうけど、この作品はそのへん間接的というか、陰湿というか。いや、そのあたりは映画とTVの違いなだけかも。時間の長さが全然違うし。
主人公が「嘘」をつく・「盗み」を行う。
「正義」の側として描いてるはずの主人公がときどきそういうことを行うあたり、韓国では肯定されているのだろうかと疑問が湧いたりもして。もっとも、主人公がそれらの行動を行う場合にはルールがあって。「自分以外の誰かの境遇を改善するのであれば、嘘も盗みもOK」みたいな。師匠の名誉回復とか、彼氏の生命を助けるとか。自己保身のための嘘・盗みはしてないように見える。
稀に混ざっている、日本批判。
「詫びるなら行動で示せ」等の台詞は、煽動なんだろうなぁ。そんな映像がNHKで流れてる状況自体が興味深い。日本人は懐が深いのか。それとも何も考えてないだけか。まあ、面白いからどうでもいいけど。
登場人物の愚行の多さ。
愚行が目立って興醒めしてしまうところが多々。もっともそれについては日本のドラマも同様なわけで。やはりドラマを作るためには愚行が必須なのだなと再認識。でないと話が動かないし。…でも、何か上手なカモフラージュを考える必要がありそう。感情面を考えると納得できる、とか。あるいはキャラ設定を生かすとか。
「水戸黄門」「暴れん坊将軍」「大岡越前」あたりとの類似性。
結局のところ、絶対的な権力を持つ「上様」の指示で事態が好転する展開ばかりなわけで。水戸黄門と同じ。たぶんそのあたりに視聴者が喜びそうなカタルシスが ―― おそらくはアジアに共通する何かが埋め込まれていそうな。とはいえ日本のソレとは違う部分も。最終的には「上様」の指示で好転するとしても、そこに到達するまでの過程で、主人公のアクティブさを必ず見せている点とか。また、日本の場合はえてして「上様」が主人公になるけど、あちらの場合、「上様に仕える人」が主人公になるあたり、ちと興味深い。水戸黄門を見ている視聴者が感情移入するのは、誰か。黄門様か、それとも黄門様が救うはずの人々か。それを考えたとき、この作品の巧みさが見えると同時に、かの国の矛盾点も垣間見える気がする。
何にせよ、次から次へと障害イベントが発生するあたり、少年ジャンプ的というか、「ガラスの仮面」的というか。上手いなと感心。…ドラマや映画の類を見ていると、必ず舟を漕ぎだす親父さんが、「チャングム」は、毎回最後まで起きてる・見ているのですよ。スタッフが、テクニシャンであることの証明。

「水戸黄門」との類似をどうして意識するかというと。 :

以前どこかで、韓国の映画監督の来日インタビュー記事を読んだのがきっかけだったり。

韓国の映画監督曰く、
  • 「ホテルで水戸黄門を見た」
  • 「面白いとは思ったが、水戸黄門は韓国人にはウケない」
  • 「登場人物が受動的過ぎる」
と言っていて。そのときは「なるほど」と思ったものの、「チャングム」を見たら、「おいおい。そっちだって結局上様が解決してるやんか」と。

まあ、自分で事態を改善するのではなく、優秀な君主の登場を望む ―― 要するに他力本願を望むあたりは、おそらくアジアに共通した特有の性質じゃなかろうかと思ってるので、別に悪いことでもなんでもないんだけど。

2004/12/23(木) [n年前の日記]

#1 [nitijyou] 朝、雪がうっすら積もったようで

もう溶けてしまったようだけど。

#2 [pc] _Maxell商標及びMaxellの製造者認識コードを不当に用いたDVDディスクの流通について

_弊社の製造者認識コードを不当に用いた海外製DVD-Rの流通について
こういう商品も出回っているのか。先日購入した商品は偽物だったりして? 不安になってきた。

maxell DR47STB.10SP :

自分が買ってきたDVD-Rのパッケージに書いてあった型番。「数量限定」「日本製」「1〜4倍速対応」と書いてある。『日立マクセル株式会社 お客様ご相談センター』の電話番号も記載されてる。これは本物なのか。それとも偽物なのか。さて。

偽物だったら、店も危ないことになるのかなぁ…。『 K'sデンキ(=購入店)は、知識のない一般客に 偽ブランドメディアを平気で売ってる店なのです』という話にも。 *1 しかも、そういう店しか須賀川市には残ってないわけで。ピンチです、姉さん。

や。冗談ですけど。そういうことになっちゃう可能性もあったりするのかなぁ、というだけの話で。…本物だよね。たぶん。でないと困る。色々と。

_Maxellの数量限定品のDR47STB.10SPですが :

Maxellの数量限定品のDR47STB.10SPですが〜(中略)〜焼いてみたところ、6枚問題なし、3枚に焼きムラ確認(PS2 SCPH-15000による再生は問題なし)、1枚書き込みエラー(PlexTools Pro V2.18のFE/TE testで再内周から0.5までTEが96を記録!! もちろん?0%で吐き出されました。) 使用ドライブはPX-712A/JPB(V1.05) どうしたんだMaxell!? 今までこんなことなかったのに。
10枚中、4枚が問題ありでしたという話。不安になってきた。でも、店頭では、この商品しか選択肢がなかったわけで。まあ、まだ全部使い切ってないので、焼けないメディアがあるのかどうかもわからないのですが。

そういや昔、自分がmaxell製CD-Rを買ったとき、焼けなくて首を捻ったことがあったっけ。ドライブとの相性かと思って、その後、maxell製CD-Rは購入しないことにしたけれど。CD-Rに続いて、DVD-Rも、となると…。maxell製メディアは避けておいたほうが無難かしら。とはいえ、どこのメーカの商品なら不良率が低いのか、それもわからないし。また、どこのメーカも、必ず不良品は出してしまうものでもあるし。そもそも、どこまでが不良品なのか、まだわからない状態でもあるし。さてはて。

しかし困った。maxell製は除外となると、郡山市まで足を伸ばさなければ、スピンドルケース入りで買えなくなってしまう。シンドイなぁ… (;´Д`)

_とりあえずTDKかマクセル :

評価は高いのですな>maxell。でも、この評は2002年のもの。最近は事情が変わってきたのかしらん。それとも、たまたま、かしら。

ま、色んなメーカの商品を買い比べてみないとわからんし。使い切ってみないとわからんですな。ということで、しばらくはメディア探求の旅になりそうな予感。

*1: いや、「偽物ですよ」と断り書きして売ってるならいいんじゃないかと思うけど。要するに、「 _ガンガル 入荷! ガンガル通ならゲットだぜ!」と宣言して売るならアリではないかと。…でも、この場合、最初から「ガンダムです!」と称して売る気満々、みたいなものか。それはマズイ。

#3 [digital] _私的録画保証金管理協会


_役員名簿
_会員名簿
_私的録音補償金制度 〜 知らないで払っている著作権使用料
具体的には、どこにどれだけ流れていくんだろう。データ用DVD-Rより録画用DVD-Rのほうが安かったとしても、録画用DVD-Rを購入した時点で、これらの組織に必ずいくらかお金が流れるのかしら。

_収支予算書 :

約20億円の収入があるように見える。 *1

支出を見ると、権利者分配基金なるもので、約9億。次期権利者分配等支出なるもので、約6億。…権利者、次期権利者って、具体的にはどういう人達なんだろう。あるいは、人じゃなくて組織なのかな。

事業費支出で約7千万。管理費支出で約2千万。管理手数料支出で約9千万。とある。これは高いのか。安いのか。

詳しい人が見れば、「おやおや? アレアレ?」な部分が見つかるのかもしれんけど。自分は素人なので、さっぱりわかりませんですわ。

*1: 自分、見方を知らないので、間違ってるかも。

#4 [pc] 小物入れの周りにスポンジをつけてみた

スポンジをつけてみた
ダイソーで買ってきたスポンジをカッターで切って、両面テープで小物入れの脇や上に貼り付け。ドライブベイにグリグリと押し込み。色がアレだけど、なんかこれだけでもいいような気がしてきた。<ものぐさ。

“隠す”という行為は効果が高いのだな。状態が大きく変わったように思えてしまう。実際は何も変わってないのに。

#5 [jiji] _韓国型ヒューマンロボット「ヒューボ」誕生

おお。中国の先行者に続いて、韓国もですか。21世紀の二足歩行ロボットは、アジアが今のところリード、だろうか。

と思ったが。某スレで、二足歩行については触れてないのが怪しい、と指摘されてた。そんな。まさか。このデザインで歩かなかったら詐欺ではないか。どこかに動作中の動画とかないかしら。個人的には、不恰好でもいいから一応歩いてほしいけど。

と思ったら、http://www.roboman.co.kr/picture/movie/020.wmv <一つ前の型の動画とやらが。なんだ。既に歩いてたのですな。しかも結構滑らか。押しても倒れない。素人目には、なかなかええ感じ。

この調子で、人型ロボット開発が更に盛り上がって欲しいなぁ。そしてゆくゆくは、マルチ登場!ですよ。<結局ソレかい…

_ガンタンクっぽい :

こっちのデザインのほうが好きだな。大河原メカっぽくて。

マルチやセリオみたいな外観は、まだまだ先だろうな。 _アクトロイド に萌えるには、かなりの努力が。中国でも韓国でもいいから、そっち方面の技術開発・デザインの洗練で、日本を圧倒してくれないものか。無理か。そっちのほうが、よほどハードル高そうだもんな。

#6 [anime] WXIII - PATLABOR THE MOVIE 3を見た

昨日、BS2で流れてたのを録画。見てみた。

1、2と違う脚本・監督なので、ひょっとするとダメダメかもしれないと不安だったけど。そうでもなかった。基本的には面白い。ほうじゃないかと。でも、自分は漫画版を見ちゃってたので、大まかではあるけど展開が判ってしまっていて。そのせいもあってか、今一つのめりこめなかった。話自体が初見の人には楽しめるのかも。

以下ネタバレ。

助けて、説教の一つでもぶって、後日談で多少の救いを残しとくのが妥当かなとも思ったけど。それをやったらありきたりだし、刑事モノにならないと、脚本・監督は考えたのかもしれないと思い直したり。個人的には、悲しいことがありました、だけで終わる話にさほど価値は見出せなくて。すっきりせずに終わるなら、後になって考えさせられる要素をいくつか盛り込んでほしい気もするし、それを含められないなら、せめて、観客を少しはすっきりさせて終わらせたほうがまだマシではないかと思ったりもする。が。そのようにグジグジした感想 ―― ある種の虚無感を観客に持たせるところまで含めて、最初から狙ってた可能性もあるだろうし。色々仕込んであったのを、自分が見落としてる可能性も否定できないしで。そんなこんなで判断が難しいなと思った。

などとモヤモヤしつつも。完成しただけでも良し!と思ったりもする。難産の末に一応は世に出たというそれだけでも、評価されてしかるべきなのかも。途中で投げずによく頑張りましたな、みたいな。…望まれて生まれてきたか、否か。育つことなく捨てられたか、育ってみせたかという点で、なんだか、作品自身と本編中の怪物が、どこかダブって見えてこないでもない。…ちょっと無理があるか。

2003/12/23(火) [n年前の日記]

#1 [tv] 映像の世紀・第一次世界大戦の記録を見た

NHKで再放送してたので眺めてた。番組構成上仕方ないのだろうけど、各国が、何を目的に、どのへんを落としどころにして戦争を始めたのがさっぱりわからなかったり。実は落としどころを決めてなかったのかな。…小泉さんは大丈夫か。目的が判ってるのか。手段を目的と勘違いしてないか。手段を実現したその先に、本当の目的がある事を自覚できてるか。どのタイミングで撤退させるか事前に決めてあるのか。それが叶わない時、何をキッカケにして方針変更するか決めてあるのか。不安。

2002/12/23(月) [n年前の日記]

#1 ビデオデッキ

ビデオデッキが壊れました。テープが出てこない。
きっと、アニメにぶつぶつ文句言ってた報いだな… _


NHK-BSで _冬休みアニメ特選 をやってるのです。

シリウスの伝説見ました。
作画も演出もストーリーも何もかも直球。これでもかっ、これでもかーっ!て感じ。そこがいい。
つーかヒロインが妙にエロい。エロエロです。なぜだろう。

ソルビアンカ見ました。
…ダメだこりゃ。

PAN、Followの時に違和感を感じる>ソルビアンカ
24fpsじゃなくて30fpsでやってるから、とかだろうか。
PCEのデモを見てるかのような気持ち悪さ。
感覚的に合わない…オールドタイプなのだな>自分

#2 [zatta] ビデオデッキ

ビデオデッキが壊れました。テープが出てこない。
きっと、アニメにぶつぶつ文句言ってた報いだな…

カバー開けてテープは取り出せたんですが、どうも蓋の開閉がダメになった模様。
機構上の問題点は無さそうだし、部品が欠けたり削れたわけでも無さそうなんだけど。
奥まった所にあるんで機構の動作確認が出来ないんですよね…

仕方ないんで蓋を外しました。しかし埃の多い環境なので不安。
気休めに、外からセロテープで、外した蓋を貼り付けてみたり。
使う時は手で蓋を外すのです。
…うわー、なんだか絵的にとても悲しくなってきました。

S-VHS機のジャンク品、どこかで売ってないかな。
テープの出し入れがダメになってるけど、再生・録画機構だけは動くようなヤツ。
どうせ手動でアレコレするなら、せめて中身はちゃんとしたものがいい…

つーかビデオデッキって軒並みフロントローディングだけど、
それ以外の方法でテープの出し入れは出来ないのだろうか。
再生・録画とは関係無い部分ですよね。テープの出し入れってのは。
確実に、所定の場所にテープを設置させる意味がありそうだけど、
それを、別の方法で、更に部品点数が少ないやり方で出来るなら、
導入していかない手はないと思うんですが。
つーか機械的な動作をさせる為の部品点数が多すぎですよ。
もっと省略化できないのだろうか。

もっとも家電業界は、既にDVDやHDD関係にシフトしてしまいましたが。
まだまだビデオデッキに関してもやれることがたくさんあったのではないか、
…などとその中身を見ながら思ってしまったりして。

2001/12/23() [n年前の日記]

#1 今は何世紀?

起きてからずっと不審船関係の情報漁ってました。気になっちゃって。
乗員を救出(?)できるものだとばかり思ってたので、結果に唖然。
自害するように洗脳されてたのかな。戦時中の日本みたい。
半世紀ほど時代に取り残された国なのか…


今日って日本国王様の誕生日だったんですね(爆)

個人的に、「天皇陛下万歳」のかけ声が大嫌い。
戦時中に散々使われてた言葉だから、どうも悪印象。
誕生日なんだから、「天皇陛下おめでとう〜」でいいじゃないかと。
あるいは「Happy Birthday Dear てんのうへいか〜♪」とか。

つか、あの映像とかけ声だけ某国に見せたら絶対誤解されそう。絵的にキモイよ。
もっとナウイ祝い方にしようよー

とは言っても、今風の祝い方ってどんなんやろー?

どうでもいいかー

2000/12/23() [n年前の日記]

#1 今日は何の日&ベリノイズ

ふとTVを見たら、天皇さんが映ってた。
「あれ? 今日、何かあったの?」
と親に尋ねたら、
「…今日は何の日だ?」
と逆に質問された。

カレンダーを見て納得。
こんなこともわからないなんて、オイラの今の生活サイクル、末期的だぁ… (´Д`;)

ヒヲウのEDをMPEG4V2で変換したらベリノイズ大量発生。
こうまでエンコードが上手くいかないってのは…なんとかしてほしい >MS
いっそTMPGEncで、MPEG1で保存してしまおうか…

年賀状まだ描いてないや…
ネタが思いつかない。うーむ (-_-;)

1999/12/23(木) [n年前の日記]

#1 (NoTitle)たまたまキャプチャに...

たまたまキャプチャに成功したでじこ本編のMPEG1ファイルを再生していたところ、絵と音の左右が逆になっていることに気がついたり。いきなり大ピンチ。今までキャプチャしていたデータは全て音が左右逆になっていたということです (´Д`;)トホホ
4時間ほど何が原因なのかを調査。ビデオの出力か、セレクターか、サウンドボードか、ソフトのバグか。
原因はケーブルでした。2本ほどステレオミニジャック←→ラインの変換ケーブルをシステム(?)の中で使ってるのですが、そのうち1本がなぜか左右逆(赤白が逆)でした。…なんでやねん。
さてキャプったファイルはどうしよう。音声と映像を分けることが出来れば、音声だけツールで左右反転して再び映像と結合、といった作業で済みそうな気もしますが。でも既に音声はMPEG1 AUDIO LAYER IIで圧縮済み。前述の作業を行えば非可逆圧縮を2回かけるわけで激しく音質が劣化する事は確実です。これはあきらめるしかないや… (´Д`;)トホホ

そういえば。
こんな時期に私は何をしているのでしょう (´Д`;)トホホ。

以上、25 日分です。

過去ログ表示

Prev - 2024/03 - Next
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