カテゴリー: 技術情報

サークルページ更新

数年ぶりにサークルのホームページを更新しました(表示がおかしかったらブラウザの更新ボタンを押してね)。

ついでにタブレット/スマートフォンにも対応するよう、可変幅のレスポンシブに。タグも XHTML から HTML5 に変更。テーブルでレイアウトしていたものをフル CSS で書き直したため、ほぼ全ページのプログラム書き直しですが…

ということでやっとこさ新作の予告をアップしました。ていうかこんなんに時間かけるより、絵を描けと…

余談ですが、以前記事に書いたアダルトサイト用の META タグは、最近では以下の一行でいいんですって。

<meta name="rating" content="adult" />

参考:セーフサーチとウェブサイト | Google 検索セントラル

これを <head>~</head> 間に追記すると、Google のセーフサーチが有効な場合に検索結果が制限されるんだとか。早速こちらのブログにも仕込んでおきました。一応、18禁サイトが不意に未成年の目に触れないようにするのもオトナの義務ってことで…


Photoshop CS 5.1 の多角形選択ツール不具合

私が制作に使っているのは何年も前に買った Adobe Creative Suite 5.5。月額制の CC(Creative Cloud)を契約しても、寡作な同人制作では元が取れませんから。

しかし最近絵描きを再開したらなんだか Photoshop CS 5.1 (64 Bit) の挙動がおかしいことに気づきました。多角形選択ツールで選択範囲を追加(Shift キー押しながら再選択)/ 削除 (Alt キー押しながら再選択) することができないんです。範囲選択中に Shift / Alt キーを押すとポイントが打てなくなり、Escape 操作も不能に。なげなわツールは大丈夫なのに。うーん、困りました。

多角形選択ツール

すでにサポート切れの CS ですから修正パッチは期待できません。仕方なく選択範囲をクイックマスクに切り替え、再度選択ツールかけて消したり塗りつぶしたりしていたんですが、すごく面倒。

ググってみたらどうやら Windows アップデートが犯人らしいです。おのれマイク■ソフト。でも以下の解決方法を見つけました。

Adobe Support Comunity – なげなわツール使用中にAltを押しても多角形選択ツールに切り替わらない

なんと Microsoft IME が原因とのこと。結論から言うと IME を以下の手順で古いバージョンに戻したら直りました。Windows 10 のバージョンは 21H1、OSビルド 19043.1348 です。


Adobe Animate CC(旧Flash Professional CC)の不具合メモ

現在作成中のゲームはFlash Professional CCを使ってAdobe Air で開発していますが、先日Flash ProfessionalがAdobe Animate CCに名称変更されました。
で、インストールして試してみましたが致命的なバグがあったのでメモしておきます。

  • 作成しているAriアプリケーションの内容
    XMLに記述されているファイル一覧を元に外部ファイルを読み込みユーザーの操作に応じて適宜再生表示する。
  • 不具合発生の経緯
    Adobe Animate CCからAri インストーラーを書き出してインストール実行しAir アプリケーションを起動しても、自動で読み込まれるはずのファイルが読み込まれず停止する。
  • 不具合の考察
    試しにインストール先のフォルダに読み込むファイルを全部コピーすると正常に起動するのでファイル名が異常かファイル一覧の文字化けのどちらかが疑われる。
  • と言う事で外部ファイルが入っているフォルダをエクスプローラーで開くと一部、全く同名のファイルが2つ存在する!と言うなかなかシュールな絵面になっている事を発見。

    Adobe AnimateCCの不具合

    Adobe AnimateCCの不具合

と言う事でコマンドプロンプトで「Dir」を掛けてみるとファイル名が2バイト文字かつ「濁点、半濁点」を含んでいた場合に元の文字+「゛」または「゜」と言う感じにファイル名が変わっている事が判明(ただし、エクスプローラーでは正しいファイル名の様に見える)

Flash Professionalではこのような現象は発生していないので当面はFlash Professionalに戻して開発を続けてます。

まぁファイル名に2バイト文字を使うなって話かもしれませんが、やらなくても良いアップデートでファイル操作と言う基本的な個所にバグを混入してくるのはマジ勘弁って感じです。


AEアニメについての知見

