mieki256's diary



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

#1 [ch_tools] Stable Diffusion web UI + LCM LoRAの動作確認中

せっかく Stable Diffusion web UI を再インストールしたので、高速に画像生成ができるようになるという LCM LoRA を試用してみた。以下の記事でパラメータをどのくらいにすればいいのかが紹介されていたので、それに従って動作確認した。

_【西川和久の不定期コラム】Stable Diffusion高速化の決定版登場!?品質落とさず制限もほぼなしで2〜3倍速に - PC Watch

たしかにそれっぽい画像が、少ない Steps で出力された。凄いな…。

ただ、モデルデータによって状態が違ってくるようで、汎用性が高いと言われる Deliberate をベースにした lyriel_v16.safetensors ではそれっぽい画像が生成されたけれど、美少女が生成されやすいと言われる chilloutmix_.safetensors では、ぼんやりのっぺりとした画像が生成されてしまった。全てのモデルデータで利用できるわけではないのね…。

2022/12/14(水) [n年前の日記]

#1 [cg_tools] 3Dモデリングツール XISMOを試用

ここ数日、3DACE という3Dモデリングツールを触っていたけど、そこで試したマグカップのモデリングを XISMO というモデリングツールでやってみたらどうなるのかなと気になってきた。

_XISMO
_「XISMO」軽快で無料の3Dモデリングソフト - 窓の杜

XISMOは、無料で利用できるモデリングツール。64bit版 Windows上で動作する。現行版は v225a。v151 の頃はMacにも対応してたらしいけど、Mac は OpenGLが廃止されるという話があって Windows版のみになったらしい。

動作確認環境は Windows10 x64 22H2。

XISMO_225a.zip を入手して解凍。任意の場所に置いて、xismo.exe を実行すれば起動する。

とりあえずマグカップをモデリングしてみようとしたのだけど、辺を選択した状態から押し出しができなくて悩んでしまった。ツールバー上の押し出しツールは、面の押し出ししかできないっぽい。これではカップの基本形状すら作れない。3DACE や blender とは違う流儀で形状を作っていかないとダメかな…。

押し出しツールの「厚み付け」を使えば、円柱の上蓋部分だけを削除した形に厚みをつけて、それらしい形状にできそうだと分かった。更に、作成 → モディファイア → 曲面化ノード、を作成して、曲面化ノードを円柱ノードにドラッグしてやれば、より丸みを帯びたマグカップになってくれそう。

ただ、以前試用した時もそうだったけど、ペンツールを使ってポリゴン(面)を張っていく際、手前のポリゴンで隠れてしまった、奥にある頂点に吸着させる方法が分からなくてハマった。

右上の「頂点」「辺」「面」ボタンのうち、「面」をクリックしてワイヤーフレーム表示にすれば、面で隠れていた頂点に吸着できるのかなと想像したけど、思った通りの結果にはならず。

カメラの角度を変更する操作として、マウスの右ボタンドラッグが割り当てられているけど。隠れた頂点が見えるようにカメラの角度を変えるべく、右ボタンを押した瞬間に、ペンツールの操作もキャンセルされてしまうので、隠れた頂点に吸着することができず…。せめてショートカットキーでカメラ角度を変更できればなんとかなりそうだけど、そんな割り当ても無さそうで…。

2022/12/15追記。 :

辺の押し出しについては、選択部処理 → 辺を押し出し(Nキー)、を選べばできることに気づいた。

手前のポリゴンで隠れてしまった奥の頂点を選択したり吸着させたりするには、モデルが描画されてるウインドウの左上のほうにある、「フィルタ」をクリックして、「点・辺は面を上書き」にチェックを入れれば良い。

2021/12/14(火) [n年前の日記]

#1 [cg_tools] Shade 12 をWindows10上でインストールしてみた

HDD内のファイルを眺めていたら、3DCGソフト Shade で作ったファイルが目に入った。そういえば、SSD が吹っ飛んで Windows10 をクリーンインストールして以来、Shade をインストールしてなかったなと。そんなわけで一応インストール。

環境は、Windows10 x64 21H1。GPU は NVIDIA GeForce GTX 1060 6GB。

Shade 12 Standard をインストール後、アップデータ w64_Shade1210_UpKit.exe を利用して 12.1.0 にアップデートして、初回起動時にシリアル番号を入力してみたけれど、一応 Windows10上では動いているように見えた。

shade12_on_win10_ss02.png

見るからに、ザ・レイトレーシングな感じ。

起動時に問題有り。 :

一応動作はしたものの、ちょっと問題があって…。毎回、起動時に、必ずユーザ登録ウインドウが表示されて、しかもウインドウ内には今現在のイーフロンティアの製品ページが表示されてしまう…。

shade12_on_win10_ss01.png

Shade は、2014年頃まではイーフロンティアが扱っていたけど、株式会社Shade3Dに移管されて、さらにその後、FORUM8 なる会社だかグループだかに移管されてしまったので、今現在はイーフロンティアと繋がりがない3DCGソフトになっている。他にも、買い切りタイプの製品ラインナップが無くなって、サブスクリプションのみになっていたりもするのだけど…。何にせよ、今となっては関係ない企業のページが毎回開かれてしまうあたりがちょっと気になる…。

このあたりどうにかならないのだろうか。ググってみたら、当時のFAQに、「管理者権限で動かした状態でユーザ登録すれば出なくなる」と書いてあったけど、今現在はユーザ登録ページ自体が存在してないはずだし、そもそも当時、ユーザ登録済みだったはずで…。

例えば、動画再生ソフトの PowerDVD も似たような挙動を繰り返す不具合があったけど、その場合はユーザ登録を促すためのプログラム(.exe)をリネームする回避策があった記憶もあって。似たような方法で解決できないのかな…。

インストールフォルダを覗いてみたら、D:hoge\e frontier\Shade 12 (64-bit)\html\ユーザー登録について\index.html というファイルがあった。中には、以下のURLが記述されていた。

_http://shade.e-frontier.co.jp/support/user_reg_ex.html

ブラウザ(Firefox)で開こうとすると、以下のURLにリダイレクトされる。

_https://shade3d.jp/ja/support/registration/

Shadeが起動する際に開かれるページとは違うURLが開かれるようだな…。上記のページは、おそらく Shade 12 のメニュー → ヘルプ → ユーザ登録について、を選ぶと開かれるページなのだろう。

ちなみに、Shade 12 から開いたウインドウ内で、上記URLのページを利用することはできない。ログインボタン等をクリックしても無反応のままなので、途中でページ移動ができなくなって行き詰まる。ひょっとすると、Shade 12 がHTML表示に使ってるコンポーネントが古くて、今時のHTML仕様には対応してないのだろうか。分からんけど。

Shade 10 もインストールしてみた。 :

Shade 10 もインストールしてみたけれど、インストール直後は、添付のサンプルデータすらエラーが出て開けなかった。しかし、以前入手して保管していたアップデータ、w64_Shade1053_UpKit.exe を実行して 10.5.3 にアップデートしてみたところ、それらのファイルも開けるようになった。

ただ、こちらも、起動時にユーザ登録ウインドウが表示されてしまう。しかも、イーフロンティアの製品ページを開こうとして、JavaScript (jquery) のエラーダイアログが数回表示されてしまう。どうにかならんのか…。

いやまあ、自分が今後、3DCGの何かしらを作りたい時は、基本的には blender を使うはずだからアレではあるのだけど。今時わざわざ Shade を使って、新規データを作ったりはしないよな…。

それはさておき。Shade 10 は OpenGL を有効にするとカーソルを動かしただけでウインドウ内にゴミが残り続けるようで。OpenGL を無効にすればゴミは出なくなった。Shade 12 なら OpenGL を有効にしてもそういった不具合は出なかった。

#2 [cg_tools] trueSpace 7.6を試用

Shadeを触っているうちに、他の3DCGソフトもなんとなく気になってきた。HDDの中に、以前ダウンロードしたまま放置してた trueSpace 7.6 のセットアップファイルを見つけたので、試しにインストールしてみた。

環境は Windows10 x64 21H1。GPU は NVIDIA GeForce GTX 1060 6GB。

一応ざっくり説明しておくと…。trueSpace 7.6 (7.61?) は、かつて Microsoft が買収後、2008/07頃に無償公開した3DCG統合ソフト。Windows XP/Vista で動いていたらしい。元々は700ドル前後のソフトだそうで、ググってみたら日本円では 98,000円で販売されてた時期もあった模様。約10万円のソフトが無料で利用できてしまうのだから、なかなかスゴイ。しかし、Microsoft としては有効活用できなかったようで、1年も経たずに開発停止に追い込まれてしまったとのこと。

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

さておき。今回発掘したセットアップファイルは、tS76.exe、tS76PDF.exe、tS76Video.exe の3つ。
ちなみに、7.61 の場合、セットアップファイル名は tS761B8.exe だった。

実行すると C:\trueSpace76\ にインストールしようとしてくる。今回は、D:\Prog\trueSpace76\ にインストールしてみた。

起動してみたけど…。ヤバイ。これはヤバイ。何が何だかさっぱり分からない…。操作方法がちんぷんかんぷん。全く歯が立たない…。

とは言え、画面右上のライブラリに並んだアイコンをメインウインドウ内にドラッグアンドドロップすると、オブジェクトモデルがインポートされることは分った。更に、オブジェクトモデルが選択されてる間は操作軸っぽいアイコンが表示されるので、そこをドラッグしてやると位置変更、回転、拡大縮小ができる模様。また、マウスの中ボタン(ホイールボタン)ドラッグでカメラ位置を変えたり、Ctrl + 中ボタンドラッグでPAN、Shift + 中ボタンドラッグでカメラの向きを変えられることも分かった。

しかし、レンダリング操作の手順すら分からない…。

でもまあ、Windows XP や Vista の時代のソフトだけど、Windows10上でも一応動作してくれることは分った。

2020/12/14(月) [n年前の日記]

#1 [nitijyou] 一日中寝てた

どうも体調が悪くて、ほぼ一日中寝てた。

#2 [windows] Windows10復旧中

Windows10 x64 20H2 にアプリをインストール。
PowerToys は PowerToys Run というランチャーを持ってるけれど、起動ショートカットキーが Alt + Space キーなので、ウインドウ操作のショートカットキーが潰されてしまう。別のヨサゲな割り当てにできないものだろうか…。割り当てを変更することはできるようだし、ひとまず Win + Space にしてみるか…。本来はIMEだかキーボードレイアウトだかの切り替えに使われるのだっけか…。

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

#1 [windows] Windows10の付箋紙はちょっと使えない感じだった

Windows10 x64 1909上で、付箋(sticky notes)を使ってみようとしていたけれど。普段使ってる、クリップボード拡張ツール兼ランチャーの ArtTips から貼り付けができないことに気が付いた。何か特殊な入力欄のウィジェットでも使っているのだろうか…。

何にせよ、これではちょっと使えない…。今まで通り、エディタ(Mery)を起動してメモするようにしよう…。

#2 [gimp] GIMPの右クリックをスポイトにできないものだろうか

GIMP をドットエディタとして使えないかなと思ったものの、右クリックをスポイト機能にすることができないようで、これではちょっと不便だなと。何か良い手はないものか。

英語圏の記事をググってみたりもしたけれど、質問に対して「そんな機能はない」「Ctrl + LMBじゃダメなのか」等の返答ばかり。

GIMPのソースを弄ってビルドしないとできないのかな…。

マウスボタン割り当てツールでどうにかならんか。 :

GIMP本体側でどうにかするのが難しいなら…。マウスの各ボタンをカスタマイズできるツールの類を使ってみたらどうだろうか。

