うかべん横浜 #7 実況


本日10月9日(日)、伺的ソフトウェア勉強会(うかべん) 横浜 #7 が実施されます。
というわけで恒例のテキスト実況をおこないますので皆様よろしく。
(体調により実況を中断する場合もあるのでご了承ください)


【この記事の内容について】
この記事は、私がスピーカーの皆さんの発表を聞き、自分なりに理解し、かみ砕いて書き下し(ていませんが)、感想を付け加えたものです。
(各発表の冒頭にある「概要」と末尾にある「感想」は、私自身の意見・感想です。)
とくに私の理解力不足により、スピーカーの皆さんが発表された内容と相違している可能性があります。
誤りや問題点がありましたら、コメント・拍手等でご指摘ください。
また、公式記録ではありません。ご了承下さい。

続きを読む

第一部 13:00〜

前説 - C.Ponapalt

  

  
考えるな、感じるんだ

  • こういうキャラクターが多くなってきたので二次創作をしたいよねーという前説。


やりたいよね!

  • そして…One more thing...



乞うご期待!

「サーフェイスの作り方 〜秋山名和の場合〜」 - 秋山名和さま

  • シェル作成の流れ
    • コピー用紙にシャーペンでラフを描く。トレス台で透かして別ポーズ等も描画する。
    • PhotoshopのTWAIN32インターフェースからスキャナで取り込み。
    • 取り込んだ線画を、「線画レイヤー(線画以外が透明)」と、その下の彩色レイヤーに分ける。
      • 色調補正の「レベル補正」機能で線画のゴミ消しをおこなう。(薄い灰色を白に飛ばし、濃い灰色を黒に飛ばす処理をおこなう)
    • レイヤーパレットのチャンネルタブをクリックし、「RGBレイヤー」を「選択範囲にする」アイコンにドラッグし、「線画以外の部分」をすべて選択
    • 選択範囲を反転し、線画部分のみを選択した状態にする
    • 新規レイヤー(「線画レイヤー」)を作成し、描画色(線画色にしたい色)を選択する。
    • 「編集」メニューの「選択範囲の塗りつぶし」を実行。さっき作った線画レイヤーに、「線画以外が透明なレイヤー」ができあがる。
      • これにより、線画と色がごっちゃにならず、色で線画が塗り消されないように作業できる。
    • 線画レイヤーに間違えて彩色してしまわないよう、線画レイヤーと彩色レイヤーの間に半透明の保護レイヤーをはさむ。
      • 線画レイヤーに塗ってしまうと、保護レイヤーの色が上書きされるのですぐわかる
  • パレットの準備
    • Photoshopで新規ファイルを作り、色を作成しブラシツールでパレット状に色の見本をつくる


パレットの例

  • 彩色の準備
    • 今回はシャープペンシルで作成した下絵をそのまま使うので、自動選択ツールだけでそのまま塗ると塗り残し、はみ出しが発生するので注意
    • 自動選択ツールで塗りたい範囲を選択したのち、選択範囲の拡張(+3px)をおこなう。(ピクセル数は線画の解像度に依存)
    • 描画色で塗りつぶしをすると塗り完了
  • 本体彩色?、塗りつぶし部分の色の変更
    • 塗りたい部分(たとえば、顔)のレイヤーを選択し、「透明部分の保護」を選んだ上で、塗りつぶしを実行すると色を変えることができる
    • まずは各部分を一番薄い色(肌なら、一番薄い肌色)で塗りつぶす
  • 本体彩色?
    • 少し濃い色で、「ウエットエッジ」効果つきのブラシで塗り重ねる。水彩風の効果が出せる。
    • 指先ツールで混色するのも有効


