D言語
newとGCに全力で頼っていたのを、オブジェクトをプールして使いまわすようにした。一気に軽くなったし、ガクつきもなくなった。テンプレートのmixinで実装したので今後も簡単にコード使いまわせそうで良さげ。という訳で着々と完成に近づいています。
PerlやらRubyやらC言語やらでいう*1sprintfみたいに、書式で文字列つくる機能はD言語にないのかなーと思って探してみて、ここにswritefのコードが公開されているのを発見。http://www.digitalmars.com/d/archives/digitalmars/D/14260.html char[] str = swr…
http://d.hatena.ne.jp/hrkt0115311/20080527/1211891558うちのクソゲーに名前が似ていたので、D言語2.0の勉強がてらに作ってみました。やたらてこずってしまいましたが、公開してみます。D言語2.0(dmd v2.014)でやってみました。 経験値管理にクロージャを…
自作ゲーで発生するGC頻度がどんな雰囲気か体感しといたほうが良いのかなと思ってGC走ったタイミングで標準出力になんか出すようにしてみた。といっても以下の如くアホのようなやりかたです。こんなんでほんとに良いのでしょうか。 bool g_gc_watcher = fals…
C++→D言語に変えるときGCにかなり期待していたんだけど、実際はあんまり楽になってない気がする。 全力でGCに頼る感じで組むと露骨にガクっと止まるときがある(ほんとにGCのせいなのかどうか不明だけど) 結局ゲーム開始時にインスタンスたくさんつくってプ…
ビルド早いから適当に修正〜プレイを繰り返せる 機械語バイナリ吐くから多少ダメな構造でも必要な速度は得られる GCあるからメモリ管理が楽 ヘッダファイルいらんから楽 他にもいろいろ楽 ほんとに楽になって嬉しい。
組み込みの連結リストっぽいものはないのだろうか。
とりあえずこれで動いたのでメモってみますが、D言語もdllも大して知らないのでつっこみ歓迎です。 連携方針 Win32に限定する Box2DではC++で書かれていて、classをふんだんに使ってるのでD言語から直接扱えないっぽい。 ので、Cのインターフェースを作ってd…
D言語ちょっといじってみたけど予想以上に簡単におぼえられそうなので*1、思い切って全部捨てて完全移行しようと思います。 グラフィックやら音楽やら入力やら SDLやらDXライブラリやらが簡単に動くので全然問題なし。 物理エンジンとか よくわからんけどD言…