自分が普段使っている、X-Mouse Button Control 2.18.8 を使って試してみる。gimp-2.10.exe に対して、ボンタン5を押した時に、以下が送信されるように設定してみた。

{PRESS}{CTRL}{LMB}{WAITMS:150}{RELEASE}{CTRL}{LMB}
  • {PRESS} で、以降に記述されたボタンを押しっぱなしにする。
  • {CTRL}{LMB} で、Ctrl、LMB(マウスの左ボタン)の順で押す。
  • {WAITMS:150} で、150msec、待つ。
  • {RELEASE} で、以降に記述されたボタンを離す。

一応、Windows10 x64 1909 + GIMP 2.10.15 32bit Portable samjビルド版上なら、ボタン5をクリックするとスポイト機能が働いてくれる状態になった。

試しに、
  • 右クリック時は、上記の指定
  • ボタン5クリック時は、右クリック
になるように指定してみた。これなら右クリックでスポイトになる。もし、本来の右クリックメニューが必要なら、ボタン5をクリックすればいい。

注意点。 :

GIMP において、Ctrl + LMB による色取得は、カレントレイヤーのみが対象であることに気をつけないといけない。見た目ではそこに色があっても、他のレイヤーに描かれていたら、その色は取得できない。 *1

また、GIMP 2.10.15 時点のシンメトリー描画モードには、いくつか問題があるように見受けられた。
  • バケツツールは、シンメトリー描画モードで機能しない。
  • 鉛筆ツール利用時は、シンメトリー描画のオプションで、Disable brush transform にチェックを入れないと、1ドット単位で打てなかった。
  • 鉛筆ツールで、32x32ぐらいのブラシを使うと、反対側の描画が1ドットずれる。
現時点では、GIMPを、「シンメトリー描画モードが利用可能なドットエディタ」として扱うのは、ちょっと厳しい気がしてきた。

*1: スポイトツールを明示的に選んで使う分には、他のレイヤーから色を取得する設定も選べる。

#3 [nitijyou] 転んでしまった

犬を、小屋から縁側に移そうとしたら、犬の紐が足に絡まって転んでしまった。コンクリートの上で膝と頭をぶつけたようで、膝は内出血したのか青くなり。若干頭痛もしてきたけど、大丈夫だろうか…。

このタイミングで自分が怪我をするのはマズい。親父さんは入院中だし、お袋さんも犬に引っ張られて転んで骨折して以来、犬の散歩はしてないし。なんだか今年は、ウチは色々ついてないなと。

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

#1 [cg_tools] 久々にblenderを触ってる

仮で使う画像素材が欲しくて、blenderを起動して作業中。元モデルは DOGA-L1で作成して、VRML形式で保存して、blenderでインポート。

天井にライトがずらりと並んでるソレを作りたかったのだけど、平面のマテリアル設定で放射を設定しただけでは、望んだ結果にならず。ライトらしく見た目は白くはなったものの、周囲のモデルを照らしてくれなくて。

ググってみたら間接照明とやらを有効にしてレンダリングすればそれっぽくなるらしい…。

_[Tips]Blenderレンダーで放射をライトとして使う[Render] | Blenderで建物作ってみる会
_■ 放射をライトとして使う | @Kay-nea@のブログ

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

#1 [love2d] love2dでShaderを使ってラスタースクロールその2

随分昔に、 _DXRubyでラスタースクロール処理 を試したのだけど、それを love2d + Shader機能でもできるか実験。

こんな感じに。環境は、Windows10 x64 + love2d 0.10.2。

shader_test07_raster_ss.gif

64ドット分スクロールしたらまた0に戻す、みたいなことをしているけど、元画像の作り方次第で誤魔化せる、みたいな。

ソースは以下。 :

画像は、 _DXRubyでラスタースクロール処理 で使った _bg_ras_c.png を使用。

ソースは以下。

_conf.lua
function love.conf(t)
  t.window.title = "Shader test 07 raster"
  t.window.vsync = true
  t.window.resizable = true
  t.window.width = 640
  t.window.height = 480
  -- t.window.fullscreen = true
  -- t.window.fullscreentype = "exclusive"
end

_main.lua
-- Shader test 07 raster

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

  -- make shader
  local shadercode = [[
    extern vec2 imgsize;
    extern number factor;

    vec4 effect( vec4 color, Image texture, vec2 texture_coords, vec2 screen_coords ) {
      texture_coords.x = mod(texture_coords.x + ((factor + (factor * texture_coords.y)) / imgsize.x), 1.0);
      vec4 texcolor = Texel(texture, texture_coords);
      return texcolor * color;
    }
  ]]
  myshader = love.graphics.newShader(shadercode)
  myshader:send("imgsize", {img:getWidth(), img:getHeight()})
  myshader:send("factor", 0.0)

  v = 0.0
  px = (scr_w - img:getWidth()) / 2
  py = scr_h - img:getHeight()
end

function love.update(dt)
  v = v + 128 * dt
  myshader:send("factor", v % 64.0)
end

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

  love.graphics.setColor(255, 255, 255)
  love.graphics.setShader(myshader)
  love.graphics.draw(img, px, py)
  love.graphics.setShader()

  love.graphics.setCanvas()

  -- draw canvas to window
  wdw_w, wdw_h = love.graphics.getDimensions()
  scr_scale = math.min((wdw_w / scr_w), (wdw_h / scr_h))
  scr_ox = (wdw_w - (scr_w * scr_scale)) / 2
  scr_oy = (wdw_h - (scr_h * scr_scale)) / 2
  love.graphics.setColor(255, 255, 255)
  love.graphics.draw(canvas, scr_ox, scr_oy, 0, scr_scale, scr_scale)

  love.graphics.print("FPS: "..tostring(love.timer.getFPS()), 10, 10)
end

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

#2 [love2d] love2dのShaderでなんだかよく分からないエフェクトになったり

love2dの、 _公式Wikiサンプル を動かしていたらなんだかよく分からないエフェクトになってきたのでアップロードしてみるテスト。

こんな感じに。

shader_test06_sincos_ss.gif

自分は頭が悪いので、どうしてこういう効果になるのかは分かってないのだけど、これはこれでなんだか面白いなと。

画像とソース。 :

使用画像。

_hsvbar.png

_conf.lua
function love.conf(t)
  t.window.title = "Shader test 06 sin cos"
  t.window.vsync = true
  t.window.resizable = true
  t.window.width = 640
  t.window.height = 480
  -- t.window.fullscreen = true
  -- t.window.fullscreentype = "exclusive"
end

_main.lua
-- Shader test 06 sin cos
--
-- love.graphics.newShader - LOVE
-- https://love2d.org/wiki/love.graphics.newShader

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

  -- make shader
  myshader = love.graphics.newShader("shader.fs")
  myshader:send("factor", 0.0)

  angle = 0.0
  px = (scr_w - img:getWidth()) / 2
  py = (scr_h - img:getHeight()) / 2
end

function love.update(dt)
  angle = (angle + 30 * dt) % 360.0;
  myshader:send("factor", 1.0 * (1.0 - math.sin(math.rad(angle))))
end

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

  love.graphics.setColor(255, 255, 255)
  love.graphics.setShader(myshader)
  love.graphics.draw(img, px, py)
  love.graphics.setShader()

  love.graphics.setCanvas()

  -- draw canvas to window
  wdw_w, wdw_h = love.graphics.getDimensions()
  scr_scale = math.min((wdw_w / scr_w), (wdw_h / scr_h))
  scr_ox = (wdw_w - (scr_w * scr_scale)) / 2
  scr_oy = (wdw_h - (scr_h * scr_scale)) / 2
  love.graphics.setColor(255, 255, 255)
  love.graphics.draw(canvas, scr_ox, scr_oy, 0, scr_scale, scr_scale)

  love.graphics.print("FPS: "..tostring(love.timer.getFPS()), 10, 10)
end

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

_shader.fs
extern number factor;
varying vec4 vpos;

#ifdef VERTEX
vec4 position( mat4 transform_projection, vec4 vertex_position ) {
  vpos = vertex_position;
  return transform_projection * vertex_position;
}
#endif

#ifdef PIXEL
vec4 effect( vec4 color, Image texture, vec2 texture_coords, vec2 screen_coords ) {
  texture_coords += vec2(factor * cos(0.1 * vpos.x), factor * sin(0.075 * vpos.y));
  vec4 texcolor = Texel(texture, texture_coords);
  return texcolor * color;
}
#endif

今回は Shader部分を別ファイルに分けてみたり。

2016/12/14(水) [n年前の日記]

#1 [ruby][gosu] Ubuntu 16.04 + Ruby + Gosu でサウンド再生を試してみたり

_昨日書いた各スクリプト を VMware Player + Ubuntu 16.04 LTS上でも動かしてサウンドが鳴るかどうか確認してみたり。

結果、基本的にはWindows上で試した時と同様に一応鳴ってはくれたけど、ちと気になる動作が。

各スクリプトを実行すると終了時に妙なメッセージが表示される。
$ ruby sound_test.rb
AL lib: (WW) FreeDevice: (0x22c9260) Deleting 6 Buffer(s)

$ ruby sound_test2.rb 
AL lib: (WW) FreeDevice: (0x1c2c160) Deleting 1 Buffer(s)

$ ruby song_test.rb 
AL lib: (WW) FreeDevice: (0x149c6b0) Deleting 2 Buffer(s)
コレは一体何だろう…。

たぶんサウンド関係のリソースを確保したまま終了しちゃって「そういう作りをしてるんじゃねえよ」と怒られてるのだろうけど。dispose 云々とやらを、どこでどうやってしておけばいいのやら。コレが DXRuby + Ayame なら、サウンドリソースに対しては dispose という専用メソッドが用意されてるのだけど…。

それとは別に。Songクラスを使ったBGM再生については、Ubuntu上もWindowsと同様に、ループ再生は終わりと頭がちゃんと繋がってくれなかった。最後まで再生する前に頭に戻ってる、ように聞こえる。Linux上ではちゃんと聞こえるけどWindows上ではダメ、てな面倒臭い状況にならなかったのは幸いだけど、それにしても…やっぱりループ再生すらできないのは、困るな…。

Gosuがサポートしてるサウンドファイルフォーマット。 :

_Supported Audio Formats - gosu/gosu Wiki に説明があった。Windows、Linux、Mac は wav と ogg が使えるけど、iPhone は MP3 か M4A じゃないとあかんよ、一応 ogg も使えるけど遅くなるよ、と書いてあるのかな。

Macに限っては、CAF, MP3, M4A, WAV, AIFF等々、なんでもござれ状態らしい。…CAFフォーマットなんて初めて聞いた。iPhone向けのフォーマットなのか。

謎メッセージが解決できないか試す。 :

Ubuntu上で表示される謎メッセージが気になる。表示されないように修正できないものか。つまりは終了前にリソースをちゃんと解放するように作れないものか。

DXRubyドキュメントの、 _4.11 リソースの解放について が参考になりそうな気がしてきた。参照を切って GC.start を呼ぶ、という方法が提示されてる。

が、しかし。Ruby上で参照を切る、ってのは具体的にはどうやればいいのでしょうかね? 自分は初心者なので、まずそこからして分からないという…。

_第14章 コンテキスト の中で気になる行が。
cnt = nil # 参照を切る。作ったProcはここでやっと不要になる
なるほど、nil を入れておけばいいのか…な…。本当にそうなのか分かんないけど。

試しに色々対策。

_sound_test3.rb
require 'gosu'