水彩塗り完成(これより下はお見せできません)

  • 各種差分の作成
    • 服の線画を同様に取り込む。(事前に、身体の線画と合わせるためのトンボをシャーペンで書き込んでおく)
    • 身体の線画と服の線画の色を違う色にし、必要のない線(服に隠れた腕の線など)を消す。(消すときは透明部分の保護を外すこと)
    • ポーズ差分を作る場合、塗りレイヤーをバックアップしておき、不要な塗り部分を削除したり、不足部分を塗り足したりする。(シャドウ部分は後で調整した方が楽)
  • 表情差分の作成
    • 作り方は前と同様。
    • 眉、目、口は別レイヤーとした方が、さまざまな表情差分を作るのに楽。
    • 目閉じ、半目も用意
  • サーフェス
    • 背景を非表示とし、「縮小前に」各彩色レイヤー・各線画レイヤーごと(本体、差分ごと)にレイヤー統合する。(そうしないとパーツがずれる)
    • その後に、サーフェス実サイズに縮小
    • 新規ファイルを作成。(これが実際のサーフェスとなる)
    • ベース画像(表情のない身体画像)を新規ファイルに貼り付けて位置を調節
    • 伺かプラグインサーフェスPNG作成機能を使って背景色を塗る
    • プラグインを実行すると線画が変質するので、ヒストリーウインドウから一段階戻す
    • プラグインで発生したゴミを消しゴムツールで消す
    • 再度、プラグインサーフェスPNG作成機能を実行。これでゴミのないPNGができる
  • 顔パーツの作成
    • 作り方は身体(ベース画像)と同じ。ただし顔の部分だけを利用するので、ゴミ取りは不要


表情差分

    • サーフェス画像から切り抜きを行う。切り抜く範囲を選択しつつ、情報ウインドウで座標をメモする。
      • 開始座標を書くのが面倒であれば、サーフェス画像の左上(0,0)から選択してしまい、表情以外の不要部分は背景色で塗ってしまってもOK
    • 左上の1ピクセルを透明色(たとえば緑色)で塗る。(こうしないと、たまたま左上の1pxになった色が全部透明になってしまう)
    • 画像をサーフェス番号のPNGとして保存。


できあがったもの

  • おわり!
質疑応答
  • スキャナでの取り込み解像度は?
    • 300dpiです。
  • 全裸サーフェスはいつ公開されますか?
    • ゴーストとして公開の予定はないけど希望があれば…。いろんな服を着せてあげたいので、素体は裸にしました。
  • PNAなどを使って服を透けさせるとか…
    • 夢が広がりますね!
  • 画像ファイルのサイズや、レイヤー数は?
    • 確認していません! この前はWindows98を使ってましたが、こんなやり方はできませんでしたね。
  • 作業時間は?
    • 下書きは30分くらい。(服を含めると1時間くらい?)何を着せようかと考えてる時間が長い。全体だと1日あればできそう。
  • Photoshop Elements でもできるか?

