スクリプトプログラミング - 亜光速の未来の科学

スクリプトプログラミング その1


※中途半端だと気が付き難いかもしれませんが初心者ならこの説明でこれでいきなり出来る様になる方々が多かったですよ。



OBSLiveは有名な方にお越し頂き音楽ゲーム色々聞‥

* おにたま放送局
* USTREAM | おとや | セガ | 光吉猛修さん

※この生放送は終了しています。
カーカイブはこちら。

OBSLiveによるUSTREAM生放送ですが、5月22日(土曜日)の20:00から以下のURLで行ないました。
http://www.ustream.tv/channel/obslive
スタジオゲストは、「おとや」司会として、またセガのサウンドコンポーザーとしても有名な光吉猛修さんにお越し頂きました。
音楽のこと、ゲームのこと、色々聞いていきたいと!
第2回が放送された「おとや」舞台裏の特集とともに、いつも通り、最新ガジェットの紹介からレトロスポット探訪、グルメコーナーなどもお届けし‥

次のお時間のある方は、ぜひぜひ生でご覧下さい(^^

なお、4月の録画も以下のURLで公開中です。まだ見ていない方は、こちらもぜひ!
http://www.ustream.tv/recorded/6243767



おにたま(オニオンソフト)のおぼえがき
レトロゲームときどきHSP
http://www.onionsoft.net/wp/

ここも分かっていないことがあるようでしたが通じていないようです!?

HSTV!
http://hsp.tv/



おちゃっこLAB フリーのモーション作成ツールと、ゲーム作成ライブラリ
http://www5d.biglobe.ne.jp/~ochikko/



子供達がわざわざ難しくしているようでした?!

HSP掲示板
http://hsp.tv/play/pforum.php



これらの捕捉


スクリプトプログラミング その1
http://kazuya32.web.fc2.com/scriptprograming/index.html


人工知能会話について
http://kazuya32.web.fc2.com/aiword/index.html


超科学理論
http://kazuya32.web.fc2.com/science/index.html



その他に

亜光速の未来の科学
http://kazuya32.web.fc2.com/aiword/index.html



理解の方法によっては小学生でも3Dゲームなどを作っていくことが可能ですよ!!

HSP3でつくる簡単3Dゲーム―知識、経験ゼロではじめるゲーム制作 (I・O BOOKS)
山田 友梨 悠黒 喧史
工学社
売り上げランキング: 226354



商品の説明



目次

基本編(そもそもプログラムってどんなもの?
プログラミング環境の準備
プログラムの基本的な書き方)
実践編(いよいよ 3Dプログラムに挑戦!
3Dモデルを作ってみよう
3Dゲーム制作をはじめよう!
「ゲームが完成したら公開しよう!」)


内容(「BOOK」データベースより)

「HSP」は、シンプルな言語仕様で作られています。そのため、プログラムが初めての人でもお手軽に始めることができ、そのため、ライト・ユーザーに人気のあるフリーのプログラム言語です。
本書の中核となる3D関連の機能については、「HSP2.x」から「HSP3.x」へのバージョンアップで機能拡充と高画質化が図られ、より高度な3D技術が簡単な命令セットで使えるようになっています。


著者からのコメント

HSPはライトユーザーに最も人気のあるフリーのプログラム言語です。さて、プログラムを始めるきっかけにゲームを作りたいからというビギナーは大変多いのですが、、、

「ファイナルファンタジーみたいなゲームを作りたい!」「バイオハザードはHSPでつくれますか?」「バーチャロンみたいなゲームを作るにはどうしたらいいですか?」

・・・などと最初からものすごい目標を掲げていることが少なくありません。こんなとき、プログラムに熟達したユーザーがするアドバイスの定番に

「いきなり3Dモノは難しいので、まず2Dのゲームを作れるようになってからにしたほうがいいよ」

というのがあります。

もっとシンプルなロジックでプログラムを組むことの出来る2Dの概念からおぼえるべきだということです。これは正論で、ほとんどのゲームプログラムの入門書は、かんたんな2Dゲームの作り方から始めるのが常道となっています。

今回の HSP本は、この常道をとびこえて、プログラムを一度もやったことのないユーザーがいきなり3Dゲームを作れるようになろうというコンセプトで構成しています。

プログラム初心者でも3Dゲームは作れる!


著者略歴 (「BOOK著者紹介情報」より)

山田 友梨
千葉県出身。『HSP3でつくる簡単3Dゲーム』がデビュー作となる

悠黒 喧史
1967年東京生まれ。ライター。HSP関連書籍多数(本データはこの書籍が刊行された当時に掲載されていたものです)


HSP3でつくる簡単3Dゲーム―知識、経験ゼロではじめるゲーム制作 (I・O BOOKS)
山田 友梨 悠黒 喧史
工学社
売り上げランキング: 226354


HSP3でつくる簡単3Dゲーム

山田 友梨 著、悠黒 喧史 監修

2010年 5月20日発売   A5判  216ページ [CD-ROM付] 価格 \1,995(本体 \1,900)

ISBN978-4-7775-1521-9 C3004 \1900E

 「HSP」は、シンプルな仕様で、プログラムが初めての人でも手軽にはじめることができるのため、ライト・ユーザーに人気のある、フリーのプログラム言語です。

 言語仕様がシンプルだと言っても、グラフィカルな処理、とくにゲーム系としては、「マルチメディア・コントロール機能」「3Dグラフィック機能」「オンライン・ネットワーク機能」など、かなり強力な機能を備えています。

 ゲーム・プログラムの入門書は、シンプルなロジックでプログラムを組むことのできる「2Dゲーム」の作り方から始めるのが常道となっています。
しかし、本書はこの常道を飛び越え、「プログラムを一度もやったことのないユーザーが、“HSP”というプログラム言語を使って、しかもいきなり3Dゲームを作れるようになる」というコンセプトで作られています。


■付録CD-ROMには、HSP本体や本書サンプル・ゲームをはじめ、3Dゲーム開発に役立つさまざまなソフトが収録されています。

※本書は好評の「HSPでつくる簡単3Dゲーム」を「HSP3」用に完全改訂したものです。


■ 主な内容 ■

CONTENTS

 はじめに


 基本編


 第1章   そもそもプログラムってどんなもの?

 [1-1] プログラムってなに?
 [1-2] HSPでプログラム


 第2章   プログラミング環境の準備

 [2-1]HSPをインストール
 ■Windows環境の設定

 [2-2] HSPサンプル・デモ
 ■HSPデモンストレーション・プログラム

 [2-3] HSPスクリプト・エディタの起動
 ■HSPスクリプト・エディタの起動
 ■スクリプトの編集と実行
 ■HSPのファイル形式  

  [2-4] HSPの仕組み
 ■HSPスクリプト・エディタのメニュー

 [2-5] 実行ファイルの作り方
 ■実行ファイル自動作
 ■「PACKFILE」を編集して、EXEファイルを作る方法
 ■PACKFILEの編集方法

 [2-6] ワンキー・ヘルプ機能について
 [2-7] HSPのエラー


 第3章   プログラムの基本的な書き方

 [3-1] HSPプログラムの書き方
 ■命令   ■パラメータ  ■数式     ■文字列
 ■変数   ■配列変数   ■ラベル/font> ■条件判断
 ■繰り返し命令       ■プリプロセッサ命令



 実践編


 第4章   いよいよプログラムに挑戦!

 [4-1]3D空間を作る
 ■HSP拡張プラグイン「HGIMG」  ■何も無い画面!?  ■プログラム「3D_space.hsp」の解説

 [4-2]空間内に立体物を表示する
 ■プログラム「3D_object.hsp」の解説
 ■モデルとオブジェクト
 ■3D空間内で物体の位置を表わすには
 ■モデルの登録
 ■オブジェクトの作成

 [4-3]オブジェクトを動かすには
 ■「モーション・オブジェクト・コントローラ」(MOC)とは
 ■オブジェクトの移動
 ■プログラム「obj_mov.hsp」の解説
 ■オブジェクトの角度を変更する
 ■プログラム「obj_mov2.hsp」の解説
 ■もう1つのオブジェクト移動方法
 ■プログラム「obj_mov3.hsp」の解説

 [4-4]カメラの存在
 ■カメラの動きをコントロールする  ■プログラム「cam_lookat.hsp」の解説

 [4-5]1つのモデルから複数のオブジェクトを作る
 ■プログラム「many_obj.hsp」の解説      


 第5章   3Dモデルを作ってみよう

 [5-1]3Dモデル作成ツールの紹介
 ■3DACE  ■Metasequoia  ■RokeDeBone2

 [5-2]3DACEでモデルを作ってみよう!
 ■モデルの作り方  ■テクスチャ画像の貼りつけ方  ■テクスチャの貼られ方を変える

 [5-3]「RokeDeBone2」でモデルにアクションをさせよう!
 ■モーションを設定するモデルデータ形式
 ■モデルにボーンを組み込む必要があります
 ■「RokeDeBone2」の操作画面
 ■モーション作成の大まかな流れ
 ■モデルのポーズを作るための基本操作
 ■モーションのプレビュー操作
 ■「RokeDeBone2」で実践モーション作り  

 [5-4]HSPでモーション付モデルを動かしてみよう!
 ■プログラム「Hero.hsp」の解説


 第6章   3Dゲーム制作をはじめよう!

 [6-1]アステロイド・ラリー
 ■「アステロイド・ラリー」って、どんなゲーム?■モデル・データを用意
 ■ロケットの移動プログラム          ■プログラム「asteroid1.hsp」の解説
 ■隕石が前からとんでくる!          ■プログラム「asteroid2.hsp」の解説
 ■ゲーム空間(オブジェクトの有効範囲)の設定  ■隕石オブジェクトを作る
 ■隕石がぶつかったときの処理         ■ロケットと隕石の衝突判定プログラム
 ■プログラム「asteroid3.hsp」の解説      ■爆発のアニメーション
 ■プログラム「asteroid4.hsp」の解説      ■ゲーム・ルールの追加
 ■プログラム「asteroid5.hsp」の解説
 ■文字表示と効果音              ■プログラム「asteroid6.hsp」の解説

 [6-2]タイムアタック・レース
 ■モデル・データを用意する     ■コース・マップと車を表示する
 ■プログラム「race1.hsp」の解説   ■車を走らせてみよう
 ■プログラム「race2.hsp」の解説   ■車の背後にカメラ位置をセットする
 ■プログラム「race3.hsp」の解説   ■ゲーム・ルールの追加
 ■ゲーム・ルールの追加プログラム  ■プログラム「race4.hsp」の解説
 ■タイム表示や効果音を追加してゲームとして完成させる!
 ■プログラム「race5.hsp」の解説    

 [6-3]ゴーストハンター
 ■まずは舞台となる迷宮を作ろう!   ■プログラム「ghost1.hsp」の解説
 ■敵キャラクター「ゴースト」を追加する■プログラム「ghost2.hsp」の解説
 ■ショットを追加する         ■プログラム「ghost3.hsp」の解説
 ■ゲームのルールを追加する      ■プログラム「ghost4.hsp」の解説

 [6-4]手裏剣NINJA 対 炎のゴーレム軍団
 ■フィールドと自キャラ(おじん)を配置する ■プログラム「ozin1.hsp」の解説
 ■敵(ゴーレム)を追加           ■プログラム「ozin2.hsp」の解説
 ■ゲーム・ルールの追加          ■プログラム「ozin3.as」の解説
 ■細かな演出を加えてゲームを完成させる! ■プログラム「ozin4.as」の解説


 第7章   「ゲームが完成したら公開しよう!」

 ■作ったゲームはインターネットで公開!
 ■HSPのゲームの作者たち
 ■ゲーム制作に役に立つツールとWebサイト


 付録CD-ROMの内容
 あとがき
 索引


   特別付録CD-ROM for XP/Vista/7

 ■HSP3.21
 ■3DACE
 ■MetasequoiaLE R2.4(無償版)
 ■RokeDeBone2
 ■本書サンプル 収録

※ 内容が一部異なる場合があります。発売日は、東京の発売日であり、地域によっては1〜2日程度遅れることがあります。あらかじめご了承ください。



*ツールと基本文法と命令を先に覚えるのが理解への早道です。



ここも同じです。

基本事項がどの言語やコードでも同じであることを理解して下さい。




初心者とは?効率的に動かすソフトとOSでパソコンORプログラミングについて・・・



コンピューターは広告などに載っているCPUの2コア等のマルチコアはOS専用に1コア使用したいところですに

OSのバックで動くウィンドウズなど右下などに表示されてもいるデーモン・プログラムに1つ専用に1コア使用したいところです。

その方が高度なハードウェアというマシンになって対応してきた新しいOSはその高度に対応したハードの分の速度が必要です。


プログラミング等のC++等でも動的などの使用法があります。

普通は電子流のパソコンはノイマン方式という順番に記憶というメモリを読み込んでいき実行していきます。

最近になりマルチコアが増えてきてマルチスレッドやマルチタスクが増えてきました。

ノイマン方式には違いないので非ノイマンのような量子波コンピューターの非順番による実行は無理です。

メモリを順に読み込み順に実行する制御コアが複数あっても同じです。


ばらばらに実行しても中でメモリをお互いにばらばらに同じ箇所を書き込んで読み込んでしまってはデータ内容が特定し難くなりデッドロックになります。

デッドロックになればお互いが動き難くロックされてデッドなバグの原因となりソフトが動かず停止するかデータがばらばらになり読み込む命令や変数などが入れ替わるので内容が不確定になります。


マルチスレッドやマルチタスクで起こる間違いはプログラミングにおいてはこの動的のようにばらばらに機能を置きそれぞれのスレッドやタスクやコアや制御で実行するとこれも先と同様にバグのようになっていき難しくなります。

これがマルチという並列や複数で速度が落ちる原因です。


この速度を落とさないようにするには1つに集中して順番に実行した方がいいのです。

読み込んでまたは入力されたものを順番に実行して表示や音をだして記憶などをする。

この順番がノイマン・コンピューターの基本です。


電子流のコンピューターならこれです。


マルチコアでも使用法は同じです。

入力に1つ、中のそれぞれの処理に1つづつ、表示や音などの出力に1つづつです。

余裕がある場合は順に他の処理も加えていきます。


これはストリーミング処理ならタイミングを合わせるだけです。

もし、知っていてソフトも存在するのならタイミング速度の計算もあります。

これほどタイミングを合わせる必要は普通は要りません。


ゲームなら順に入力して、次のコアで中でそれぞれのキャラクターや背景や効果などが動き、次のコアで表示されて、同時に音やその他も出力されていき記憶もされていきます。

おおよそ、マルチコアならおおよそOSや音などにひとつ、表示などに1つ、中の処理などにそれぞれ1つ以上、入力やその前処理などに1つあれば足ります。


PS3や東芝のレコーダーなどにしようされているセル(Cell)ならば6コア程度です。

SPE、7や8ハードに存在していてもバグなどのタイミングなどの処理に使用されているので実際は6と同様です。

PPE、それにOSとメイン処理に1つは普通に使用されています。

SPE、複数のストリーミングが可能でひとつづつの機能をそれぞれの制御コアで実行していきます。


これが実際のPCやゲームマシンなどのの中身です。

結構単純で分かりやすいはずです。


この説明を初心者や知らない者などにして欲しいのですがあまり居ないようでした。


一度調べてみますか?


広告をみて買うだけなら速度なら、出来るだけ複数のCPUコアで、高速に読むこむ為のメモリも多く、ハードディスクも速く複数あれば読み書きも速くなります。

IEなどのウェブブラウザーなどなら回線が光りであってもPCへの負担が入力出力ともに増えるのでそれだけ普通よりも遅くなります。


ゲームやパソコンを使用する業務ではHDのような広い画面が必要です。

文字を小さく表示しても見えて沢山のウィンドウを表示して同時に開いておきすぐに確認できるとデスクトップなどの家庭や仕事場でゆったり行なうには便利です。

あまり多くの操作を必要としない方が体力的には楽でしょう。


運動をした方が身体にいいのはPCも同様の効率的な動作の部分があります。

マルチのひとつひとつが人の一人のひとつひとつと同様です。

入力から順番に出力される方が製造などの効率的な流れのコンピューターには良いのです。


経営などで入力から順番に出力されるものも変わりません。



株式・資本・債務・会計・ファイナンス・財務・経済・もです。

複数あってもそれぞれは同じです。

入力から順番に出力されていくのが複数になります。




他も同様です。





元は結構単純です。







金額などが難しくなっている烏骨鶏と同じです。


どうします?


など



量子コンピューターならノイマンと同様の部分があります。

1コアというひとつの量子コンピューターの中で多少動的に非順番の非ノイマン方式になります。

量子波コンピューターなら使用法を間違えたガンダムダブルオーとは違います。

量子のつもりで量子波で間違えます。

空間からも記憶装置のように入力される量子波コンピュータはマルチの非順番の非ノイマンが記憶の読み込みによっても可能です。


それらが以前にもブログなどの載せた空気メモリーや空気コンピューターという量子波コンピューターの応用系です。



同じ量子でも透過するように逆方向に入れ違うものもあり、一瞬で光り以上に高速に進むものもあります。

これが超弦のようにひとつの場所に透過するように存在していて中で影響する類もある超弦原子という普通のアトミックそのものです。

これがばらばらになると一種の量子や分子などのようになります。

同じ量子でも分子のように中にも無限にあります。

それは外からの沢山あるかなりの複数の影響がひとつひとつの量子というものにあるからです。

ミクロもマクロも無限に存在します。

原子ひとつでも大きくも小さくもなります。


ヒトへの良好な影響も同じ種の類です。


陽子?(重力子影響?)、電子?(陽子重力子抵抗影響?)、中性子(他粒子影響?)、???。



ほんとうはどうおもいますか?










ゲームプログラマになる前に覚えておきたい技術
平山 尚(株式会社セガ)
秀和システム
売り上げランキング: 7523
おすすめ度の平均: 5.0
5 良書です。
5 プログラミングはできるがゲームは作れないあなた向け
5 ゲームを作りたい方へ
5 基礎を習得して凝り固まった頭が少しほぐれました
5 初級プログラマが一人でゲームをつくれるようになるための本。


ゲームコーディング・コンプリート 一流になるためのゲームプログラミング
Mike Mcshaffry
ソフトバンククリエイティブ
売り上げランキング: 14217
おすすめ度の平均: 4.0
4 4200円の価値はあるが…


ゲームプログラミング入門
鎌田 茂雄
Northbrain
売り上げランキング: 95399


人工知能学事典
人工知能学事典
posted with amazlet at 10.06.01
人工知能学会
共立出版
売り上げランキング: 208221
おすすめ度の平均: 4.0
3 『人工知能ハンドブック』に代わるものではない
5 良質なサーベイ論文集


デジタル人工知能学事典 [CD-ROM付]
人工知能学会
共立出版
売り上げランキング: 221800














上の検索ワードなら、Cresion、クレシオン、Galleria、ガレリア、Magnate、マグネイト、























robot

スクリプトプログラミング その2に行く

HSPオフィシャルホームページへ行く

書籍のゲームを改造しました!


ちょっとしたロボットアクションゲームです

ショートカットは覚えると便利です。
OS上の操作だけでも使いやすくなります。
たとえば、Ctrl+何かのキー などの右クリックした時にある
アルファベットだけでも覚えた方がいいです。

ファイル操作がOSの基本です。

ダウンロードして遊んでみてください。
短いプログラムでの動きをつけてあります。
コードは手直し無しなので。
いちおうウィルスチェックはしてあります。
∨  ∨ ∨ ∨ ∨
3d-robot-game.zip ダウンロードしてください!!
 robot

亜光速の未来の科学

「これは専門なんだよ。コピーさせろ」とまえからいわれていました。
「しょしんにいい」「専門から先だ」だそうです。
「この教育学はオリジナルだろ」「???」
動画や無料ものやその他いろいろ説明もあります。

レイアウトカラー変換動画サンプルと動画入力時の物体スキャニング成功の簡易式です。

ここから…⇒画像入力変換テスト スクリプト ダウンロード

ひとつは、
良好色変換レイアウトカラー連鎖の2つのスクリーンセーバーです。
見るだけで分かるようになります。



もうひとつは、

画像物理抽出テストです。
実際はこの100倍以上の動画速度で動作します。
簡易式になっています。
同時に複数を実行すると意味がわかります。
コンパイラーに落とした瞬間に動作します。
値と画像を変えると…当然…反応する物体が変わります。"
ものすごく簡単なので解析して使ってみませんか?
※以前のソニーや任天堂が使おうとして出来なかったものです。

実際は複数同時100倍以上の動画速度で物理スキャン動作。
簡易式の物理抽出テスト。
使用します?値と画像を変えると……

見ればどのようなものか分かります。

画像を変えて320×240以内でファイル名を同じものにしてもう一度実行して見て下さい。

これは実際はOS等での手の動作や顔の動作などを判断するものです。


ここから…⇒画像入力変換テスト スクリプト ダウンロード


ウィンドウズ7は(ソフト対応で違うものに)
CPUは2コア以上(4コア以上がいい)
メモリ2G以上(4G以上がいい)
GPUが専用のメモリ付きのもの以上(グラフィックRAM512M以上)
USB端子があるもの(使うハードを確認する)
それが最低条件です。
スペック(性能)を見るときはこれを絶対に見るようにします。

Weタイプ、私たち、助けられる、助ける。
Meタイプ、自己、必要、必要でない。
(その為の人々の様々な説明)

ウィンドウズは(アプリケーションの対応で違うものにする)
CPUは4コア以上がいい。
メモリ4G以上がいい。
GPUが専用のグラフィックRAM512M以上がいい。
USB端子があるものがいい。

その他使うハードを確認する。

それが最低条件です。
広告などを見るときはこれを見るようにします。

これが満たせていないと使用制限があり苦しいです。

日本のものは意外と
グラフィックもそうですが性能が満たせていません。

SSDの時は(UMPC)
次のOSまで待てとなっていました。

OSや検索や人工知能などは計算すると確かの仕様どおりのものになります。

何故、ああなのか。

考えた方はわかります。

今度はソフト開発のエディターの話になっていました。

科学基本公式と基本ロジックと基本アルゴリズムと基本デザインは同じだということです。

「1キーで入らないか?」

変数や数字なら変えればいいだけです。

他に使うときも基本なので応用可能です。

次は・?…

書籍のサンプルプログラムはHSPのSAMPLEフォルダに
フォルダ名が同じにならないように判断されるように
HSPのSAMPLEフォルダに入れておきます。

Sample Viewer for HSP3(lsampview.exe)で
プログラム・コードを見ながら実行して動作を確かめて
そのコードたちの使う部分を組み合わせて(ラベルなどにして分けておく)
変数を変えて共通のものと、そうでない変数名に変えておき、確かめて
足りない所は作り、変えて確かめて入力して実行して動作を確かめます。

スクリプトや中間言語のようなインタプリタ(バーチャルマシン)の最大の
醍醐味は変えながら実行して動作を確かめてまた行なえるという所にあります。

コンパイラや機械語(マシン語)などのようなものはOS等のコンピューターが
直接実行できるかたちにして(変える時間が掛かる)からでないと
速く(多機能に)動かないので
多少遅くともHTMLなどのように便利な利点があります。

RPGの作成やシミュレーションRPGの作成に必要なマップ・エディターなら
マップ表示の基本と
ノベルゲームの作成やシューティングゲームの作成にもある
マウス・クリックやジョイスティック(キーの命令の代わりがあります)などの 入力にシューティングゲームの作成にもある(マップエディターのような)
セーブ(記録)とロード(読み込み)を行なって変数やファイル等に読み書きします。

そのときにデータの書式(形式)が同じになるように注意します。

変数にあるものはそのまま配列の内容を繰り返し文など
でまとめて表示できます。(2Dの場合)
(「3Dドットゲームヒーローズ」のようにドットを3Dに変えて、
 2DドットをPlayStation®3の最新技術で完全3Dに表現。
 のようにcubeを3次元配列の立体で作って3Dの座標に表示する。
 パワー・スピードを必要とするプログラミングもあります。)
少なく考えても
256*256*32=2,097,152=2048K=2M=200万
512*512*64=16,777,216=約1677万(色?)
位は普通にあります。
200万の、エフェクトかBOXモデルを効率化しても知れています。
400万ポリゴン/フレーム
メモリバス256ビットの家庭用あたりか、(PS3、XBOX360とか)
DirectX 9.0c世代のグラフィックカードで GeForce GeForce 7800 Series から。
DirectX 10.1世代のグラフィックカードで RADEON HD 4000 Series から。
でぎりぎり?。


スピードも

Pentium 4 EE 9726 MIPS (3.2 GHz 2003)

ARM Cortex A8 2000 MIPS (1.0 GHz 2005)

AMD Athlon 64 8400 MIPS (2.8 GHz 2005)

Xbox 360 IBM "Xenon" Single Core 11500 MIPS (3.2 GHz 2005)

AMD Athlon 64 Dual Core 18500 MIPS(2.2 GHz 2005)

Play Station 3 Cell single Core 21800 MIPS (3.2 GHz 2006)

Intel Core2 Kentsfield Quad Core 56200 MIPS (2.66 GHz 2006)

MIPS(ミップス)は、
100万命令毎秒 (million instructions per second) の略で、
コンピュータの性能指標の1つ。
1秒間に何百万個の命令が実行できるかを表す。

一般にMIPS値は、
ほとんど分岐のない命令列を実行させたピーク性能を示し、
実際のアプリケーションの性能を表していないことが多い。

BIPS (Billion Instructions Per Second) 10億命令毎秒

この場合は 20000 MIPS = 20 BIPS あたりでいきます。(200億命令)

おおよそ10命令×100×400万=40億(5フレーム)
なので効率化してもエミュレーション動は無理です。
少し妥協して動的不安定と並列・ストーリーミングを使い。
2分の1未満に落としGPUにも落とします。
(ムーアやアムダールを使っても2程度と考えます)
これでどうにか動くレベルになってきます。(30フレーム以上〜)

普通は無理があります。

確定計算プログラムならば、技術にもマシンにも負担はありません。

普通程度の使用なら問題なしといった所です。
(こんな曖昧な感じでも最初は大丈夫です。
 後はこれでマイクロ・プログラムを使い動作速度を測っておきます。)



以下のゲームは上記のようなことではないので大丈夫です。

3Dドットゲームヒーローズボス ドラゴン

エフェクト


参考リンク:かずやのにゅう
http://sites.google.com/site/kazuyanews/home



hmm.dllなどのDirectGraphicについて



「ほかのDirectX使用の2Dのソフト」がどの言語を使っているのかわかりませんが
コンパイラで機械語にするのと
中間言語などで直接、変換しながら実行するプログラム言語は
速度自体が違います。

await は
待ち時間なのでその間、空ループさせて、その間OSに処理を渡しているので
自分で作った中のプログラムのコードの量と
命令実行速度と計算速度とCPUやメモリ、GPU等により
その速度が変わります。

もし速度を上げたいのなら
計算文にしたほうが速くなります。
この場合は判断分を並べるよりも効率的になる時があります。

それとプログラム・コードは処理ごとに小さくまとめたものをまとめてわかりやすくしておき
後で変えやすくすればいいでしょう。

簡素なほうが速くなります。

わからなければ、絵でも音でも字でも何でもよいですから紙などに書いてみてください。

コードはちょっとしたドキュメント等の説明でわかりやすくしてもよいです。

中のループの部分をタイムを計測するもので包み時間を見てはどうでしょうか?



他の方のソースコードを実行して速度と中を確かめてみてもいいでしょう。

ネットならいろいろ手に入りますよ。

手元におけるCD付きでURLからダウンロード可能な書籍などもあります。

hmm.dllは環境により不安定な時があるので
他のものか最新のものなどにあるものを使ってみてはどうでしょうか?

ちなみにこのようなプログラミング言語は変数ひと文字で処理が変わることがあります。
HSPも私が使って見たかぎりはその傾向がありました。
普通に使っているかぎりは大丈夫です。
多分、サイト(hsp.tv等)にいくつかエラーが書いてありますよ。

はじめてのものは慣れなく手探りなのでどちらも否定はよくありません。

わからなければ他の方への助言などを見てはどうでしょうか?

速すぎるのなら遅くするだけなので簡単です。タイミングも同様です。

SAKMIS ≫ HSP Module
(Time Manager for HSP3 HSP3用高精度時間管理モジュール、await精度測定スクリプト等…)
http://whss.biz/~sakmis/module.html#tmanage3


入力してそれを変数などで計算や判断や分岐などをして
出力可能な形式にして表示や音や通信などの出力にしていきます。

特殊なアルゴリズムや3Dや物理計算などの場合は
中の命令の変化の状態が
入力と出力でどのように変化するか明確に理解しておくと便利です。

普通は学校で学習したとおりです。(簡単なものなら小学か中学程度で充分です)
(高校あたりまでである程度は間に合います。趣味程度なら大丈夫です)

私としては思考法自体である「人工知能学事典」をおすすめしています。
これは後で何度も読み返しがきくので
絶対に読んでおくと後でとても重宝します。
人工知能の考え方は人の考え方なので(頭、脳、五感、心身体など…)
知っておくと便利です。
例えわからなくてもさらっと(速く)見ておくだけでも違ってきます。
下手をすればプログラマーでも見ないものが沢山あります。
(はじめは高速に無理なく全てをさらっと眺めてから行なうといいです。
 頭に入りやすくなります。意外と行なわないことが多いようです。(特に難しい時です))


外部のものからの助言を見聞き出来るともっと良いですよ。
一つ二つ決めておくか
そのような所で見るかなどです。


書籍のゲームを改造しました!
ちょっとしたロボットアクションゲームです

内容は、書籍の
「HSP でつくる簡単3Dゲーム」
の最後に載っているサンプルゲームの
スティール・ランナーにすこしつけたしました。

HSP でつくる簡単3Dゲームのなかの
スティール・ランナーのデータを使わせてもらいました。

なかなか、書籍のサンプルプログラムに
付け加えて作る人がいなかったので作ってみました。
∨ ∨ ∨ ∨ ∨
3d-robot-game.zip ダウンロードしてください!!

現在は、ファイルそのものにあるサンプルが多くなってきています。
初心者でも使えます。

HSPの書籍はキャラの動きのアルゴリズムがないので
それがあれば初心者でも作ることが出来ます。

これで、少しはわかり易いはずですが
コードがわかりにくいかもしれません。
照準も敵も乱数パラメーターを使って動かしてしまいましたので
調整でこうなってしまいました。
普通は基本アルゴリズムを使ったほうが簡単です。
こういう方法もあります。
あまり使われませんが。

たしかに、手間をかければHSPでも
ファイナルファンタジーやドラゴンクエストや
ガンダムなども作り上げることが可能です。
オンラインも可能です。(HSPは細かいリアルタイム通信でないほうがよい)
HSPのようなものはオンラインは短くまとめてデータを交換したほうがいいです。
少し位の違ってしまう動きとデータの変更は直して戻るように動かしていく。
見た目の意味が合えばよい。
後はプログラム同士で同じになるように作ります

HSP3.2

最新HSP3.2 プログラミング入門 Windows98/2000/Me/XP/Vista/7対応
概 要


Windows上で動作するゲーム、
スクリーンセーバー、
ツールや実用ソフトなどのアプリケーションを、
簡単に構築できるスクリプトプログラミング言語
「HSP 3.2(Hot Soup Processor 3.2)」の公認入門書です。
本書は、
プログラミング初心者でもわかるよう
Windowsプログラミングの初歩から解説。
HSPのインストールからエディタの使い方、
変数の使い方、
実際のプログラム作成までを詳しく紹介しています。
巻末には便利なコマンド一覧付きで、
付属のCD-ROMにはHSP 3.2とサンプルプログラム、
HSPユーザーが作った作品など全60本を収録。
Windowsアプリから3Dゲームまで作れます!


著者 	おにたま、悠黒喧史、うすあじ

価格 	2100円(税込)(本体2000円)

ISBN 	978-4-7980-2432-5

発売日 	2009/11/14

判型 	A5

色数 	1色

ページ数 	410

CD/DVD 	Windows

対象読者 	初級

シリーズ 	−



目次

第1章 HSPの準備

1-1 HSPのインストール
1-2 サンプルで遊んでみよう
1-3 いよいよスタート

第2章 プログラミングの基礎

2-1 プログラミングの準備
2-2 HSPスクリプトエディタを使ってみよう
2-3 超カンタンスクリプト
2-4 HSPに命令を出そう
2-5 スクリプトに旗を立てよう
2-6 これがランチャー?
2-7 変数を使ってみよう
2-8 さらに高度な条件判断
2-9 実行ファイルできちゃった
2-10 誰にもわからない数
2-11 文字がいっぱい
2-12 メモリいただきます
2-13 おいしく効率アップ

第3章 HSPプログラムの作成

3-1 デジタル時計の作成
3-2 メディアプレイヤーの作成
3-3 アニメーションの基本
3-4 テキストエディタの作成
3-5 シューティングゲームを作ってみよう!
3-6 ブラウザ実行プログラムの作成

第4章 HSPプログラミング詳説

4-1 ヴィジュアルノベルゲームを作ってみよう!
4-2 RPGの作成
4-3 スクリーンセーバーの作成
4-4 物理エンジンの利用
4-5 3Dゲームの作成

第5章 特製サンプルプログラム

5-1 CGビューアー
5-2 音声合成プレイヤー
5-3 RSSビューアー
5-4 インターネットブラウザ
5-5 Microsoft Excelの制御
5-6 動画データの作成
5-7 ふむゲーム
5-8 ブロック崩し
5-9 タイピングゲーム タイピングパラダイス
5-10 シミュレーションRPG 草原の攻防
5-11 変数データの保存・読み込み
5-12 WEBサーバーとの通信
5-13 コンソールCGIアプリケーション
5-14 ポーカーゲーム
5-15 Landing
5-16 Spaceship confrontation

コラム

DirectXとは?
HSPでどんなことができるの
HSP3.2の新機能
HSP2.61から新しく変わった部分は?
HSP2.61のスクリプトを動作させるには
HSPを使う利点は何ですか
OpenHSPについて
ステップ実行機能について
HSPドキュメントライブラリ
省略値について
自由に使ってかまわないのですか
フォルダの指定がうまくできないようです
ファイルの暗号化
拡張ランタイムについて
HSP3は難しい?
Peasエディタとは?
HSP3支援モジュール
Windows Vista上での注意点
MCIの奥深い世界
OGG形式の再生
音楽CDの再生
HSPCVプラグインを活用しよう
画像形式について
拡張プラグインとは?
COMコンポーネントの利用
gmodeでのコピーモードが正常に設定されません
HSPプログラムコンテスト
HSPで広がるパソコン教育
かんたん入力について
スクリーンセーバーの目的
wait20回の謎
HSP3の3D機能



各章の項目をひとつにしたモノを考えると
その章で作者が言いたい中身の宿題と言うことになります。

例えば、

第4章 HSPプログラミング詳説
4-1 ヴィジュアルノベルゲームを作ってみよう!
4-2 RPGの作成
4-3 スクリーンセーバーの作成
4-4 物理エンジンの利用
4-5 3Dゲームの作成

なら


HSPプログラミングの詳説として


ヴィジュアルノベルゲームを作るように

RPGを

スクリーンセーバーとして

物理エンジンを

3Dゲームとして


作るように考えるということです。



基本の次は
データと
動きの実行順番(アルゴリズム・ロジック・プログラム)
です。


動きは
まず、
キャラが
あるキャラに
座標上で
離れる、
近づく、
が基本です。

そのキャラクターが背景や目的地などの
何処かの座標になります。

障害物があればそれをどの方向にどうするかということになります。

そんな感じで見方と敵などのように
目印の変数(フラグ)を付けて判断します。


分からなければフローチャート(やPAD、UML)などを使います。

処理と判断と分岐の方向とジャンプの場所が図で分かればいいです。

実際は全て数字とメモリ(配列や変数など)の場所です。


機械語だと変数はレジスタ(短期)とメモリ(中期)とハードディスク(長期)です。

それに、変数のコピー、変数のビット操作、加減算、乗除算、少数、ストリーミングなどです。

後は、標準のスカラに対してのベクトルなどです。

それと、数字(データなど)の類を違う類にチェンジするなどです。


C++のように
ある類のプログラムをまとめて管理するものもあります。
C++はテンプレートと言うものを使い
変数を違うタイプに判断可能にして
データをクラス(とひとかたまりのプログラム・コード)で実行して
中の変数(データ・コード)を変えて使う方法もあります。
ただし、C++は使った変数は使わなくなったときに
使わないというメモリ上の消去の指示が必要です。


その点、HSPのようなスクリプトは

基本が数字(データ、文字)、変数、計算、判断、ジャンプが基本です。

それにOSで使う命令があります。

ゲームならグラフィック(2D、3D)、入力(キー、マウス、ジョイスティック等)に、

通信、3D計算、HSP基本命令、OS、位です。


必要なら計算とデータ操作の関連のものが必要です。



とりあえず、前提知識があるだけで違います。



書籍があったほうが何処にでも置けて
すぐに見られて見ながら出来るので便利です。

でなければモニター(ディスプレイ)を2台(2画面)以上必要です。
か、切り替えながら見なければなりません。

それが、C++やマシン語などならプログラミング(オフライン用)に一台以上、
ネット用(コミュ、情報)に一台以上、
その他に一台以上、
か、または、2、3台以上のモニター画面です。

コンパイルでOSで動かせるプログラムにすることを考えると
2台と(バーチャルOS(サーバーや他OSも含む)は必要になります。
(不安定になりやすい)



HSP3.2は「hsp.tv」から
http://hsp.tv/

フローチャート - Wikipedia
http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%AD%E3%83%BC%E3%83%81%E3%83%A3%E3%83%BC%E3%83%88

TOPITAL/構造設計支援 - PAD図
http://www.hitachi-system.co.jp/topital/sp/kouzou.htm

UML 統一モデリング言語 - Wikipedia
http://ja.wikipedia.org/wiki/%E7%B5%B1%E4%B8%80%E3%83%A2%E3%83%87%E3%83%AA%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E



基本データがあれば後はそれに沿って
自動で宇宙データを組み上げていくだけです。

提示例としてはパーソナルアクセスサーバーと
データサーバーと
リフレーミングサーバが在ればいいです。

ストレージの交換はダウンさせずに少しずつ行います。

サーバーのメンテナスのような交換は別のサーバーを予め用意しておきます。

CELLのようにデバッグミス、コントロールミス用に常に用意しておきます。

常時アクセスのあるパーソナルコンピュータにだけグリッドを使います。

因みにグリッドを使ったところは全体的に少し速くなります。

アクセスサーバーとデータサーバーが別ならば

時間経緯が別である空間が造り出せます。

これは只単にアクセス構成の問題なのです。

実際は、動き始めれば全て自動で行きます。

動的などの不安要素は分かるように初めから別にしておきます。


C言語だけでも出来ます。
HSPだけでも出来ます。

パソコン内の違うプログラムのような
同じコンピュータ内からの外側からの直接のプログラム同士でもやりとり出来ます。

通信の場合はサーバーと同じなので簡素化しても元は変わりません。

ただし、複数のモノが動いた時に
C++のようなマシンに直接アクセス出来るものでないと
受信と送信のスピードとタイミングの変化により
不安定になる場合があります。

受信側と送信側の通信速度とプログラム動作環境を多少考慮しておく必要があります。

スクリプトならばやり取りのスピードを落とし出来るだけ一度に
まとめて送信し、
同期をとりやすくしたほうがいいです。

最近、どこかでゲームの企業の者が通信についての出来ている技術について言っていました。
その言葉がプログラムをする者に役立つとおもわれます。
インターネットのニュースのタイトルに出ていたような気がします。

今回の説明はC言語やHSPだけのものではありません。C言語だけでも出来ます。

HSPならこのマニュアルを読んでください
hspext.as
hspsock.as
hspinet.as
hsp3cl

非同期通信は同期通信とは違いクライアントプログラムとサーバープログラムとがあります。
非同期通信がおすすめです。

C++ならDirectPlayもありますがWinSockのほうもいいかもしれません。
ひと昔前ならからDirectPlayでは低水準で使えませんでした。

よく探せばコードもダウンロードできる状態のはずです。

専門ならばクライアント・サーバーは関係ありません。
現在は非同期が可能な圧縮・解凍可能である不安定協調型の
ランダムマトリクス解析(エンコード・デコード)通信(動的ともいいます)があります。


プログラム同士のやり取りは直接ならインプットとアウトプットが可能ならなんでもOKです。

現在はWEBのあたりで詰まる者が多いので理解できるだけでもいいです。



初めてのものは手探りなので
全体をさらっとはやく眺めた後は
一つ一つ明確に見ておくことです。

分からなくなったら

他や全体を見ることをするようにしましょう。

気分転換も良いです。

やろうとしているときは否定が入ると善くありません。

実際のプログラムは組んで実行して確かめるのも早道の一つです。

コードの命令実行の意味を考えて下さい。

それと普通は行なわない方がいるようなので
練習として一つ
プログラムコードが組み上がった全体を意識します。

それから部分に行きコードまで何となくでいいですから
頭の中で模索しておきます。

逆にそのコードから全体へとも行きます。

それを行なっておくと後で違ってきます。

自分の知っていることだけで構いません。

何が必要かも分かってきます。

まず、それも必要です。

学習全体に必要なものでもあります。

時々、ほんの一瞬でもトレーニングしておけば違ってきます。

ネットなら検索やリンクなどのそこにたどり着く方法を知っておくと便利です。

ポータルなども詳しく見ると意外と幅があり便利ですよ。

意外と知らない気づかない便利なものが近くに眠っていることもあります。

ブックマークのようなものは活用したほうが便利です。

検索なら「ワード」です。

情報企業でもかなり気を遣っているようですよ。



hspextにあるものも使えます。

・クリップボードアクセス命令
Windowsのクリップボードにデータを転送、または取得するための命令です。
クリップボードに、テキストや画像データを送ることにより、他のアプリケーション
とのデータ交換が容易になります。

・アプリケーションキャプチャー命令
アプリケーションキャプチャー命令は、Windows上で動作しているすべての
オブジェクトの情報を取得したり、メッセージを送信することのできる非常に
強力な命令群です。
これにより、HSPから他のアプリケーションの動作をコントロールすることが
できるようになります。
詳しい使い方は、「アプリケーションキャプチャー命令の使い方」の項を
参照してください。


特殊代入命令を使いメモリアドレスをC言語などのポインタ等に渡す。
アドレスの変更に注意する。
dup
dupptr
mref


ウィンドウは別につくる?、透明、最小化などの方法もあります。

HSPの場合は「プログラミング事典」に載っていました。(他にリファレンスブック等も…)

このように他にも様々なものがあります。

HSPもOSやアプリケーションにアクセスできるので複数の実行中のファイルとの通信が可能です。



ワードが分からず思い浮かばない時はそれを検索するとよいこともあります。

Google サジェストとは何ですか。

検索窓に入力するにしたがって、
Google サジェストがあなたの入力を予想し、
リアルタイムで候補になり得る言葉を表示します。
例えば、"科学" と入力すると、
Google サジェストは "科学博物館" や "科学技術庁" を
候補としてあげるかもしれません。
同様に、"おんせ" のように言葉の一部分を入力すると
Google サジェストは "温泉"、 "温泉旅行"、
"音声" や "音声認識" のような候補を表示するかもしれません。
入力途中で目的の言葉が候補から見つかった場合、
上下の矢印キーかマウスで選択し、
さらに右矢印キーで絞込み検索もできます。

Google の特殊な検索機能 - Google ヘルプ: 検索機能
http://www.google.co.jp/intl/ja/hep/features.html

Google 日本へ
http://www.google.co.jp/

理解できてきたらこのようなものも見てみると面白いです。

Yahoo!デベロッパーネットワーク - テキスト解析 - 日本語形態素解析
Yahoo!APIで特徴語抽出を作る((モバイル)キーワードアドバイスツール)
http://developer.yahoo.co.jp/webapi/jlp/ma/v1/parse.html




この手のものはパターンは一緒ですので
サイトなどでコードを共有している所が
あればそれを使えばいいのです。

それとスクリプトはC++等のコンパイラとは違い
簡素に出来ているので作り易い反面
スピードと複雑性がなくなります。
コンパイラの場合は、文法等が分かり難く
動的処理などの中身の見え難い
コード自動作成も考えなければならない
時間も必要になります。
そこでAIコード作成が必要なのですが、
これは大手にあると想います。

まだ完全には出来ていないようなので
AIアドベンチャー
の簡単なヒントを言うと
まず、文章データ(ワード)
はきちんとひとつひとつを様々なところで
使えるようにしさらにコンピューターで
文章データパターン(ワード)を解析して
そのデータをもとにしてコンピューターに
手伝ってもらい
自動で文章が作成出来る様にします。
さらに、ストーリーパターンも同じようにして
解析していきそれを同じように
C++等の動的処理に落とすと
出来上がります。
ちなみに、人工知能と物理処理は
知っていた方が時間が掛かりません。
ただ、これはそのものを使うのではなくて
全てをうまく組み合わせて使わないと意味が無いのです。

人工知能システムは全てを
ひとつのアルゴリズムにすることにあります。

それで完全人工知能会話が出来ます。

これらは1990年には完成していいはずなのですが。

私の中では1988年には
AI・RPGとAI・AVGが完成しています。
当時は、プログラムごと頭の中で2Dと3Dのゲームが動いていました。


最新理論が出来上がっています

亜光速の未来の科学

亜光速理論まで書き上がっています

私の独自理論です。

ここだけですよ!!!

すぐに使用可能です。

1973〜1978年には完成しています。
他人にはテレパスでは無理です。過去で不可能でしたから

ただうるさいだけです。夜までうるさかったです。


普通は、個人の場合は簡素に
システムとメニューとデータ設定を考える必要があります。

グラフィックや音楽などは初めは
自分の好きなように作ってしまえばいいのです。

動きだけ何かを参考に出来ればいいです。

スピードが必要なもの以外はいけます。
簡単なAIや物理計算なら
ゲームに組み込んで動かすことも可能です。

思ったよりはそんなには難しくはないはずです。

基本は一緒ですから。

初心者ならこんな感じでいいと思います。

フリーのものはプロのと違い
全て出来る訳ではないので
簡単機能が再現しやすいです。
逆に大企業のものは
簡素にしにくく戦略など
複雑になりやすく
お金が絡むので面倒が入ります。

全ての知やシステムやノウハウなどを
機種やスタッフ間でコンバート可能に
作りプログラムも機種間でコンバート実行可能に
作り上げて活きます。

スクエア・エニックス等の仕組みをみればわかります。

これはどうにでもなります。


昔なら、追う、逃げる、避ける、取る、使う、そこに行く、
追跡と逃避、その位で十分ゲームになりました。


この位は座標位置の計算だけですので簡単です。


それに、文字、音

人工知能(AI)

パターン、ムーブメント、最適経路探索、

行動計画(データ、ルール、プログラム):ルールベース、

関係重要度による移動方向と位置と集団行動:フロッキング、

パラメータやステイタスによる行動パターン:ポテンシャル関数、

そのキャラの行動による
乱数を含めた最適行動パターン:有限状態機械、

上限下限による曖昧処理:ファジー、

複数入力の平行同時アナログ論理計算処理:ニューロ、

源パターンデータによるパートの最適な組み合わせの
ランダム化による・てん:遺伝処理、

 

ポイントにパラメータを持たせ全体を一回で関係を組み上げる
その時点で将棋ならプロが何となく盤面を見たのと
同じデータが得られます。

それを同時に動かし一つ一つのデータを得る。

今までのデータとルールで状態評価マトリクスを創り出す。

この場合の注意としては
普通、ルールとデータを逆におくということです。

ルールと言うのは経験なのでデータと同じです。

すでにあるデータは実際なのでルールと同じです。

人工知能会話アドベンチャーゲームが出来ないのは
これを中心としたモノが無かったからです。

簡単なものなら、文章をデータベースに入れておき、
ユニットで組み合わせて少なく細かい部分は単語を入れていく。

ユニットで組み合わせて少なく細かい部分は単語を入れていく。
AVG作成ツールで必要なのはこれです。

以外とありません。
もとがあれば自然と出来上がります。

あとは数十万円以上で形態語解析データをもらい(単語・連語・文章語など)
その意味をデータにする地道な作業が足りないのです。

それを走らせ結果をルールにする必要があるのです。

マイクロソフト・グーグル・ポータル(ストリーム)です。


ヒントを書いておきます。

動的処理がある場合はエンコード・デコードのような感じで
ランダムマトリクス解析する必要があります。

LU解析等と最適化等では足りません。

実際はマトリクスは5次元以上の配列を使う必要があります。

次元を超えて縦に斜めに横にいく必要もあります。

アナログ論理素子を使う必要があります。

デジタルでは足りません。

その上でネットワークを作りマトリクスに落とす必要があります。

ルールもデータも無いときは
経験としてデータを溜めた後
それらが最適化されていきルールになっていき
その処理によりデータが出来ていき
入力があり中のアナログ論理素子ネットワークにより
最適構成による回答が出来
出力されてまた帰る
その処理がばらばらに動く
という感じが基本となります。

その上でそれぞれによる最適アルゴリズムを使います。

これでeliza1,2,3,4,5,6,7,8,9,10以上可能となります。


コンピュータープログラムは、
文字という数字を計算し比較して判断した
(繰り返しもあり)(順も飛び戻る)
その積み重ねのまとまとまりをひとつとしていくらでも
ミクロやマクロがある様々な文法や単語がある言語となる。

つまりコンパイラがあればいい、
オートプログラム作成とプログラム解析である。

実際は、計算とプログラムというマクロで
可能となるコンピューター会話がある。(人間会話)

決まった変更点があればクラスとなる。(関数)
変更点がなければテンプレート(マクロ)となる。
様々な言いかたあるがまとまりかたの違いとなっている。
これは、言葉と変わらない。
それを自動で行えばオートプログラミング、つまり動的処理となる。

プログラムは、もとの要素は単純で少なく、
分かりやすくなっているので、
もとが分かれば、
全体に、簡素に出来る。

変数は数字と文字の2つである。
|      |
|      16ビット=ニーモック
64ビット〜
プリプロセッサ=ハード
        CPU命令

現在のコンピューターは、
2進の位取りで1桁が1bitになる。
20bit=1048576=約104万であり、文字数は足りている。
8bit=1byte
単語なら約1000万=約10,000,000=10M
10M*4=40M(8bit*4=32bit)
40Mbyte
10万×100
100万×10
約33万×約33万
単語=10〜100
10万〜100万=単語数

NOT,AND,OR,+,-,*,/,and,or,not,\,=,<,>,!,==,<=,>=,!=,<<,>>,√

 2分木
(アナログ)?
AND 1 (FULL)
OR 0.9〜0.1(未)
0 (NULL)

NOT 1-0.4=0.6

AND&OR
(NOT)( (NOT)? / (NOT)? - (NOT)? / (NOT)? )

-=/
-=*
-=-
-=+

NOT=( )
NOT=NOT
NOT=√

X Y Z h/
−・−・−=− 
P V T Z×

円周率=π



rad=ラジアン

計算なら
スカラ
ベクトル等

よくある計算式は使う

アナログ論理素子計算

変数とは数字と
それで表す文字等
1種類で全てを表す

条件判断

繰り返し
    −ブロック(まとまり)
  −−−単数
     複数・処理 ラベルもあり
     並列

ラベルジャンプ
−サブルーチン・関数・クラス・別・他 のまとまり

変化 ユーザー定義 マクロ命令
アナログ、つまり連続的な物理量
         テンプレート

システム変数

つまり数学

それに配列

関数の値は変数にする

文字という数を計算し比較判断
の積み重ねなので
まとまりをひとつとすれば
いくらでも少なくなる変更も決めておけばいい

変更なければライブラリ

変更ヶ所あり
クラスの意味はじつは単純

A=数字

B=基準
  −セットの数=アナログ

すなわち全ての小数(点)が普通となるため
数字は一の最大数の小数が
普通になる
実際は、数の種類が一つに

この場合は、
位取りは、10進数のままでまとまる。
もよい。なぜなら。
内では同じだからです。


今のはどこにもないオリジナル完全に動く人工知能言語です。

実際の使い方は、エディターにもあります。
まず、まとまりをテンプレートにして
中の関数を変更可能にして使い
それをクラスでオートプログラムメイクを行い
自動で動く解析アルゴリズムとなります
これをつくるのは、私が考えた通りなら
10分で完成する言語です
なぜなら、不思議はありません。
1キーがそのまとまりに対応しており
たった1行で全体のプログラムとなり
パラメータという変更ヶ所の値も1キーで済みます
これも並列に行で通します

中身が分からず見難いということにはなりません。
横にきちんと表示されています。
中もツリーやパラメータやグラフなどで確認できます。
初心者ならまとまりをひとつひとつ確認しながら使う。
上級者なら複数のメインキーを一度に押し直接入力されていきます。
これらがアナログ位置確認知能アルゴリズムによって
間違いがある程度正されていきます。
後が楽になります。

1キーの文字もこのように位置で決めます。
アルゴリズム デザイン アーティファクト インテリジェン です。
A.I.A.I.

完全な人工知能の意味です。
 1  2  3  4  5  6  7  8  9 10 11 12 13 14
s. v. l. c. c. a. o. f. a. m. a. i. c. c.
A B C D E F G H I J K L M N
A. I. A. I. A. L. N. W. M. C. S. G.
15 16 17 18 19 20 21 22 23 24 25 26
O P Q R S T U V W X Y Z


*説明の方法が違うので参考になります。


プログラミングはゲームに当てはまった数学と物理の組み合わせで決まる。


単語説明
状態=ステイタス
フロー=浮き沈みのあるという意味。
数・字=数字と文字
キャッシュ=一時的に数・字を出し入れする
データ=ゲームに必要な数・字
変数=変わっていく数・字の入れもの
ストック=数・字をしまっておく
プレイヤー=操作する人間
NPC=自動的に動くもの


初心者のプログラム(簡単なプログラムはこのようになっています。)


・初期設定
 データ入力(ファイル・値 ロード) 音・絵・モデル・マップ・ステイタス
 値設定(ゲーム中身の表示・音・入力の設定) マップ 画面 音 NPC・プレイヤー

・メイン 外部分のプログラム

・サブ

 ・プレイヤー
  操作入力
  キャッシュ変数←配列変数にストックされたデータ(ステイタス) NPC プレイヤー
  ・入力処理
   アクションなら動き 座標 Xよこ−←+→ Yたて−↑+↓
   入力に対する動きの処理 何か決める 反応 押す はなす ボタン ○●◎ 
  動きの処理で変わったキャッシュ変数をそれぞれの表示や音等の表現の出力命令入力する
  ストック配列変数←キャッシュ変数 をストックする 次にそなえる
  メインへ

 ・NPC(背景の障害物もいっしょに考える(基本は同じです))
  ・キャッシュ変数←配列変数にストックされたデータ(ステイタス)NPC プレイヤー
  ・適応処理
   ・アクションなら動き 座標 Xよこ−←+→ Yたて−↑+↓
   ・NPCとプレイヤーと他のNPCを比べる
    距離と時間と速さと敵・味方・中立等の関係の組上げ
   ・それを座標の位置にかえて表示と音を決めて状態を変数に入れる(キャッシュ)
変わった状態(ステイタス)のキャッシュ変数をそれぞれの表示や音等の表現の出力命令に入力する
  ストック配列変数←キャッシュ変数をストックする 次にそなえる
  メインへ

・メイン
 ・プレイヤーの処理へ
 ・NPCの処理へ
 ・画面・音・ハード(ソフト)へ…
 ・音 音は命令出力し(必要時は上記のようにサブで)
 ・画面 画面はプレイヤーのステイタスによって命令へ出力し(必要なら?へも)
 ・ハード(ソフト)−通信等です 外部装置へもありです



アルゴリズム・ロジック


会話文章の種類
キャラクターによる違い … ○ @ABCD…状態による違い

単語と組み合わせ 文章をデータをつくっておく 使う時に選ぶ

目的の状態
 位置・方向・速度・時間・強弱・会話・目的の照合
  キャラクタによる種類をつくる

 あとは、キャラクター・背景・風景とBGM・効果音 で表示・表現の動き


地図・迷路はポイントどうしからのラインがあるなら(設定されているなら)
距離と分かれ道を(マス目)
筋を計算しておいて目的とまわりの近くの相手により道を変えていく

一般キャラはライン上をゆらゆらと通って目的につけばよい
ラインの時間(コマ)が計算されていれば時間がとんでもきちんと通っている
 時間があう

ポイントでまた考える思考する キャラクタが設定により選ぶ


リーダーの進む方向にそって進んでいく
キャラクタ同士がある決まったエリアにさわらないように前に障害物をよけながら進む



メニュー 移動・攻撃・道具・状態・保存・再生・終了・命令・計画 等のように…

操作入力 道具 アイテム・魔法・使用…
     攻撃
     避ける
     命令…
 移動

移動 位置・方向・速度…
会話 時間・強弱・目的…
目的(の照合) 自・他・もの・地図・背景・等…

・アルゴリズム←見えないそれを見えるとして表した構造・組み合わせ。
・ロジック←つながるそれぞれの筋・通り道。1列1行の文章の表現と同様
*見えない見えにくいもの、それが見えて他のつながりが見えればよい。

筋・分岐・並列・同時等
− <  三= :::
 筋−つながって見えるものたち
分岐−分かれてつながって見えるものたち
並列−つながらずにともにあるものたち
同時−つながらずに時が同じにあるものたち
 これで基を組み立てていきます。
 紙に書くと分かりやすい。または、図等のソフト。
絵なら方眼用紙のようなもの(マトリクス)で分かります。
 (グラフィック画面がそれです)
音ならたてのゆれがよこの時間になります。
 (音程・細かければ高く、上下が大きければ大きい音)と言う意味でいいです。
においも音と同じゆれの圧力とみていいです。光のように見える強さです。(周波数)。
味もにおいと同じ意味です。
体感は上のものに位置(座標)(時間)(空間と距離の連鎖)と
触感の圧力・熱t・振動という原子・分子のマクロ(大きい)位置と時間の変化です。
 これをまず マトリクスという配列(2次元のマス目がよい)で表します。
  これを上から文字のように順にすると1列の意味です。
何個抜いて飛んだか+(プラス)が幾つかでも法則です。
これをたし算・ひき算・かけ算・わり算・ルート・ベクトル(マトリクスも)にしていきます。

順に合わせたらプログラム(計画)になります。
数字・数の入れもの、     入れものの中の数の移動・コピー、計算。
(数・文字・記号(値)(変数)(命令・式・ )

グラフィック・表示・画面
サウンド・音・効果音
操作・キー・マウス・ジョイスティック・カメラ・タッチ・動き等

通信 他多数… ファイル(外部ストレージ・SSD・(メモリ)*ハードディスク、(等))

文字列・数列 操作. 数列はベクトル・マトリクスの時もある(配列等)

分散=集中 基本公式

a[1]+a[2]+a[3]+a[4]+a[5]=b[1] のような感じのカテゴリー(種 類)分け
分散のほうは決まった固定の標準値も源につくる

集中のほうの値を分散の標準値にしてもよい

これを配列等のマトリクス等にしてもよい

使いどころによっては全体をまたはどこか短略化できる

統計と標本と確率(確定)と同じ理論(論理)です

式を単純に高速に短かくしていきます

*このサイトは外国系の教え方も混じっています。

書籍
「HSPでつくる簡単3D ゲーム」
に載っているサンプルゲームの
スティール・ランナーを改造しました。


HSPの書籍はキャラの動きのアルゴリズムがないので
それがあれば初心者でも作ることが出来ますよ!

サンプルはネットや書籍に沢山あります。

現在は性能や環境も含めてかなり便利なので
初心からでもここまでは出来るはずです。

ちなみに、
これをそのまま他のものにして少し変えつつ
3Dも含め まるごと全て
HSP2.61からHSP3.1にコンバート
してあります。
これはHSP3.2にもなります。
最初から最新ヴァージョンで造れば
標準セットだけで全て可能です。

現在のものはそうなのですが
これはわかりやすいし
このインタプリタはかなり万能に使えます。

あとは、コードエディターを
知らない一般にもワンキーで簡素に
使えるようにするだけです。

プログラムで出来ると言う事はそのままハードにも落とせます。

ハードにあるものはソフトにと落とせます。

理論にあるものはエミュレートで量産に落とせます。

それはシミュレート出来ます。

文字を移して書き込む時等
左ドラッグで文字を選び(左で選び押したままで移動コピーできる)
右クリックでコピーペーストする時に
右クリックをせずに
Ctrl+Z(元に戻す)
Ctrl+X(切り取り)
Ctrl+C(コピー)
Ctrl+V(貼り付け)
Delete(削除)
Ctrl+A(すべて選択)
ショートカットキーを使い速く便利に
ノートパッドやエディターで試してみてください。
他にもいろいろとあり便利です。

ショートカットは覚えると便利です。
OS上の操作だけでも使いやすくなります。
たとえば、Ctrl+何かのキー などの右クリックした時にある
アルファベットだけでも覚えた方がいいです。

ファイル操作がOSの基本です。

ダウンロードして遊んでみてください。
短いプログラムでの動きをつけてあります。
コードは手直し無しなので。
いちおうウィルスチェックはしてあります。
∨  ∨ ∨ ∨ ∨
3d-robot-game.zip ダウンロードしてください!!
 robot  

私のブログ『頭の善い役立つ』の左の

「カテゴリ」の

「私のオリジナルゲームについて」をクリックすると

他にも続きのサンプルがあります。

ただコードは非常に見づらいとおもいます。

http://kiri-h-nikki.seesaa.net/category/5902866-1.html

AnyWare+:カンパ受付

AnyWare+:ダウンロード

HSPの説明の書籍にももっと分かりやすいものがあれば分かりやすいとおもいます。

プログラミングには、私の書いたエディターがないと無駄です。
効率どころではありません。


わたしのゲームの動画をみていってください。

適当な照準で打て!

Kramer processing


世界にない私だけの最新理論が出来上がっています

亜光速の未来の科学

亜光速理論まで書き上がっています

私の独自理論です。

ここだけですよ!!!

公開はたった少しの一部ですが、すぐに使用可能です。

私にも生活があるのでただでは不可能です。
どこにもないのはトップまで確認済みです。
あれば公共で広まっています。


トップに戻る

スクリプトプログラミング その2に行く

inserted by FC2 system