class MyWindow < Gosu::Window

  def initialize
    super 320, 240, false
    self.caption = 'Sound Play Test'

    # wavファイルを読み込む
    @sounds = []
    @sis = []
    [
      "tmp_se_01.wav",
      "tmp_se_02.wav",
      "tmp_se_03.wav",
      "tmp_se_01.ogg",
      "tmp_se_02.ogg",
      "tmp_se_03.ogg"
    ].each do |fn|
      @sounds.push(Gosu::Sample.new(fn))
      @sis.push(nil)
    end
    @cnt = 0
    @close_req = 0
    @se_all_stop = false
  end

  def update
    if @se_all_stop  # SE全停止が要求されてる
      stop_all_se
      @se_all_stop = false
    end

    if @close_req > 0  # ウインドウcloseが要求されてる
      @close_req -= 1
      if @close_req == 0  # 一定時間が経過した
        if se_playing?
          # まだ鳴ってる
          @close_req = 30
          puts "SE playing (in update)"
        else
          # 何も鳴ってない
          dispose_se_resource
          GC.start
          close  # ウインドウを閉じる
        end
      end
      return
    end

    tm = 45
    if @cnt % tm == 0
      # 一定フレーム数が過ぎたらサウンドを再生
      n = (@cnt / tm) % @sounds.length
      if @sis[n] == nil or !@sis[n].playing?
        @sis[n] = @sounds[n].play
      else
        # @sis[n].stop
      end
    end
    @cnt += 1
  end

  def draw
  end

  # キーが押された時に呼ばれる
  def button_down(id)
    if id == Gosu::KbEscape  # ESCキーが押された
      # @se_all_stop = true  # SE全停止を要求
      @close_req = 30  # xxフレーム後にウインドウを閉じるように要求
    end
  end

  # 何かのSEが鳴ってたら true を返す
  def se_playing?
    return false unless @sis
    cnt = 0
    @sis.each do |si|
      next unless si
      cnt += 1 if si.playing?
    end
    return true if cnt > 0
    return false
  end

  # SEを全て停止
  def stop_all_se
    return unless @sis
    @sis.length.times do |i|
      next unless @sis[i]
      @sis[i].stop
    end
    puts "SE stop all"
  end

  # サウンド関連リソースを全て破棄、するはずなんだけど…
  def dispose_se_resource
    if @sis
      @sis.length.times { |i| @sis[i] = nil }
      @sfs = nil
    end

    if @sounds
      @sounds.length.times { |i| @sounds[i] = nil }
      @sounds = nil
    end
  end
end

wdw = MyWindow.new
wdw.show

# SEが鳴り終わるまで待つ
while wdw.se_playing?
  puts "SE playing"
  sleep(1)
end
puts "SE not playing"

wdw.dispose_se_resource
wdw = nil
GC.start
exit

要するに、SEが鳴ってない状態になるまで待ってみて、それから各変数に nil を代入して GC.start を呼ぶ、という処理にしてみた。

ちなみに、もしかしてメインループの中で再生状態の検出・記録をしていたりして、となるとウインドウを閉じた後で再生状態を調べようとしても無駄なのではと疑問を持ったけど。実際試してみたら、メインループ外でもちゃんと再生・非再生が得られたので、メインループとは違うところでそのあたりを処理して調べている模様。

さておき。結果が少し変わってきた。
$ ruby sound_test3.rb 
SE playing (in update)
SE not playing
AL lib: (WW) FreeDevice: (0x1b503b0) Deleting 2 Buffer(s)
メッセージ内のバッファ数が、6から2まで減った。しかし、相変わらずメッセージが表示されてる。なんでや…。

ちなみに、github上のgosuのソレには、 _OpenAL warning on Ubuntu - Issue #292 - gosu/gosu として去年から報告が上がってるけど、誰もレスをつけてないという…。ひょっとして、Linux + Gosuを使う人は無音のゲームしか作らないのだろうか。それともそもそもLinux上でGosuを使う人はほとんど存在していないのだろうか。

メッセージ内の「(WW)」はエラーじゃなくて警告を表してるのだろうと思うので、少しウザいけど気にしないという選択肢もアリなのかしら。いやまあ、現状では解決策が見つからないので、その選択肢しか無いのだけど。

_Xorg - ArchWiki
ログファイルの中に (EE) で始まる行が存在しないか確認してください。(EE) はエラーです。また、(WW) は警告です。

Xorg - ArchWiki より

Sampleクラスを使うとちゃんとループする。 :

Songクラスを使わずに、Sampleクラスを使うとちゃんとループするようで。

_song_test3.rb
require 'gosu'

class MyWindow < Gosu::Window

  def initialize
    super 320, 240, false
    self.caption = 'Sample (BGM) Play Test'
    @fnt = Gosu::Font.new(20)

    # BGMのoggファイルを読み込む
    @bgm = Gosu::Sample.new("tmp_loop01.ogg")
    @bgm_si = nil
    @play_msg = ""
    @pause_msg = ""
  end

  def update
    # 再生中?
    @play_msg = (@bgm_si and @bgm_si.playing?)? "Playing" : "Stopped"

    # ポーズ中?
    @pause_msg = (@bgm_si and @bgm_si.paused?)? "Paused" : "Not Paused"
  end

  def draw
    # 再生中/停止中, ポーズ中/非ポーズを表示
    @fnt.draw("Push A:Play, Z:Stop, P:Pause", 4, 4, 0)
    @fnt.draw(@play_msg, 4, 30, 0)
    @fnt.draw(@pause_msg, 4, 50, 0)
  end

  # キーが押された時に呼ばれる
  def button_down(id)
    if id == Gosu::KbEscape
      close
    elsif id == Gosu::KbA
      if @bgm_si == nil or !@bgm_si.playing?
        @bgm_si = @bgm.play(1, 1, true)  # 通常再生(ループ有効)
      end
    elsif id == Gosu::KbZ
      if @bgm_si
        @bgm_si.stop  # 再生停止
      end
    elsif id == Gosu::KbP
      if @bgm_si
        if @bgm_si.paused?
          @bgm_si.resume # ポーズ解除
        elsif @bgm_si.playing?
          @bgm_si.pause  # ポーズ
        end
      end
    end
  end

  # キーが離された時に呼ばれる
  def button_up(id)
  end

  def stop_bgm
    return unless @bgm_si
    @bgm_si.stop
  end

  def dispose_bgm
    @bgm_si = nil
    @bgm = nil
  end

  def bgm_playing?
    return false unless @bgm_si
    return @bgm_si.playing?
  end
end

wdw = MyWindow.new
wdw.show

# BGM停止を指示
wdw.stop_bgm

# BGMが停止するまで待つ
while wdw.bgm_playing?
  puts "BGM playing"
  sleep(1)
end
puts "BGM not playing"

wdw.dispose_bgm
wdw = nil
GC.start
exit



曲の終わりと頭がちゃんと繋がってるように聞こえる。もしかするとノイズが入ってるかもしれないけど、聞いてる分にはほとんど分からない、ような。

また、Windows上でも、Ubuntu上でも、同じように聞こえた。

もっとも、Ubuntu上では終了時にやっぱり例のメッセージが表示されてしまうのだけど…。

#2 [ubuntu] gedit-gmateがインストールできず

Ubuntu には gedit というエディタが入ってるのだけど、どうやら gedit-gamte なるプラグインをインストールすると更に便利になるらしくて。

_gmate/gmate: Set of plugins and improvements to make Gedit a powerfull programmer text editor

しかし、Ubuntu 16.04 LTS上で試してみたところインストールできず。

sudo apt-add-repository ppa:ubuntu-on-rails/ppa
sudo apt-get update
「こんなリポジトリは使えねえよ!」と怒られる。

続けて以下を打ち込むも…。
sudo apt-get install gedit-gmate
「そんなパッケージはねえよ!」と怒られる。

もうメンテナンスされてないのかな。2015年版があるみたいだから、比較的最近までメンテナンスされてたように見えるんだけど。

とりあえず、そういう状態になったことをメモ。

#3 [ubuntu] Rubyが書けるようにvimを少しだけ設定

gedit で Rubyスクリプトを編集しようと思ったけど便利機能がほとんど無くてこれは厳しいなと。結局 vim を使うことに。

とりあえず、インデントがおかしなことになったので、以下を参考にしてそこだけは設定。

_Rubyプログラミングが快適になるVim環境を0から構築する - Qiita
_vimでrubyを使うときだけ2タブにしておこう - 雑想空間

~/.vimrc の中で、以下を記述。
set expandtab
set autoindent
filetype plugin indent on
タブ文字を使わず空白で置き換えるのと、自動インデントの有効化と、ファイル毎にインデントを変えるように設定してる、らしい。

~/.vim/indent/ruby.vim を作成して、以下を記述。
setlocal tabstop=2 shiftwidth=2 softtabstop=2

2015/12/14(月) [n年前の日記]

#1 [ruby] Ruby 2.0 + Windows7 で opengl って動くのかな

Windows7 + Ruby 1.9.3 時代は動いてたような記憶があるのだけど。Ruby 2.0 ではどうなってるのだろうと。

上手くいかなかった手順。 :

gem install opengl --platform=x86-mingw32
gem install ruby-opengl -v=0.61.0 --platform=i386-mswin32
gem install glut --platform=x86-mingw32
> gem list | grep "opengl\|glut"

glut (8.2.1 x86-mingw32)
opengl (0.9.2 x86-mingw32)
ruby-opengl (0.61.0)

これではダメだった。 _RubyでOpenGLをやってみる | フリップフラップ で紹介されてるスクリプトを実行したら、真っ白なウインドウが表示されて、クリックしたら落ちた。

動かんのでアンインストール。
gem uninstall opengl
gem uninstall ruby-opengl
gem uninstall glut


_opengl-bindings | RubyGems.org | your community gem host という版もあるらしいので試してみた。
gem install opengl-bindings

これもダメだった。スクリプトを動かすと以下のエラーが出た。
> rubyopengltest1.rb

C:/home/prg/ruby/test/ruby_opengl/rubyopengltest1.rb:89:in `initialize': undefined method `InitWindowPosition' for GLUT:Module (NoMethodError)
        from C:/home/prg/ruby/test/ruby_opengl/rubyopengltest1.rb:118:in `new'
        from C:/home/prg/ruby/test/ruby_opengl/rubyopengltest1.rb:118:in `<main>'

上手くいった手順。 :

_opengl-bindings をインストールすると、Ruby2.0インストールフォルダ\lib\ruby\gems\2.0.0\gems\opengl-bindings-1.5.2\sample\ にサンプルが入ってる。任意のフォルダにコピー。

glfw3.dll と freeglut.dll を入手して、スクリプトと同じ場所にコピー。

_GLFW - Download
_The freeglut Project :: About
_freeglut Windows Development Libraries

付属サンプル、simple.rb と simple_glut.rb を実行してみた。グラデーションのついた三角が表示された。どうやら動いてるらしい。

動いたサンプルスクリプトと、前述の動かなかったスクリプトと比較してみると、スクリプトの書き方が全然違うように見えた。エラーが出て当然だろうか。

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

#1 [cg_tools][font] BDFフォントについて調べてる

先日、DXRubyで BMFont を表示してみた際に、この調子で書けば BDFフォントも表示できたりするんじゃないかと思えてきたので、フォーマットその他をちょっと調べ始めたり。

でも、そもそも今時、BDFフォントを編集するソフトも無いし、単なるフォントビューワすらWindows上では存在しなかったりするわけで。こんな状況でBDFフォントを使うかと言われたら…。実験用画像にちょこっと座標値を描き込みたい、なんて時に、BDFフォントが使えたら便利なのだけど、サポートしてる画像編集ソフトが存在しないんだよなあ…。

かといって、bdf2ttf 等で ttf に変換しても、フォントサイズの指定は pt単位だし、その pt も整数しか指定できないソフトがほとんどなので、例えば 10ドットのビットマップフォントを使いたい、と思っても pt に換算すると 7.5 pt とかになって指定すらできないわけで。うーん。