「シェルの依頼とかそういうの」 - りすなさま

  • 自己紹介(12ゴースト) これからまた2体増えるとのこと。
  • 制作ゴーストのシェルの内訳
    • 360度qIBLA ロリ―ナ ナツメ 三rふらんしすこ 閑雲→依頼シェル
    • ドリッテ ウラ→自作シェル
    • そのほか→フリーシェル
  • なぜあなたはシェルを依頼するのか
    • 絵が描けないから→幼稚園児だって絵は描いてます
    • うまく描けないから→フリーシェルあるじゃん
    • 自分のイメージがあるのでフリーシェルではだめ→あなたのイメージを100%形にできるのはあなただけです。どれだけ細かく指定してもまず無理。
  • ○○さんの絵が好きだから、○○さんのセンスが好きだから、一緒煮何か作るのは楽しそうだから→依頼をする理由としてこれが良いのではと思います
  • 自分のイメージが大切なら自作シェルでいこう
    • 自分で一度シェルを書きそれをリメイクしてもらおう
    • 伺かは追加シェルがあるため、時差くえをリメイクしてもらう機会に恵まれている。
  • シェルを依頼する前にするべきこと、考えておくこと
    • 絵は一瞬では描けない
      • 色つきの絵を描くのは非常に時間がかかる。理想的なのは辞書が先にできているのが臨ましいが、「このゴーストが完成しないと死ぬ」ぐらいの気持ちでやること
    • 依頼内容が後から追加するのもよくない
      • 仕事が終わりそうなときに追加の仕事が入ったときのガッカリ感を考えるとよい
    • ラフや下絵を受け取ったときに感想も何もいわずに用件だけを伝える人がいたそうで…
      • 感想、お礼、なんでも
  • 漫画の書き方、人物の書き方、といった本を読むと良い
    • あるシェル作者に依頼者が言った一言→「もっと可愛く描いてください」
      • そもそも可愛いとは?→童顔希望。つまりロリコン。→幼くしてほしかった?
      • より幼く描くには?→鼻から下を短く描く(目が大きい、頭が大きい)
      • 「もっと鼻からアゴのラインをつぶして描いてください」と言えばよかった。でもまわりくどいので「もっと幼く描いてください」と言えばよかった。
    • アゴを長くすると少し大人びた感じになる。また、額を出すとオトナっぽくなったり、おでこを長くすると神経質っぽくなる
  • シェルを依頼した時のひそかな楽しみ
    • 細部を決めずに依頼するとシェル作者さんのセンスで予想外のアクセサリーなどをつけてくれるかも。
    • それを利用して後づけで設定を膨らませるのもまた楽しいかも。
  • 外見を利用してキャラクターを作る


「移行対象」

    • 移行対象とは、乳幼児が現実と自分の内面世界を繋ぐためのものである。
    • 仮に移行対象が「空想上の友達」であっても、それは決して「その子の内面世界の存在」ではない。
    • オトナになれない子供が現実と向き合うために必要なもの。


「移行対象2」

  • 移行対象の例
    • ピーナッツのライナスの毛布
    • イギリスの寄宿舎でクラス少年達の「テディベア」
      • 「お前のテディベアをずたずたにしてやるぞ」という脅し文句
    • ユングヘンダーソン「移行対象としてのクマ」→「原型」(人類共通の意識)。母性本能と接触を保ち、従順な自己(本能的な自己)を形成しながら現実な母から独立していく。
      • →クマは子供からオトナになるための橋渡しとなっている
  • 移行対象をゴーストに活かす
    • 物に固執させることで内面が成長しきれていない人物を表現できる。シェルに組み込んでみると面白いかもしれない
      • ex:へーのき=つかささんの「孤独なウサギ」のミヅキ
  • 聖痕をつける
    • 聖痕とは=キリストが処刑されたときについた傷。聖者に現れるといわれる。
    • 特別な日とには特別なしるしが現れるという考えは宗教に限った話ではなく、物語などでも見られる
    • 聖痕をつけることで「常人とは異なる存在である」ということを表現できる。
    • 「流浪の宿命」や「喪失したものの奪還」などの物語性も発現できるが、ゴーストにするにはイベント大量に作らないと行けないで大変…。
  • 質疑応答
    • ゴーストはユーザにとっての移行対象といえるか?
      • 移行対象は所持者(ユーザ)を全肯定しないといけない。(そういうもの)りすなさん作の「〜ともがらに」はそういう考えを含んでいる
    • 依頼に関するトラブルの実例はないか?
      • 本人のセンスに任せすぎて完成がえらく伸びたことがある。最初に方向性を出すべきだった? 髪型くらいは決めた方がいいかも。
      • 締め切りは設定していなかった。決めておいたほうがいい。
      • 状況をやりとりしながら数ヶ月オーダーで確認を切らさないようにするといい。
      • GoogleなどのWikiを利用して情報を蓄積していくと便利。
    • 聖痕はもとからついていないといけないのか?
      • 年をとってから発生したというものもある。(本来の聖痕)
      • リンゴの樹のシエナさんとかは?→「カ」で始まるアレなんかも聖痕になる。

