love.graphics.present (日本語)
画面への描画操作結果を表示します。
この関数は自分で love.run 関数を書く場合に使用します。これにより画面への描画結果を全て表示します。この関数の典型的な使用法については love.run の用例を参照してください。
関数
概要
love.graphics.present( )
引数
なし。
返値
ありません。
注釈
love.window.setMode において vsync
が true
ならば、この関数はリフレッシュ・レートよりも頻繁に実行することができなくなり、必要な場合は準備を終えるまでプログラムを停止します。
用例
ゲームの読み込み中にプログレスバーを表示
-- 用例で使うダミー関数。
local function loadSounds() love.timer.sleep(1) end
local function loadSprites() love.timer.sleep(1) end
local function loadLevels() love.timer.sleep(1) end
local font = nil
local function drawLoadingScreen(progress, text)
local windowWidth, windowHeight = love.graphics.getDimensions()
-- テキストの描画。
font = font or love.graphics.newFont(26)
local textX = math.floor((windowWidth - font:getWidth(text)) / 2)
local textY = math.floor(windowHeight/2) - font:getHeight()
love.graphics.setColor(1, 1, 1)
love.graphics.setFont(font)
love.graphics.print(text, textX, textY)
-- プログレスバーの描画。
local progressWidthFull = 400
local progressWidthCurrent = progress * progressWidthFull
local progressHeight = 20
local progressX = math.floor((windowWidth - progressWidthFull) / 2)
local progressY = math.floor(windowHeight/2)
love.graphics.setColor(.2, .2, .2)
love.graphics.rectangle("fill", progressX, progressY, progressWidthFull, progressHeight)
love.graphics.setColor(.1, .3, 1)
love.graphics.rectangle("fill", progressX, progressY, progressWidthCurrent, progressHeight)
end
local function presentLoadingScreen(progress, text)
love.graphics.clear()
drawLoadingScreen(progress, text)
love.graphics.present()
end
function love.load()
presentLoadingScreen(0/3, "Loading sprites...") ; loadSprites()
presentLoadingScreen(1/3, "Loading sounds...") ; loadSounds()
presentLoadingScreen(2/3, "Loading levels...") ; loadLevels()
end
function love.draw()
drawLoadingScreen(3/3, "Done loading!")
end
関連
そのほかの言語
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info