2014-01-01から1年間の記事一覧

浮動小数点数を最小桁まで文字列化

C#

浮動小数点数を丸めずに文字列化したかった。 class IEEE754 { private FloatingPointDefinition mode; private readonly FloatingPointDefinition DefFloat = new FloatingPointDefinition() { ExpLength = 8, FracLength = 23, }; private readonly Floati…

AndroidとJava8

実はAndroidでJava8が使えるという噂を耳にしたのでやってみた。気のせいだった。なんやねん。ラムダ…

四捨五入

最近、二種類の四捨五入する関数を見た。これと static long round(float x) { long ans = (long)x; if (x - (float)ans >= 0.5) return ++ans; else if (x - (float)ans <= -0.5) return --ans; return ans; } これ。 static long round(float x) { return …

PythonとSciPyを使ってみた

MATLABの代替になることを期待してSciPyにチャレンジ。 というかPythonに初チャレンジ。 まずPython,NumPy,SciPy,matplotlibのインストーラをダウンロード、インストール。 ここを参考にEasy_installをインストール。 (ez_setup.pyをダウンロードして実行) P…

hypot

sqrt(x^2+y^2)を求めたいとき、 Javaなら l=Math.sqrt(x*x+y*y); って書いてたけど、この操作には専用のメソッドが用意されていた。 初めて知った。 l=Math.hypot(x,y); 得られる値は一緒。ちょっとだけ短く書ける。 あと計算途中のオーバー・アンダーフロー…

HandlerThreadで非同期処理

Androidで、メインスレッドとは別にHandlerThreadを立てて、随時そっちにメッセージを投げる。 メッセージはどんどんキューに溜められて行って、古い物から一つづつ処理されていく。 同じHandlerThreadに投げられたメッセージが同時に処理されることはない。…

コード表示

なんか、SyntaxHighlighterにこだわるより 素直にはてなの機能を使った方がいい気がする。 と今更。 []とか((とかで表示が崩れるんだよね。 public void makeBuffer(GL10 gl,int[] vertices){ // バッファ生成 ByteBuffer vbb = ByteBuffer.allocateDirect(v…

VBOを使った2D図形の描画

VBO(頂点バッファオブジェクト)。 3Dポリゴンの頂点情報をあらかじめGPUのメモリに置いておくことで 描画を高速化する。 自分が作っているゲームは2Dで、 しかも大半が画像ファイルを元にしたテクスチャなのだけど、 直線とか四角形とかの基本的な図形はやっ…

画像に指定の色を重ね合わせて描画

Android用2Dゲームで画像を高速で描画するために、OpenGL ESのDraw Texture Extensionが使用できる。基本的な使い方はこの本のサンプルコードあたりが参考になる。 初歩からわかるAndroid最新プログラミング 元画像…というかテクスチャの、「どの部分を切り…

singletonとstatic

ところで、先ほど書いたAndroidアプリでBGMを流す処理、 今開発しているゲームではBGMクラスを作って 中身を全部staticにして使っている。 どのクラスからでもパパッと使えるオブジェクトとして、 staticにする方法以外にsingletonパターンがある。 自分は何…

Androidアプリで前奏より後だけループするBGMを流す

趣味でAndroid向けアクションゲームを作っている。年末年始を使ってBGMとSEを組み込んでいた。AndroidでのBGM再生にはMediaPlayerクラスを使う。res/raw/以下にoggファイルを突っ込む(mp3でもいいけど端末によってはあまり嬉しくないことがあるとか?)とかそ…

SyntaxHighlighter

SyntaxHighlighterのテスト。 class Program { static void Main(string[] args) { Console.WriteLine("Hello World!"); Console.ReadKey(); } } できた?

開いた

プログラミングの勉強で溜まった情報の整理がてらブログを書いてみる。 こっそり。