#4メガコントラスト(その4)(終着駅編) | //www.旧型、PSP開発幼稚園.game.jp/(本館)

#4メガコントラスト(その4)(終着駅編)

#4メガコントラスト(その4)(終着駅編)(2006-03/14、アンバレン帯)

PS4_BRITENESS
(影が出る。色もOK)



えーと、昨日の答えは、コタツねこ。あ、ねこは余計。あ、おこった。

■その話は、あとにするとして、色の続き。うーん結局PSPには「7/8」だね。上の画面のサンプルは、
あんまし良くなかったかもしんないケド。(サンプルなら「ソーシャルキングダム」の方がよかった)
びょーにんなんで許してね。ゴホゴホ。(注:都合が悪いとびょーにん)

ええと、始めにチェックするのは、建物の影。これが標準状態(補正なし)では、ほぼ黒に近い状態なので、
墨で描いた、キツイ線のように見え、影に見えない。上の画面は「7/8」で補正を入れてある奴。
影は真っ黒では影に見えない。陰として認識させる為には、適度な明るさが必要なんである。
(世の中には屈折光、間接光というものが存在する。光源からどっか物にあたって跳ね返り(反射して)届く)

適度な明るさがないと、別の模様になり画面から分離してしまう。PCのエミュで、チェックしてみたらいい。
陰には見えない筈。特に「ソーシャルキングダム」が辛い。

■アニメには「色彩設計」というものがあって、結局「アニメ」が変わっても似たようなもんだ。(注:一般人レベルの見解) えっと、「肌の色」のような基本的な色は、それで「キャラクターの性格の一部」(注:見た目も立派な性格)まで 決定づけられてしまう為。「色彩設計」の範囲が狭い。ちなみに某国に発注すると、紫色になって、できますたって返って くる。のは有名。
■人間の目の工学特性(注:この場合は人間工学?画像情報処理?)として赤の感度がとても広い。 人間は色を、RGB=赤、緑、青。の三原色に対応したそれぞれの細胞で感知するが、赤が一番発達している。 もっとも、計器のみでなく、「気分」によって「脳内で色変換」がかかるので、厳密にこの限りではないが、 まあ、誰でも知ってるでしょ?感度は赤>緑>青の順。知らなきゃちとべんきょー不足。知ってても、 べんきょー充足にはならない。不思議。
■特に「肌の色」(赤84%、緑70%、青55%とかその手)は、感度が鋭い所。肌色が悪いと、健康状態まで、 おつぼね様の情報メモに、記録されてしまう恐ろしい色。デビルマンはしっぽまいて逃げる。 (注意せよ:いかに情報収集能力を研鑽しようが、企業秘密なので、インターネットでぐぐっても出てこない)
■今上の画像見たら、全然ダメじゃん。そおいや人間には「記憶色」という問題があって、「物理的に感知した色彩」 よりも、「経験により記憶に蓄積された色」の方が優先するんだよな。すっかり忘れてたが。
■しょーがない実機で見てもらうしかないか。でも、ちと現在対策中。 (11:18) ■おし、VDPの(使ってない、要らない)ルーチン大量発見。これを排除したら、「OutRun」で、 FSKIP2、22050が現実のものに。(注:A20でも少しトロイが、この設定でほぼ遊べる。でも微妙にトロイ) (13:09、そろそろお昼にするかな)