「好きな「何か」を題材にゴーストを作ってみよう〜1周目」 - 冬/Wintersさま

  • 自己紹介
    • 冬/Winterさん。ゴーストデベロパ
  • おいゴースト作らねぇか?
    • 一般的にゴーストってなんぞや?
      • 可愛い女の子などがデスクトップ上で喋ったり動いたりするもの。
    • 偉い人はいいました。「かわいいは正義
      • でも、そんなにかわいいゴースト簡単に作れない!
  • 好きなモノを題材にするって、どゆこと?
    • ゲームや漫画、あるいは趣味などを題材に、それに関係する・知識を持っている人物をゴースト化する
  • 特定の題材を中心に据えると?
    • メリット:トークを描きやすい、同じ趣味の人に使ってもらえるかも?
    • デメリット:縁のない人にはさっぱりな内容になる、トークの広がりに上限がある
  • この題材で、どんなゴーストを作ろう?
    • 扱う題材によって、ゴーストのあり方を考える
      • 趣味などを題材にする場合は、ゴーストは「実在する人物」として扱うと買いやすい→時部yんの経験や知識を流用できる
      • ゲームなどは、プレイヤーの一人にするか、オリジナルの登場人物にするのが楽。→既存の登場人物は柔軟性に欠ける。ゴーストは「その世界の住人の一人

」として扱うのがおすすめ。

  • 実際に私(冬さん)がゴーストを作る場合を例に挙げて話します
    • 扱う題材は「Ultima Online」というゲーム。最近14周年。
    • そのゴーストはどんな人物か、どんな環境に暮らしているか
      • MMORPGなので明確な主人公が存在しない。世界観がしっかりしているので、登場人物のひとりとする。
      • この世界の住人は誰でも職を持っていて、魔法が欠かせない→魔法使いだ!
      • 女の子がいいよね!
    • ゴーストの人物像に基づき会話の内容を考える
      • その世界はどんな世界?
      • ゴーストはどんな生活をしている?
    • どんな風に喋らせるか?→性格がやっぱり重要
      • 一般ウケを狙うなら、可愛い、あざとい性格?
      • 一般ウケを狙わないなら、自分が好きな動かしやすい性格にする。→喋らせやすくなる
      • 無難でまじめな性格をチョイス!
  • イメージが固まってきたら→シェルの作成
    • 今回は、見栄えはともかくシェルはなんとかしてみよう。
    • シェルはゴーストの要(視覚的な力は非常に強い)
      • 用意する方法→自作、フリーシェル、依頼(りすなさんの発表も参照)
  • シェルを用意する手法
    • 自作
      • 自分のイメージをダイレクトに投影可能
      • 絵心がなくてもくじけない
    • フリーシェルを使う
      • 手軽
      • イメージに合わない場合、イメージを変更するかシェルを改造
    • シェル依頼
  • シェルの依頼について
    • 依頼する相手が題材に対して理解や知識を持っているかは非常に重要
    • ゴーストの人物像に沿った外見にする事を忘れずに
      • その世界の住人らしい見た目にする。キャラクタに説得力を持たせる上で重要。
    • 題材に関係する小物なんかを持たせるといいかも
      • ex:キャラクタの擬人化
  • テストしてみる
    • 起動・終了・ランダムトークあたりが実装できたら実際に起たせてみよう
      • デベロッパーとしてではなく、ユーザとして見てみる
      • トークから、作品や元ネタのシーンを連想できるかをチェック
      • 楽しんで作りましょう
  • 実際に作る意外に
    • 該当する題材について語れる友人は大切
      • 会話の中でトークのネタになるものが多い。
      • キャラを考える上でも役立つ。
    • ゴースト作成は勢いを持って
      • 案やアイデアを十分練っておいてから、実際の制作は一気に進めてしまおう。シェル作りなどで失速しないように!(一番大事)
  • 知っておくべきこと
    • まず一般的な人気は出ない
      • 見た目や触り反応なんかでカバーは可能
      • 人気作品・人気ジャンルを題材に。
    • ネタ切れとの戦いになる
      • 特にゲームや漫画などを元にすると。終わりが見えてくる。
    • 精進する必要はもちろんある
      • 自分より詳しい人もいます。負けていられない。
    • できるかぎり愛を持って。
      • 「(ゴースト・題材が)好きだから更新してるんだよ」と言えるといいです。打算的な感じで更新するよりも重要。
    • 冬さんは黒タイツ派