GIMPでBDFフォントが使えることに気付いた。 :

今までも ~/.gimp-2.8/fonts/ 以下に BDFフォントをコピーしてあったのだけど、選べるフォント一覧に出てこなかったので、きっとWindows上では使えないのだろうと思い込んでいたのでした。

しかし、以下の記事を読んで、どうやら BDFファイルの一部を書き換える必要がありそう、てなことに今頃気がついて。

_how to use BDF fonts on Ubuntu Linux, make ISO10646 encoded font
また、ターミナルその他のアプリケーションで フォントを参照するときの「そのフォントの名前」は、

FONT -Misc-Fixed-Medium-R-Normal--16-150-75-75-C-80-ISO10646-1
FAMILY_NAME "Fixed"

の「Fixed」の部分が使われるようです。 ここは、たとえば「JISKAN16」と(今回のjiskan16.bdfなら)しておくと いいでしょう。

how to use BDF fonts on Ubuntu Linux, make ISO10646 encoded font より

件の記事で紹介されてる書き換えスクリプトを見ると、FOUNDRY の部分も書き換えてるように見えたので、
  • FONT -Misaki-(ココ)-Medium-R-Normal--8-80-75-75-C-40-iso8859-1
  • FOUNDRY "(ココ)"
  • FAMILY_NAME "(ココ)"
この3つを他のフォントとダブらないように書き換えてみたところ、Windows版GIMP上でもBDFフォントがフォント一覧に表示されて選べるように。イエッフー。

ただ、文字コードが英語用のもの ―― iso8859-1 の指定がされてるBDFしか使えないようで。漢字を含んだBDFは、違う文字コードに変換する必要がありそう。

#2 [cg_tools][font] WindowsでBDFフォントの編集

ググってたら、Windows上でBDFフォントを編集できるエディタに遭遇。

_fony

試用してみたけどイイ感じ。そもそも Windows上でBDFフォントを編集できるツールは皆無なので、こういうツールが存在するだけでもありがたい。

fntを編集するツールもあった。 :

この場合の .fnt は、DOSや昔のWindowsで使えてたフォントフォーマット、らしいですが。.fnt と言っても、昔はフォントファイルならフォーマットに関係なくなんでも .fnt をつけてしまっていたらしいのでややこしいのです。

_CyLog Software - Raster Font Editor

BDFで保存することも可能なので、一応 BDFフォント作成にも使えるツール、だと思う。

#3 [nitijyou] 選挙に行ってきた

お袋さんが車で投票所(集会所)まで行くというので、ついでに乗せてもらって行ってきた。

今回わざわざ選挙をする意味がよく分からないまま、それでも一応投票。どうせ首相は、「国民の意思はこういうことだ」「だから私のやってることは正しいのだ」と、どんな結果が出ても都合のいい主張を始めるんだろうし。何をどうしたって結局消費税は高くなるんだろうし。相変わらず生活必需品にも消費税をかける、筋の通らない税制を続けるんだろうし。そしてそのことに、世間の皆様は文句を言わないのだろうし。選挙をする意味あるのかな。とモヤモヤしながら、みたいな。

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

#1 [nitijyou] 雪がうっすら積もった

朝になったら積もってた。もう、自転車では走れない時期だなあ。

#2 [anime] 漫画だけができる話の終わらせ方

「俺の脳内選択肢が〜」の、おそらくは最終回?を視聴して、「なんだか『うる星やつら』を思い出すなあ…こういうドタバタは好きだわ…」と思ったのだけど。

「うる星やつら」アニメ版をぼんやり思い出しながら、「そもそもこういうドタバタした感じの終わらせ方って、アニメでは難しいよな。漫画ならともかく」と思えてきたり。

「うる星やつら」の原作漫画は、えてして毎回、最後のコマが、ページの1/2〜1/3ぐらいを占めていて。たくさんのキャラがギッチリ描き込まれて ―― ウォーリーを探せみたいな状態で。それぞれが混乱したやり取りをして、ドタバタして終わる、という形が一つの様式美になっていたのだけど。

それを、小説、もしくはアニメで、そっくりそのまま再現しようとすると、これはもうほとんど無理で。各人のやり取りを、一つ一つ時分割して、順に並べて、読者・視聴者に見せていくしかなく。もし、それらやり取りを、漫画と同様に1カットで同時に収めようとすると、ゴチャゴチャドタバタしてることだけは伝わるけれど、そこで何が起きてるのか視聴者側が理解することは不可能で。

漫画は、そこで起きてることを、並列で見せることができるけど、小説やアニメは、直列でしか見せられないというか。

画とテキストを併存させて、時間制御を読者に任せて、読者自身は一つ一つシーケンシャルに情報を理解していくけれど、全体としてはソレが同時に起きていると認知できてしまう ―― そんな見せ方は、漫画じゃないとできないなと。

そんなわけで、「こういう終わり方は懐かしいなあ」と思いながらも、「漫画にしかできない見せ方ってあったんだな」とも思えてきたのでした。

逆に考えると、漫画ではできないけれど、アニメならできる見せ方ってのもありそうだなと。いや、間違いなくたくさんあるだろうけど。たぶんこっちは、そういう特徴に気付かないまま、ぼんやりと見ちゃってるんだろうな…。

アニメでもそういう見せ方できないかな。 :

漫画のソレを読む時も、一つ一つのやり取りを、読者は一つ一つ追いかけて読んでるわけで。それが一つのコマに収まってるから、「コレは同時に起きてることだ」と認知するわけで…。

そう考えたら、アニメでもできるんじゃないのかと思えてきたり。一つのコマに収めるという漫画のソレを、別の何かで代替すれば済む予感。

うむ…。なんだか、そういう見せ方をしてるアニメのシーンがいくつか思い浮かんできましたよ。漫画のああいう感じは、そっくりそのままできないとしても、かなり似たようなことはできるなと。

「こんなの○○で表現できねえよ」とか迂闊に思い込んだらいかんですな。「なんとかできねえかソレ」とジタバタすれば、何かしら出てくるけど。「できるわけねえよ」と思い込んでたら永遠に出てこないなと。そんなことを思ったり。

#3 [anime] まどかマギカ、ほむほむの回を視聴

BS11で放送されてるソレを見たけど。やっぱり何度見ても、クるわ…。

ほむほむの能力に制限をつけた・当面はたった一つだけ願いを叶えたことで、魔法少女らしからぬ行動を次々にとらざるを得なくなっていくあたりに感心。魔法少女という設定はどう考えても非現実的なのに、妙に現実的な展開が加えられていくことで、一見すると笑えてしまうのだけど。しかし、笑った後に、それを実行してるのが年端もいかない少女であったことを思い出して、次第に怖くなってくる。その、怖い行為を、どうして実行してるのかと言えば、そこには当人の強い想い・決心・周囲を信用できない絶望感があるが故で。…やっぱり上手い脚本だよなあ、と思えたり。

#4 [zatta] 未来の日記を書いてたり

なんやかんやで、 _DXRuby Advent Calendar 2013 に参加することになりまして、12/19に公開する予定の記事を書いていたり。要するに、未来の日記を書いているわけですけど。

スクリプトソースは3日前に書き終えていて、解説文をようやく書き始めたけど。分量が多くなって、どうしたもんかと。初心者向けの解説部分をバッサリ削ろうか…。でも、そこを削ると、その後に出てくるスクリプトの必要性が分からなくなるし。どうしようかなあ。

参加云々。 :

参加云々は、ちと悩んじゃったところもあって。どの記事もレベルが高いのに、自分が参加してもええのかな、とか。 DXRuby作者様からのお誘いは断ってしまった後で、イベント主催様からのお誘いは受けてしまってええのかな、とか。だけど当時(?)は、
  • 公開記事が少なくて、イベントのイメージが掴めなかった。
  • 自分自身、そういった記事を書いたことが全く無かったので、完全に自信がなかった。
という状態で。そこから、
  • 公開記事が増えてきて、どんなイベントなのか、ぼんやり分かってきた。
  • それっぽい記事を自分でいくつか書いてみたら、ちょっとだけ変な自信もついてきた。
と状態が変わってきて。それに加えて、
  • 主催様から、「ここ数日の日記に書いてるレベルでいいスよ」と言ってもらえた。
ので、「自分の日記を眺めた上で『これでもOK』と思うのであれば…」と。

とは言え、自分が書く予定の記事は、他の記事と比べたら絶対に頓珍漢な内容になるだろう、という妙な自信もあるのですけど。まあ、「枯れ木も山の賑わい」と申しますし…。DXRubyという山が大きくなればなあ、と願う気持ちは皆様と同じであらう、ということで御海容いただければと。

このあたり、もし来年も開催するのであれば、少し楽になりそうだな、とも。「去年はこんな感じでした」と提示すれば、イベントのイメージを掴んでもらうこともできるだろうと。なんでもそうだろうけど、前例の有無は大きいですな。

未来の日記云々。 :

考えてみたら、「未来の日記」を書くなんて、この日記ページを書き始めて以来、初めての体験だなと気付いたり。

日記を書くのを忘れていて、後になって数日前のことを思い出しながら無理矢理書き留める、なんて場面は数え切れないほどあったけど。過去は書いても、未来の事なんて、書いたことはないよなと…。

ここに来て、何かの禁を破ろうとしてる、そんな気分にもなってきたり。

そもそも自分、Web日記とblogは、性質が違うような気がしていて。
  • その日あったこと、その日見たこと、その日考えたことを、だらだら書き残すのが日記。
  • 数日〜数ヶ月かけて、内容をじっくりと煮詰め、ジャーナリストや研究者にでもなったつもりで、ドカーンと発表するのがblog。
そんな勝手な定義の違いが、自分の中にありまして。

なもんで、
「日記の中に、blog記事を書いていいのだろうか…? もしかすると、Wikiとか、単なるhtmlとか、 _Qiita とか、そういうところに書き残したほうがスッキリしないか?」
「そこまでカッチリ考えることでもないやろ。たまにはこーゆーのもいいんじゃね?」
てな間で悶々と。自分、めんどくさい人間だなあ…。

Qiitaが出てきた頃、「こういうサービスって意味あるのかな。プログラマーさんはえてして自分のblogで書いちゃうんじゃないか」と思ってしまったのですけど。自身のblogに載せるのはちょっと、と躊躇してしまう属性の記事も、Qiitaなら書けるという需要はあったのだろうなと…。未来の日記を書き始めたことで、今頃気付いた次第。

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

#1 [neta] ○○版けいおん

唐突に何の前触れもなく「吉田戦車版けいおん」という単語が思い浮かんだのでメモ。イメージ湧かないけど。…さわちゃん先生が _山崎先生 みたいな姿でペタペタと歩く感じなのだろうか。

島本和彦版けいおん、も見てみたい気もする。おそらくあずにゃんだけが熱血キャラな予感。「いかん…いかんぞ! 毎日毎日、茶飲んでケーキ食って、茶飲んでケーキ食って…そろそろ練習しないとダメだあーッ!」と叫ぶけど他の4人は全員あの島本風のほほんお姉さんキャラっぽい感じで暖簾に腕押しで、だんだんあずにゃんが例の島本風涙目表情に。そんなイメージ。

