コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

Levelの意味をテレビゲームでの使われ方から理解する

RPG由来のレベル、が浸透してしまっているので整理する。

言葉の本来の意味

a horizontal plane or line with respect to the distance above or below a given point. - level mean - Google 検索

和訳すると以下のようになる。

特定のポイントの上下の距離を基準にした水平面または線。

ゲームにおけるレベル

英語の本来の意味で「基準線」という意味合いがあるため、最初はその意味で使われることが主だった。

ゲームにおいても本来はその意味で使われており、難易度がどんどん上がる要素などを示すものであり、英語版のwikipediaには以下のように書かれている。

A level, map, area, stage, world, track, board, floor, zone, phase, mission, episode, or course in a video game is the total space available to the player during the course of completing a discrete objective. Video game levels generally have progressively increasing difficulty to appeal to players with different skill levels. - Level (video games) - Wikipedia)

和訳すると以下の内容

ビデオゲームのレベル、マップ、エリア、ステージ、ワールド、トラック、ボード、フロア、ゾーン、フェーズ、ミッション、エピソード、またはコースは、個別の目標を達成する過程でプレーヤーが利用できる総スペースです。ビデオゲームのレベルは、一般に、難易度が次第に高まり、さまざまなスキルレベルのプレイヤーにアピールすることができます。

英語圏ではレベルは、ステージやワールドと同列として語られており、日本語圏ではアクションゲームのステージと同じ意味で捉えるとイメージとしては近い

RPGのレベルとの混同

昨今、レベルというカタカナ語ドラゴンクエストの流行から続くゲーム用語の浸透、直近だとなろう系小説の隆盛も手伝って、RPGに由来するレベルが主たる意味となっている。

RPGのレベルは本来のlevelとは異なり、以下のように表される

レベル(level, 略:Lv)とは、ロールプレイングゲームなどにおいて、キャラクターやユニットの強さの段階を表す数値である。 - レベル (ロールプレイングゲーム) - Wikipedia

このようにlevelという言葉は文脈によって(かつゲームという土台の話においても)違う意味を持つようになってしまっている。

「レベル」デザインはどういう意味なのか

ゲーム開発には「レベルデザイン」という言葉がある。この言葉はからあるステージの意味合いが正しく、そのゲームのワールドのデザインなどを示す。

例えばアクションゲームであれば、障害物や敵の配置、全体的な空間の構造をデザインすることなどがレベルデザインとなる。

混同しやすいレベルデザイン

RPGのレベルとステージを作り上げることが混ざり合って意味が「難易度調整をすることがレベルデザイン」のように捉えられてしまっているが、様々な方々から「それは違う」と異口同音で語られている。

関連リンク

Webにおけるウォーターマークに関してざっくり調べる

水滴のマークではない

Webサイト制作で語られる意味

ウォーターマークとは、主に著作権保護などの目的から、画像や映像などのデジタルコンテンツに識別用情報を追加することである。あるいは、そのようにして付け加えられた情報のことである - ウォーターマークとは 「デジタルウォーターマーク, 電子透かし」 (watermark): - IT用語辞典バイナリ

語源

もともと印刷業界の言葉

漉き桁には針金で模様がつけられ、漉きあがった紙にはその模様が紙の薄い部分として転写されました。紙を光にかざすとその部分が浮き上がって見え、この透かし模様をウォーターマークと呼んでいます。このマークにより製紙業者が特定され、紙の年代がわかるのではないかということから、20世紀に入って透かしの研究が進められています。 - 第三章 印刷とブック・デザイン | インキュナブラ

どういうものがあるか

著者を示すウォーターマーク

一般的に画像などに施すウォーターマークは誰が権利者か、というのを記載している。画像などにおいてはシンプルで自分の著作物である旨の情報を重ねて記載するケースが多い。

その場合、技術的に何か特殊なアプローチを施すのではなく、画像のレイヤとして一枚足してあげるなどの手法を取る。絵画の作者サインなどに近い考え方。

具体のやり方は参考リンクを参照のこと。

不正使用の出元を特定する電子透かしとしてのウォーターマーク

コンテンツを見る人には一見してわからない技術的なウォーターマークも存在する。

電子透かしで著作権者の情報や,提供 先に関わる情報を埋め込むことで,けん制効果によ り違法行為を抑止することが可能となる)。(中略) コンテンツが誰の著作物かという著作権者情報 を埋め込む方法は,固定的な情報をあらかじめ埋め 込んでおくことができるため,システムは簡単で作 業負荷も少ないが,流出時には誰が流出させたのか まではわからず,抑止力も限定的である。一方,コンテンツを誰に渡したかという提供先情 報を埋め込む方法は,流出元を特定することができ, 強力な抑止力となる。- 電子透かしによる著作権保護への取り組み

上記にあるように「誰の著作物か」を示すものではなく、「不正拡散の出元はどこかを書き足すことによってコピーをしづらくさせる、特定させやすくする」というアプローチ。ただこの場合は、誰でも同じ手法でできてしまうと、効力がなくなるので、下記のようなアプローチをとる

また,映像,画像,電子書籍に埋 め込まれた電子透かしは人の目に見えず,音声に埋 め込まれた電子透かしは人の耳には聞こえない。ど こに埋め込まれているかはわからないという点では, 目には見えるが技術的に複製が困難なことで偽造を 防止する紙幣の透かしとは考え方が異なる。電子デー タにおいては,どこに埋め込まれているかがわかる と,埋め込まれた情報の除去や改ざんが容易にでき てしまうため,アルゴリズムは非公開とし,限られ た人しか埋め込み・検出もしくは除去ができないよ うにするのである - 電子透かしによる著作権保護への取り組み