サンプルゴースト

  • 質疑応答
    • 今回の発表で胸をえぐられて今後のゴーストの更新に自信がないのだけどどうしたら…
      • そのままつっぱしって下さい。今更方向転換したところでユーザが増えるわけではありませんから!

伺か うぃず Google Calendar)」 - kamさま

  • SAORI-basicとは
    • 伺かシステム(本体プログラム)と、SAORIプログラムの間で標準入出力を介してデータやりとりするプログラムのこと。(共有メモリを介してデータをやりとりするプログラムもある)
  • YAYAを用いてSAORI-basicを呼び出す場合の文例



  • 動作タイムチャート


  • だいじなこと
    • sgcalが、使い捨て・常駐の2つのプロセス間通信を持っていること
    • sgcalはデータの取得段階に応じたステータス(状態)を持っていること


  • デモ(ゴーストへの組み込み)


  • Farther Resources:


  • まとめ
    • ゴーストとユーザの関係:もっと近くしたい。→ユーザのパーソナルデータ(個人情報)を利用して、距離を近づけようとした
    • Google Calendar はデータの定型化がおこなわれていて扱いやすい
  • 質疑応答
    • ユーザパスのセキュリティについては?
      • ファイルに書き出すことはしない。メモリ上に残ることに関しては検討中。→「暗号化ストア」を利用しては?
    • サイボウズに対応予定は?
      • ちょっと使ったことがないのですいません。
    • 里々では使えるか?
      • 呼ぶことはできる。どうやって処理するかの問題になる。簡単には書けないがそれなりに使えれば書ける。
    • Googleカレンダーの内容を参照して、それに依存したトークをさせることは?
      • できます。

