技術」カテゴリーアーカイブ

三角関数の速度を測ってみた

相変わらずゲーム作り・・・とはちょっとズレた、小さい関数や処理の高速化をちまちま調べてたり。

中学や高校の数学で、三角関数を習いはするものの、
「こんなの将来どこで使うんだ?」
なんて考えると、好きでもない勉強に身が入るわけも無いですね。

で、実際30過ぎまで三角関数なんて使う場面に合わなかった訳です。
仕事で組む業務用のシステムでも三角関数なんて使わないし。

でも2Dのゲームでは当たり前のように使うんですよね。
ゲーム作り始めて、「あんとき真面目にやっときゃ良かったー」ってよく思います。
学校の先生は「この関数はゲーム作りにも使われるんですよ」と、ちょっと例を出して教えてあげれば、クラスの2~3人は興味を示して身の入れ方が変わるんじゃないかなと思ったりするんですけどね。
あと3Dで当たり前に使う行列とかね。

続きを読む

Googleのプログラミング言語「Go」

Google、オープンソースのプログラミング言語「Go」リリース – ITmedia エンタープライズ

公式サイトの言語仕様をちょっと見てみたけど
なんつーか、VBとCを混ぜたような感じで、両方の言語を知ってる人は混乱しそう。
私は間違いなく混乱するね。

関数を変数みたいに簡単に扱えるところとかは最近のスクリプト言語っぽくて面白そう。
GC搭載したネイティブコード吐ける言語ってだけで期待しちゃう。
でもコンテナがGenericじゃないのはがっかり。

D言語みたいに、今時の技術盛り込みまくってくれるといいなぁ。
どうせならコルーチンも搭載してくれるともっと嬉しい。

Googleが本気でこの言語を普及させるつもりなら、当然開発環境もまともなのが出てくるだろうし、そうなれば今のD言語よりずっと普及するんじゃないだろうかと予想。
でも言語仕様とか見る限り、現状はD言語のほうが優れてる気がするよ。

WordPressプラグインテスト その3

関連記事プラグインの続き。

Similar PostsWordPress Related Post for Japaneseと併用してみて1週間くらい様子を見てみた。

なんかSimilar Postsの解析結果があんまし良くないというか、WordPress Related Post for Japaneseのほうが優秀ですね。Yahooバナーウザいけど。

設定次第でよくなるんだろうか?一応日本語対応な設定になるようにはしてあるんだけど・・・

WordPress Related Post for Japaneseのほうがいいや。
Similar Postsは外そう。

WordPressプラグインテスト その2

その1はWordPressの画像表示プラグイン LiteBox と、自動ref指定できるFlexible Uploadのほうね。

今回は記事の一番下に、関連記事へのリンクを付けてくれるプラグイン
WordPress Plugins/JSeries » WordPress Related Post for Japanese (関連投稿表示プラグイン)と、リンクを別窓で開くプラグイン
を試した。

続きを読む

floatとdoubleの演算速度

前のエントリーは前フリで、ホントにやりたかったベンチマークは、小数部の要らない浮動小数同士の演算をする際、そのまま演算が速いのか、一旦整数型にキャストしてからのほうが速いのかを試したかった。

まぁ普通に考えたらキャストするほうがキャストのコスト分遅くなると思うんだけど、演算の量によっては逆転するんだよね。

んで、単純ループの場合、4回の掛け算を行う程度で逆転しました。
タスクシステムのほうは、何故か1回目から圧倒的にキャストしたほうが速かったんだけど、よく見たらオーバーフローしてただけだった。再度試したらやっぱり4回程度で逆転した。

何らかの理由で保持用変数は浮動小数だけど、実際は整数部しか使わないような場合で、沢山計算しなきゃいけないような場合は、一旦intとかの整数にキャストしてからのほうが速いかもね、という話ですね。
あんまり無さそうだけど。

ここからが本題。

上記の件でググってたら、floatよりdoubleのほうが速いとか、いややっぱりfloatのほうが速いとか、色々でてくる。doubleのほうが優勢かな?

ということで、私も検証。

続きを読む