開発中のゲームは「いじりゲー」にカテゴライズされます。
そして「いじりゲー」に不可欠なのがエロいアニメーションです。
ご存じのとおりアニメには2Dと3Dがあり、当方的には今から使い慣れたツールであるPhotoshopのデーターからアニメーションを起こせるAfterEffectsを使って2Dアニメを作るのが一番リーズナブルかなと考え、ここ数年試行錯誤を繰り返してきました。
ところがWebでAEアニメ関連のノウハウを探してもあまり見つからないんですよね。
なので、覚書も兼ねて当方の気付いたことを書いておこうかなと思います。

  1. 絵を作りこむPSDとAEに読み込むPSDは別物にする。
    これは読み込んだ時点には存在していたレイヤーがなくなった場合など、PSDのレイヤー構造が途中で変わるとAE側でエラーが出る事を防ぐ事が目的です。
    例えば、img_101_org.psdをコピーしてレイヤーやレイヤーグループを整理したimg_101_integrated.psdを作成してAEにはこれを読み込ませます。
    AEの読み込んだ後にPSDを変更する必要が生じたときはimg_101_org.psdを修正して修正したレイヤーをimg_101_integrated.psdに複製して再統合、レイヤー名を合わせて保存すると、AE側で開いたときエラーもなく変更が反映された状態になります。
  2. AEに読み込むPSDはレイヤーグループをなるべく使わずシンプルにする。
  3. 絵を作りこむPSDの塗はグループマスクを使う
    AEに読み込ませる絵は一枚絵の場合とは異なり動く部分の影になる所まで書き込む必要があります。そのため、例えば手や足の絵と胴体のレイヤーを分けて描かなくてはなりません。
    またレイヤー分けした手足と胴体は主線が無い場合がほとんどなので「アルファ―チャネルで滑らかに繋げる」ことが必須です。
    通常肌の塗等は複数レイヤーを使う方が多いと思うのですが、各レイヤー毎にやわらかい消しゴムで消してしまうと作業が増えるだけでなく、レイヤー毎でボケ足が統一できない等の不具合が起きます。
    その場合は複数ある塗りのレイヤーをレイヤーグループにまとめレイヤーグループにボケ足の着いたマスクを掛ける事で回避できます。

あと、AEではなくてFlashのActionScript3のTipですがマウスイベントは複数のイベントリスナーを設定した場合、イベントが伝わるのに「時差」がある事を最近発見しました。
しかも、その時差は実行するパソコンの処理能力に左右されるのでタイミングが関係するような処理はイベントリスナーを複数使うと意図した動作に「ならない場合」があります。
(ただし、これはマウスイベントに限定した現象らしく他のイベントでは発生しないみたいです)

最近は「Live2D」や「Spine」などPSDからアニメーションを起こすツールも増えてきましたがこの覚書の内容はAE以外でも通用するのではないかと思います。(と言うか最近Adobeの品質劣化が激しいのでCLIP STUDIOSpineUNITY に移行してやろうか等と考えている当方だったりします)


久々にFlashと言うかAirと言うかWindows8と言うか、とにかくはまる・・・

直接catwhiskerには関係ないのだが、最近Adobe Airを使ってスマートフォンアプリを作っていて久々に原因不明な現象に出くわした。
その原因不明な現象を説明する前に今回のAdobe Airを使ったスマートフォンアプリ制作について簡単に説明

  1. 普通にブラウザで動くFlashアプリを作る
  2. ターゲットデバイスをスマートフォン用に変更
  3. Flash上でプレビューを行ってデバッグ
  4. 3が出来たら実機に転送して実機デバッグ
  5. ストアに登録して完了

と言うのが主な流れになる。
で、今回はまったのが3の部分で前ふりとしては元々は別の人が作成してストア登録まで完了しているアプリのバージョンアップを当方が行った作業と言う事。
で、具体的な現象は以下の通り。

  • Flash上でプレビューを行おうとすると「ムービープレビューの起動に失敗しました。」のエラーが出て表示されない。
  • エラーダイアログを消すと出力パネルに下記のエラーが表示される
    ムービープレビューが終了しました。
    Adobe (R) AIR (R) Debug Launcher (ADL)
    Version 3.4.0.2540
    Copyright (c) 2008-2012 Adobe Systems Incorporated. All Rights Reserved.
    The -extdir argument must specify an existing directory.

他の環境ではちゃんとプレビュー出来ていたのでコードがおかしいと言う事はまずあり得ない。
当初は同時にデバッガで使われるAdobe Airのアップデートが表示されるのでそれが原因かと思ったが、いろいろ調べてゆくと「開発環境がWindowsの場合Adobe Airのファイルとフォルダには2バイト文字が含まれるとデプロイ(書き出し)に失敗する」と言う記述が見つかった。ところが、今回の場合はソースファイルは「D:\test\flash_app.fla」と言う感じで2バイト文字を含んでいない。

とここまで引っ張ってきていい加減飽きてきたのでそろそろ種明かし。