お楽しみ枠「うか3D(仮)の開発について」 - yasiさま

  • はじめに
    • 先週公開されたゴーストについての講演。
    • 3Dシェルを伺か環境で動かそうという試み。
  • リアルタイムレンダリングによる可動3Dシェル(試作)
    • 現在のところテスト用ということで単体アプリとして実装
    • シェルはLat式ミクと呼ばれるもの(MMDモデル)を借用


  • 目的
    • 伺かの新しいシェル表現の開発
    • MMD界からのユーザ・技術力流入への期待
  • システム
    • DirectX9.0c以降が必要。DXライブラリの制限で少しやりたいことをやりづらい
      • 今後はDirectXの直叩きに切替?
    • SSP専用
      • SERIKOシステムの切り離しと、SERIKOにかわる3D環境接続のインタフェース
      • 現在、SSPソースコードの切り離し中。かなり深いところまで食い込んでいて大変。(ぽなさん談)
    • アニメーション状態の情報、コリジョン情報等のやりとり
  • シェルの仕様
    • 3Dモデル自体がシェルになっている。
    • 現在、DXライブラリの制限で簡単に使えるモデルデータが限定されている。
      • PMD(MMDで使われているモデル)
      • X-File(DirectX9.0までは3Dの汎用モデルであった)
      • FBX(省略)
      • DXライブラリに読み込むと全部部品がバラバラになってしまう
    • 今後対応させるべきモデルとしては、ユーザのパイが多く、方向性も似ているPMDに絞っていく方向になるのでは
  • レンダリング
    • 現在、リアルタイムレンダリングをしていることもあり、アニメーションすることを前提とした仕様にしたい
    • 撫で反応モーション等も実装しているが問題点もある
    • カメラ(視点)も動かせる。現在はキーボード操作。
      • 但し、ゴーストデベロパが視点固定を希望することも鑑みて、オプション実装とする予定
    • ライティングの変更も可能
  • surface.txtの仕様について
    • 3D版surface.txt(Character.txt)の例

    • できるだけ現状のsurface.txtと同様の書式にしたい
  • コリジョン判定
    • 表示させるためのモデルに加え、コリジョンを判定させるためのモデルを内蔵している。
    • さわり判定領域を別パーツにしたモデルを作成(それぞれにマテリアルナンバーという番号が振られる)
    • 一度モデルにコリジョンを設定すれば、どんなポーズをしても応用可能。2Dよりも楽かも。
    • ただしぶっとんだ事はしづらい


  • 3D特有の問題
    • サーフェスの色、ポーズ、ライティング等は、2Dでは思う通りに描けばよかったが、3Dでは数値で指定してやらないといけない
      • そのあたりの指定方法をなかなか一人では決めづらい
    • さくらスクリプトを拡張するのか? 3D専用の文法を作るのか?
    • レイヤードウインドウが非常に重い
    • 透過マテリアルが使えない?
      • 半透明処理をするためには背景が必要。専用のシェードプログラムが必要になるレベルかも。すけすけの服は現状難しい。
  • まとめ〜3Dキャラクターによる新たなキャラ表現の可能性
    • キャラクターのパーツなどをユーザ側が改造(色変えなど)も可能に
      • プログラムからシェルの見た目を変えられるようになる
    • キャラを直接動かせるミニゲームなども作りやすくなるのでは?
  • 質疑応答
    • バルーンはどうするの?
      • 現状はアイデアはないが、とりあえず現状のバルーンを実装してみたい。
      • 2キャラ立たせるのも少々きついぐらい。バルーンにリソースを食われたくないので、とりあえずは現状で。
    • どれくらいのPCなら動作するの?ロースペックキラーなの?死ぬの?
      • 3Dのリアルタイムレンダリングになるので、どう考えても今までより最低動作ラインは引き上げられてしまうだろう。
      • ただしDXライブラリはWin98でも動く。ライブラリもできるだけロースペックマシンでも動くように開発されている。おそらく、ポリゴン数さえ少なく押さえればそこそこ…
      • 一番重いのはレイヤードウインドウ(半透明ウインドウ)の処理。一番効くのはグラボの3Dパワー云々ではなくなるかも。
      • Core2くらい欲しい?
    • 現在2Dで表示されているゴーストに3Dの追加シェルを作ることはできるか?
      • SERIKOシステムの切り離し仕様に依存するものと思われる。が、おそらく作れるでしょう。それを考えて作っている。(ぽなさん談)
      • 現在のサーフェス仕様は、サーフェス番号で「キャラクター」と「表情」を両方指定しているが、3Dデータではその2つを分離する必要がある。そのへんの折り合いをどうするか?
      • ちょっと互換性の問題は出ると思う。お察し下さい。(ぽなさん談)
    • character.txtとsurface.txtの仕様を近づけると言ったが、3Dシェルを作る人は2Dを作る人とは別になるのでは。仕様は3Dをいじりやすい新しい仕様にした方がいいのでは?
      • ゴーストを作る部分スキルについては今までの伺かを知っている人たちが多いだろう。そういう人のために共通仕様にしたい。
      • コリジョンについては表示に影響がないように別モデルで定義した。コリジョンがデザインに影響するのは本末転倒だろうとのことで。

お楽しみ枠「締めおよび○○ができるまで」 - フィーネ・ラグサズさま

  • 趣旨
    • 何かが出来るまでのやりかたを知りたいという要望があるが、一人一人でやっていることが違うようだ。
    • 今後毎回こういう題でやりたい
    • フリーシェルを見た瞬間にピンと来たりすることがあると思う。「こんなことでひらめいたよ」「こんな資料を参照しているよ」などについて話してほしい。5分〜10分程度の枠を用意します。
    • そんな話があるので話せる人は主催に声をかけてください。