OpenTKでアプリ ぴくせるぶろっく(仮)

OpenTKを使って何かアプリを作ろう(*´ェ`)

2Dの画像を読み取り3Dデータにして書き出してみよう(*´ェ`)

ぴくせるぶろっく(仮)

書き出された3DデータはWavefront OBJ形式でLightWave3Dに読み込んでアニメーションさせてみた(*゚ェ゚*)

2D画像のピクセルを正方形の3Dのブロック状にするだけで
アプリに表示される3DビューはX-Y-Z軸回転と視野角、拡大縮小機能が付いてる、おまけみたいなもの(*´ェ`)

その3DビューにOpenGLを使って3Dモデルを表示させているのだ(*´ェ`)

書き出されたWavefront OBJ形式のファイルはPhotoShopでも読み込めたりする(*´ェ`)

LifeSim – 01

各パーティクルを男性(青色)、女性(赤色)に分けてランダムウォークさせ、同じ座標であれば結婚して線を結び色を変える、男性は緑色、女性はピンク色(*´ェ`)
何のひねりもないアイコンを作ってパーティクルに割り当てた(*´ェ`)

既婚者と同じ座標になっても何も起きないので何か起こしたほうがいいのか(*゚ェ゚*)
フィールドは上下左右ループになっているので線が無駄に長くなってしまうので壁を作ってフィールド内に閉じ込めよう(*´ェ`)

既婚者の線がある一定以上になると離婚ということにしてもいいかもしれない(*´ェ`)

実装予定
・結婚してから一定以上経つと子供を産むようにする、子供は両親の情報を受け継ぐ
・フィールドは壁でくくる
・寿命を与える
・既婚者同士の距離が一定以上離れると、性格の不一致により離婚する

人工生命の始まり始まり

人工生命(Artificial Life)に挑戦してみよう(*´ェ`)
人工生命といってもロボットや機械といったHard Artificial Lifeではなく、生化学的なWet Artificial Lifeでもなく、ライフゲームのようなSoft Artificial Lifeなのだ(*゚ェ゚*)

プログラミング言語はC#
グラフィックライブラリはOpenGL
アプリケーション名はLifeSimにした(*´ェ`)

LifeSim – 00

一つ一つの点が個体生物として
移動はランダムウォークで同じセルに重なると一方は死滅する
学習能力はない

というとっても単純な生物(*´ェ`)

この単純な生物に捕食・繁殖・進化・遺伝・学習といった機能を付けていく(*´ェ`)

一種類の生物だけでなく多種類の生物も欲しいし見た目の変化なんかもあった方がいいな(*´ェ`)

草生成プラグイン

ランダムに配置&ランダムな向き&ランダムな高さを設定できるようにしました~(・ω・)~
UIはこんな今の所こんな感じでっす
Programming10
1000草ぐらい、くさくさっと生成されます、左下に進行具合なバーが表示されます
Programming11
UVも自動生成されて、草っぽい画像を貼ってみる。
一枚だけ貼ればいいので楽々(σωσ)
Programming12
レンダリングしてみる
work18