FPSを作ってみる@wiki
12)
最終更新:
slice
-
view
(2014/12/31)
続く)と書いていたペンタブのDIY保護シート云々は気力が続かないので来年に持ち越し
今の所全くヨレてないからこれが最終形態となるか。タッチ機能も問題なし(使わないけど)。
今の所全くヨレてないからこれが最終形態となるか。タッチ機能も問題なし(使わないけど)。
一人で「今年を振り返る」
一番大きな変化は絵を描くようになったのと、Google Playへ自作アプリ(AppWidget)を公開した事。
なんか、今年はFBXに苦しめられていた思い出しかないな…
FBXが結構複雑だったとか、BlenderのFBX出力が中途半端だった等。
Androidアプリに署名するためのパスワード忘れてOpenCLでアタックかけたことや、
GLSLのシンタックスハイライタなんてのも作ったなぁ、でも印象薄い。
そういえばvimを本格的に使いだしたのも今年だったか。
なんか、今年はFBXに苦しめられていた思い出しかないな…
FBXが結構複雑だったとか、BlenderのFBX出力が中途半端だった等。
Androidアプリに署名するためのパスワード忘れてOpenCLでアタックかけたことや、
GLSLのシンタックスハイライタなんてのも作ったなぁ、でも印象薄い。
そういえばvimを本格的に使いだしたのも今年だったか。
一人で「今年の漢字」
絵、ですな。
今年の6月までは絵なんて一生無縁だと思っていた、
それこそ中学とかの美術の授業で嫌々やっていたきりの自分が、自主的にである。
しかも、もっと上手くなりたいと思うようになった。
今年の6月までは絵なんて一生無縁だと思っていた、
それこそ中学とかの美術の授業で嫌々やっていたきりの自分が、自主的にである。
しかも、もっと上手くなりたいと思うようになった。
きっかけは多分、twitterで流れてくる絵だろうね。
あんだけ毎日毎日流れてくれば自分もちょっとは描きたくなるものよ。
あんだけ毎日毎日流れてくれば自分もちょっとは描きたくなるものよ。
一人で「反省会」
うん、あれは…年明けまでは無理だねとキッパリ言ってしまう。
まだわずかでも時間があるのに出来ないとかあまり言わない主義なんだけど
プログラムに関してはそう思っていた物が出来た試しが無いもので。
勿論努力はするけど。
まだわずかでも時間があるのに出来ないとかあまり言わない主義なんだけど
プログラムに関してはそう思っていた物が出来た試しが無いもので。
勿論努力はするけど。
原因は明白、漫画である。
だって決めたの8日でしょ、14日までAndroidでNDKで無駄に頑張ってたのは良いとして
何でそっから漫画なんか描き始めるかなあという話。結局24日(中2日はサボり)までかかってるし。
で、自作エンジンを”ちゃんと”Androidで動かすのになんやかんやで28日までかかってて
今度はゲームループ(ゲームの流れを記述する為のクラス群)の設計が甘い事が判明して
それをやり直しで今日までズルズル。
どのくらい修正が必要だったかGitHubのコミットを見てお察し頂きたい。
だって決めたの8日でしょ、14日までAndroidでNDKで無駄に頑張ってたのは良いとして
何でそっから漫画なんか描き始めるかなあという話。結局24日(中2日はサボり)までかかってるし。
で、自作エンジンを”ちゃんと”Androidで動かすのになんやかんやで28日までかかってて
今度はゲームループ(ゲームの流れを記述する為のクラス群)の設計が甘い事が判明して
それをやり直しで今日までズルズル。
どのくらい修正が必要だったかGitHubのコミットを見てお察し頂きたい。
たらればになるけど
もし14日の時点で「いや、この程度自作エンジンなんか必要ない。このまま行く」としていれば漫画の期間を考慮しても多分、完成してた。
それか、手間のかかる漫画ではなくイラスト一枚にしておけば…
なんだか凄く申し訳ない気分に。
もし14日の時点で「いや、この程度自作エンジンなんか必要ない。このまま行く」としていれば漫画の期間を考慮しても多分、完成してた。
それか、手間のかかる漫画ではなくイラスト一枚にしておけば…
なんだか凄く申し訳ない気分に。
前のログ確認してみたら去年もその前も出来てない(か、動画でお茶を濁してる)のよね。
年明けてからあっちへふらふら、こっちへふらふらなのも変わらず。これは死ぬしか無い。
年明けてからあっちへふらふら、こっちへふらふらなのも変わらず。これは死ぬしか無い。
この見通しの甘さは本当、何なんだろう。
自分に「新年の目標なんか書く気が失せる位」腹が立っている。情けない。
自分に「新年の目標なんか書く気が失せる位」腹が立っている。情けない。
来年から
目標は上述の通り語る価値なんか無いと思ってるのでともかく、
色々と自重しない年にしたい
具体的にはtwitterやpixivでエロとかグロネタその他今までなんとなく遠慮してきた分野を解禁する。
あと思った事は嫌われてもいいから言う。直前で我慢して良かったケースはあまりなかったように思う。
色々と自重しない年にしたい
具体的にはtwitterやpixivでエロとかグロネタその他今までなんとなく遠慮してきた分野を解禁する。
あと思った事は嫌われてもいいから言う。直前で我慢して良かったケースはあまりなかったように思う。
そんな感じで、行ってみたいなと。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/28)
Android
ほとんど自作エンジンをAndroidで動かす時のバグ取りに終始してる気が。
前に動いたと書いたけどその後もポロポロと不具合が出てきて剛体物理どころじゃなかった。
しかもNDKでデバッガを使う方法がまだイマイチ分かってなくてデバッグの効率がすこぶる悪い。
原始的な方法(いわゆるprintfデバッグ)で頑張っては見てるが
今までデバッガ頼りでerrorでもwarningでもない、純粋なログ出力というのを殆どしてこなかったので
何処でコケたのか突き止めるだけで一苦労。
ログがあれば開発機以外でのデバッグに役立つから、次回は改善したい…
前に動いたと書いたけどその後もポロポロと不具合が出てきて剛体物理どころじゃなかった。
しかもNDKでデバッガを使う方法がまだイマイチ分かってなくてデバッグの効率がすこぶる悪い。
原始的な方法(いわゆるprintfデバッグ)で頑張っては見てるが
今までデバッガ頼りでerrorでもwarningでもない、純粋なログ出力というのを殆どしてこなかったので
何処でコケたのか突き止めるだけで一苦労。
ログがあれば開発機以外でのデバッグに役立つから、次回は改善したい…
ちなみに不具合というのは、具体的に言うと一時ファイルのパス取得がPC(WindowsやLinux)とAndroidで違ってて場合分けしなきゃいけなかったり、
Androidの場合にはSDLの初期化関数を読んだ後に追加でlibEGL.so (OpenGLの初期化ライブラリ)を読んでおかないとOpenGLのコンテキスト作成でエラーが出てしまうとか、そういう類。
Androidの場合にはSDLの初期化関数を読んだ後に追加でlibEGL.so (OpenGLの初期化ライブラリ)を読んでおかないとOpenGLのコンテキスト作成でエラーが出てしまうとか、そういう類。
なんにせよ本題が進んでおらず、非常に不味い状況である事に変わりなし。
ペンタブ
ペンタブの盤面保護について。
intuos proの方を使ってる人は専用のシートが売ってるからそれを貼って終わりな話かもしれないが…
intuos proの方を使ってる人は専用のシートが売ってるからそれを貼って終わりな話かもしれないが…
自分も他の人と同じように(?)ペンタブに摩擦の調整と保護シートも兼ねて紙を張ってるんだけど
描いてると微妙にヨレてくるよね、というのが悩み。
ペンタブで何か描く時には長時間手を置いてる訳だから当然汗などの湿気にさらされる。
湿気を含むと紙の繊維がほぐれてもろくなり、またシワも出来る。
劣化で紙が浮いてダブルタップ判定されたり、直線を引く時シワにペン先が引っかかったりするとこれが非常にストレス…
描いてると微妙にヨレてくるよね、というのが悩み。
ペンタブで何か描く時には長時間手を置いてる訳だから当然汗などの湿気にさらされる。
湿気を含むと紙の繊維がほぐれてもろくなり、またシワも出来る。
劣化で紙が浮いてダブルタップ判定されたり、直線を引く時シワにペン先が引っかかったりするとこれが非常にストレス…
御託はともかく、多くの人は紙の適度な摩擦と適度な耐久性ということで耐水紙を貼るわけだ。
自分の場合は「アピカ ツインリングノート レインガード」という撥水加工がしてある特殊な紙を使っているのだが、
こいつはユポとかのちゃんとした耐水紙より値段が安い分か、
あくまで濡れても繊維がほぐれて破れたりしない程度の耐水性なので
コピー用紙よりマシとはいえ単に貼るだけだと、ものの1時間でシワが寄ってくる。
で、何とかならんかなぁと少し前から試行錯誤してる訳だが…(続く
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
自分の場合は「アピカ ツインリングノート レインガード」という撥水加工がしてある特殊な紙を使っているのだが、
こいつはユポとかのちゃんとした耐水紙より値段が安い分か、
あくまで濡れても繊維がほぐれて破れたりしない程度の耐水性なので
コピー用紙よりマシとはいえ単に貼るだけだと、ものの1時間でシワが寄ってくる。
で、何とかならんかなぁと少し前から試行錯誤してる訳だが…(続く
(2014/12/24)
漫画完成
遂に完成した。やっとプログラミングに集中できる。
いつもの事ながら、wikiにはそこそこ解像度版を、高解像度版はpixivへ上げた。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
いつもの事ながら、wikiにはそこそこ解像度版を、高解像度版はpixivへ上げた。
(2014/12/23)
漫画
なんだかんだであと1コマだ!時間かかりすぎて死ぬ。
1ページ目より2ページ目の方がクオリティ高い!凹む。
クリスマス絵をもう一枚描くのは気力が持たないので漫画と兼用にする予定。
1ページ目より2ページ目の方がクオリティ高い!凹む。
クリスマス絵をもう一枚描くのは気力が持たないので漫画と兼用にする予定。
あ、ちなみにこの帽子みたいなのはナイトキャップといって、漫画だけのものじゃなく実在する。
プログラム
自作ライブラリがAndroid向けにビルドできて、動作確認もできたねという段階で止まってる。やばい。
そうだな~この調子だと今日中に漫画を仕上げてアップロードして、そこから急いでとりかかって…
うん、まぁ2D剛体物理だけになるね。こりゃぁ。
そうだな~この調子だと今日中に漫画を仕上げてアップロードして、そこから急いでとりかかって…
うん、まぁ2D剛体物理だけになるね。こりゃぁ。
本当は関節とか、流体物理とか、3Dなんてやってみたかったがいつもながら見通しの甘さによって無理。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/20)
steamのセールに関連した絵を描く予定で、始まるのは20日くらいかなあと思って下書きだけしていたら18日からだった罠。
まぁいい、クリスマス絵だけなんとかしよう。
まぁいい、クリスマス絵だけなんとかしよう。
漫画は・・・一応塗ってみてる。
レイヤーの構造とか試行錯誤だし、
初め厚塗りでやってみて、やっぱ時間かかるやと思い、アニメ塗りにするもなんだかしっくりこないのでまた厚塗りにした経緯もあってか(ついでに2日ほどサボっていた)
まだ一枚目が終わった段階である。
レイヤーの構造とか試行錯誤だし、
初め厚塗りでやってみて、やっぱ時間かかるやと思い、アニメ塗りにするもなんだかしっくりこないのでまた厚塗りにした経緯もあってか(ついでに2日ほどサボっていた)
まだ一枚目が終わった段階である。
いやいや本当、時間かかるねーこれは。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/16)
線画も大体終わった
線が重なってるとこはこれから消すにしても、やっぱり塗れる気がしないな…
ちなみに使ってるソフトはClip Studio Paintなんだけど
画面をキャプチャした後のリサイズとか加工はわざわざGimpを起動せず同ソフトでやればいいじゃんと思った。
windowsでしか動かないのが難点だが。
画面をキャプチャした後のリサイズとか加工はわざわざGimpを起動せず同ソフトでやればいいじゃんと思った。
windowsでしか動かないのが難点だが。
プログラムの方
剛体シミュ作るとか言っておいて例の再発明から手付かずなのは地味に不味いよなぁ。
とはいえ漫画モドキもこの調子で一気に終わらせないとまた下書き止まりの仲間入りが確実だからなんとも。
まずは絵に集中して1つずつ片づけるしかないかね。
とはいえ漫画モドキもこの調子で一気に終わらせないとまた下書き止まりの仲間入りが確実だからなんとも。
まずは絵に集中して1つずつ片づけるしかないかね。
でも20日くらいまでにもう一枚、仕上げたいのがあるっていう。
更にクリスマスが終わるまでに一枚。
欲を言えばキリがないけど少なくともどちらか一方は描きたい。
更にクリスマスが終わるまでに一枚。
欲を言えばキリがないけど少なくともどちらか一方は描きたい。
仕上げなきゃといえばDC Widgetのバナーとアイコンもそうだけど、まぁあれは時期的な物でもないし来年でいいかと。戦略的に切り捨て。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/15)
下書き終わった
しかし…塗れるのかこれ?
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/14)
プログラム
2D剛体シミュをやろうとしているのは前回書いたがAndroidでの表示や反発計算で
どうしてもGJKアルゴリズムやベクトル、行列クラスを使う必要があり、これらをいちいちJavaに移植するのは
想像するだけでもしんどい(し、遅い)のでNDKを用いる事にした。
これなら今まで書いたC++のプログラムを流用できて良い。
どうしてもGJKアルゴリズムやベクトル、行列クラスを使う必要があり、これらをいちいちJavaに移植するのは
想像するだけでもしんどい(し、遅い)のでNDKを用いる事にした。
これなら今まで書いたC++のプログラムを流用できて良い。
Android StudioでNDKを使った開発というのはまだ正式にはサポートしてないらしいが
ググって調べたところ、一応設定ファイルに記述すればコンパイルとリンクはしてくれる模様。
けど自前のApplization.mkを使ってのビルドはどうやら無理なようで実質使えない。
なのでちょっとスマートではないが簡単なシェルスクリプトを置き、自分で手動ビルドをかけている。
他にEclipseの時と違うディレクトリ構造とかJNIの仕様でちょっと躓いたが、まぁ想定範囲内といった感じ。
ググって調べたところ、一応設定ファイルに記述すればコンパイルとリンクはしてくれる模様。
けど自前のApplization.mkを使ってのビルドはどうやら無理なようで実質使えない。
なのでちょっとスマートではないが簡単なシェルスクリプトを置き、自分で手動ビルドをかけている。
他にEclipseの時と違うディレクトリ構造とかJNIの仕様でちょっと躓いたが、まぁ想定範囲内といった感じ。
ここまでは割と順調。次に考えるのは
折角C++で物理計算その他をしているんだから表示に関してもわざわざJavaに頂点座標を返したりせず
OpenGLでやれば速いし、良いのでは?という事で
折角C++で物理計算その他をしているんだから表示に関してもわざわざJavaに頂点座標を返したりせず
OpenGLでやれば速いし、良いのでは?という事で
さっそくC++の方でEGL APIを使ってOpenGLを初期化・・・・は残念ながら上手く行かなかった。
正確にはエミュレータでは動くが実機でやると落ちる。
原因はAndroid端末は基本的にMulti ContextをサポートしていないのでContext Sharingをかけても
生成したContextが無効な値になっていた。
正確にはエミュレータでは動くが実機でやると落ちる。
原因はAndroid端末は基本的にMulti ContextをサポートしていないのでContext Sharingをかけても
生成したContextが無効な値になっていた。
そもそもJavaの方で既にGLSurfaceView内部でOpenGLを初期化してあるのだから
eglGetCurrentContext()でこれを流用すれば良かったという。
eglGetCurrentContext()でこれを流用すれば良かったという。
で、その後もJNIで描画タイミングやらユーザー入力やら作ってたんだけど
ここまでするんならSDL使えば -> それを組み込んだ自作ライブラリでいいじゃん
という事に気づき、あぁ自分で作った車輪の再発明という最悪の奴をやってしまったなあと。
Androidでも動くように作ってたんだよね、アレ。
ここまでするんならSDL使えば -> それを組み込んだ自作ライブラリでいいじゃん
という事に気づき、あぁ自分で作った車輪の再発明という最悪の奴をやってしまったなあと。
Androidでも動くように作ってたんだよね、アレ。
そんな訳でテンションがた落ちしたので、絵に逃げている…
絵
DC Widgetのバナーやアイコンもやらなきゃいけないのはわかりつつ、
何故か漫画を描いている。
といってもタチキリ、ノド、トンボ枠なんぞの用語からしてよく知らなかったんで、そこからググって調べた。
ネームとか漫画の下書き?くらいにしか思ってなかったけど実際は下書きの更に前の段階で
どうやらコマ割りや構図をざっくりと決めたりする物みたいだ。
何故か漫画を描いている。
といってもタチキリ、ノド、トンボ枠なんぞの用語からしてよく知らなかったんで、そこからググって調べた。
ネームとか漫画の下書き?くらいにしか思ってなかったけど実際は下書きの更に前の段階で
どうやらコマ割りや構図をざっくりと決めたりする物みたいだ。
最初は単なる2コマの予定だったのが自分の悪い癖か、膨らみに膨らんで現在2ページ。
絵はぺーって適当に線引くだけだから楽勝と思いきや、やってみると自分で見ただけでも
「なんか淡々としている」だの「展開が唐突」「クドい」「スピード感がない」「位置関係がわかり辛い」「コマの読み進める順番が曖昧」
等々、出てくる出てくる。
あと(筋書きはあるんだけど)ここだけどうしても構図が浮かばない、とかね。
絵はぺーって適当に線引くだけだから楽勝と思いきや、やってみると自分で見ただけでも
「なんか淡々としている」だの「展開が唐突」「クドい」「スピード感がない」「位置関係がわかり辛い」「コマの読み進める順番が曖昧」
等々、出てくる出てくる。
あと(筋書きはあるんだけど)ここだけどうしても構図が浮かばない、とかね。
ちなみに一枚目の半分はこんな感じ。
UFOキャッチャーと景品の話。
UFOキャッチャーと景品の話。
全部見せると自分の力量では展開が読めてしまうので半分だけで勘弁してほしい。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。
(2014/12/08)
色々進行中‥
絵
11月末に虎さんをアップした。
アニメ調でモフモフってどうやるのかよくわからず苦戦したけど結果それなりになったから良しとする。
ヒゲは別に描き忘れたのではなく、描くとどうしても浮いてしまうので省略。
アニメ調でモフモフってどうやるのかよくわからず苦戦したけど結果それなりになったから良しとする。
ヒゲは別に描き忘れたのではなく、描くとどうしても浮いてしまうので省略。
現在はネタを2つ程とDC Widget(旧 DC Counter)の新しいヘッダ画像やアイコンを同時進行で描こうとして
るんだけど、ヘッダ画像の方はいわゆる厚塗りでやろうとしたら結構手間がかかることに気付いた。
しかし今更塗り方を変えるのはどうだろう?
塗り方に合った構図というのだろうか、微妙に違ってくる気が。
下書き+αの状態でとりあえず公開して後で差し替えが現実的な線か。
るんだけど、ヘッダ画像の方はいわゆる厚塗りでやろうとしたら結構手間がかかることに気付いた。
しかし今更塗り方を変えるのはどうだろう?
塗り方に合った構図というのだろうか、微妙に違ってくる気が。
下書き+αの状態でとりあえず公開して後で差し替えが現実的な線か。
ネタのほうは純粋に自分のスキル不足で、物を立体的に描くのがまだまだかなぁと。
正面や横、斜め45度は何とかなっても30度とかは難しいねぇ…
パース定規のお世話になりっぱなし。
正面や横、斜め45度は何とかなっても30度とかは難しいねぇ…
パース定規のお世話になりっぱなし。
プログラム
自分的に恒例の「年明けまでに○○する(キリッ」シリーズ。
今年は2D剛体シミュのデモに決定。
実は去年の夏にも同じような事をしているが形状が箱だけや動作速度が遅い等、納得いかんので
今度は任意形状も含め安定してそれなりの速度で動く物を作りたい。
物体の侵食深度で力を加える加速度ベースではなく
前フレームの位置と現フレームの位置から速度を計算する、位置ベースで組む予定。
今年は2D剛体シミュのデモに決定。
実は去年の夏にも同じような事をしているが形状が箱だけや動作速度が遅い等、納得いかんので
今度は任意形状も含め安定してそれなりの速度で動く物を作りたい。
物体の侵食深度で力を加える加速度ベースではなく
前フレームの位置と現フレームの位置から速度を計算する、位置ベースで組む予定。
試しにAndroidアプリで箱を1つ、地面に落としてみたらいとも簡単に安定して今までの努力何だったの?と思ったり思わなかったり。
物体の侵食を無理やり位置をずらして修正し、速度をそれに合わせてる訳で物理的には正しくないのだろうけど
ゲームの場合は処理速度重視に加え
主人公のマントが顔にかかりっぱなしにならないようにするだとか、
ショットガンで撃たれた敵を派手に吹っ飛ばす時に結局フェイク入れる事になるし別にいいかな。
物体の侵食を無理やり位置をずらして修正し、速度をそれに合わせてる訳で物理的には正しくないのだろうけど
ゲームの場合は処理速度重視に加え
主人公のマントが顔にかかりっぱなしにならないようにするだとか、
ショットガンで撃たれた敵を派手に吹っ飛ばす時に結局フェイク入れる事になるし別にいいかな。
ちなみにオプションの目標も幾つか用意しているがこれは後々。
imageプラグインエラー : 画像を取得できませんでした。しばらく時間を置いてから再度お試しください。