mieki256's diary



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

#1 [anime][neta] マスコットキャラがラスボスてな設定はどうだろう

某アニメを見ていたら、幼女キャラの言動がなんだか怪しくて、「もしかしてこのキャラがラスボスなのでは…」「いや、このキャラは現実に存在してなくて、主人公が孤独に耐えきれず謎の力で作ってしまった存在なのでは…」てなバカ妄想を始めてしまったのだけど。

考えてみたら、マスコットキャラ的ポジションのキャラがラスボスだったりする設定ってどのくらいあるのかなと。意外と多いのか、少ないのか…。

プリキュアの主人公たちにくっついてるマスコットキャラがラスボスだったら…。いや、その設定も、既にいくつかあったような気もしてきたり。UMA自体がラスボスではないとしても、 赤ん坊とか鳥とかがラスボス、てな作品はあったような。…あ。考えてみたら、 まどかマギカが、そのまんまだったのか。まあ、ラスボスかというと、それはちょっと微妙だけど。

「その発想はなかったわ」的ラスボス設定って、何かあるだろうか…。

マクロスとかヤマトがラスボス、とか?

#2 [ruby] Rubyでzipファイルにアクセスする実験をしてみたり

rubyzipなるライブラリを使うと zip ファイルにアクセスできるらしいと知ったので、手元でも実験してみたり。 実験用スクリプトとzipをまとめたファイルも置いときます。→ _zip_extract.zip

_zip_open_rubyzip.rb
# zipファイルを開いて中にある画像ファイルを表示する。
# rubyzip使用版。
#
# rubyzip, dxruby, Ayame/Ruby が必要

require 'zip'
require 'dxruby'
require_relative 'ayame'

# zipファイルを開いて、中にあるファイルを読み取る
bindata = {}
Zip::File.open("res.zip") do |zipfile|
  zipfile.each do |f|
    name = f.name # ファイル名取得
    size = f.size # ファイルサイズ取得
    next if name =~ /\/$/ # ディレクトリは除外
    # puts "#{name} , #{size}"
    
    # bindata[name] = f.get_input_stream.read
    bindata[name] = zipfile.read(f.name)
  end
end

# 画像作成、サウンドデータの記録を行う
imgs = []
bgms = []
bindata.each_key do |fn|
  if fn =~ /\.png$/
    # 画像作成
    imgs.push(Image.loadFromFileInMemory(bindata[fn]))
  elsif fn =~ /\.ogg$/
    # サウンドデータを記録
    bgms.push(bindata[fn])
  end
end

# サウンドを再生
bgm = Ayame.load_from_memory(bgms[0])
bgm.play(0)

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

  # 読み込んだ画像を全て表示
  x, y = 0, 0
  imgs.each do |img|
    Window.draw(x, y, img)
    y += img.height
  end
end
画像ファイルも表示できたし、oggの再生もできた。

処理速度は速いのか遅いのかよく分からないけど、とりあえず、一つにまとめたzipファイルから、画像やサウンドデータを取り出すことはできそうだなと…。

ただ、パスワードをかけたzipにアクセスする方法が分からず。rubyzip ではなくて、zipruby なるライブラリなら、パスワードつきzipにもアクセスできるみたいだけど…。そっちは Ruby 1.9 までの対応のようで…。

ziprubyも試してみたり。 :

一応は試してみるかなと。

_ziprubyをRuby1.9.3ではインストール出来ない → 出来た(インストール方法は最後に追記) - 趣味プログラマがまれになんかしたことの記録 を参考に、Ruby 1.9.3 上にインストール。
gem install zipruby1.9 --platform mswin32

パスワードを設定した zip を扱ってみたのだけど…。

_zip_open_zipruby.rb
# zipファイルを開いて中にある画像ファイルを表示する。
# zipruby使用版。パスワードつきzipファイルを対象にする。
#
# ただし問題有り。
# 一度パスワードを解除してしまうと、
# その後、別ツールでも平気で開ける zip になってしまう…。
#
# zipruby, dxruby, Ayame/Ruby が必要

require 'zipruby'
require 'dxruby'
require_relative 'ayame'

res_zip = "res_encrypt.zip"

# zipの解凍パスワード
passwd = "hogefugapiyo"

bindata = {}

# zipのパスワードを設定
# Zip::Archive.encrypt(res_zip, passwd)

# zipのパスワードを解除
Zip::Archive.decrypt(res_zip, passwd)