■やったつ。「スーパーファンタジーゾーン」といたつ。 こちらの「A22」はもう少し速くなってて、FSKIP0、22050って事。エンディングまで、すっかり忘れてたつ。 全体的に(特にボスが)程よくトロくて、ヌルゲーマーには(標準装備の業務用シンクロ連射と併せれば)最適っす。 もうVERUPしなくていいよ。なんてね。エンディングは少し重いす。もちっとしゅぎょーしてもバチ当たらんす。 今日の昼間なのに「A21」は遠い。(多分そんなに変わってないと思うけど、チェックするよりVERUPした方が、 建設的な気がする。) (2006-03/14、23:08、なんかアメブロ軽くなってる気がする。「スパム」対策。効果上がるといいな。)
■最後のボスの攻略法は内側、内側。呪文のように唱えればなんとかなるつ。ブロック崩しとははね方が違う。 内側、内側。あとは業務用シンクロ連射だのみ。いきろつ。いきてれば、きっとえんでぃんぐがあるさ。 どおでもいいけど、2周目はもういいでつ。 (23:18)
■現在の「A22」ちと「BF03チェック」してみた。
が、とてつもなく悪い。確かに今CPPのクラスライブラリを破壊し再構成中で、多少は落ちるかもしれない。 それに、負荷はほぼ無い筈だが「メガコントラスト」も追加した。(エミュ育ちの人の為のOFFオプションは、 (もうちょっとVDP全体のデバッグが、済むまで実装しないので)ちと待ってくれ。どうしても不満なら「A20」) 他にもフレーム処理(チョビチョビ実行)でパフォーマンスが、落ちる可能性はある。
過去記事「06-02/11 DG #11 UPdate1合成」によると、このVERは音源がバグって不当に高い値が 出てるので、+3の部分は補正して考慮しないとしても、大体。 OFF   84fps(85) 5512  76fps 11025 73fps 22050 70fps 44100 60fps この頃のVERは、(パフォーマンスチェック値が)大体こんなもんだ。
現在の「A22」は、大体。 OFF   78fps(-6) 5512  73fps(-3) 11025 70~71fps(-2~-3) 22050 65~66fps(-4~-5) 44100 55~56fps(-4~-5)
はっきり言って、あの頃のVERより、現在のVERの方が速い。(ゲームをやってみれば、一目瞭然) 管理人はあの頃のVERは要らない。 でも、何でだろ?不思議だ。あの頃のVERの方が、ゲームは明らかにトロイのに、 パフォーマンスチェック値は高い。
■CPPのクラスライブラリについて。 一体なんで、クラスライブラリを破壊し、しかもどんな再構成をするのか。 意味が、解からないかも知れない。 それは、詰まる所。「C言語」「C++言語」の特性の話になる。 まず、「プログラムの実行速度」を基準に考えた場合。「C言語」という用語はとてつもなく幅が広いので、 一体何を指しているのか判らない。 例えば、 GCC4xx系の「C言語」と、 GCC3xx系の「C言語」。 他にも、マイクロソフトの「C言語」や ボーランドの「C言語」。 LSICの「C言語」。 コードウォーリアーの「C言語」。 その他WATCOMとか旧PC用とか(知ってはいるが、ワザと書かない、妥当だろ?)
「プログラムの実行速度」を基準に考えた場合。「対処法」が大きく異なる。 □マイクロソフトの「C言語」が一番最適化には強い。だが、かけすぎると不安定になる面もある。 マニアには、詳細までコントロール出来るので、弄りがいもあるが、ライセンスも厳しい。 (MFCは使わなくても良い、使ってもいいが)(PSP用(Rxxxx)は知らない。ないかも) □ボーランドはかじった程度なので、あまり弄ってないし、VERにより大きく違うらしいが、よく知らない。 (VCLとかは関係ないし、DLLも使いたくないし)(現在は過去版に無料の奴がある。もちろんPCなら十分使える)(PSP用(Rxxxx)は知らない) □GCC4xx系の「C言語」とGCC3xx系の「C言語」。は最適化の性質が大きく異なる様だ。 (PSP用がある)(linuxはここだお念の為) □LSICのお験し版は、8086(リアルモード)のアセンブラの勉強になら、お勧め。(注:何をいまさら) ワンダーウィッチは、ほぼ80186なので、この辺をガシガシ弄りたいのなら、嵌ってみるのもいいかも。 (ゲームボーイZ80やファミコン、スーファミ、メガドラ、PCE、のプログラミングに嵌るのと同様。コップの 中の水だが。最近はAMIGAとかC64(!)とか、レトロPC系も、色々あるよ) (PSP用(Rxxxx)はないだろ) □コードウォーリアーの「C言語」。よく知らないが、過去にMIPS版はあったよな。 (注:あったからPS1のゲーム売ってるんでしょ?違うの?)(注:PS2linuxは何処のカテゴリなんだろ?) ライセンスの問題もあるし、ライブラリの問題もあるが、現在管理人はGCCで「ライブラリ」結局実質使ってないし。 つまり手に入りさえすれば、何とかなる可能性はあるが、与太話だな。(PSP用(Rxxxx)はある)
与太話でよければ、旧WS(ワークステーション、サンとか)のCPUはRxxxxだった。手に入りさえすれば、 PSPで使える可能性はある。(ライセンスとかいろいろあるから、結局駄目だろうケド)
ええと、PSPに関係がない「C言語」がずらずら並んでるのは、移植元の「C言語」がこれらの処理系に、 (知らず知らずのうちに)依存して、コーディングしてあるからだ。 管理人は現在PSP用にGCC4xx系を使っていて、コードもはっきり意識して、GCC4xx系でのみ速い 方法で記述している。「C言語」というのは、なにも知らない人が見れば、「VisualBasic」や「Java系言語」と 何処が違うの? と思うかも知れないが。はっきりとどんなアセンブラコードに誘導したいか、記述出来る所に差がある。 「C言語」「C++言語」は「プログラムの実行速度」を意識した場合。「アセンブラコード」を意識せざる得ない。 「C言語」は「高級アセンブラ」とも言われるが、「C++言語」だって場合によれば「高級アセンブラ」だ。
「C言語」は「高級言語」==「VisualBasic」==「Java系言語」的側面と、「アセンブラ言語」的側面の両面を 持つ。もちろん、「C++言語」も同様だ。
ちなみに、「Java系言語」。「Java系」「JavaScript系」は、一見、見た目も似てるし、出来る事にも大きな差はないが、 本質的に「C言語」「C++言語」と異なる。「Java系」「JavaScript系」は、コップの中の水。コップの外にこぼれる事はありえない。 つまり、「高級アセンブラ」にはならない。
すべての言語が使える「マニア」でないと、本質的には、意味がわからないだろな。結局。 とにかくこれらは「道具」であるので、「道具」はTPOで「使い分ける」んだし。 「道具」に踊らされちゃ、だめぽ。
「C++言語」のクラスライブラリは安直にパフォーマンスを上げるには、とてもいいアイデアだ。 だが、結局。「もっと細かい事」をしようと思えば、「C言語」に戻らざる得ない。丁度、車で言えば、 「オートマチック車==(C++言語)」と「マニュアル(トランスミッション)車==(C言語)」の関係だな。
「A20」以降は、結局、次の進化すべき道筋として、「もっと細かい事」を考えている。だから、C++の クラスライブラリの破壊にはいっている。 (次の日、ええと、03/15、03:21)