上記の通り、コンテンツ内にアルゴリズムを非公開にした形で情報を埋め込むことで容易に透かしの施しそのものをさせないというアプローチ

参考リンク

英単語の間に数字を入れて略すことをヌメロニム(数略語)という

i18nとかk8sとか

意味

数略語は、長い英単語を数字で省略して表現する語。 - ヌメロニム - Wikipedia

初出

英語版のwikipediaから出典をたどると以下のエピソードが出てくる

JanScherpenhuizen という名前のDECの従業員は、名前が長すぎてアカウント名ではないため、システム管理者からS12nの電子メールアカウントを与えられました。長い名前を短縮するこのアプローチは、ユーモラスなものであることが意図され、DECで一般化されました。条約は、1985年までに数字を使用していたDECの「国際化」に適用されました 。用語の使用は広まりました。 - Origin Of The Abbreviation I18n For Internationalization

代表的なヌメロニム

ヌメロニム表記 正式名称
i18n internationalization
g11n globalisation / globalization
a11y accessibility
l10n localisation
p13n personalization
m12n modularisation / modularization

参考サイト

ダブルチェックが有効なものは何かを考えるときにみたい資料『ダブルチェックの有効性を再考する』

ダブルチェックって再発防止に有効なんだっけ?を考えるときに役に立つ知識を。

資料スライド

https://kouseikyoku.mhlw.go.jp/shikoku/kenko_fukushi/000085434.pdf

読みどころ

この資料は主に医療現場におけるダブルチェックの有用性に関しての資料なのですが、すべてのオペレーションに共通するエッセンスも含んでいます。

資料内ではダブルチェックするべき内容に関して思考プロセスから考えるアプローチをとっており、内容としては2つあります。

名称 内容
システム1 速い思考。自動的に高速に働く思考モード。自動運転。省エネモード。
システム2 遅い思考。複雑な計算など頭を使わなければできない困難な知的活動にしかるべき注意を払う思考モード。

このシステム1(単純作業)とシステム2(認知的作業)と分けた際に、システム2の場合はダブルチェックが有効であるが、単純作業ではダブルチェックを用いてエラー検出するのは有効ではない、という話となっている。

ダブルチェックに関しても有効に働かせるためにはどうしたらいいか、単純作業のエラーを減らすにはどうしたらいいかが医療現場の実例に基づいて説明がされているので、具体例から自分の体験にも落としやすい資料となっている。

関連サイト

HTMLでスライダーUIを作りたいときはinputタグのrangeタイプで作れる

マジでググってすぐ出てこず、jqueryの方ばかり出てきて、自分の記憶違いを疑ったのでメモ

参照元

< input type="range" > - HTML: HyperText Markup Language | MDN

スライダーの定義

今回とりあげる「スライダー」は以下の意味のもの

つまみを直線移動させる入力機器またはウィジェット (GUI)。 - スライダー - Wikipedia

「カルーセルスライダー」の略称として「スライダー」が用いられることがあるが、今回は別のものとする。

HTML例

See the Pen range sample by しんくう (@shinkufencer) on CodePen.

属性の詳細はMDNのドキュメントのほうが詳しくのっているので、そちらを参照してほしいですが、よく使う属性としては以下のようなものがある。

  • 値の最高値と最低値の maxmin
  • 初期値の設定の value
  • スライドの幅の単位を設定する step

注意点

通常の <button>要素同様にWebブラウザによってスライダーのトグルなどのUIパーツの絵は異なる。そのため、CSSで同じ形になるように整える必要がある

参考サイト

RailsのActiveRecordでは add_column するときに after を指定すると追加するカラム位置がコントロールできる

主にMySQL向け

環境

rails (5.0.2)

やり方

カラム追加の記述の場合にafterを指定する。

name というカラムのあとに profile_text というカラムを足したい場合

class AddColumnHogeHoge < ActiveRecord::Migration[5.0]
  def change
    add_column :users, :profile_text, :string, after: :name, default: "", null: false
  end
end

原理

以下メソッドに記述があるとおり、AFTER文を継ぎ足している。そのため、AFTER文の概念がないpostgresqlにはできない。

def add_column_position!(sql, options)
if options[:first]
  sql << " FIRST"
elsif options[:after]
  sql << " AFTER #{quote_column_name(options[:after])}"
end

from: rails/schema_creation.rb at 36a6d935d2994e776054797be3c00cd50c19b1e9 · rails/rails

参考リンク

色覚多様性(色覚特性)を鑑みた見え方をチェックするときに便利なスマホアプリ「色のシュミレータ」

便利だったのでメモ的に

公式サイト

色のシミュレータ

このアプリでできること

公式サイトに記載のある通り

1型(P型)、2型(D型)、3型(T型)の2色覚の色の見えをリアルタイムに確認し、一般型(C型)の色の見えと比較することができます。 - 色のシミュレータ

一般的な普通の人が感じると言われている「C型」と他の見え方と窓を分割して確認することができる・

補足:それぞれの型の意味

ざっくりとした説明でいくと以下の通り

型名 特徴
P型 赤色の光を感じる力がない、もしくは感じる力が弱く暗く感じる
D型 緑色の光を感じる力がない、もしくは感じる力が弱く暗く感じる
T型 青色の光を感じる力がない、もしくは感じる力が弱く暗く感じる
A型 3種類の光を感じる力のうち、2つがない、もしくは全てがないため、明暗でしか判断ができない

C型を除き、多いとされているのはP型とD型

参考リンク