# zipファイルを開いて、中にあるファイルを読み取る
Zip::Archive.open(res_zip) do |ar|

  # ar.decrypt(passwd) # パスワードを解除
  n = ar.num_files # ファイル数を取得(ディレクトリも含む)

  # ファイル数分、繰り返す
  n.times do |i|
    entry_name = ar.get_name(i)
    ar.fopen(entry_name) do |f|
      name = f.name # ファイル名取得
      size = f.size # ファイルサイズ取得(展開後)
      comp_size = f.comp_size # ファイルサイズ取得(圧縮時)

      # puts "#{name} , #{size} , #{comp_size}"

      # ディレクトリの場合はサイズが0になる
      # サイズが0ではないなら、何らかのファイル
      if size > 0
        bindata[name] = f.read
      end
    end
  end
end

# 画像作成、サウンドデータの記録を行う
imgs = []
bgms = []
bindata.each_key do |fn|
  if fn =~ /\.png$/
    # 画像作成
    imgs.push(Image.loadFromFileInMemory(bindata[fn]))
  elsif fn =~ /\.ogg$/
    # サウンドデータを記録
    bgms.push(bindata[fn])
  end
end

# サウンドを再生
bgm = Ayame.load_from_memory(bgms[0])
bgm.play(0)

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

  # 読み込んだ画像を全て表示
  x, y = 0, 0
  imgs.each do |img|
    Window.draw(x, y, img)
    y += img.height
  end
end
アクセスはできたのだけど、一度パスワードを解除してしまうと、その後は他のツールでもアクセス可能な、フツーの zip になってしまう…。

さりとて、一度アクセスした後で再度Rubyスクリプト中からパスワードを設定し直してみても、その次からはアクセスできない謎のzipになってしまって。うーん。

さらに、Ruby 2.0 では zipruby が使えないようで。
  • gem install zipruby してもエラーが出るし。
  • gem install zipruby --platform mswin32 をして、一見インストールできたように見えても、スクリプトを実行すると「zipruby.so がねえよ」と怒られる。
なかなか厳しい。

参考ページ。 :

#3 [pc] 親父さんPC上でTVが見れず

PT1機に接続しても映像がガクガクして見れなくて。

PT1機の調子がおかしくなってるのかなと思ったけど。そういや昨日、親父さんPC上で、USB接続の無線LAN子機を差し込み直したとか言ってたっけ…。無線LANの接続状態を見たら、電波が弱くて。

子機を隣のUSBポートに差し込み直したら、急に受信状態が良くなって、映像がなめらかに。たった数cm、場所を変えただけなのに…。いや、ポートの状態がアレなのかもしれないけど。

とりあえず、無線LAN子機の速度が出ない時は色んなポートに差し込んで確認してみるのもアリなのかなと。

#4 [anime] 境界の彼方、最終回を視聴

HDDレコーダに録画してあったソレをようやく消化。

作画凄いな…。それと、「パキン…」は、なんだかいいなと。ヴァルヴレイヴの「パキーン」「パキーン」もグッときた記憶があるけど。「パキン」とか「パキーン」とかその手の音って、何かの効果がありそうな気もしてきたり。…まあ、心が折れるとかそういうアレも、おそらくは「ポキン」「パキン」だろうし。これが「ボキッ」じゃダメだと思う。「パキン」「パキーン」じゃないと。…何書いてんだかわからんですな。でも、聞いた瞬間に切なくなる効果音ってあるんじゃないかと。

ラストのあたりに納得できず。もちろん、こういうラストにしておかないと、見てる側にとってはショボーンだろうから、これはこれでと思うのだけど。しかし、これでは…。さりとて、どうすればよかったのか、素人なりの案すら浮かばなくて。「まあ、しょーがねえよなあ」てな気持ちと、「いやー、でも、もうちょっとどうにかならんかったかな」てな気持ちの両方がモヤモヤと。

えてして、この手の娯楽コンテンツは、所詮は御都合主義、ではあるのだけど。そのように強く感じてしまうものと、それなりに納得できるものの差は、一体どこにあるのだろうと考え込んでしまったり。できれば後者の方がいいよなと。

何か伏線があれば違ったのだろうか。秘密が分かる回までは、アレコレちゃんと伏線を入れてあったのに、どうしてラストだけ、そういう手管が急に消滅してしまったのだろう…。シリーズ構成・脚本では、あのラストシーンは存在しなかったけど、監督がどうしても気に入らなくて、コンテ段階でで追加した、とか。まあ、ちゃんと伏線は入ってるけど、自分が未だに気付いてないだけの可能性もあるのだけど。わざわざ主人公にアイテム持たせているのだから、そこに設定がありそうだよなとも。

以上、1 日分です。

過去ログ表示

Prev - 2013/12 - 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