一条ゆかり版けいおん、も見てみたい気もする。黒髪とお嬢様が「今日のお茶は何かな」「ふふっ。当ててごらんなさいな」「この香り…ダージリンだね」「あら、簡単すぎて問題になりませんわね(クスッ」と若干耽美っぽいやり取りしてるところでドアがバターン。「腹減ったー!」「何か食わせろー!」と騒々しい二人が。「お前達、欠食児童か…」と若干時代を感じさせる台詞を吐いて呆れる黒髪。とかそんなイメージ。

美内すずえ版けいおん、も見てみたい気もする。「学園祭は明日なのに…声が…出ない…!」と白目でショックを受けてるギターの人。とか。

手塚治虫版けいおん、も見てみたい気もする。ギターの人は時々ヒョウタンツギになる。アッチョンブリケもやってくれそう。

考えてみると、女子校生4〜5人組がバンドをやるという設定は同じだとしても、個性的な作家さんが描けばそれぞれ全く違う作品となって出てきそうな。もしかすると、ガンダムをネタにした漫画雑誌のように、けいおんをテーマにした漫画雑誌を創刊することも不可能ではないのではないか。ってそんなの創刊してどうする。

#2 [zatta] 太陽嵐、太陽フレアが気になる

_本の虫: 新しい発想の終末予想、EMP を読んでたら、
核によるEMPなんぞに頼らなくても1859年の太陽嵐クラスの太陽フレアが来るだけで凄まじい被害が出たりする。まあその場合送電網もまるごと焼かれるのでソフトウェア資産が吹っ飛ぶ以前にソフトウェアが資産にならなくなるのだが。

本の虫: 新しい発想の終末予想、EMP より

という一文が目に入り、気になりはじめてググってしまったり。

_2013年5月に新たな人類の危機、巨大な太陽フレアによる「ソーラーストーム」が地球に到達する可能性 - GIGAZINE
前回大規模な太陽嵐が発生したのは1859年。この際には巨大な太陽フレアによって口火を切られた磁気嵐が地球に押し寄せ、電線がショートして家が火事になるなどの被害が発生、

2013年5月に新たな人類の危機、巨大な太陽フレアによる「ソーラーストーム」が地球に到達する可能性 - GIGAZINE より

まあこの当時はコレだけだったんだが、今は… 特に原発が世界に500基だか有る。再処理工場も沢山ある。

【原発】 原発情報697 【原発】 より


_【宇宙】巨大太陽嵐メガフレアが10年以内に起こる確率は「12%」 1859年のキャリントン事象クラスの太陽嵐が生じれば破局的な結果に - デスクトップ2ch
電子機器が壊れたら、制御もなにも予備発電機もダウン 世界の全原発が総メルトダウンするーー

【宇宙】巨大太陽嵐メガフレアが10年以内に起こる確率は「12%」 1859年のキャリントン事象クラスの太陽嵐が生じれば破局的な結果に - デスクトップ2ch より

突っ込みどころが多すぎるwww キャリントン事象は、>2にも少し書いてあるように、長い電線を磁場の変化に晒すと電気が発生する「誘導起電流」が原因。アメリカの送電線が直流方式だから起きた事象だ。交流式の日本では影響はない。

【宇宙】巨大太陽嵐メガフレアが10年以内に起こる確率は「12%」 1859年のキャリントン事象クラスの太陽嵐が生じれば破局的な結果に - デスクトップ2ch より

福一のバルブを動かすために、作業員の車のバッテリーを集めて対処しようとした、という話があるけれど。車のバッテリーって直流だった…ような…。ということは、非常用外部電源って直流だったりしないのかな。影響は無いのだろうか。

_1859年の太陽嵐 - Wikipedia
ヨーロッパ及び北アメリカ全土の電報システムは停止した[5]。電信用の鉄塔は火花を発し、電報用紙は自然発火した[6]。電源が遮断されているのに送信や受信が可能であった電報システムもあった[7]。

1859年の太陽嵐 - Wikipedia より

電報用紙が自然発火した、というのがよくわからん…。原発の非常用電源・バッテリーも、そういうことが起きたりしないのだろうか。

_正常性バイアス に支配されて、「そんな大変なことを起きるわけないだろ」とスルーしたい気持ちになってくる、そんな話だなあ。でも、ムーあたりに載ってそうなオカルト話だったらどうしよう、てな気もするし。とりあえずもうちょっと調べてみないと、どういう話なのか自分には判断できそうにない感じ。

それはともかく、正常性バイアスは怖い。震災時、ウチの親父さんがソレに支配されてしまった光景を今も覚えてる。「原発がメルトダウンするだろうから避難の準備をしておいたほうがいい」と友人から知らされたのに、「そんなこと起きるわけないだろ。アイツは心配し過ぎなんだ」と笑ってスルーしてた。今になって、常識的に考えれば、あれだけ揺れたのに原発が無事に済むと思い込めるほうがおかしい。正常性バイアスは怖い。

認知不協和 :

_防災心理学、正常性バイアス、多数派同調バイアス、
「近い将来大地震が発生すると思いますか」と聞くと、80%以上の人が「ハイ」と答えます。それなのに「なぜ耐震対策をしないか」と不思議に思います。そこには市民の隠された防災心理があります。

「地震が発生する確率が高い」という認識と同時に「このままでは自宅が倒壊する恐れがある」それなのに「自分は何もしていない」とすると、そこに受け入れがたい矛盾が生じます。その矛盾を解決するためには自分に都合のよい言い訳を見つけます。
「大地震が着たからといって、すべての家がつぶれるわけはない」
「すべての場所が震度7になることもない」
「阪神・淡路大震災のとき、古い家でも倒れなかったものもあった」
「だから、たぶん自分の家は大丈夫」
という風に、懸念を軽減するための魔法の言葉を都合よく捜し、それにすがって矛盾を解決し心の安らぎを得ようとするのです。

これを心理学では「認知不協和」といいます。

実際には矛盾(認知不協和)は何も解決されているわけでなく、とりあえず目先の不安を考えないようにするための方便を自らつくりだし心のバランスをとるのです。

この何の根拠もない「安全の思い込み」がある限り、防災対策を必死で考えようとしないのです。

防災心理学、正常性バイアス、多数派同調バイアス、 より

正常性バイアスについてググってたら記事に遭遇。いいことが書いてあるような気がするのでメモ。福一の爆発はコレが原因じゃん、と思えたり。また、太陽フレアの話も、こういう状態に陥ってスルーしそうだよなと。いや、太陽フレアのソレは、信憑性があるのかないのかも自分は分かってないんだけど。

本来こういうのは tumblr のアカウントでも取ってコピペすべきなのだろうか…。ちゃんと引用の形になっているのか、それを考えると微妙。

#3 [nitijyou] 自転車で買い物に

親父さんの電動自転車を借りて買い物に。ダイソーでチャッカマン?っぽいライターを購入。カワチで夜食だのジュースだのを購入。

普段なら、煙草が切れたから買ってこなくちゃ、てなノリで一応外出するのだけど。ここのところ、煙管で煙草を吸ってたので、消費本数が少なくて。1日1本ぐらいで済んじゃう上に、ここ数日はちと胸が痛くて吸うのを止めていたために、外出して買ってこないと、てな状態にならず。前回外出したのは…いつだったっけ…。

2011/12/14(水) [n年前の日記]

#1 [nitijyou] 自転車で買い物に

親父さんの電動アシスト自転車を借りて外出。銀行によってお金をおろして。ヨークベニマルで、セブン&アイ共通商品券をお歳暮として送る手続きを。ついでに夜食相当のお菓子その他を買って帰宅。

今年からは農作物を送れない。 :

去年までは、お歳暮のお礼として、地元産=福島県産の林檎その他を送っていた。せっかくの機会だから福島の美味しい○○を、みたいな。

でも。さすがに原発事故が起きてしまった現在、そういったものを送るわけにはいかない。放射性物質の影響なんて肉体的にほとんど関係ないであろう、お爺さんお婆さんしか居ない御家庭に送るならまだしも。お子さんの居る御家庭に送るのは無神経にもほどがある。と自分は思っていて。

農家の方が自腹で検査費用を出して測ってもらった限りでは、梨も林檎もNDだったけど。そういった検査結果が同梱されていたとしても、お子さんの健康を考えねばならないお母さんなら、できるだけ避けたいと思うのは自然なこと。そういう気持ちが湧き、それに従い行動してきたからこそ、人間という種が絶えることなくここまで存続してきたのだろうと。故にそういった不安を持つことは、否定どころか肯定されてしかるべきこと、とすら思う。

だから、もう送るわけにはいかない。なので今年からは商品券を送ることに。…コレ、福島県内にはお金が落ちてないような気がして非常にモヤモヤするけれど。

2010/12/14(火) [n年前の日記]

#1 [flash] 画像は届いたが

ボタンとロゴが1つの画像になっているのは助かった。別々で来ることも予想して、4枚ぐらい重ねられるようにはしてあったんだけど、使わずに済みそう。ただ、押す前と押した後が別々の画像になっていたのは予想外。いや、正確には、もしかしたらそういう画像が来るかもしれんと思ってはいたものの、来なかったら作業が無駄になるなと思って実装してなかったわけで。まあ、それはなんとかなる。一応頭の中でそういう作りも考えてはいたし。

それよりも、ボタンを押したらこの画面に移行する、みたいな話を今頃聞かされて、そっちのほうがトホホ。なんで今頃そういうことを言い出すかな。

どうも今回、あちら側にとってはある種の暗黙知 ―― 暗黙知だから「それは知っていて当然」と思い込んでしまっていて、こちらにはあえて伝えようとしない仕様があまりにも多過ぎて。延々、無駄な作業、やらなくてもいい作業ばかりやらされている気がする。更に、作業をすんなり進めるうえで必要になる情報を要求しても、ほとんどスルーされてる気もする。画像の種類だけでもメールで教えてくれ、それがあるとないとでは全然違うから、と言っても、結局何も教えてもらえなかったし。ツールの関係で画像はpngしか使えないよ、と教えてあげたのに相変わらずgifで届くし。それでいて「不具合を出さない心得を〜」などとわけのわからない質問メールは届く。

いかん。この手のソレを書いてると、ヒートアップしてしまう。おちけつ>俺。とにかく、差し替え・調整作業をしよう。

15日が〆切とか言ってたけど、14日が終わろうとしてる頃に画像を送ってきたり、「本来の仕様」だのを今更伝えられてもなあ…。できるわけないだろ。俺を何だと思ってるんだ。いかん。おちけつ>俺。

2009/12/14(月) [n年前の日記]

#1 [comic] 本棚を整理

BREAK-AGEに目を通していたのだけど、7巻までしか持ってなかった。最後のあたりはどうなって終わったのだろう。ちと気になる。とはいえ、もう本屋では売ってない・絶版だし。

少し検索してみたが、古本であればまだ入手可能らしい。が、そうまでして読みたいかと言うと微妙。あらすじだけでも判ればそれだけで満足出来そうな予感も。

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

#1 [anime] Mr.インクレディブルを最初から鑑賞

HDDレコーダに録画していた分を鑑賞。

こりゃ凄い。素晴らしい。神がかってる。

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

#1 [pc][web] htmlの印刷時の枚数を少なくしてほしいという要求が届いた

ktからそのような要求が。

使ってるブラウザによって印刷時のサイズは違ってくるし、プリンタ設定でも印刷時のサイズは違ってくるわけで。htmlでどうにかしようと考えるより、閲覧者が、ブラウザなりプリンタなりの設定を変更してどうにかすべきことじゃないのだろうか。

と思ったものの。そのあたりをどのように説明すればいいのかで悩んでしまう。何かしらに喩えて説明したほうが伝わるだろうか。しかし、喩えが何も浮かばない。

面倒くさくなってきたので、印刷時のcssの文字サイズを極端に小さくすることで、IE6での印刷時には枚数が少なくなるようにした。しかし、こんな豆粒みたいな文字を誰が読めるんだという感も。ホントにこれでいいのか? どうなんだろう。わからんなぁ。

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

#1 [iappli] 画像データが届いたので差し替え中

とりあえずゲーム中のobj関連画像が届いたんでちょこちょこと差し替え中。BG等はまだだけど…。ふきだし+台詞を入れる予定らしいが、レイアウトできるのかな。人物が画面上部、objが画面下部なのに、どこにふきだしを入れるんだろう…。デザイナーさんが悩んでたりするのではなかろうか、などと想像。

#2 [nitijyou] ヨドバシから注文していたソフトが届いた

3本注文したのだけど。めちゃくちゃデカイ箱で届いた。中にはプチプチマットや空気の入ったチューブ状のアレがたくさん。つまりはそれだけ手荒に扱う配送業者が多いってことなんだろうか。

ていうか。アプリのパッケージってどうしてそれなりにデカイのだろう。CD-ROMの中にマニュアルPDFも入れて、とかそんな感じでもいいのではないかと思うのだけど。

この記事へのツッコミ

Re: ヨドバシから注文していたソフトが届いた by けいと    2006/12/16 19:38
> アプリのパッケージってどうしてそれなりにデカイのだろう

私も昔からそう思っていましたし、
他の人もそう感じる人が多いようですが、
「箱が大きくないと店頭に並べたときに目に入らないから売れなくなる」
っていう店側の都合(心配)があるので小さくならないんだとか。

どうせならせめて箱の大きさを各社共通の大きさにしてほしなーと。
しまっておくのも不便なんだよね。
大きさばらばらだし、最近の箱は軟弱だから重ねるとつぶれちゃうし。
ソースネスクトみたいにDVDケースで統一してくれないかな。

マクロメディアの某ソフトみたいに
箱の中身がCD(ハードケースなし)と紙切れ1枚だけっていうのも
あまりにもさびしい…
ソフトのパッケージサイズ by mieki256    2006/12/27 06:35
> 「箱が大きくないと店頭に並べたときに目に入らないから売れなくなる」

あー、エロゲーでそういう話を見かけたような記憶も…。

分厚いマニュアルが入ってるものは仕方ないとして、
CD-ROMだけなんてのは、CDケース or DVDケースサイズで
いいんじゃないかという気も個人的にはするです。
特にさびしさ云々を自分は感じない性質なので。
いや、そのへんつきつめていくと、
ダウンロード販売でいいじゃん、ってことにもなるんでしょうけど。
なんかこう、「購入した」ということを物理的に証拠として
残せる何かが欲しい気もするあたりがなんとも中途半端なんですが。>自分。

#3 [windows] ホームページビルダー11を買ったけどサブサイト機能が改悪されててガックリ

親父さんにプレゼントするつもりで買ったけど。肝心のサブサイト管理機能がVer9よりヒドイ仕様になっていて愕然とした。

Ver9では、HPB起動直後に、いきなりサブサイト設定を開くことができた。サブサイト設定作成時はメインサイト設定を開く必要があるので時間がかかるものの。作ってしまえば、その後はメインサイト設定を開くことなくサブサイト設定を開けて、待たされずに済む・比較的すぐ作業できるようになっていた。

ところが Ver11では、いきなりサブサイト設定を開くことができなくなっていた。開こうとすると、「メインサイト設定を開いて、ビジュアルサイトビューからサブサイト設定を開け」とユーザに命令するダイアログが表示される。 *1

これはマズイ。何故なら。
つまり…。

  1. HPBを起動。
  2. メインサイト設定を開く。
  3. 3分待つ。<! メインサイト設定が開かれる。
  4. メインサイトのビジュアルサイトビューで、「サブサイトを開く」を選ぶ。
  5. 「現在開いてるサイトを閉じますか?」と尋ねてくるので「はい」を選ぶ。<「いいえ」を選ぶと、サブサイトが開けない…。
  6. 3分待つ。<! メインサイト設定が閉じられる。
  7. サブサイト設定が開かれる。
  8. 作業開始。
ということに。 作業を行える状態になるまで、6分かかる・待たされるのが必然になってしまうWebサイト制作ツール って何だソレ。これじゃ親父さんに使わせることはできない。拷問に等しい。…こんな仕様を実装せよと命じたのはどこのどいつですか。実装したヤツもしたヤツだ。「この仕様では問題が出ますよ…」と何故進言しない。

ちなみに、サブサイト設定がいきなり開けるなら、
  1. HPBを起動。
  2. サブサイト設定を開く。
  3. 作業開始。
で済む…。

前にも書いたことだけど。せっかく「サブサイト」という概念を導入したのだから、改善策は取れたはずじゃないのかと…。 等々思いつきそうなものなのに…。

というわけで、金返せ! IBM! ていうかさすがにコレでは実用にならないので頼むからパッチ等で改善してもらえないものかと願うのでありますが。なんとかならんのか。

「そんな大量なファイル数でサイトを作るのが悪い」的発言を、呆れ顔 or したり顔で、開発者が口にしそうな気もするんだけど。サブサイトという概念を活用できれば充分改善できるはず、つーかそれを目的として導入したのだろうにと。自分達が導入した概念のメリットを、自分達のトホホ実装で殺したあげく、ユーザに責任転嫁するなよ、と言いたい。かもしれず。

ていうか、実はオプションにひっそりと項目が追加されてるとか、.ini に何か書く等の隠し設定があるとか…そういうオチは無いのだろうか。

相変わらずリンクエラーが無いのにリンクエラーがあると言ってくるな…。 :

サブサイト設定を開いた状態において、共通リンク *2 を使ってるファイルが、問答無用で「リンクエラーがあるファイル」としてリストアップされる模様。Ver9で確認していた症状(?)なのだけど、Ver11でも修正されてなかった。

リンクエラーについては、
  • ビジュアルサイトビューを開いた状態で、「フォルダ」タブをクリック→「リンクエラーがあるファイル」を選択した場合に表示されるリストビューウインドウ。
  • 「サイト/素材ビュー」中の「リンク」タブをクリック→特定ファイルをクリック→リンクされてるファイルの一覧が表示されるリストビューウインドウ。
の2つがある、と思うのだけど。後者ではエラーが無いのに、前者では「リンクエラーがあるファイル」として扱われる。

バグチェックしてんのかよ、IBM。…つーか、実際はどこが開発してるんだろう。

バグ報告ができる窓口が見つからない。 :

_IBM パーソナル・ソフトウェア・オンラインサポート を眺めてみたけど、それらしい窓口が見当たらない。 _IBM PCソフトウェア・ヘルプセンター を見ると、電話でしか応対しない・インストール云々しか答えない・不具合報告は受け付けない等書いてあるし。ここじゃナサゲ。それにしても、電話しか受け付けないってのは、なんだかIT企業らしからぬ話だなと。

ユーザからのバグ報告・改善案は一切受け付けない、というスタンスでも別に構わんけど…。それならそれで、自分たちでしっかりバグチェックしてほしい。なんでメジャーバージョン(?)が2つも上がってるのに、修正されてないのか…。

*1: もしかするとVer10からそうだったのかもしれないが、Ver10は買ってないのでそのへん不明。
*2: メインサイト設定が管理してるファイルに対して、サブサイト内から呼ばれそうなものには、「共通リンク」という属性を指定することができる。

2005/12/14(水) [n年前の日記]

#1 [web][flash] _窓の杜 - 04WebServer

帯域制限ができるhttpサーバ。コメント欄で教えてもらったので早速試してみたり。

おお。バッチリですな。FLASH の NowLoading がちゃんと表示される。じわじわとグラフが増えていく様子が確認できました。これなら各種動作テストができそうであります。素晴らしい。情報を教えてくれた方、及び、作者様には感謝なのであります。ありがたや…。

それにしてもISDNの速度で閲覧すると :

自分が作成してたFLASHデータってかなりヤバイな…。いつまでたってもページが出てこない。容量が大きすぎて。

帯域幅制限の単位は、byte なのかしら? であれば、ISDNの速度 64Kbps = 8KByte ということで、帯域幅には 8 を設定すればいいということになりそうだけど。

ADSLの最低環境は、大体500Kbpsぐらいかしら。であれば、それを再現しようとした場合、62〜63ぐらいを入れておけばいいのかな。

#2 [pc] _弊社製品のムービー再生にxvid.orgのムービー展開ライブラリを使用していた件について。

_スラッシュドット ジャパン | LeafのゲームタイトルにGPL違反の可能性
_(via PRiMENON)

気になる話。ソース公開を決定したあたりはなんだか偉い(?)なと。…逆に言うと、要求があればソース公開する覚悟を決めてあるなら、GPLのプログラムを使って製品として売り放題、ってことにもなるのだろうし。それはそれで好ましい状況なのかもしれない、とぼんやり思ったりもするけどどうなんだろう。

#3 [game] _行殺!スピリッツのご紹介

_日本のゲームファンがパンチラ格闘ゲームを開発
_(via 廃刊ダメゲーマー)

行殺!スピリッツは、カメラによるパンチラ撮影をルールに組み込んだ、新しいタイプの3D格闘ゲームです。

行殺!スピリッツのご紹介 より

ScreenShotを見て、あまりの馬鹿馬鹿しさに笑ってしまった。素晴らしい。

#4 [pc] _私設BIOS研究所

_BIOS用起動ディスクの作成
_DOSからBIOSを更新
_modbinを使おう
_CBROMの使用方法
_CBROMでBIOS改造!
_MSI-MOD
_B解析方法
_cbromの使い方

メモ。Microcode(マイクロコード)を差し替える?方法等が載ってる。…MS-6163のBIOS、もう一度入れ替えてみようかしら。

といっても、この不安定な状態で作業して、万が一BIOS入れ替え中にフリーズしたら目も当てられないわけで。情報を集めておくだけにしておかないといかん気もする。

_MSI --- My Style Inside >> Download :

MS-6163 の BIOS を探してMSI(台湾・英語)のサイトを覗いたら、MS-6163 Pro の BIOS で、「Fixed CPU L2 Cache error problem」なる一文が。…なんか気になる。

もしかして、MS-6163 上で Celeron 1.4GHz を動かすと、L2 Cache の動作が定格ではなくて…。動くのは、「オーバークロック耐性の高い、アタリのCeleron 1.4GHz」だったり?

つーか、MS-6163 って、台湾MSIのサイトに無いのだが。MS-6163 Pro 、あるいは、BX Master しか見当たらない。MS-6163 は、日本だけの販売だったのだろうか。

む。MS-6163 Pro = MS-6199 なのかな。日本MSI のサイトで BIOS のバージョンを見ると、どちらも同じように 3.a なのだけど。

MicroCodeViewer で3つのBIOSを確認してみた :

MS-6163 用 ver 2.7、MS-6163 Pro ver3.a、MS-6199 用 ver 3.a の3つ。

どれにも、Tualatin 用のマイクロコードは入ってないように見える。公開日を考えると当たり前か。Tualatin って、2001年の中ごろから出てきたみたいだし。それより前に公開されてたBIOSに、それらのマイクロコードが入ってるわけがないよな。

となると、「L2キャッシュでエラー」云々を改善したと言うのは、Tualatin とは別の話だろうな。

2004/12/14(火) [n年前の日記]

#1 [pc] HDBENCHでHDDの速度を測定してみた

Y氏曰く「20MB/secあればキャプチャOKではないか」とのことなので、自分の環境ではどのくらいの速度でHDDにアクセスできてるのか、 _HDBENCH で実測してみたりして。

HDBENCH Ver 3.40 beta 6 を使用。関係ありそうなところだけ記述。
Rectangle   Text Ellipse  BitBlt    Read   Write   RRead  RWrite  Drive
   103179   2777    6595      10   23830   21297    5763   10359  D:\100MB
えーと、つまり、21Mbyte/secで書き込みできてる、ということであらうか。…ギリギリやーん。さらに、何かしらの別作業を同時にしていたら、おそらくは RandamWrite = 10Mbyte/sec ぐらいになってしまうのだろう。間に合わんやーん。

ということで、なんだか自分のPCじゃ厳しそうな香り。(つД`)

無圧縮キャプチャならどのくらいの速度になるんだろう :

720x480、1ピクセルあたりRGB24bit=3byte、30fps と仮定して。720 x 480 x 3 x 30 = 31,104,000byte。約32Mbyte/sec かな。

でも実際は、RGBじゃなくて _YUY2 とやらでキャプチャするのだろうから、1ピクセルあたり3byte → 2byte に。であれば、20,736,000byte/sec。約21Mbyte/sec かな。

720x480じゃなくて、640x480でも充分かしら。となると、18,432,000byte/sec。なるほど、20Mbyte/secあればOKという話になりそう。

ビデオデッキ代わりなら、480x480でもいいか。たしか、横480dotで、現在の地上波放送 *1 の水平解像度と同等になる、はず。であれば、13,824,000byte/sec に。おお。グーンと減った。減ったけど、まだ間に合わない。

ていうか、無圧縮キャプチャで計算するのは、無茶か(爆)

MPEG2ハードウェア圧縮ボードはどのくらいの速度なんだろう :

_この記事 を眺める限りでは、最高でも15Mbps。ここで言う「b」は「byte」じゃなくて「bit」なので、15Mbit/sec ≒ 2Mbyte/sec ぐらい。つまり、2Mbyte/secでHDDに書き込みができれば録画はできる、と考えていいのかしらん。いや、甘いかな。甘いかも。なんとなく。

総容量はどうなるんだろう。15Mbpsで30分番組を録画したとして、えーと…(15 x 60 x 30) / 8 = 3,375 Mbyte。4Gbyteずつ消費していくのか。毎週10本ほど番組を見ていたら、40Gbyteが必要に。うーむ。

よく考えてみると :

いや、よく考えてみなくても、ボードの値段と、メディアのコストと、利用目的を考えると、素直にビデオデッキ買ったほうが…(爆) いつのまにやら手段が目的になった状態で考えてたような。>自分。

*1: 地上波放送じゃなくて、VHS標準だったかしら。…忘れた。

#2 [pc] ついでなのでHDBENCHの結果をメモ

 ★ ★ ★  HDBENCH Ver 3.40 beta 6 (C)EP82改/かず ★ ★ ★ 
M/B Name    mieki256 main pc  
Processor   Pentium III 1050.10MHz[GenuineIntel family 6 model B step 1]
Cache       L1_D:[16K]  L1_I:[16K]  L2:[256K]  
VideoCard   Matrox Graphics Millennium G400 AGP  
Resolution  1280x960 (32Bit color)  
Memory      392,688 KByte  
OS 5.1 (Build: 2600) Service Pack 2
Date        2004/12/15  02:05  

Intel(r) 82371AB/EB PCI Bus Master IDE Controller
プライマリ IDE チャネル
  Maxtor 6Y080L0
  Maxtor 33073H3

Intel(r) 82371AB/EB PCI Bus Master IDE Controller
セカンダリ IDE チャネル
  HL-DT-ST DVDRAM GSA-4163B

Initio Ultra SCSI Host Adapter

   ALL  Integer   Float  MemoryR MemoryW MemoryRW  DirectDraw
 20752    48356   47671    11711    8178    15255          42

Rectangle   Text Ellipse  BitBlt    Read   Write   RRead  RWrite  Drive
   103179   2777    6595      10   23830   21297    5763   10359  D:\100MB

#3 [pc] GSA-4163BでDVD-Rを焼いてみた

親父さんの手元に4倍速対応DVD-Rがあったので、DVD-R 1枚を、CD-R 7枚と交換してもらった。

一応、焼けたみたい。初期不良のドライブじゃなくてよかった。

1枚あたりのファイル容量は、バイト単位で数えて、4.7GBなのですな。あふを使って書き込むファイルをまとめていたのだけど、表示された容量より、はるかに少ない容量で書き込むことになったので、少し戸惑ってしまったり。にしても、これだけの容量を一気に焼けるのは、想像以上に快適。

_Blu-ray だの HD DVD だのが普及したら、更に快適になるのだろうな。もっとも、次もまた規格争いをするらしいし。値段も高いだろうし。一般ユーザ間に普及するのは、かなり先の話だろうな。

CD-Rを40倍速で焼いてみた :

6〜7分で焼けたけど、以前利用していた16倍速のドライブと比べて、時間はあまり違わない、ような。でもないのか。どうなんだ。まあ、4倍速の頃に比べたらバカみたいに速いし。って比較対象が不適切か。

xx倍速以上で焼くとエラーが増えるとか、寿命が云々とか、どこかで読んだ記憶もあるんだけど。普通は何倍速ぐらいで焼くものなんだろう。

_CD-Rの「音」を考える - 48倍速メディアの音は、なぜ悪いのか(1/2) :

_CD-Rの「音」を考える - 48倍速メディアの音は、なぜ悪いのか(2/2)
これかな。…昔のドライブを使うときは、メディアに気をつけないといけない、という話かな。新しいドライブを使ってる場合は、そんなに気にすることはない、という受け止め方でいいのかしら。

バンドルされてたNero Expressとやらを使って焼いたのだけど :

1枚焼くたびに終了しないといけない? ような? 面倒。何か回避策はないのか。

#4 [windows] _Saver Lunch

非常駐型のスクリーンセーバーON・OFF設定ツール。

CD-R、DVD-Rを焼くとき、一応スクリーンセーバーをOFFにしておきたいわけで。 *1 入れてみたり。
*1: 大昔のハードならいざ知らず、今のハードならそんなに気にしなくてもいいのかもしれないけど。

#5 [windows] _FileComp32

ファイルの比較及び不一致時のダンプ表示ツール。

CD-R、DVD-Rが正常に焼けたかどうか確認するのに使ったり。いや、書き込みソフトのほうで、焼いた後にベリファイする設定にしてるけど。念のため。

#6 [xyzzy] 一時的にゲイツモードにできないかな

xyzzyには、 _xyzzy標準のemacs的キーバインドはほとんど全滅なれど、C-x、C-v、C-cが使えるゲイツモード というものがあるのだけど。これを“あくまで一時的”に有効にすることができれば、ArtTips も使えるかもしれん。と思ったけど、そんなことできるのであらうか。

xyzzyにかぶせてしまうテキスト入力ウインドウがあったりすれば解決したりしないかな :

そのテキスト入力ウインドウでは、C-x、C-v、C-cが使えて。xyzzy上でselectionを作って、その入力ウインドウに送信したり、表示内容をxyzzyのカーソル位置に挿入したりできる、とか。…どうやって。

_toggle-gates :

おお! 最初に書いた案を、そのものズバリで実装するlispが。標準のキーバインドとゲイツモードを一時的に切り替えてくれる。らしい。試しに入れてみた。バッチグーかも。感謝感激ありがたや。

ということで、ArtTipsを常駐させて様子見するのです。

何かのキーに割り当てたほうが便利そうな予感。>toggle-gates。どこに割り当てやうか。

#7 [windows][linux] PuTTYをインストール

Windows で動作する telnet/ssh クライアントプログラム。メインPCから自宅サーバにログインするときに利用。

_putty-0.56-installer.exe をDL。インストール。日本語化された _puttykjbin-20041027.zip をDL。解凍。PuTTYをインストールしたフォルダにコピー。スタートメニューに登録されたショートカットのリンク先を、「putty.exe」→「puttyjp.exe」に変更。

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

#1 [prog] _初等ロリータ指向(嗜好)プログラミング

_ロリータ指向(嗜好)プログラミング中級基本編 も。発展させて女性プログラマ向けのアプローチも考えねば。取り込むべき要素は、やはり「美形」でせうか。 _(from DOAONLINE)

#2 [pc] _エンジニア的「これって職業病?」大全

思い当たるフシがありつつも、自分はエンジニアじゃなかったり。これじゃ只の嫌なヤツであります>自分。 _(from hardでloxseな日々)

#3 [kaigai] _フセイン元大統領身柄拘束

なんか嘘くせえ。記者会見の席で騒いでた連中は米軍お得意のサクラじゃないのか。

#4 [doujin] _GUARDIAN HEROINES体験版

某氏が喜びそう。GH好きだから。 _(from 同人ど〜らく)

#5 [hns] カテゴリ分けは本来階層状態になるのかもしれない

と、なんとなく思った。…とりあえずカテゴリ分けのやり方を少し変えて、なんでもpcやwebに含めるのはやめてみようかな。

#6 [hns][prog] borad.cgiを修正

HNSツッコミ機能用の掲示板で削除キー入力時に問題が。ついでなので色々弄ったり。

削除キー文字列不正チェック部分を修正 :

全角を入れられた際の die メッセージを修正。 *1 本来、もっと判りやすいメッセージ表示や、「戻る」等のリンクを表示するよう実装したほうがいいのだろうけど。…書くのが面倒臭い(爆) *2 まあ、そう頻繁に見る画面ではないはずなので勘弁してください。

input=text or password :

半角英数だけを入力させたいなら、input type=text ではなく input type=password にする手もあるのだけど。例えば、親父さんの操作なり、巷のその手の話を見る限り、一概に password にするのもどうなのかなと。type=password を指定すれば漢字入力がoffになるので、半角英数文字を確実に入力してもらえる。しかし、入力した文字列は、'******'といった具合に表示されるので、利用者にとっては、
  • 文字列を失念しやすい。
  • 意図したものと異なる文字列を打ち込んでいても気がつかない。
というトラブルを招いてしまう。type=text では入力した文字列がそのまま表示されるので、上記のようなトラブルは減少するけど。しかし、
  • 半角/全角を意識しないで入力してしまう可能性がある。
  • 別の人が後ろから眺めただけでも、それら文字列を知られてしまう。
というトラブルを招く事に。どっちもどっちかなと。

_テキスト入力時のIMEの状態を指定する :

こんな事ができるのか。知らなかった。
概要 : inputタグに style="ime-mode:○○○;" を指定することで、入力時のIMEの状態を指定できる。

使用例 : <input type="text" name="hoge" size="40" style="ime-mode: disabled;">

値 :
auto … 特に指定しません。
active … 初期値が日本語入力モードになります。
inactive … 初期値が英数字入力モードになります。
disabled … 英数字入力モードになります。ユーザーの操作によるモードの変更はできません。

注意事項 : Windows IE5,IE6 のみで利用可。
とりあえずコレを入れてみよう。 *3 …しかしコレも利用者にとっては混乱を招く可能性があったりする。実際、親父さんが、某所の掲示板利用時にコレで悩んでた光景を見た記憶があるし。

_ファイルがローカルにキャッシュされないようにする方法 :

カキコ直後など、ブラウザのキャッシュ内容がいつまでも表示され続けて困ってたので、これも挿入。 *4
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META EQUIV="expires" CONTENT="0">
もっと早く入れとけば良かった。…いや待て。キャッシュに残らないという事は、「エラー発生」→「エラー画面表示」→「ブラウザで『戻る』」でカキコ本文が消滅してしまうのでは。…そんな事はなかった。エラー画面では別のヘッダーを表示するようになってた。 *5 ありがたや。一安心。

*1: sub action_post 中の、die 'invalid delete key 〜'のあたり。削除キー文字列の不正をチェックする条件判断は3つあって (A || B || C) と記述されてるけど、それぞれ別の行に分けて、何が問題なのかその旨表示する事にした。
*2: 戻るURL等、処理中で覚えてなきゃいけないだろうし。
*3: sub print_form のあたり。
*4: sub print_html_header 中の <meta http-equiv="Content-Style-Type" content="text/css"> の下あたり。
*5: sub die_handler のあたり。

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

#1 JavaとSEEDと公式と

JAVA、ひとまず区切り。 _

今までうっかりしてたけど、JAVAってJavaと書くのだろうか。


SEED、V-MAXがいいですね。 _


小中学生の学力が低下してるそうで。
試しに自分も、新聞に載ってた問題に挑戦してみたんですが、
国語や社会はともかく、円関係の公式、小数点や分数計算など、すっかり忘れてましたよ(爆)
英語に至ってはちんぷんかんぷん。トホホ _

#2 [anime] SEEDについて思うこと、その2

自分は、
「今まで見た事のないガンダム」
を望んでたんですが、そもそもそこが大きな勘違いですね。

送り手(作り手ではなく、「送り手」)が望むのは、むしろその逆…
「どこかで見た事のあるようなガンダム」
のはずで。
そのほうがプラモが売れるし。
だからこそ、∀の後なのに、こういう作品を企画したのだろうし。


途中から見てたが故に知らなかったのですが、
主人公ってV-MAX持ってたんですね。コレはいいなぁ。
実は今週の回を見るまで、
「今度のガンダムって、宇宙をヒラヒラ飛び回って逃げてるだけで、なんだか弱そうだなー」
と思ってました。危ない危ない。
弱いガンダムより強いガンダムのほうが売れると思うので、
もっとバンバン発動させてほしいです。


WB…じゃなくて AAでしたか(でいいのかな?)、
アレは変形してロボットにならないのでしょうか?
で、コクピット相当部分にガンダムを装着、
というかガンダムが操縦者に。デンドロビウムちっくに。
って戦艦が変形したらマクロスですか。

ラクスが戦場で歌い始めると、兵士が戦意喪失するのです。
通称ラクス・アタック。
SEED2では大量のラクス・アタックが出てきて、
後にSEED1を監督した人がオフィシャルな設定を出し始め、
「パラレルワールドで繰り広げられる〜」などと宣伝されてしまう…
…マクロス2という作品の存在が不憫でなりません。

では、メカニックに対してラクスの歌声が有効、てのはどうか。
彼女の歌声には特殊な周波数パターンが含まれており、
ガンダムのナノマシン活動を活性化、あるいは抑止する効力が…

キラやアスランやラクスの背中には、遺伝子改造によって羽が生えているのです。
ラクスのは白いけど、アスランのは黒くて、本人はかなり悩んでいたり。
ってエスカフローネですか。

フラガ×マリュー、そして、フラガ×ナタルのベッドシーンが登場するのはどうか。
ガンダム初、男女間の痴情のもつれによる艦内での傷害事件発生、とか。


なんのかんの言ってもこうして毎週見ちゃってる私なのでした。

#3 [zatta] 学力低下

_小中学生の学力が低下してる そうで。

試しに自分も、新聞に載ってた問題に挑戦してみたんですが、
国語や社会はともかく、円関係の公式、小数点や分数計算など、すっかり忘れてましたよ(爆)
英語に至ってはちんぷんかんぷん。トホホ


もっとも、公式なんて教科書見れば載ってるし、小数点計算は電卓使えばいいし。

「そういうものがある」と覚えていて、
「どこを探せばいいか」「何を使えばいいか」「どう応用するか」
そういった知識が出てくることのほうが、実際に仕事をする上では重要な気もします。
怪しげな状態で暗記している公式を使って、間違った答えを出すより、
公式が載っているテキストを参照して、確実に正解を出す事のほうが大事というか。

何の持ちこみも無しで行うテストでは、暗記能力の評価にはなるだろうけど、
問題解決の能力があるかどうかの評価方法としてはさほど意味が無いと思うのです。
教科書・参考書・コンピュータ…何を見ても、使ってもいいから、とにかく問いを解明せよ、
というテストのほうが意味があるのでないかと。

…という話は高校時代の恩師の受け売りなんですが。

会社勤めした後に先生になった方なので、
大学卒業後、すぐに教職についた先生方に比べると、
「実際の職場ではどうなのか」をかなり重要視していた先生でした。
(そのせいで学科長と対立してたらしい。学科長は社会人の体験無し。)

当然、その先生のテストでは、何でも持ちこみ可。教科書も電卓もOK。
その代わり、それらアイテムを駆使しないと解けないような問題が出てくる。
…そういうのが理にかなってると思うんですが、どうでしょうか。

現実の職場では、公式を暗記してることにさほどの意味はない。
それらが必要になる場面を見極め、
必要な時に、確実に正しい情報を、いかに早く、どこから入手するか、
そしてそれらの組み合わせ方を知ってることのほうが大事です。
(ていうか日常的に必要になる公式なら自然と頭に残るもんだし。
公式を暗記しなきゃとか思う方が特殊。)

しかし、学校で行われる一般的なテストというのは、
例えば書籍の参照などは許されない。

書籍の参照すら不可能な職場なんて、現実の社会にはほとんど存在しないわけで。
そういった、社会には存在しない極めて稀な状況を想定した上で、能力を評価する…
果たしてその事にどれだけの意味があるのでしょう。
学校と社会での、人物の能力評価に大きなズレが出てくるのは、
そういった部分が多少なりとも関係していたりはしないでしょうか。



…なんだか言い訳にしかなってないような。
自分の傷口を広げただけかも。
円関係の公式、小数点や分数の計算なんて、たしかに一般常識の範疇だし(爆)



ていうか、大人にもあのテストをさせてみたほうがいいと思うのですが。
子供達は、正解率が50%+α、
つまり二人に一人ぐらいしか正解が出なかったそうですが。
もしも、大人達の正解率が10%とか20%だったら…どうしましょう。

「『天は人の上に人を造らず人の下に人を造らずと云へり』を言ったのは誰でしょう?」
と問いを出したら、お袋さん、「宮沢賢治!」と即答しましたよ。

…我が家はもうダメかも。

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

#1 容量

スンマセン。
1chがスゴイことになってたのを今頃知って、関連ページを一日中追いかけてました。
何やってんだ俺(爆)
_(1chについてぽやーんと思うこと)


HDDの空き容量が無い…R焼かなきゃ…
これ、圧縮ドライブにしてたら容量稼げるだろうか。
でも、圧縮したファイルが壊れたら、中身取り出せなくなりそう。
怖いから止めとこう…

#2 [zatta] 1ch

スンマセン。
1chがスゴイことになってたのを今頃知って、関連ページを一日中追いかけてました。
何やってんだ俺(爆)


まあ…
ソレ系掲示板の、名も無き一利用者(まさに名無しさん(爆))として…
1chについて思うところを一応書いてみたりしよっかなぁ…
書いたりすること自体、身分不相応なことなんですが…
(あめぞう板とか全然利用してなかったんで、歴史的背景とかもサッパリわからないような人間ですし… <いや、この場合それはあまり関係無いのかな?)


実は自分も少し期待していたんです >1ch

勝手な希望ではある(あった)のですが…
自分が知り始めた頃の、
 あめぞう(ギスギス) : 2ch(マターリ)
の感じが、
 2ch(ギスギス) : 1ch(マターリ)
という感じで復活しないかなーと…
そうなってたら嬉しかったんだけど。
でも、もう完全にダメみたいですね >1ch


共存を考えず、敵として排除することを意識し始めたら、やっぱり終わりなんですかねぇ。

少なくとも「あいつらは敵だ!」と考えちゃう時点で、「人に優しい」には近づけない気も。
人に優しくなる為には、どこかで一度、全体を…
良いところも悪いところも全部ひっくるめて、その存在を丸ごと認めてみる段階が必要になるかもしれないな、と…
思いっきり後ろに下がってみて、全体を眺めてみるぐらいの余裕がないと、何が「人に優しい」ことなのか見えてこないのかもしれない。
中にいてカリカリしてる状態で「これが人に優しいはずだ」ってのは、それってたぶんちゃんと認識できてないと思う。


西さんが立ち上げた時点でこうなることは決まってたのかもしれないな、とか思ったりもして。
「敵だ!潰せ!」のMSの副社長やってた人ですもんね。
やっぱり仮想敵を設定しないと燃えてこない人なのかな。

例えば、同じ「2chを利用してる(昔の)有名人」でも、遠藤さんとかが居るけど。
遠藤さんが2chに溶け込んでる(?)のに比べて、西さんは全然溶け込もうとしなかったし…

やっぱり遠藤さんなんかは、チームの中に入ってゲーム制作をしてたぐらいの方だから、それなりに協調性があるというか、周りに合わせることが出来る人なんだろうなぁ…
それに比べると西さんは、自分の意のままに人が動かないと嫌で嫌でしょうがないタイプの方なんでしょうかね。
もしかすると、同じ「有名人」でも、遠藤さんみたいな方が旗揚げしてれば、1chも上手く機能したのかな。
なんて無意味な妄想してみたりして…

ていうか、商売としてやろうとしてるわけだから、「人に優しい」なんてのは宣伝文句でしかないか。
元々そんな場所にするつもりなんてサラサラなかったのだろうな。
だからそのへんを、こうして考える事自体が、完全に無意味な事なんだろうな。

…でも、人が集まる為には、そのへんって大事な事だとも思う。



人がたくさん居て、それでいてマターリしてる空間、欲しかったなぁ。
マターリしてるけど人が居なかったり、人が居るけどギスギスしてたり…
両方成立させることは難しいことなのでしょうね。やっぱり。



なんか小学生の書いた感想文みたい(恥) <いつものことか(トホホ)

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

#1 非S-VHSデッキとキャプチャ

「とんがり帽子のメモル」のOPをキャプチャ。
大失敗。ドロップフレーム大量発生。
音がガンガンずれる…

おそらく原因は、S-VHS標準でソースを録画しちゃったこと。

オイラ、キャプチャ時のソース再生に非S-VHSデッキを使ってるんですが。
そのデッキ、S-VHSテープ再生時はビデオ信号としてまともなモノ?を出してないように思える。
TVには映ってんだけど…惜しいなぁ。
そういや以前、ソレ系のビデオをキャプチャしようとした時も、同様の症状が起きて悩んだっけ。

ちなみに、VHS標準のソースや、本放映をキャプチャしても、ドロップフレームは出ない…
ということは、CPUやHDD転送速度等のスペックは足りていて…
やはりキャプチャボードが画像を取りこむ段で不具合が起きてるのではないだろうかと。

PCでのキャプチャも、安定した同期信号?を入力する必要がある、ってことなのかな。
そう…コピーガード入りビデオをダビングするのと同様に。
少なくとも、オイラの使ってるキャプチャボード(IO-DATA GV-VCP/PCI)はそうらしい。

さてどうしよう。
試しに、ちょこっと茶の間のデッキを借りて実験してみようか。
そのデッキはTBC?とやらを積んでたはず…
それでキャプチャに成功したら、上記の仮説もある程度証明されるような気がする。

1999/12/14(火) [n年前の日記]

#1 (NoTitle)短くまとめるクセつけ...

短くまとめるクセつけないとダメだな。

一日中寝てました。電気毛布導入。でもあまり暖かくない。期待してたので悲しい。

でじこOPキャプるの忘れてた。

密かに画像掲示板稼動開始。アップローダ代わりに使ってください。スクリプトの場所を教えてくれたY氏に感謝。
そのうちにG氏から貰った、ファイル名しか表示しないタイプのアップローダも別途用意するつもり。今のタイプでは危険な画像をいきなり表示してしまうので、それ用に。

以上、25 日分です。

過去ログ表示

Prev - 2024/04 - 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

カテゴリで表示

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


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

Powered by hns-2.19.6, HyperNikkiSystem Project