0.9.0 (日本語)
LÖVE 0.9.0 のコードネームは Baby Inspector (ベビー・インスペクター) です。現在公開中です。
0.8.0 からの主要な変更点
- 三つの新規モジュールを追加: love.window, love.math, および love.system
- love.joystick および love.thread モジュールに対する改訂。
- 多角形メッシュおよび頂点シェーダーを含む love.graphics へ新機能を追加。
- lua-enet により統合された ENet ネットワーキング・ライブラリ。
- 残りの API とほぼ一致する多数の関数に対しての名称変更。
- love.graphics において一部 API の性能を改善しました。
- さらに非常に多くの変更!
0.8.0 からの全ての変更点
機能追加
- ENet による改善されたマルチプレイヤー用ネットワーキング対応の追加 (lua-enet ライブラリを使用)
- 結合型実行形式をシミュレートするコマンドライン引数 --fused を追加しました。
- liblove の追加。
- 終了値の能力を追加。
- 標準時におけるエラーの場合に終了値 1 を返す機能を追加。
- file:// URI スキームに対する基本的な対応の追加。
- love.timer.getAverageDelta の追加。
- Data:getString の追加。
- Contact:getChildren の追加。
- love.filesystem.isFused の追加。
- love.filesystem.getIdentity の追加。
- love.filesystem.append の追加。
- love.filesystem.getSize の追加。
- love.filesystem.mount および love.filesystem.unmount の追加。
- love.filesystem.setIdentity へ引数として選択制のファイル検索順を追加。
- File:isOpen および File:getMode の追加。
- File:setBuffer, File:getBuffer, および File:flush の追加。
- textinput イベントに対する Unicode テキスト入力の追加。
- love.keyboard.setTextInput および love.keyboard.hasTextInput の追加。
- 以前の内部 Rasterizer および GlyphData メソッドを追加。
- UTF-8 画像形式フォントに対する対応。
- Font:getAscent, Font:getDescent, および Font:getBaseline を追加。
- Font:setFilter および Font:getFilter の追加。
- Font:hasGlyphs の追加。
- love.graphics.printf へ拡大、拡大・縮小、および剪断の引数を追加。
- 高ダイナミック・レンジ (HDR) キャンバスの対応を追加。
- Image に対してミップマッピングの対応を追加。 (テストは love.graphics.isSupported にあります)
- 頂点シェーダーの対応を追加。
- Shader:send に対するブーリアンの対応。
- Canvas:getPixel の追加。
- BlendMode へ "replace" の追加。
- LineJoin 方式の追加。
- 任意のテクスチャが貼られた多角形を可能にするために Mesh オブジェクトを追加。
- love.graphics.setCanvas へ複数描画対象を追加。
- love.graphics.setColorMask の追加。
- love.graphics.origin の追加。
- love.graphics.getRendererInfo の追加。
- love.graphics.getMaxImageSize の追加。
- SpriteBatch:getCount および SpriteBatch:getBufferSize の追加。
- SpriteBatch:getColor の追加。
- ParticleSystem:emit の追加。
- ParticleSystem:setInsertMode の追加。
- ParticleSystem:setAreaSpread の追加。
- ParticleSystem:isPaused および ParticleSystem:isStopped の追加。
- ParticleSystem へ多数の getter メソッドを追加。
- love.image.newCompressedData による Image へ DXT 圧縮テクスチャの対応を追加。
- love.image.isCompressed および Image:isCompressed の追加。
- Image:getDimensions, Canvas:getDimensions, および ImageData:getDimensions の追加。
- Image, Canvas および Font に対して異方性フィルタの対応を追加。
- Image:refresh の追加。
- Image:getData の追加。
- love.math モジュールの追加。
- love.math へプラットフォーム非依存の (良質な) 乱数実装を追加。
- RandomGenerator オブジェクトの追加。
- BezierCurve オブジェクトの追加。
- love.math.triangulate および love.math.isConvex の追加。
- love.math.noise の追加。
- love.system モジュールの追加。
- love.system.getClipboardText および love.system.setClipboardText の追加。
- love.system.getOS および love.system.getProcessorCount の追加。
- love.window モジュールの追加。
- love.window.isVisible の追加。
- love.window.setMode へフラグを追加。
- love.window.setMode へモニタ選択の対応を追加。
- 大きさ変更可能、枠無し、非中央ウィンドウの対応を追加。
- "全画面デスクトップ"方式の対応を追加。
- ウィンドウへ resize および visible イベントを追加。
- love.window.getIcon の追加。
- love.conf へ t.window.icon を追加。
- SoundData:getDuration および SoundData:getSampleCount の追加。
- Source:isPlaying の追加。
- Source:setRelative および Source:isRelative の追加。
- Source:setCone および Source:getCone の追加。
- Source:getChannels の追加。
- love.thread に対する新規 Channel API を追加。
- Channel:push への制限付きテーブルの対応を追加。
- Thread:getError の追加。
- Thread:isRunning の追加。
- threaderror イベントの追加。
- love.mousefocus および love.window.hasMouseFocus の追加。
- love.mouse.newCursor によるカスタムなハードウェア・カーソルの対応を追加。
- love.mouse.setX および love.mouse.setY の追加。
- Joystick オブジェクトの追加。
- ジョイステックへ add および remove イベントの追加。
- ジョイステックへ軸およびハット移動イベントの追加。
- Xbox コントローラーと同様のレイアウトを持つジョイステック用の統合型ゲームパッド API の追加。
- ジョイステックへ振動機能対応の追加。
機能廃止
- リリース・モードの廃止 (しましたが、まだ結合型実行形式は利用可能です)
- love.keyboard.getKeyRepeat を廃止 (love.keyboard.hasKeyRepeat を参照)。
- love.keypressed から Unicode 引数を廃止 (love.textinput を参照)。
- love.graphics.drawTest の廃止。
- love.graphics.quad および love.graphics.triangle の廃止。
- ColorMode および love.graphics.setColorMode の廃止。
- love.graphics.newStencil の廃止。
- love.graphics.setLine および love.graphics.setPoint の廃止。
- love.graphics.drawq の廃止 (機能性は love.graphics.draw へ統合)。
- SpriteBatch:addq および SpriteBatch:setq の廃止 (機能性は SpriteBatch:add および SpriteBatch:set へ統合)。
- Quad:flip の廃止。
- ParticleSystem:isFull および ParticleSystem:isEmpty の廃止。
- ParticleSystem:getX および ParticleSystem:getY の廃止。
- love.graphics.checkMode の廃止。
- 個別のジョイステックを操作するための love.joystick モジュール関数を廃止(Joystick オブジェクトを参照)。
- ジョイスティック・ボール対応の廃止。
- スレッド名称の廃止。
- 旧型のスレッド・メッセージ API (Channels を参照) の廃止。
- love.timer.getMicroTime の廃止。
API の名称変更
- love の起動スクリプトから 'love.boot' へ名称変更したため、要求することができます。
- love.filesystem.mkdir から love.filesystem.createDirectory へ名称変更。
- love.filesystem.enumerate から love.filesystem.getDirectoryItems へ名称変更。
- World:setAllowSleeping および World:getAllowSleeping および World:setSleepingAllowed および World:isSleepingAllowed へ名称変更。
- ChainShape:setPrevVertex から ChainShape:setPreviousVertex へ名称変更。
- Joint:enableMotor から Joint:setMotorEnabled へ名称変更。
- Joint:enableLimit および Joint:isLimitEnabled から Joint:setLimitsEnabled および Joint:hasLimitsEnabled へ名称変更。
- love.conf において t.screen から t.window へ名称変更。
- love.graphics.setCaption から love.window.setTitle へ名称変更。
- PixelEffect から Shader (ですが現在は頂点シェーダーです) へ名称変更。
- love.graphics.setDefaultImageFilter から love.graphics.setDefaultFilter へ名称変更。
- ParticleSystem:setSprite から ParticleSystem:setImage へ名称変更。
- ParticleSystem:setGravity から ParticleSystem:setLinearAcceleration へ名称変更。
- ParticleSystem:setLifetime および ParticleSystem:setParticleLife から ParticleSystem:setEmitterLifetime および ParticleSystem:setParticleLifetime へ名称変更。
- ParticleSystem:count および全ての getNum* 関数から get*Count へ名称変更。
- SoundData:getBits および Decoder:getBits から SoundData:getBitDepth および Decoder:getBitDepth へ名称変更。
- Source:setDistance および Source:getDistance から Source:setAttenuationDistances および Source:getAttenuationDistances へ名称変更。
- love.mouse.setGrab から love.mouse.setGrabbed へ名称変更。
不具合修正
- OS X における結合型実行形式の修正。
- Windows にて love.load の呼び出し前にコンソールが表示されるように修正。
- 最初のフレームにおける dt 計算において love.load により取得された時間が標準の love.run へ算入されない不具合を修正。
- エラー画面が次の入力イベントまで表示されない不具合を修正しました。
- love.event.clear の修正。
- love.load にて love.mouse.setPosition を呼び出したときの不具合を修正。
- いくつかの love.physics 関数にて拡大・縮小計数を修正。
- World:update で発声する Box2D の例外を修正。
- Body および Joint に対して Box2D / love.physics の補足できない多数の例外を修正。
- ChainShape:getPoints 実行中に Lua スタック不足になり異常終了する不具合を修正。
- File:read においてファイル終端以降を読み取ってしまう不具合を修正。
- 古いディレクトリから読み取り権限を削除していない場合において love.filesystem.setIdentity を修正。
- UTF-8 デコーダーでメモリーリークが発生する懸念を修正。
- 画像Font の最後の文字に対する間隔を修正。
- love.graphics.printf において行の折り返しを修正。
- love.graphics.printf への折り返し制限が負数の場合にエラーになるのを修正
- love.graphics.print において埋め込み 0 を斬り捨てるように修正。
- 一部の ATI カードでフォントを描画中に異常終了する不具合を修正。
- 非常に大きな規模で線を描画時に不自然になってしまうのを修正。
- Font および Canvas にて標準画像フィルタが無視される不具合を修正。
- love.graphics.getLineWidth において間違った値を返す不具合を修正。
- 一部の Windows システムにおいて発生する love.graphics.getColor の不具合を修正。
- alpha BlendMode の修正。
- multiplicative BlendMode の修正。
- love.graphics.getPointStyle の修正。
- Shader エラーにおける行番号の修正。
- Shader:send が Image および Canvas で時々失敗する不具合を修正。
- Shader:send において送信された画像およびキャンバスの参照を保持するように修正。
- SpriteBatch を複数回バインドする時に異常終了する不具合を修正。
- SpriteBatches にて16,384 以上のスプライトで発生する不具合を修正。
- ParticleSystems に対する描画順序の修正。
- ParticleSystem:setSizes において大きさの変動が再初期化設定されてしまうのを修正。
- love.window.getMode および関連関数がデストップの大きさを使用する場合に間違った値を返す不具合を修正。
- love.window.setMode の後に(間接的に)キーリピート設定が破壊される不具合を修正。
- love.window.setMode の後にアイコンがリセットされるのを修正。
- mp3 デコーダーでのメモリーリークを修正。
- OpenAL soft の一部バージョンにおいて、直接チャンネルを有効にしたことにより発声する音声の問題を修正。
- 音声において 'ランダム'なハングアップが起きるのを修正。
- 音声ファイル拡張子の構文解析において大小英字(非)識別処理を修正。
- トラッカー音楽形式にてループ再生に対応するための修正。
- Source にてストリーミング音声の再生時にスキップ・ループをすると発生する不具合を修正しました。
- Source:play において競合状態を修正しました。
- WAVE 音声再生の修正
そのほかの変更
- love のスタートアップを modules/love へ移動。
- ウィンドウ関連関数を love.graphics から love.window へ移動。
- 常に再作成する代わりに Lua 側のオブジェクトを再利用するための LOVE オブジェクトを返す関数を更新。
- Windows コンソールが稼働中であれば再利用を試みるように更新。
- エラー発生時にエラー・ハンドラを解決するために、エラーの扱いを更新。
- love.run において sleep/present の順序を更新 (ここで描画を行うと、*すぐに* スリープします)。
- 数値の代わりにブール式の引数を扱うようにするために love.keyboard.setKeyRepeat を更新。
- love.keypressed の第二引数へキー押し下げ時に反復を行うか示すために更新。
- Keyboard において一部の最新型キーボードのキーにあるキー定数へ対応するために更新。
- love.filesystem において appdata ディレクトリが未だ存在しない場合に作成を試みるように更新。
- ファイル拡張子を省略するために標準ファイルシステムの識別子を更新。
- love.filesystem.newFile へファイルを開くときの選択肢を更新。
- ほとんどの love.filesystem 関数で内部エラーが発生したときに、 nil を返すように更新。
- love.graphics.print の x および y 引数へ標準値 0 にするために更新。
- setFilter および setWrap メソッドの第二引数を以後は選択制にするためを更新。
- Font および ParticleSystem の描画処理コードを今後より高速にするために更新。
- 今後、追加・設定および(アン)バインド時により高速にするために SpriteBatch のコードを更新。
- より多くのシステムに対応するために Canvas のコードを更新。
- より効率的にするために Canvas:getImageData および love.graphics.newScreenshot を更新。
- 標準で完全不透明画像を作成するために love.graphics.newScreenshot を更新。
- シェーダーへ不正値が送られたきのエラーメッセージを更新。
- love.graphics.newParticleSystem は標準バッファサイズとして 1000 を保持するように更新。
- love.image.newImageData および love.graphics.newImage へ FileData を受理できるようにするために更新。
- ImageData:setPixel へテーブルおよび標準透過値 255 を受理するために更新。
- ImageData:mapPixel の更新により、今後はより効率的かつ今後は選択肢 x,y,w,h 引数を受理するようになりました。
- love.image のメモリの扱いを更新したことにより、エラーおよびスレッドの安全性の改善しました。
- love.audio.newSource, love.sound.newDecoder, および love.sound.newSoundData へ FileData を受理できるようにするために更新。
- より効率的かつさほど不経済的ではない SoundData に対するアロケーションの更新。
- SoundData:setSample および SoundData:getSample において無効なサンプルに対するエラーを更新。
- Source:set* 関数において z への標準値を 0 へ更新。
- Source:seek において負数の支距に対するエラーを更新。
- Thread:start において引数を受理するために更新。引数は ... (vararg 式) を用いることで利用可能です。
- 精密マイクロ秒の love.timer.getFPS へ更新。
- 精密マイクロ秒およびモノリシックの love.timer.getTime へ更新。
- Box2D を version 2.3 へ更新。